numpy.polynomial.polynomial.polyfromroots — NumPy v1.13 Manual (original) (raw)
numpy.polynomial.polynomial. polyfromroots(roots)[source]¶
Generate a monic polynomial with given roots.
Return the coefficients of the polynomial

where the r_n are the roots specified in roots. If a zero has multiplicity n, then it must appear in roots n times. For instance, if 2 is a root of multiplicity three and 3 is a root of multiplicity 2, then roots looks something like [2, 2, 2, 3, 3]. The roots can appear in any order.
If the returned coefficients are c, then

The coefficient of the last term is 1 for monic polynomials in this form.
| Parameters: | roots : array_like Sequence containing the roots. |
|---|---|
| Returns: | out : ndarray 1-D array of the polynomial’s coefficients If all the roots are real, then out is also real, otherwise it is complex. (see Examples below). |
See also
chebfromroots, legfromroots, lagfromroots, hermfromroots, hermefromroots
Notes
The coefficients are determined by multiplying together linear factors of the form (x - r_i), i.e.

where n == len(roots) - 1; note that this implies that 1 is always returned for
.
Examples
from numpy.polynomial import polynomial as P P.polyfromroots((-1,0,1)) # x(x - 1)(x + 1) = x^3 - x array([ 0., -1., 0., 1.]) j = complex(0,1) P.polyfromroots((-j,j)) # complex returned, though values are real array([ 1.+0.j, 0.+0.j, 1.+0.j])