Class RombergTrapezoidalQuadratureIntegrator
java.lang.Object
com.irurueta.numerical.integration.Integrator
com.irurueta.numerical.integration.RombergIntegrator<TrapezoidalQuadrature>
com.irurueta.numerical.integration.RombergTrapezoidalQuadratureIntegrator
public class RombergTrapezoidalQuadratureIntegrator
extends RombergIntegrator<TrapezoidalQuadrature>
Computes function integration by using Romberg integration.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final doubleDefault accuracy.private final double[]Successive trapezoidal step sizes.private final PolynomialInterpolatorPolynomial interpolator.private static final intMaximum number of allowed steps.private static final intMaximum number of allowed steps + 1.private static final intMinimum required number of steps.private final double[]Successive trapezoidal approximations.Fields inherited from class com.irurueta.numerical.integration.RombergIntegrator
eps, qFields inherited from class com.irurueta.numerical.integration.Integrator
DEFAULT_INTEGRATOR_TYPE, DEFAULT_QUADRATURE_TYPE -
Constructor Summary
ConstructorsConstructorDescriptionRombergTrapezoidalQuadratureIntegrator(double a, double b, SingleDimensionFunctionEvaluatorListener listener) Constructor with default accuracy.RombergTrapezoidalQuadratureIntegrator(double a, double b, SingleDimensionFunctionEvaluatorListener listener, double eps) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionGets type of quadrature.doubleIntegrates function between lower and upper limits defined by provided quadrature.Methods inherited from class com.irurueta.numerical.integration.RombergIntegrator
create, create, create, create, getIntegratorTypeMethods inherited from class com.irurueta.numerical.integration.Integrator
create, create, create, create
-
Field Details
-
EPS
public static final double EPSDefault accuracy.- See Also:
-
JMAX
private static final int JMAXMaximum number of allowed steps.- See Also:
-
JMAXP
private static final int JMAXPMaximum number of allowed steps + 1.- See Also:
-
K
private static final int KMinimum required number of steps.- See Also:
-
s
private final double[] sSuccessive trapezoidal approximations. -
h
private final double[] hSuccessive trapezoidal step sizes. -
interpolator
Polynomial interpolator.
-
-
Constructor Details
-
RombergTrapezoidalQuadratureIntegrator
public RombergTrapezoidalQuadratureIntegrator(double a, double b, SingleDimensionFunctionEvaluatorListener listener, double eps) Constructor.- Parameters:
a- Lower limit of integration.b- Upper limit of integration.listener- listener to evaluate a single dimension function at required points.eps- required accuracy.
-
RombergTrapezoidalQuadratureIntegrator
public RombergTrapezoidalQuadratureIntegrator(double a, double b, SingleDimensionFunctionEvaluatorListener listener) Constructor with default accuracy.- Parameters:
a- Lower limit of integration.b- Upper limit of integration.listener- listener to evaluate a single dimension function at required points.
-
-
Method Details
-
integrate
Integrates function between lower and upper limits defined by provided quadrature. This implementation is suitable for closed intervals.- Overrides:
integratein classRombergIntegrator<TrapezoidalQuadrature>- Returns:
- result of integration.
- Throws:
IntegrationException- if integration fails for numerical reasons.
-
getQuadratureType
Gets type of quadrature.- Specified by:
getQuadratureTypein classIntegrator- Returns:
- type of quadrature.
-