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 Commenti

Roger Stafford
Roger Stafford il 4 Apr 2016
Modificato: Walter Roberson il 4 Apr 2016
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
wow thank you! That really cleared up my confusion!

Accedi per commentare.

 Risposta accettata

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 Commenti

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?
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.
general analytic solutions do not exist. Some quintics and higher can be factored to lower order polynomials.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by