Class FieldSimpsonIntegrator<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.hipparchus.analysis.integration.BaseAbstractFieldUnivariateIntegrator<T>
-
- org.hipparchus.analysis.integration.FieldSimpsonIntegrator<T>
-
- Type Parameters:
T
- Type of the field elements.
- All Implemented Interfaces:
FieldUnivariateIntegrator<T>
public class FieldSimpsonIntegrator<T extends CalculusFieldElement<T>> extends BaseAbstractFieldUnivariateIntegrator<T>
Implements Simpson's Rule for integration of real univariate functions. For reference, see Introduction to Numerical Analysis, ISBN 038795452X, chapter 3.This implementation employs the basic trapezoid rule to calculate Simpson's rule.
- Since:
- 2.0
-
-
Field Summary
Fields Modifier and Type Field Description static int
SIMPSON_MAX_ITERATIONS_COUNT
Maximal number of iterations for Simpson.-
Fields inherited from class org.hipparchus.analysis.integration.BaseAbstractFieldUnivariateIntegrator
DEFAULT_ABSOLUTE_ACCURACY, DEFAULT_MAX_ITERATIONS_COUNT, DEFAULT_MIN_ITERATIONS_COUNT, DEFAULT_RELATIVE_ACCURACY, iterations
-
-
Constructor Summary
Constructors Constructor Description FieldSimpsonIntegrator(Field<T> field)
Construct an integrator with default settings.FieldSimpsonIntegrator(Field<T> field, double relativeAccuracy, double absoluteAccuracy, int minimalIterationCount, int maximalIterationCount)
Build a Simpson integrator with given accuracies and iterations counts.FieldSimpsonIntegrator(Field<T> field, int minimalIterationCount, int maximalIterationCount)
Build a Simpson integrator with given iteration counts.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected T
doIntegrate()
Method for implementing actual integration algorithms in derived classes.-
Methods inherited from class org.hipparchus.analysis.integration.BaseAbstractFieldUnivariateIntegrator
computeObjectiveValue, getAbsoluteAccuracy, getEvaluations, getField, getIterations, getMax, getMaximalIterationCount, getMin, getMinimalIterationCount, getRelativeAccuracy, integrate, setup
-
-
-
-
Field Detail
-
SIMPSON_MAX_ITERATIONS_COUNT
public static final int SIMPSON_MAX_ITERATIONS_COUNT
Maximal number of iterations for Simpson.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
FieldSimpsonIntegrator
public FieldSimpsonIntegrator(Field<T> field, double relativeAccuracy, double absoluteAccuracy, int minimalIterationCount, int maximalIterationCount) throws MathIllegalArgumentException
Build a Simpson integrator with given accuracies and iterations counts.- Parameters:
field
- field to which function argument and value belongrelativeAccuracy
- relative accuracy of the resultabsoluteAccuracy
- absolute accuracy of the resultminimalIterationCount
- minimum number of iterationsmaximalIterationCount
- maximum number of iterations (must be less than or equal toSIMPSON_MAX_ITERATIONS_COUNT
)- Throws:
MathIllegalArgumentException
- if minimal number of iterations is not strictly positiveMathIllegalArgumentException
- if maximal number of iterations is lesser than or equal to the minimal number of iterationsMathIllegalArgumentException
- if maximal number of iterations is greater thanSIMPSON_MAX_ITERATIONS_COUNT
-
FieldSimpsonIntegrator
public FieldSimpsonIntegrator(Field<T> field, int minimalIterationCount, int maximalIterationCount) throws MathIllegalArgumentException
Build a Simpson integrator with given iteration counts.- Parameters:
field
- field to which function argument and value belongminimalIterationCount
- minimum number of iterationsmaximalIterationCount
- maximum number of iterations (must be less than or equal toSIMPSON_MAX_ITERATIONS_COUNT
)- Throws:
MathIllegalArgumentException
- if minimal number of iterations is not strictly positiveMathIllegalArgumentException
- if maximal number of iterations is lesser than or equal to the minimal number of iterationsMathIllegalArgumentException
- if maximal number of iterations is greater thanSIMPSON_MAX_ITERATIONS_COUNT
-
FieldSimpsonIntegrator
public FieldSimpsonIntegrator(Field<T> field)
Construct an integrator with default settings.- Parameters:
field
- field to which function argument and value belong (max iteration count set toSIMPSON_MAX_ITERATIONS_COUNT
)
-
-
Method Detail
-
doIntegrate
protected T doIntegrate() throws MathIllegalStateException
Method for implementing actual integration algorithms in derived classes.- Specified by:
doIntegrate
in classBaseAbstractFieldUnivariateIntegrator<T extends CalculusFieldElement<T>>
- Returns:
- the root.
- Throws:
MathIllegalStateException
- if the maximal number of evaluations is exceeded.
-
-