how to find the solution of third order polynomial symbolically?

22 次查看(过去 30 天)
this is my equation, where R is the only unknown
I want to solve this equation symbolically.my simplified polynomial equation becomes a*X^3+b*X+c=0, solve for X. a,b and c are functions of other variables. you can see from above image.
I tried below code
syms R a c d
solve (a*R^3+c*R+d==0,R)
the solution came like below
ans=
root(a*z^3 + c*z + d, z, 1)
root(a*z^3 + c*z + d, z, 2)
root(a*z^3 + c*z + d, z, 3)
Please anyone help me. I don't understand these results.

采纳的回答

Walter Roberson
Walter Roberson 2017-5-24
solve (a*R^3+c*R+d==0,R,'MaxDegree',3)
  2 个评论
Walter Roberson
Walter Roberson 2017-5-25
"When you solve a higher order polynomial equation, the solver might use root to return the results. [...]
Try to get an explicit solution for such equations by calling the solver with MaxDegree. The option specifies the maximum degree of polynomials for which the solver tries to return explicit solutions. The default value is 2. Increasing this value, you can get explicit solutions for higher order polynomials."
In other words, the complete expression for a cubic root is long enough to be awkward, and is not usually explicitly needed, so it gets abbreviated. The complete expression for a quartic (degree 4) is very long and pretty much impossible to understand, so an abbreviation is used.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by