我正在寻找一种方法,在为方程式中的变量赋值之前,将多个数学函数相加。
我这样做是因为我需要优化我的代码,我想每次都给变量分配不同的值。我想做的一个例子是:
f(x, y) = x + 2y
g(x, y) = 3x - y
添加f(x, y) + g(x, y)
得到h(x, y)
,因此f(x, y) + g(x, y) = h(x, y) = 4x + y
现在我有了h(x, y)
,我需要h(x, y)
x = 4; y = 3, h(x, y) = 19
x = 1, y = 0, h(x, y) = 4
等等
这可能吗?我试图将它们创建为字符串,添加字符串,然后删除引号来计算和,但这没有起作用。我尝试用这种方式来做我的方法,因为我想优化我的代码。如果我能够在计算之前创建我的最终函数(在本例中是h(x, y)
),这将非常有帮助。在
编辑:我在做(e**(x+y))的加法,所以使用矩阵的线性解不起作用:/
SymPy可以这样做:
这表明SymPy简化了表达式:
^{pr2}$这展示了如何将}的函数来计算:
h
作为x
和{也可以使用lambda函数。在
并计算
h(x,y)
如果函数都是变量的线性组合,如示例所示,则不需要解析器或@unutbu建议的sympy解决方案(对于复杂函数,这似乎是绝对正确的答案)。在
对于线性组合,我将使用
numpy
数组来包含变量的系数,如下所示:。。。它给出了答案
19
,如您的例子所示。在相关问题 更多 >
编程相关推荐