Class inte_gsl (o2scl)

O2scl : Class List

class inte_gsl

GSL integration base.

This base class does not perform any actual integration, but just provides functions to be used in the integration classes based on GSL.

Subclassed by o2scl::inte_kronrod_gsl< funct >, o2scl::inte_kronrod_gsl< func_t >, o2scl::inte_qng_gsl< func_t >

Public Functions

inline inte_gsl()

Protected Functions

inline double rescale_error(double err, const double result_abs, const double result_asc)

QUADPACK’s nonlinear rescaling of the absolute-error estimate.

The values \f$ \rho_{\mathrm{abs}} \f$ (stored in
result_abs) and ρabs (stored in result_asc) are assumed to be
ρabs=ab|f|dx,ρasc=ab|fμ(f)|dx,μ(f)=1baabfdx,
all of which are computed from the best (i.e., finest-grid) approximation of the integrals. The rescaled error, σerr, is computed from the raw error, err, by
σerr=ρascmin{1,(200|err|ρasc)3/2},
or
σerr=50ϵmachρabs,
whichever of the two is greater. The value ϵmach denotes “machine epsilon.” (In the case that the second value underflows, the first value is automatically accepted.)

This function is used in inte_qng_gsl and inte_kronrod_gsl::gauss_kronrod_base().