GaussKronrodNonAdaptive Class Reference

Integral of a 1-dimensional function using the Gauss-Kronrod methods. More...

#include <ql/math/integrals/kronrodintegral.hpp>

Inherits Integrator.

Public Member Functions

 GaussKronrodNonAdaptive (Real absoluteAccuracy, Size maxEvaluations, Real relativeAccuracy)
 
void setRelativeAccuracy (Real)
 
Real relativeAccuracy () const
 
- Public Member Functions inherited from Integrator
 Integrator (Real absoluteAccuracy, Size maxEvaluations)
 
Real operator() (const boost::function< Real(Real)> &f, Real a, Real b) const
 
Real absoluteError () const
 
Size numberOfEvaluations () const
 
virtual bool integrationSuccess () const
 
void setAbsoluteAccuracy (Real)
 
void setMaxEvaluations (Size)
 
Real absoluteAccuracy () const
 
Size maxEvaluations () const
 

Protected Member Functions

Real integrate (const boost::function< Real(Real)> &f, Real a, Real b) const
 
- Protected Member Functions inherited from Integrator
virtual Real integrate (const boost::function< Real(Real)> &f, Real a, Real b) const =0
 
void setAbsoluteError (Real error) const
 
void setNumberOfEvaluations (Size evaluations) const
 
void increaseNumberOfEvaluations (Size increase) const
 

Detailed Description

Integral of a 1-dimensional function using the Gauss-Kronrod methods.

This class provide a non-adaptive integration procedure which uses fixed Gauss-Kronrod abscissae to sample the integrand at a maximum of 87 points. It is provided for fast integration of smooth functions.

This function applies the Gauss-Kronrod 10-point, 21-point, 43-point and 87-point integration rules in succession until an estimate of the integral of f over (a, b) is achieved within the desired absolute and relative error limits, epsabs and epsrel. The function returns the final approximation, result, an estimate of the absolute error, abserr and the number of function evaluations used, neval. The Gauss-Kronrod rules are designed in such a way that each rule uses all the results of its predecessors, in order to minimize the total number of function evaluations.