pandas 在Python中使用GEKKO求解时出现问题:在两个不同的.py文件中使用相同的代码得到不同的结果

68bkxrlz  于 2022-11-27  发布在  Python
关注(0)|答案(1)|浏览(160)

使用的库是panda读取excel文件和gekko解方程。两个.py文件使用相同的代码和excel文件。它们之间的区别是一个有一个额外的for循环从几个工作表中获取值,而另一个只能一次读取一个工作表。
它们从同一工作表中产生的结果是不同的。既然数据是相等的,它们难道不应该是相同的吗?谢谢您的帮助。

qyuhtwio

qyuhtwio1#

Gekko使用迭代求解来寻找解。但是,使用相同的输入和方程式,可以得到相同的输出。下面是一个返回TrueTrue的示例,以验证解是否相同。

from gekko import GEKKO

m1 = GEKKO()
x1,y1 = m1.Array(m1.Var,2)
m1.Equations([3*x1+2*y1==1, x1+2*y1==0])
m1.solve(disp=False)

m2 = GEKKO()
x2,y2 = m2.Array(m2.Var,2)
m2.Equations([3*x2+2*y2==1, x2+2*y2==0])
m2.solve(disp=False)

print(x1.value[0]==x2.value[0])
print(y1.value[0]==y2.value[0])

相关问题