org.apache.commons.math3.analysis.integration
Class IterativeLegendreGaussIntegrator
java.lang.Object
org.apache.commons.math3.analysis.integration.BaseAbstractUnivariateIntegrator
org.apache.commons.math3.analysis.integration.IterativeLegendreGaussIntegrator
- All Implemented Interfaces:
- UnivariateIntegrator
public class IterativeLegendreGaussIntegrator
- extends BaseAbstractUnivariateIntegrator
This algorithm divides the integration interval into equally-sized
sub-interval and on each of them performs a
Legendre-Gauss quadrature.
- Since:
- 3.1
- Version:
- $Id: IterativeLegendreGaussIntegrator.java 1416643 2012-12-03 19:37:14Z tn $
Constructor Summary |
IterativeLegendreGaussIntegrator(int n,
double relativeAccuracy,
double absoluteAccuracy)
Builds an integrator with given accuracies. |
IterativeLegendreGaussIntegrator(int n,
double relativeAccuracy,
double absoluteAccuracy,
int minimalIterationCount,
int maximalIterationCount)
Builds an integrator with given accuracies and iterations counts. |
IterativeLegendreGaussIntegrator(int n,
int minimalIterationCount,
int maximalIterationCount)
Builds an integrator with given iteration counts. |
Method Summary |
protected double |
doIntegrate()
Method for implementing actual integration algorithms in derived
classes. |
Methods inherited from class org.apache.commons.math3.analysis.integration.BaseAbstractUnivariateIntegrator |
computeObjectiveValue, getAbsoluteAccuracy, getEvaluations, getIterations, getMax, getMaximalIterationCount, getMin, getMinimalIterationCount, getRelativeAccuracy, integrate, setup |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
IterativeLegendreGaussIntegrator
public IterativeLegendreGaussIntegrator(int n,
double relativeAccuracy,
double absoluteAccuracy,
int minimalIterationCount,
int maximalIterationCount)
throws NotStrictlyPositiveException,
NumberIsTooSmallException
- Builds an integrator with given accuracies and iterations counts.
- Parameters:
n
- Number of integration points.relativeAccuracy
- Relative accuracy of the result.absoluteAccuracy
- Absolute accuracy of the result.minimalIterationCount
- Minimum number of iterations.maximalIterationCount
- Maximum number of iterations.
- Throws:
NotStrictlyPositiveException
- if minimal number of iterations
is not strictly positive.
NumberIsTooSmallException
- if maximal number of iterations
is smaller than or equal to the minimal number of iterations.
IterativeLegendreGaussIntegrator
public IterativeLegendreGaussIntegrator(int n,
double relativeAccuracy,
double absoluteAccuracy)
- Builds an integrator with given accuracies.
- Parameters:
n
- Number of integration points.relativeAccuracy
- Relative accuracy of the result.absoluteAccuracy
- Absolute accuracy of the result.
IterativeLegendreGaussIntegrator
public IterativeLegendreGaussIntegrator(int n,
int minimalIterationCount,
int maximalIterationCount)
- Builds an integrator with given iteration counts.
- Parameters:
n
- Number of integration points.minimalIterationCount
- Minimum number of iterations.maximalIterationCount
- Maximum number of iterations.
- Throws:
NotStrictlyPositiveException
- if minimal number of iterations
is not strictly positive.
NumberIsTooSmallException
- if maximal number of iterations
is smaller than or equal to the minimal number of iterations.
doIntegrate
protected double doIntegrate()
throws TooManyEvaluationsException,
MaxCountExceededException
- Method for implementing actual integration algorithms in derived
classes.
- Specified by:
doIntegrate
in class BaseAbstractUnivariateIntegrator
- Returns:
- the root.
- Throws:
TooManyEvaluationsException
- if the maximal number of evaluations
is exceeded.
MaxCountExceededException
- if the maximum iteration count is exceeded
or the integrator detects convergence problems otherwise
Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.