使用Python求解非线性联立方程 - 输入和参数语法

时间:2014-04-30 08:57:02

标签: python simultaneous nonlinear-optimization

我想用Python解决3个非线性联立方程。我是初学者,在互联网上的研究帮助我理解应该做什么,但是我的脚本仍然无效,我认为这是由于与参数和输入相关的语法错误。

我的函数有9个参数(3个变量和6个已知参数) 首先我发现我可以写出这样的问题:(函数f是示例,它们更复杂,更大)

def equation(p,a,b,c,d,e,f,a1,b1,c1,d1,e1,f1,a2,b2,c2,d2,e2,f2):
    x,y,z=p
    s=a*x*y+b*z+c-d+e*f
    s1=a1*x*y+b1*z+c1-d1+e1*f1
    s2=a2*x*y+b2*z+c2-d2+e2*f2
    return (s,s1,s2)

x,y,z=fsolve(equation, (100,100,100), args=(a,b,c,d,e,f,a1,b1,c1,d1,e1,f1,a2,b2,c2,d2,e2,f2), xtol=..)

您能否向我提供一些帮助或解决方案的链接?

我认为在第二种情况下,我错过了定义x,但我不知道它应该是什么。我尝试第二种语法,只有一个方程式,一个变量和相同的参数,它正在工作,所以我认为这是一个带有参数或变量写法的语法问题。

!!!! FIXED !!!!! 上面的代码形状现在正在处理我的特定问题,我有语法错误。感谢您的帮助和耐心!

0 个答案:

没有答案