scipy.special.roots_hermite¶
-
scipy.special.
roots_hermite
(n, mu=False)[source]¶ Gauss-Hermite (physicst’s) quadrature.
Computes the sample points and weights for Gauss-Hermite quadrature. The sample points are the roots of the n-th degree Hermite polynomial, \(H_n(x)\). These sample points and weights correctly integrate polynomials of degree \(2n - 1\) or less over the interval \([-\infty, \infty]\) with weight function \(f(x) = e^{-x^2}\).
- Parameters
- nint
quadrature order
- mubool, optional
If True, return the sum of the weights, optional.
- Returns
- xndarray
Sample points
- wndarray
Weights
- mufloat
Sum of the weights
See also
scipy.integrate.quadrature
,scipy.integrate.fixed_quad
,numpy.polynomial.hermite.hermgauss
,roots_hermitenorm
Notes
For small n up to 150 a modified version of the Golub-Welsch algorithm is used. Nodes are computed from the eigenvalue problem and improved by one step of a Newton iteration. The weights are computed from the well-known analytical formula.
For n larger than 150 an optimal asymptotic algorithm is applied which computes nodes and weights in a numerically stable manner. The algorithm has linear runtime making computation for very large n (several thousand or more) feasible.
References
- townsend.trogdon.olver-2014
Townsend, A. and Trogdon, T. and Olver, S. (2014) Fast computation of Gauss quadrature nodes and weights on the whole real line. arXiv:1410.5286.
- townsend.trogdon.olver-2015
Townsend, A. and Trogdon, T. and Olver, S. (2015) Fast computation of Gauss quadrature nodes and weights on the whole real line. IMA Journal of Numerical Analysis DOI:10.1093/imanum/drv002.