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 the Gaussian integration rule.
  • Field Details

    • DEFAULT_DECIMAL_DIGITS

      public static final int DEFAULT_DECIMAL_DIGITS
      Number of digits for Legendre high precision.
      See Also:
  • Constructor Details

    • GaussIntegratorFactory

      public GaussIntegratorFactory()
      Simple constructor.
    • GaussIntegratorFactory

      public GaussIntegratorFactory(int decimalDigits)
      Simple constructor.
      Parameters:
      decimalDigits - minimum number of decimal digits for legendreHighPrecision(int)
  • Method Details

    • laguerre

      public GaussIntegrator laguerre(int numberOfPoints)
      Creates a Gauss-Laguerre integrator of the given order. The call to the integrate 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 the integrate 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 the integrate 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 the integrate 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 the integrate 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 the integrate 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 the integrate 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 the integrate method.
      Parameters:
      numberOfPoints - Order of the integration rule.
      Returns:
      a Gauss-Hermite integrator.