gsl_inte_qawc Class Template Reference

Adaptive Cauchy principal value integration (GSL). More...

#include <gsl_inte_qawc.h>

Inheritance diagram for gsl_inte_qawc:

gsl_inte_cheb gsl_inte_transform gsl_inte_singular gsl_inte_kronrod gsl_inte_table inte gsl_inte

Detailed Description

template<class param_t, class func_t>
class gsl_inte_qawc< param_t, func_t >

Adaptive Cauchy principal value integration (GSL).

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 $ \frac{f(x)}{(x-s)} $, the denominator $ (x-s) $ must not be specified in the argument func to integ(). This is different from how the cern_cauchy operates.

The number of subdivisions of the original interval which this class is allowed to make is dictated by the workspace size for the integration class, which can be set using gsl_inte_table::set_wkspace() .

Idea for future:
Make cern_cauchy and this class consistent in the way which they require the user to provide the denominator in the integrand

Definition at line 332 of file gsl_inte_qawc.h.


Public Member Functions

virtual double integ (func_t &func, double a, double b, param_t &pa)
 Integrate function func from a to b.
virtual int integ_err (func_t &func, double a, double b, param_t &pa, double &res, double &err2)
 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, const size_t limit, double *result, double *abserr, param_t &pa)
 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, param_t &pa)
 25-point quadrature for Cauchy principal values
virtual double transform (func_t &func, double x, param_t &pa)
 Add the singularity to the function.
const char * type ()
 Return string denoting type ("gsl_inte_qawc").

The documentation for this class was generated from the following file:

Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.

Project hosting provided by SourceForge.net Logo, O2scl Sourceforge Project Page