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
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
2016-4-5
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Utilities for the Solver 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!