Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 解析SymPy中包含用户定义函数的符号表达式_Python_Sympy_Symbolic Math - Fatal编程技术网

Python 解析SymPy中包含用户定义函数的符号表达式

Python 解析SymPy中包含用户定义函数的符号表达式,python,sympy,symbolic-math,Python,Sympy,Symbolic Math,我有一些方程可以调用其他函数。我想用象征性的方式来写这篇文章,有可能用象征性的方式来写吗 下面是一个简单的示例,说明我正在尝试做的事情: x = sp.Symbol('x') omega = sp.Function('omega')(x ** 2) eq_1 = sp.sympify("omega(x)") eq_1调用带有参数x的函数omega,返回x**2。关于如何实现这一点,有什么想法吗 x = sp.Symbol('x') omega = sp.Lambda(x, x**2) eq_

我有一些方程可以调用其他函数。我想用象征性的方式来写这篇文章,有可能用象征性的方式来写吗

下面是一个简单的示例,说明我正在尝试做的事情:

x = sp.Symbol('x')
omega = sp.Function('omega')(x ** 2)

eq_1 = sp.sympify("omega(x)")
eq_1调用带有参数x的函数omega,返回x**2。关于如何实现这一点,有什么想法吗

x = sp.Symbol('x')
omega = sp.Lambda(x, x**2)
eq_1 = sp.sympify("omega(x)", locals={"omega": omega})
要点:

  • Lambda是一种创建执行特定操作的SymPy函数的方法
  • locals
    sympify
    的一个参数,它将输入的子字符串(如“omega”)链接到您创建的SymPy对象。如果没有它,
    sympify
    将只链接内置函数,如
    exp
    sin
    ,但它不会猜测输入中的“omega”是否真的意味着您的函数,或者不相关的字母omega