org.apache.commons.math3.analysis.integration.gauss

## Class GaussIntegrator

- java.lang.Object
- - org.apache.commons.math3.analysis.integration.gauss.GaussIntegrator

- Direct Known Subclasses:
    SymmetricGaussIntegrator

      public class GaussIntegrator
      extends Object

  Class that implements the Gaussian rule for `integrating` a weighted function.
  Since:
    3.1
  Version:
    $Id: GaussIntegrator.java 1500603 2013-07-08 08:31:49Z luc $

- - ### Constructor Summary

    Constructors
    Constructor and 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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getNumberOfPoints()`
    `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` | `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.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### GaussIntegrator

          public GaussIntegrator(double[] points,
                         double[] weights)
                          throws NonMonotonicSequenceException,
                                 DimensionMismatchException

      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:
        `NonMonotonicSequenceException` - if the `points` are not sorted in increasing order.
        `DimensionMismatchException` - if points and weights don't have the same length

    - #### GaussIntegrator

          public GaussIntegrator(Pair<double[],double[]> pointsAndWeights)
                          throws NonMonotonicSequenceException

      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:
        `NonMonotonicSequenceException` - if the `points` are not sorted in increasing order.
      See Also:
        `GaussIntegrator(double[], double[])`

  - ### Method Detail

    - #### 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()

      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.

Copyright © 2003–2014 The Apache Software Foundation. All rights reserved.