Class GaussIntegrator

java.lang.Object
org.hipparchus.analysis.integration.gauss.GaussIntegrator
Direct Known Subclasses:
SymmetricGaussIntegrator

public class GaussIntegrator extends Object
Class that implements the Gaussian rule for integrating a weighted function.
  • Constructor Summary

    Constructors
    Constructor
    Description
    GaussIntegrator(double[] points, double[] weights)
    Creates an integrator from the given points and weights.
    GaussIntegrator(Pair<double[],double[]> pointsAndWeights)
    Creates an integrator from the given pair of points (first element of the pair) and weights (second element of the pair.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Get the order of the integration rule.
    double
    getPoint(int index)
    Gets the integration point at the given index.
    double
    getWeight(int index)
    Gets the weight of the integration point at the given index.
    double
    Returns an estimate of the integral of f(x) * w(x), where w is a weight function that depends on the actual flavor of the Gauss integration scheme.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • GaussIntegrator

      public GaussIntegrator(double[] points, double[] weights) throws MathIllegalArgumentException
      Creates an integrator from the given points and weights. The integration interval is defined by the first and last value of points which must be sorted in increasing order.
      Parameters:
      points - Integration points.
      weights - Weights of the corresponding integration nodes.
      Throws:
      MathIllegalArgumentException - if the points are not sorted in increasing order.
      MathIllegalArgumentException - if points and weights don't have the same length
    • GaussIntegrator

      public GaussIntegrator(Pair<double[],double[]> pointsAndWeights) throws MathIllegalArgumentException
      Creates an integrator from the given pair of points (first element of the pair) and weights (second element of the pair.
      Parameters:
      pointsAndWeights - Integration points and corresponding weights.
      Throws:
      MathIllegalArgumentException - if the points are not sorted in increasing order.
      See Also:
  • Method Details

    • integrate

      public double integrate(UnivariateFunction f)
      Returns an estimate of the integral of f(x) * w(x), where w is a weight function that depends on the actual flavor of the Gauss integration scheme. The algorithm uses the points and associated weights, as passed to the constructor.
      Parameters:
      f - Function to integrate.
      Returns:
      the integral of the weighted function.
    • getNumberOfPoints

      public int getNumberOfPoints()
      Get the order of the integration rule.
      Returns:
      the order of the integration rule (the number of integration points).
    • getPoint

      public double getPoint(int index)
      Gets the integration point at the given index. The index must be in the valid range but no check is performed.
      Parameters:
      index - index of the integration point
      Returns:
      the integration point.
    • getWeight

      public double getWeight(int index)
      Gets the weight of the integration point at the given index. The index must be in the valid range but no check is performed.
      Parameters:
      index - index of the integration point
      Returns:
      the weight.