Я пытался создать функцию с вычислением, которая использует описанную функцию с использованием следующего fsolve.
мне нужно, чтобы можно было выполнить это вычисление как формулу с возможностью вводить мои собственные значения для r1 и r2.
для этой функции требуется (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)