roots — roots of polynomials
[x]=roots(p) [x]=roots(p,'e')
polynomial with real or complex coefficients or vector of the polynomial coefficients in decreasing degree order (Matlab compatibility).
x=roots(p)
returns in the complex vector
x
the roots of the polynomial p
. For
real polynomials of degree <=100 the fast RPOLY algorithm (based on
Jenkins-Traub method) is used. In the other cases the roots are computed
as the eigenvalues of the associated companion matrix. Use
x=roots(p,'e')
to force this algorithm in any
cases.
p=poly([0,10,1+%i,1-%i],'x'); roots(p) A=rand(3,3);roots(poly(A,'x')) // Evals by characteristic polynomial spec(A)
The RPOLY algorithm is described in "Algorithm 493: Zeros of a Real Polynomial", ACM TOMS Volume 1, Issue 2 (June 1975), pp. 178-189
Jenkins, M. A. and Traub, J. F. (1970), A Three-Stage Algorithm for Real Polynomials Using Quadratic Iteration, SIAM J. Numer. Anal., 7(1970), 545-566.
Jenkins, M. A. and Traub, J. F. (1970), Principles for Testing Polynomial Zerofinding Programs. ACM TOMS 1, 1 (March 1975), pp. 26-34