![]() |
Object-oriented Scientific Computing Library: Version 0.910
|
Adaptive Cauchy principal value integration (GSL) More...
#include <gsl_inte_qawc.h>
The Cauchy principal value of the integral of
over with a singularity at
is computed. The adaptive refinement algorithm described for gsl_inte_qag is used with modifications to ensure that subdivisions do not occur at the singular point
. When a subinterval contains the point
or is close to it, a special 25-point modified Clenshaw-Curtis rule is used to control the singularity. Further away from the singularity the algorithm uses a Gauss-Kronrod integration rule.
The location of the singularity must be specified before-hand in gsl_inte_qawc::s, and the singularity must not be at one of the endpoints. Note that when integrating a function of the form , the denominator
must not be specified in the argument
func
to integ(). Note that this is different from how the cern_cauchy operates.
See GSL-based integration routines in the User's guide for general information about the GSL integration classes.
Definition at line 347 of file gsl_inte_qawc.h.
Public Member Functions | |
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 . | |
Data Fields | |
double | s |
The singularity. | |
Protected Member Functions | |
int | qawc (func_t &func, const double a, const double b, const double c, const double epsabs, const double epsrel, double *result, double *abserr) |
The full GSL integration routine called by integ_err() | |
void | qc25c (func_t &func, double a, double b, double c, double *result, double *abserr, int *err_reliable) |
25-point quadrature for Cauchy principal values | |
virtual double | transform (double t, func_t &func) |
Add the singularity to the function. | |
const char * | type () |
Return string denoting type ("gsl_inte_qawc") |
Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).