python中的fsolve函数参数错误

时间:2019-03-21 10:24:37

标签: python function

我一直在尝试通过下面的fsolve使用所描述的函数进行计算。

我需要的是能够将此计算作为公式运行,并有可能为r1和r2注入我自己的值。

此功能需要(p)才能正常运行,但是p是未知的。没关系,我不需要为运行计算而定义它,但是当我在函数中编写(p,r1,r2)以便能够定义r1和r2时,麻烦就开始了。 然后我收到一条错误消息,说未定义p。

有人在这里看到我的方法有什么错误吗?

谢谢。

代码段:

def formel(p):
 global x
 global r5
 global rp
 r1 = diff1*c #Beregne radie t1;
 r2 = diff2*c #Beregne radie t2; 
 rp, theta = p
 f1 = (rp + r1)**2 -(rp+r2)**2 -d**2 +2*(rp+r2)*d*(cosd(theta))
 f2 = rp**2  - (rp+r2)**2  - delta**2 + 2*(rp+r2)*delta*(cosd(theta-phi))
 return (f1,f2)
x, y =  fsolve(formel, (1000.0, 20.0), xtol=1e-06, maxfev=10000000)

print (x)

0 个答案:

没有答案