我想使用 numpy 数组乘法创建方程,即我想将所有变量保留在一个数组中,并将其系数保留在其他数组中,并将两者相乘以产生一个表达式,以便我可以使用 GEKKO 的 m.Equation() 方法。我尝试了上述代码但失败了,请让我知道如何实现我的目标。
“它失败了”我的意思是它只是给出了一个错误,并没有让我使用 x*y==1 作为 GEKKO 中可用的 m.Equation() 方法中的方程。我的目标是我想将变量保留在一个数组中,并将它们的系数保留在另一个数组中,然后将它们相乘以获得数学方程,用作 m.Equation() 方法的输入。
import numpy as np
from gekko import GEKKO
X = np.array([x,y,z])
y = np.array([4,5,6])
m = GEKKO(remote=False)
m.Equation(x*y==1)
# I wanted to get a result like 4x+5y+6z=1
我得到的错误如下
Traceback (most recent call last):
File "C:\Users\kk\AppData\Local\Programs\Python\Python37\MY WORK FILES\numpy practise.py", line 5, in <module>
X = np.array([x,y,z])
NameError: name 'x' is not defined