Professional Documents
Culture Documents
roots
Polynomial roots
Syntax
r = roots(p)
Description
r = roots(p) returns the roots of the polynomial represented by p as a column vector. Input p is a example
vector containing n+1 polynomial coefficients, starting with the coefficient of xn. A coefficient of 0
indicates an intermediate power that is not present in the equation. For example, p = [3 2 -2]
represents the polynomial 3x + 2x − 2 . 2
p = [3 -2 -4];
r = roots(p)
r = 2×1
1.5352
-0.8685
p = [1 0 0 0 -1];
r = roots(p)
r = 4×1 complex
-1.0000 + 0.0000i
0.0000 + 1.0000i
0.0000 - 1.0000i
1.0000 + 0.0000i
Input Arguments
collapse all
https://www.mathworks.com/help/matlab/ref/roots.html 1/3
31/10/2019 Polynomial roots - MATLAB roots
p — Polynomial coefficients
vector
Polynomial coefficients, specified as a vector. For example, the vector [1 0 1] represents the polynomial
x + 1 , and the vector [3.13 -2.21 5.99] represents the polynomial 3.13x − 2.21x + 5.99 .
2 2
Tips
• Use the poly function to obtain a polynomial from its roots: p = poly(r). The poly function is the inverse of the
roots function.
• Use the fzero function to find the roots of nonlinear equations. While the roots function works only with
polynomials, the fzero function is more broadly applicable to different types of equations.
Algorithms
The roots function considers p to be a vector with n+1 elements representing the nth degree characteristic
polynomial of an n-by-n matrix, A. The roots of the polynomial are calculated by computing the eigenvalues of the
companion matrix, A.
A = diag(ones(n-1,1),-1);
A(1,:) = -p(2:n+1)./p(1);
r = eig(A)
The results produced are the exact eigenvalues of a matrix within roundoff error of the companion matrix, A.
However, this does not mean that they are the exact roots of a polynomial whose coefficients are within roundoff
error of those in p.
Extended Capabilities
GPU Arrays
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing
Toolbox™.
See Also
fzero | poly | polyval | residue
Topics
Roots of Polynomials
Create and Evaluate Polynomials
https://www.mathworks.com/help/matlab/ref/roots.html 2/3
31/10/2019 Polynomial roots - MATLAB roots
https://www.mathworks.com/help/matlab/ref/roots.html 3/3