Симптомы поиска минимумов: алгоритмы для решения уравнения не реализованы - PullRequest
0 голосов
/ 10 апреля 2020

Я пытаюсь сделать очень простой расчет с помощью нескольких формул. Единственное, это слишком долго, чтобы записать это и упростить вручную.

Это мои формулы. Каждое отдельное произведение вносит вклад в основное уравнение для «P»

from sympy import *

W, CL               = symbols('W CL')
rho, S, CD, v_inf   = symbols('rho S CD v_inf')
cd_0, k_1, e, AR    = symbols('cd_0 k_1 e AR')
Sd                  = symbols('Sd')
Re                  = symbols('Re')
mu                  = symbols('mu')
b                   = symbols('b')
c_bar               = symbols('c_bar')
k_2, k_3            = symbols('k_2 k_3')

AR      = (b**2)/S
v_inf   = ((2 * W)/(rho*S*CL))**0.5
c_bar   = b/AR
Re      = rho * c_bar * v_inf/mu
cd_0    = k_2 * Re**k_3

cd      = cd_0 + (k_1* CL) + ((CL**2)/(pi*e*AR))
CD      = cd * (1+(Sd/S))


P       = 0.5 * rho * (v_inf**3) * S * CD

P       = simplify(P)
P_prime = P.diff(CL)
print solve(P_prime, CL)

. После выполнения я получаю это сообщение, гласящее: «Не существует алгоритмов для решения уравнения»

NotImplementedError: multiple generators [(S*rho*sqrt(W/(CL*S*rho))/(b*mu))**k_3, CL, sqrt(W/(CL*S*rho))]
No algorithms are implemented to solve equation 14142135623731*rho*(W/(CL*S*rho))**(3/2)*(S + Sd)*(2*CL*S + pi*b**2*e*(k_1 - k_2*k_3*(14142135623731*S*rho*sqrt(W/(CL*S*rho))/(10000000000000*b*mu))**k_3/(2*CL)))/(10000000000000*pi*b**2*e) - 53033008588991*rho*(W/(CL*S*rho))**(3/2)*(S + Sd)*(CL**2*S + pi*b**2*e*(CL*k_1 + k_2*(14142135623731*S*rho*sqrt(W/(CL*S*rho))/(10000000000000*b*mu))**k_3))/(25000000000000*pi*CL*b**2*e)

Есть ли другие способ решить это? Я не могу понять, почему я получаю эту ошибку, потому что это должно быть прямым уравнением для аналитического решения

...