Object-oriented Scientific Computing Library: Version 0.910
Public Member Functions | Protected Member Functions
gsl_inte_qag< func_t > Class Template Reference

Adaptive numerical integration of a function (without singularities) on a bounded interval (GSL) More...

#include <gsl_inte_qag.h>

Inheritance diagram for gsl_inte_qag< func_t >:
gsl_inte_kronrod< func_t > gsl_inte inte< func_t >

Detailed Description

template<class func_t = funct>
class gsl_inte_qag< func_t >

Adaptive integration of a univariate function requires two main procedures: approximating the integral on a bounded interval, and estimating the approximation error. The algorithm recursively refines the interval, computing the integral and its error estimate on each subinterval, until the total error estimate over all subintervals falls within the user-specified tolerance. The value returned is the sum of the (approximated) integrals over all subintervals.

See GSL-based integration routines in the User's guide for general information about the GSL integration classes.

Idea for Future:
There are a few fine-tuned parameters which should be re-expressed as data members in the convergence tests.
Idea for Future:
Should QUADPACK parameters in round-off tests be subject to adjustments by the end user?
Idea for Future:
Add functions to examine the contents of the workspace to detect regions where the integrand may be problematic; possibly call these functions automatically depending on verbosity settings.

Definition at line 78 of file gsl_inte_qag.h.

Public Member Functions

 gsl_inte_qag ()
 Create an integrator with the specified rule.
virtual int integ_err (func_t &func, double a, double b, double &res, double &err)
 Integrate function func from a to b and place the result in res and the error in err.
const char * type ()
 Return string denoting type ("gsl_inte_qag")

Protected Member Functions

int qag (func_t &func, const double a, const double b, const double l_epsabs, const double l_epsrel, double *result, double *abserr)
 Perform an adaptive integration given the coefficients, and returning result.

Member Function Documentation

template<class func_t = funct>
int gsl_inte_qag< func_t >::qag ( func_t &  func,
const double  a,
const double  b,
const double  l_epsabs,
const double  l_epsrel,
double *  result,
double *  abserr 
) [inline, protected]
Idea for Future:
Just move this function to integ_err().

Definition at line 107 of file gsl_inte_qag.h.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.