在SymPy中的某个点评估函数

Tam*_*ton 8 python sympy

我正在尝试编写各种优化方法,作为一种修改方式.我希望能够使用SymPy在给定点评估具有任意数量变量的函数,其中点的坐标存储在数组中.

例如,我想评估f(x,y) = 3*x**2 - 2*x*y + y**2 + 4*x + 3*y一下b = [1,2].但我真的很喜欢这样做的一般方法,它可以处理具有任意数量变量的函数和适当长度的数组作为要评估的点,因此sympy.evalf(f, subs = {foo})实际上并不是非常有用.

Kra*_*nov 5

您正在使用 SymPy 表达式树,而不是函数。在任何表达式上你都可以这样做:

>>> vars = sorted(expression.free_symbols)
>>> evaluated = expression.subs(*zip(vars, your_values))
Run Code Online (Sandbox Code Playgroud)