smpl.wrap

Simplified wrapping.

get_lambda(expr, xvar)

Returns a lambda of given str/function/lambda expression with __doc__ set to the latex expression.

get_lambda_argd(expr, xvar, *args)

get_latex(function)

Return a latex string for passed function.

get_varnames(expr, xvar)

Returns a list of variables used in the str math-expression via sympy and puts xvar to the front.

Functions

smpl.wrap.get_lambda(expr, xvar)[source]

Returns a lambda of given str/function/lambda expression with __doc__ set to the latex expression. xvar is moved to the front.

Examples

>>> l = get_lambda(lambda a,b,c,x : (a+b+c)*x,'x')
>>> l(4,1,1,1)
12
>>> l = get_lambda("(a+b+c)*x",'x')
>>> l(4,1,1,1)
12
>>> def fun(a,b,x,c):
...     return (a+b+c)*x
>>> l = get_lambda(fun,'x')
>>> l(4,1,1,1)
12
smpl.wrap.get_latex(function)[source]

Return a latex string for passed function.

Parameters

functionfunction_like

function as str lambda or (oneline) function

Examples

>>> get_latex(lambda a,b,c,x : (a+b+c)*x,)
'$x \\left(a + b + c\\right)$'
>>> get_latex("(a+b+c)*x")
'$x \\left(a + b + c\\right)$'
>>> def fun(a,b,x,c):
...     return (a+b+c)*x
>>> get_latex(fun)
'$x \\left(a + b + c\\right)$'
smpl.wrap.get_varnames(expr, xvar)[source]

Returns a list of variables used in the str math-expression via sympy and puts xvar to the front.

Examples

>>> get_varnames("a**x*b+c","x")
['x', 'a', 'b', 'c']