solve function does not give me value of root

my code is simple:
syms x y a b c
a=0.5;
b=0.0092;
c=0.04;
y=x^2+1/x^3;
solve(a*x^2+b*y+c)
matlab gives:
ans =
RootOf(z^5 + (100*z^3)/1273 + 23/1273, z)[1]
RootOf(z^5 + (100*z^3)/1273 + 23/1273, z)[2]
RootOf(z^5 + (100*z^3)/1273 + 23/1273, z)[3]
RootOf(z^5 + (100*z^3)/1273 + 23/1273, z)[4]
RootOf(z^5 + (100*z^3)/1273 + 23/1273, z)[5]
BUT, when I change y to y=x^2+1
matlab gives:
ans =
-(156579^(1/2)*1i)/1273
(156579^(1/2)*1i)/1273
WHY is that? I dont see there is so much difference. hope someone could help me, THanks!!

2 件のコメント

Roger Stafford
Roger Stafford 2016 年 4 月 4 日
編集済み: Walter Roberson 2016 年 4 月 4 日
The difference between "y=x^2+1/x^3" and "y=x^2+1" is that the first leads to a fifth degree polynomial equation and the second to a quadratic equation. We all learned how to solve quadratic equations in high school, but mathematicians have shown that "In algebra, the Abel–Ruffini theorem (also known as Abel's impossibility theorem) states that there is no general algebraic solution—that is, solution in radicals—to polynomial equations of degree five or higher with arbitrary coefficients". See
ZA niceguy
ZA niceguy 2016 年 4 月 5 日
wow thank you! That really cleared up my confusion!

サインインしてコメントする。

 採用された回答

Star Strider
Star Strider 2016 年 4 月 4 日

0 投票

Use the vpasolve function instead:
syms x y a b c
a=0.5;
b=0.0092;
c=0.04;
y=x^2+1/x^3;
x_sol = vpasolve(a*x^2+b*y+c)
x_sol =
-0.4157571755823635878339736950704
- 0.12544667013145313389016347683479 - 0.46115251800229378352756949075526i
- 0.12544667013145313389016347683479 + 0.46115251800229378352756949075526i
0.33332525792263492780715032437 - 0.28135841861289745219925388215346i
0.33332525792263492780715032437 + 0.28135841861289745219925388215346i

3 件のコメント

ZA niceguy
ZA niceguy 2016 年 4 月 4 日
thanks! this one helps. Still curious about why sometimes solve function does not give root? is it because the equation too complex that a theoretical correct root is not available?
Star Strider
Star Strider 2016 年 4 月 4 日
My pleasure.
It’s not that it’s too complex, it’s that analytic solutions to quintic and higher polynomials simply don’t exist. See Roger Stafford’s Comment to your original Question, with respect to the Abel–Ruffini theorem, for a comprehensive discussion.
Walter Roberson
Walter Roberson 2016 年 4 月 4 日
general analytic solutions do not exist. Some quintics and higher can be factored to lower order polynomials.

サインインしてコメントする。

その他の回答 (0 件)

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by