2
我发现文档中的sympy网站这里lambdify: http://docs.sympy.org/dev/modules/utilities/lambdify.htmlSympy复杂表达式到Python功能
与复数试图例子似乎分崩离析:
SympyExpression = sympy.parsing.sympy_parser.parse_expr('0.2*exp(1.6*I*pi*x)*log(x - 1.5)')
print "\nSympyExpression.subs(sympy.Symbol('x'), 0.0):"
print SympyExpression.subs(sympy.Symbol('x'), 0.0)
PythonFunction = sympy.lambdify((sympy.Symbol('x')), SympyExpression, "numpy")
print "\nPythonFunction(0.0):"
print PythonFunction(0.0)
>>>> SympyExpression.subs(sympy.Symbol('x'), 0.0):
>>>> 0.0810930216216329 + 0.2*I*pi
>>>> PythonFunction(0.0):
>>>> /usr/lib/python2.7/dist-packages/numpy/__init__.py:1: RuntimeWarning: invalid value encountered in log
>>>> """
>>>> (nan+nan*j)
难道我做一些愚蠢或者是这是一个错误?
我最终包装和铸造.subs导致到本机的“复杂”号使用复杂() - >它缓慢,但它的工作原理 –