Class GaussIntegratorFactory
- java.lang.Object
-
- org.hipparchus.analysis.integration.gauss.GaussIntegratorFactory
-
public class GaussIntegratorFactory extends Object
Class that provides different ways to compute the nodes and weights to be used by theGaussian integration rule
.
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_DECIMAL_DIGITS
Number of digits for Legendre high precision.
-
Constructor Summary
Constructors Constructor Description GaussIntegratorFactory()
Simple constructor.GaussIntegratorFactory(int decimalDigits)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SymmetricGaussIntegrator
hermite(int numberOfPoints)
Creates a Gauss-Hermite integrator of the given order.GaussIntegrator
laguerre(int numberOfPoints)
Creates a Gauss-Laguerre integrator of the given order.GaussIntegrator
legendre(int numberOfPoints)
Creates a Gauss-Legendre integrator of the given order.GaussIntegrator
legendre(int numberOfPoints, double lowerBound, double upperBound)
Creates a Gauss-Legendre integrator of the given order.GaussIntegrator
legendreHighPrecision(int numberOfPoints)
Creates a Gauss-Legendre integrator of the given order.GaussIntegrator
legendreHighPrecision(int numberOfPoints, double lowerBound, double upperBound)
Creates an integrator of the given order, and whose call to theintegrate
method will perform an integration on the given interval.
-
-
-
Field Detail
-
DEFAULT_DECIMAL_DIGITS
public static final int DEFAULT_DECIMAL_DIGITS
Number of digits for Legendre high precision.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GaussIntegratorFactory
public GaussIntegratorFactory()
Simple constructor.
-
GaussIntegratorFactory
public GaussIntegratorFactory(int decimalDigits)
Simple constructor.- Parameters:
decimalDigits
- minimum number of decimal digits forlegendreHighPrecision(int)
-
-
Method Detail
-
laguerre
public GaussIntegrator laguerre(int numberOfPoints)
Creates a Gauss-Laguerre integrator of the given order. The call to theintegrate
method will perform an integration on the interval \([0, +\infty)\): the computed value is the improper integral of \(e^{-x} f(x)\) where \(f(x)\) is the function passed to theintegrate
method.- Parameters:
numberOfPoints
- Order of the integration rule.- Returns:
- a Gauss-Legendre integrator.
-
legendre
public GaussIntegrator legendre(int numberOfPoints)
Creates a Gauss-Legendre integrator of the given order. The call to theintegrate
method will perform an integration on the natural interval[-1 , 1]
.- Parameters:
numberOfPoints
- Order of the integration rule.- Returns:
- a Gauss-Legendre integrator.
-
legendre
public GaussIntegrator legendre(int numberOfPoints, double lowerBound, double upperBound) throws MathIllegalArgumentException
Creates a Gauss-Legendre integrator of the given order. The call to theintegrate
method will perform an integration on the given interval.- Parameters:
numberOfPoints
- Order of the integration rule.lowerBound
- Lower bound of the integration interval.upperBound
- Upper bound of the integration interval.- Returns:
- a Gauss-Legendre integrator.
- Throws:
MathIllegalArgumentException
- if number of points is not positive
-
legendreHighPrecision
public GaussIntegrator legendreHighPrecision(int numberOfPoints) throws MathIllegalArgumentException
Creates a Gauss-Legendre integrator of the given order. The call to theintegrate
method will perform an integration on the natural interval[-1 , 1]
.- Parameters:
numberOfPoints
- Order of the integration rule.- Returns:
- a Gauss-Legendre integrator.
- Throws:
MathIllegalArgumentException
- if number of points is not positive
-
legendreHighPrecision
public GaussIntegrator legendreHighPrecision(int numberOfPoints, double lowerBound, double upperBound) throws MathIllegalArgumentException
Creates an integrator of the given order, and whose call to theintegrate
method will perform an integration on the given interval.- Parameters:
numberOfPoints
- Order of the integration rule.lowerBound
- Lower bound of the integration interval.upperBound
- Upper bound of the integration interval.- Returns:
- a Gauss-Legendre integrator.
- Throws:
MathIllegalArgumentException
- if number of points is not positive
-
hermite
public SymmetricGaussIntegrator hermite(int numberOfPoints)
Creates a Gauss-Hermite integrator of the given order. The call to theintegrate
method will perform a weighted integration on the interval \([-\infty, +\infty]\): the computed value is the improper integral of \(e^{-x^2}f(x)\) where \(f(x)\) is the function passed to theintegrate
method.- Parameters:
numberOfPoints
- Order of the integration rule.- Returns:
- a Gauss-Hermite integrator.
-
-