Как решить / оптимизировать 9 нелинейных уравнений с помощью решателя кубических уравнений в MATLAB? - PullRequest
0 голосов
/ 15 октября 2019

У меня возникли проблемы с решением сложной нелинейной системы ниже. logmn как в logmean.

Решатель Excel способен легко решить систему. Я изменяю Ff, m, n переменных для оптимизации результатов (Ff Xfc-Fp x-Fr * m) ^ 2 * 1000, близких к 0) из решателя кубических уравнений, включающего cos (θ / 3). Однако у MATLAB нет такого инструмента оптимизации.

syms x y z Fr Fp Ff m n k Pr Pp Pf G1 G2 G3 Xfc Xfh Xfn s r L miu

eq1=x+y+z-1==0;
eq2=m+n+k-1==0;
eq3=Fr+Fp-Ff==0;
eq4=m*Fr+Fp*x-Ff*Xfc==0;
eq5=n*Fr+Fp*y-Ff*Xfh==0;
eq6=y*G1*[logmn(Pf,Pr)*logmn(Xfc,m)-x*Pp]-x*G2*[logmn(Pf,Pr)*logmn(Xfh,n)-y*Pp]==0;
eq7=z*G1*[logmn(Pf,Pr)*logmn(Xfc,m)-x*Pp]-x*G3*[logmn(Pf,Pr)*logmn(Xfn,k)-z*Pp]==0;
eq8=Pr-Pf+(8*logmn(Ff,Fr)*miu*L)/(3.14*r^4)==0;
eq9=2*3.14*r*L*s*[G1*[logmn(Pf,Pr)*logmn(Xfc,m)-x*Pp]+G2*[logmn(Pf,Pr)*logmn(Xfh,n)-y*Pp]+G3* 
[logmn(Pf,Pr)*logmn(Xfn,k)-z*Pp]]-Fp==0;

Я пытался использовать fsolve и обычное решение. Но либо это дает мне мнимые результаты, либо пустой массив.

Спасибо за любой вклад!

...