three order complex coefficient polynomial root matlab
4 views (last 30 days)
Show older comments
Hi, I would like to find the root for a 3rd order polynomial with complex coefficient.
The polynomial is like:
28x^3 + Ax^2 + Bx - C = 0;
A,B,C are complex numbers.
I appreciate if anyone can help.
0 Comments
Answers (3)
Star Strider
on 26 May 2023
There are at least two options —
z = complex(randn(3,1), randn(3,1))
r = roots([28; z])
syms x
p = 28*x.^3 + z(1,:)*x.^2 + z(2,:)*x + z(3,:);
vpap = vpa(p, 5)
r = vpa(solve(p), 5)
.
0 Comments
John D'Errico
on 26 May 2023
Another classic solution is to find the matrix that has the same eigenvalues as your polynomial has roots. Then use eig to compute the eigenvalues of this "companion matrix". This is in fact what roots does.
0 Comments
Walter Roberson
on 26 May 2023
syms x A B C
eqn = 28*x^3 + A*x^2 + B*x - C == 0;
solutions = solve(eqn, x, 'MaxDegree', 3)
char(solutions(1))
char(solutions(2))
char(solutions(3))
0 Comments
See Also
Categories
Find more on Polynomials in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!