- java.lang.Object
-
- net.finmath.integration.AbstractRealIntegral
-
- net.finmath.integration.SimpsonRealIntegrator
-
- All Implemented Interfaces:
RealIntegral
public class SimpsonRealIntegrator extends AbstractRealIntegral
A simple integrator using Simpson's rule. The constructor has an optional argument to allow parallel function evaluation. In that case, the integration rule uses Java 8 parallel streams to evaluate.- Version:
- 1.0
- Author:
- Christian Fries
-
-
Constructor Summary
Constructors Constructor Description SimpsonRealIntegrator(double lowerBound, double upperBound, int numberOfEvaluationPoints)
Create an integrator using Simpson's rule.SimpsonRealIntegrator(double lowerBound, double upperBound, int numberOfEvaluationPoints, boolean useParallelEvaluation)
Create an integrator using Simpson's rule.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
integrate(DoubleUnaryOperator integrand)
-
Methods inherited from class net.finmath.integration.AbstractRealIntegral
getLowerBound, getUpperBound
-
-
-
-
Constructor Detail
-
SimpsonRealIntegrator
public SimpsonRealIntegrator(double lowerBound, double upperBound, int numberOfEvaluationPoints, boolean useParallelEvaluation)
Create an integrator using Simpson's rule.- Parameters:
lowerBound
- Lower bound of the integral.upperBound
- Upper bound of the integral.numberOfEvaluationPoints
- Maximum number of evaluation points to be used, must be greater or equal to 3, should be odd.useParallelEvaluation
- If true, the integration rule will perform parallel evaluation of the integrand.
-
SimpsonRealIntegrator
public SimpsonRealIntegrator(double lowerBound, double upperBound, int numberOfEvaluationPoints)
Create an integrator using Simpson's rule.- Parameters:
lowerBound
- Lower bound of the integral.upperBound
- Upper bound of the integral.numberOfEvaluationPoints
- Maximum number of evaluation points to be used.
-
-
Method Detail
-
integrate
public double integrate(DoubleUnaryOperator integrand)
- Specified by:
integrate
in interfaceRealIntegral
- Specified by:
integrate
in classAbstractRealIntegral
-
-