Generate a monic polynomial with given roots.
Return the coefficients of the polynomial\[p(x) = (x - r_0) * (x - r_1) * ... * (x - r_n),\]
r_nare the roots specified in
roots. If a zero has multiplicity n, then it must appear in
rootsn times. For instance, if 2 is a root of multiplicity three and 3 is a root of multiplicity 2, then
rootslooks something like [2, 2, 2, 3, 3]. The roots can appear in any order.
If the returned coefficients are c, then\[p(x) = c_0 + c_1 * x + ... + x^n\]
The coefficient of the last term is 1 for monic polynomials in this form.
Sequence containing the roots.
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).
The coefficients are determined by multiplying together linear factors of the form
(x - r_i), i.e.\[p(x) = (x - r_0) (x - r_1) ... (x - r_n)\]
n == len(roots) - 1; note that this implies that
1is always returned for \(a_n\).
>>> 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])