Class HermiteRuleFactory
java.lang.Object
org.apache.commons.math3.analysis.integration.gauss.BaseRuleFactory<Double>
org.apache.commons.math3.analysis.integration.gauss.HermiteRuleFactory
Factory that creates a
Gauss-type quadrature rule using Hermite polynomials
of the first kind.
Such a quadrature rule allows the calculation of improper integrals
of a function
\(f(x) e^{-x^2}\)
Recurrence relation and weights computation follow Abramowitz and Stegun, 1964.
The coefficients of the standard Hermite polynomials grow very rapidly. In order to avoid overflows, each Hermite polynomial is normalized with respect to the underlying scalar product. The initial interval for the application of the bisection method is based on the roots of the previous Hermite polynomial (interlacing). Upper and lower bounds of these roots are provided by
I. Krasikov, Nonnegative quadratic forms and bounds on orthogonal polynomials, Journal of Approximation theory 111, 31-49
- Since:
- 3.3
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncomputeRule
(int numberOfPoints) Computes the rule for the given order.Methods inherited from class org.apache.commons.math3.analysis.integration.gauss.BaseRuleFactory
addRule, getRule, getRuleInternal
-
Field Details
-
SQRT_PI
private static final double SQRT_PIπ1/2- See Also:
-
H0
private static final double H0π-1/4- See Also:
-
H1
private static final double H1π-1/4 √2- See Also:
-
-
Constructor Details
-
HermiteRuleFactory
public HermiteRuleFactory()
-
-
Method Details
-
computeRule
Computes the rule for the given order.- Specified by:
computeRule
in classBaseRuleFactory<Double>
- Parameters:
numberOfPoints
- Order of the rule to be computed.- Returns:
- the computed rule.
- Throws:
DimensionMismatchException
- if the elements of the pair do not have the same length.
-