在python中使用scipy.optimize进行初始猜测

时间:2013-12-31 18:31:49

标签: python-2.7 optimization scipy nonlinear-functions nonlinear-optimization

使用 python

进行编码时遇到以下问题

我有7个参数:x,y,z,t,HF,M1F和M2F。用户应该输入这3个中的任何一个,程序应该计算其余部分。

我的关系是:

HF = -xyt
M1F = -2xzt + 4yzt - xyt + 4tz^2
M2F = 2yzt - xyt
1 = -2xt + 2yt + 4zt

尝试解决问题:

我有7个参数,用户应该输入3 =>我将留下4个参数。因此,所有关于解决具有4个未知数的4个非线性方程组的系统

我在网上读到scipy.optimize可以用来解决非线性方程组。 但我需要初步猜测。

回到问题的物理学我有以下初始条件:

x > 0
y > 0
z < 0
HF > 0
M1F > 0
M2F > 0
M2F > M1F (solving this inequality from the above equations I get: -x + y + 2z < 0)
HF > M1F + d (solving this inequality from the above equations I get: -x + 2y + 2z < 0)

这些初始条件如何帮助我初步猜测,以便我可以使用scipy.optimize来解决我的问题?

1 个答案:

答案 0 :(得分:0)

我不确定优化是否是正确的方法。我个人认为我从给出的三个变量开始,并用代数解决其余变量。有很多组合,但所有被认为是分析解决方案的东西通常都是最好的,如果它是可以获得的。