polyroot
Find Zeros of a Real or Complex Polynomial
Find zeros of a real or complex polynomial.
 Keywords
 math
Usage
polyroot(z)
Arguments
 z
 the vector of polynomial coefficients in increasing order.
Details
A polynomial of degree $n  1$,
$$
p(x) = z_1 + z_2 x + \cdots + z_n x^{n1}$$
is given by its coefficient vector z[1:n]
.
polyroot
returns the $n1$ complex zeros of $p(x)$
using the JenkinsTraub algorithm.
If the coefficient vector z
has zeroes for the highest powers,
these are discarded.
There is no maximum degree, but numerical stability may be an issue for all but lowdegree polynomials.
Value

A complex vector of length $n  1$, where $n$ is the position
of the largest nonzero element of
z
.
Source
C translation by Ross Ihaka of Fortran code in the reference, with modifications by the R Core Team.
References
Jenkins and Traub (1972) TOMS Algorithm 419. Comm. ACM, 15, 9799.
See Also
uniroot
for numerical root finding of arbitrary
functions;
complex
and the zero
example in the demos
directory.
Examples
library(base)
polyroot(c(1, 2, 1))
round(polyroot(choose(8, 0:8)), 11) # guess what!
for (n1 in 1:4) print(polyroot(1:n1), digits = 4)
polyroot(c(1, 2, 1, 0, 0)) # same as the first