end value has z

15 ビュー (過去 30 日間)
Natalia Gutierrez
Natalia Gutierrez 2019 年 10 月 6 日
回答済み: Walter Roberson 2019 年 10 月 6 日
Here is my code:
syms cos3 sin3 q theta3
B = ((((((3*cos3) + 10)-(3*sin3))*12)^2)/(576))+(((3*sin3-3*cos3)^2)-((3*cos3+10)^2)-((-3*sin3)^2));
B1 = subs(B,cos3,(1-q^2)/(1+q^2));
B2 = subs(B1,sin3,(2*q/(1+(q^2))));
Q = subs(B2,q,tan(theta3/2));
theta_3 = solve(Q, theta3, 'MaxDegree',1)
have tried
theta_3 = solve(Q, theta3)
returning
theta_3 =
2*atan(root(z^4 - (20*z^3)/37 + (194*z^2)/37 + (100*z)/37 + 157/37, z, 1))
please help since I dont know what to do.

回答 (1 件)

Walter Roberson
Walter Roberson 2019 年 10 月 6 日
theta_3 = simplify( solve(Q, theta3, 'MaxDegree',4) );
You will get four closed-form solutions that look similar t
-2*atan(((-1)^(3/4)*805^(3/4)*814^(1/4)*(50156 + 1500747^(1/2)*45i)^(1/4)*(- 50156 - 1500747^(1/2)*45i)^(1/6)*(3*4366^(1/2)*(- 65527*37^(1/2)*(65527 + 37*(- 50156 + 1500747^(1/2)*45i)^(2/3) - 1757*(- 50156 + 1500747^(1/2)*45i)^(1/3))^(1/2) + 38940*222^(1/2)*(- 50156 + 1500747^(1/2)*45i)^(1/2) - 3514*37^(1/2)*(- 50156 + 1500747^(1/2)*45i)^(1/3)*(65527 + 37*(- 50156 + 1500747^(1/2)*45i)^(2/3) - 1757*(- 50156 + 1500747^(1/2)*45i)^(1/3))^(1/2) - 37*37^(1/2)*(- 50156 + 1500747^(1/2)*45i)^(2/3)*(65527 + 37*(- 50156 + 1500747^(1/2)*45i)^(2/3) - 1757*(- 50156 + 1500747^(1/2)*45i)^(1/3))^(1/2))^(1/2) - 37^(3/4)*177^(1/2)*(6^(1/2)*(65527 + 37*(- 50156 + 1500747^(1/2)*45i)^(2/3) - 1757*(- 50156 + 1500747^(1/2)*45i)^(1/3))^(3/4) - 15*(- 50156 + 1500747^(1/2)*45i)^(1/6)*(65527 + 37*(- 50156 + 1500747^(1/2)*45i)^(2/3) - 1757*(- 50156 + 1500747^(1/2)*45i)^(1/3))^(1/4)))*(1500747^(1/2)*195027i + 44170*(- 50156 + 1500747^(1/2)*45i)^(2/3) + 37*(- 50156 + 1500747^(1/2)*45i)^(1/3)*(83725 + 1500747^(1/2)*111i) + 68879755)^(1/4))/22800012840990)
If you are able to make sense of that, then your visualization is better than mine!
I would suggest to you that most of the time you have no interest in the exact expression for the root of a quartic or even a cubic: most of the time you should use vpasolve() instead of solve() to get numeric approximations.

製品


リリース

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by