cubic polynomial with variables
5 views (last 30 days)
Show older comments
Hello everyone,
This is probably a fairly easy question to answer.
I am trying to solve a 3rd degree polynomial with 4 variables, a b c d, each functions of k1, k2, Tr, Tf (or some of those).
Is it possible to obtain the roots of the polynomial in terms of k1, k2, Tf, Tr?
Thanks for your help,
Mark
0 Comments
Answers (3)
Walter Roberson
on 4 Jul 2012
syms x k1 k2 Tr Tf
a = SomeFunction(k1,k2,Tr,Tf);
b = SomeOtherFunction(k1,k2,Tr,Tf);
c = AThirdFunction(k1,k2,Tr,Tf);
d = FourthFunction(k1,k2,Tr,Tf);
CubeRoots = solve( a*x^3 + b*x^2 + c*x + d, x);
You might also want to simplify() each of the roots.
I will caution you that the results you get out are likely to be messy to read: the generalized solution for a cubic is not fun to make mental sense of. (Quadratic can be a lot worse though!)
0 Comments
mark wentink
on 4 Jul 2012
1 Comment
Walter Roberson
on 5 Jul 2012
Only about 10 lines? Then MuPAD has already done quite a good job of simplifying: the result that I find is over 4000 characters, about 30 lines each over 128 characters long.
Symbolic forms of cube roots are long, period. There isn't much in the way of simplification available. There is common sub-expression optimization, which gives you efficiencies but often isn't much more readable.
See Also
Categories
Find more on Polynomials in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!