28.6 Miscellaneous Functions

: y = poly (A)
: y = poly (x)

If A is a square N-by-N matrix, poly (A) is the row vector of the coefficients of det (z * eye (N) - A), the characteristic polynomial of A.

For example, the following code finds the eigenvalues of A which are the roots of poly (A).

roots (poly (eye (3)))
    ⇒ 1.00001 + 0.00001i
       1.00001 - 0.00001i
       0.99999 + 0.00000i

In fact, all three eigenvalues are exactly 1 which emphasizes that for numerical performance the eig function should be used to compute eigenvalues.

If x is a vector, poly (x) is a vector of the coefficients of the polynomial whose roots are the elements of x. That is, if c is a polynomial, then the elements of d = roots (poly (c)) are contained in c. The vectors c and d are not identical, however, due to sorting and numerical errors.

See also: roots, eig.

: polyout (c)
: polyout (c, x)
: str = polyout (…)

Display a formatted version of the polynomial c.

The formatted polynomial

c(x) = c(1) * x^n + ... + c(n) x + c(n+1)

is returned as a string or written to the screen if nargout is zero.

The second argument x specifies the variable name to use for each term and defaults to the string "s".

See also: polyreduce.

: p = polyreduce (c)

Reduce a polynomial coefficient vector to a minimum number of terms by stripping off any leading zeros.

See also: polyout.