SciPy

numpy.polynomial.laguerre.lagroots

numpy.polynomial.laguerre.lagroots(c)[source]

Compute the roots of a Laguerre series.

Return the roots (a.k.a. “zeros”) of the polynomial

p(x) = \sum_i c[i] * L_i(x).

Parameters:
c : 1-D array_like

1-D array of coefficients.

Returns:
out : ndarray

Array of the roots of the series. If all the roots are real, then out is also real, otherwise it is complex.

See also

polyroots, legroots, chebroots, hermroots, hermeroots

Notes

The root estimates are obtained as the eigenvalues of the companion matrix, Roots far from the origin of the complex plane may have large errors due to the numerical instability of the series for such values. Roots with multiplicity greater than 1 will also show larger errors as the value of the series near such points is relatively insensitive to errors in the roots. Isolated roots near the origin can be improved by a few iterations of Newton’s method.

The Laguerre series basis polynomials aren’t powers of x so the results of this function may seem unintuitive.

Examples

>>> from numpy.polynomial.laguerre import lagroots, lagfromroots
>>> coef = lagfromroots([0, 1, 2])
>>> coef
array([  2.,  -8.,  12.,  -6.])
>>> lagroots(coef)
array([-4.4408921e-16,  1.0000000e+00,  2.0000000e+00])

Previous topic

numpy.polynomial.laguerre.laggrid3d

Next topic

numpy.polynomial.laguerre.lagfromroots