numpy.polynomial.legendre.legfromroots#
- polynomial.legendre.legfromroots(roots)[source]#
Generate a Legendre series with given roots.
The function returns the coefficients of the polynomial
\[p(x) = (x - r_0) * (x - r_1) * ... * (x - r_n),\]in Legendre form, where the \(r_n\) are the roots specified in
roots
. If a zero has multiplicity n, then it must appear inroots
n times. For instance, if 2 is a root of multiplicity three and 3 is a root of multiplicity 2, thenroots
looks 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 * L_1(x) + ... + c_n * L_n(x)\]The coefficient of the last term is not generally 1 for monic polynomials in Legendre form.
- Parameters:
- rootsarray_like
Sequence containing the roots.
- Returns:
- outndarray
1-D array of coefficients. If all roots are real then out is a real array, if some of the roots are complex, then out is complex even if all the coefficients in the result are real (see Examples below).
See also
Examples
>>> import numpy.polynomial.legendre as L >>> L.legfromroots((-1,0,1)) # x^3 - x relative to the standard basis array([ 0. , -0.4, 0. , 0.4]) >>> j = complex(0,1) >>> L.legfromroots((-j,j)) # x^2 + 1 relative to the standard basis array([ 1.33333333+0.j, 0.00000000+0.j, 0.66666667+0.j]) # may vary