Class HermiteRuleFactory
- java.lang.Object
-
- org.hipparchus.analysis.integration.gauss.BaseRuleFactory<Double>
-
- org.hipparchus.analysis.integration.gauss.HermiteRuleFactory
-
public class HermiteRuleFactory extends BaseRuleFactory<Double>
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
-
-
Constructor Summary
Constructors Constructor Description HermiteRuleFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Pair<Double[],Double[]>
computeRule(int numberOfPoints)
Computes the rule for the given order.-
Methods inherited from class org.hipparchus.analysis.integration.gauss.BaseRuleFactory
addRule, getRule, getRuleInternal
-
-
-
-
Method Detail
-
computeRule
protected Pair<Double[],Double[]> computeRule(int numberOfPoints) throws MathIllegalArgumentException
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:
MathIllegalArgumentException
- if the elements of the pair do not have the same length.
-
-