Class SymmetricGaussIntegrator


  • public class SymmetricGaussIntegrator
    extends GaussIntegrator
    This class's implements integrate method assuming that the integral is symmetric about 0. This allows to reduce numerical errors.
    • Constructor Detail

      • SymmetricGaussIntegrator

        public SymmetricGaussIntegrator​(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
    • 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.
        Overrides:
        integrate in class GaussIntegrator
        Parameters:
        f - Function to integrate.
        Returns:
        the integral of the weighted function.