四元方程求解,vpasolve函数。

16 Ansichten (letzte 30 Tage)
大佬们帮忙看看这个四元方程为什么解不出来:
eq1=sym('a/(pi/8*(a-b)^3*b+pi/8*(a-2*b-c)^3*c+pi/8*(a-2*b-2*c-0.02)^3*0.02))-645454.5455/(285551.776+50948.722*(1-a/5.8)+74796.986*(1-(a/5.8)^2))==0');
eq2=sym('a/100+0.00635-b==0');
eq3=sym('(a-2*b-((a-2*b)^4-64*d/pi)^0.25)/2-c==0');
eq4=sym('6.087*(4.772-pi/8*(a-b)^3*b-pi/8*(a-2*b-2*c-0.02)^3*0.02)-d==0');
S=vpasolve(eq1,eq2,eq3,eq4);
a=S.a
b=S.b
c=S.c
d=S.d

Akzeptierte Antwort

新锦江娱乐游戏官方网站【微8785092】
有数值解的,只是Matlab现有的方程求解函数(vpasolve, fsolve等)弱了点,下面是1stOpt计算结果,非常容易:
代码:
Function
a/(pi/8*(a-b)^3*b+pi/8*(a-2*b-c)^3*c+pi/8*(a-2*b-2*c-0.02)^3*0.02)-645454.5455/(285551.776+50948.722*(1-a/5.8)+74796.986*(1-(a/5.8)^2))=0;
a/100+0.00635-b=0;
(a-2*b-((a-2*b)^4-64*d/pi)^0.25)/2-c=0;
6.087*(4.772-pi/8*(a-b)^3*b-pi/8*(a-2*b-2*c-0.02)^3*0.02)-d=0;
结果:
a: 5.52094929269361
b: 0.0615594929269876
c: -0.0425485441515863
d: -2.69065852745378

Weitere Antworten (0)

Kategorien

Mehr zu 数值积分和微分方程 finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!