MATLAB Answers

How get the maximal positive root of polynomial?

5 views (last 30 days)
I have such a function which computes positive roots of 8th order polynomial.
function res = lambdazero1( l, a )
p = [-2 * l^4, 0, l^4 * (3 * a^2 - 2 * l^2 + 3), 0, 0, 0, l^2 * ( l^2 -3 * a^2 + a^6 * ( l^2-3 ) ), 0, 2 * a^6];
sol = roots(p);
res = sol(imag(sol) == 0 & sol > 0);
end
It turns out that for some values of "l" and "a" it has several positive roots. Any idea how to get the maximal positive root?
Many thanks in advance.

Accepted Answer

Torsten
Torsten on 4 Feb 2016
Add
res = max(res)
in your code from above.
Best wishes
Torsten.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!