Class LegendreGaussIntegrator

  • All Implemented Interfaces:
    UnivariateIntegrator

    @Deprecated
    public class LegendreGaussIntegrator
    extends BaseAbstractUnivariateIntegrator
    Deprecated.
    As of 3.1 (to be removed in 4.0). Please use IterativeLegendreGaussIntegrator instead.
    Implements the Legendre-Gauss quadrature formula.

    Legendre-Gauss integrators are efficient integrators that can accurately integrate functions with few function evaluations. A Legendre-Gauss integrator using an n-points quadrature formula can integrate 2n-1 degree polynomials exactly.

    These integrators evaluate the function on n carefully chosen abscissas in each step interval (mapped to the canonical [-1,1] interval). The evaluation abscissas are not evenly spaced and none of them are at the interval endpoints. This implies the function integrated can be undefined at integration interval endpoints.

    The evaluation abscissas xi are the roots of the degree n Legendre polynomial. The weights ai of the quadrature formula integrals from -1 to +1 ∫ Li2 where Li (x) = ∏ (x-xk)/(xi-xk) for k != i.

    Since:
    1.2
    • Field Detail

      • ABSCISSAS_2

        private static final double[] ABSCISSAS_2
        Deprecated.
        Abscissas for the 2 points method.
      • WEIGHTS_2

        private static final double[] WEIGHTS_2
        Deprecated.
        Weights for the 2 points method.
      • ABSCISSAS_3

        private static final double[] ABSCISSAS_3
        Deprecated.
        Abscissas for the 3 points method.
      • WEIGHTS_3

        private static final double[] WEIGHTS_3
        Deprecated.
        Weights for the 3 points method.
      • ABSCISSAS_4

        private static final double[] ABSCISSAS_4
        Deprecated.
        Abscissas for the 4 points method.
      • WEIGHTS_4

        private static final double[] WEIGHTS_4
        Deprecated.
        Weights for the 4 points method.
      • ABSCISSAS_5

        private static final double[] ABSCISSAS_5
        Deprecated.
        Abscissas for the 5 points method.
      • WEIGHTS_5

        private static final double[] WEIGHTS_5
        Deprecated.
        Weights for the 5 points method.
      • abscissas

        private final double[] abscissas
        Deprecated.
        Abscissas for the current method.
      • weights

        private final double[] weights
        Deprecated.
        Weights for the current method.
    • Constructor Detail

      • LegendreGaussIntegrator

        public LegendreGaussIntegrator​(int n,
                                       double relativeAccuracy,
                                       double absoluteAccuracy,
                                       int minimalIterationCount,
                                       int maximalIterationCount)
                                throws MathIllegalArgumentException,
                                       NotStrictlyPositiveException,
                                       NumberIsTooSmallException
        Deprecated.
        Build a Legendre-Gauss integrator with given accuracies and iterations counts.
        Parameters:
        n - number of points desired (must be between 2 and 5 inclusive)
        relativeAccuracy - relative accuracy of the result
        absoluteAccuracy - absolute accuracy of the result
        minimalIterationCount - minimum number of iterations
        maximalIterationCount - maximum number of iterations
        Throws:
        MathIllegalArgumentException - if number of points is out of [2; 5]
        NotStrictlyPositiveException - if minimal number of iterations is not strictly positive
        NumberIsTooSmallException - if maximal number of iterations is lesser than or equal to the minimal number of iterations
      • LegendreGaussIntegrator

        public LegendreGaussIntegrator​(int n,
                                       double relativeAccuracy,
                                       double absoluteAccuracy)
                                throws MathIllegalArgumentException
        Deprecated.
        Build a Legendre-Gauss integrator with given accuracies.
        Parameters:
        n - number of points desired (must be between 2 and 5 inclusive)
        relativeAccuracy - relative accuracy of the result
        absoluteAccuracy - absolute accuracy of the result
        Throws:
        MathIllegalArgumentException - if number of points is out of [2; 5]
      • LegendreGaussIntegrator

        public LegendreGaussIntegrator​(int n,
                                       int minimalIterationCount,
                                       int maximalIterationCount)
                                throws MathIllegalArgumentException
        Deprecated.
        Build a Legendre-Gauss integrator with given iteration counts.
        Parameters:
        n - number of points desired (must be between 2 and 5 inclusive)
        minimalIterationCount - minimum number of iterations
        maximalIterationCount - maximum number of iterations
        Throws:
        MathIllegalArgumentException - if number of points is out of [2; 5]
        NotStrictlyPositiveException - if minimal number of iterations is not strictly positive
        NumberIsTooSmallException - if maximal number of iterations is lesser than or equal to the minimal number of iterations