Class inte_kronrod_boost (o2scl)

O2scl : Class List

template<class func_t = funct, size_t rule = 15, class fp_t = double>
class o2scl::inte_kronrod_boost : public o2scl::inte<funct, double>

Gauss-Kronrod integration class (Boost)

The rule parameter should be either 15, 31, 41, 51, or 61.

This class calls the error handler if the error returned by boost is larger than inte::tol_rel .

Idea for Future:

Figure out what to do with L1norm. The boost documentation claims that “the error estimates provided by the

routine are woefully pessimistic” and the integral appears to be correct, but the boost documentation also says “if there is a significant difference between this [the L1 norm] and the returned value, then the result is likely to be ill-conditioned”. It would be nice to test L1 norm in some reasonable way.

Public Functions

inte_kronrod_boost()
~inte_kronrod_boost()
void set_max_depth(size_t md)

Set the maximum number of interval splittings.

int integ_err(func_t &func, fp_t a, fp_t b, fp_t &res, fp_t &err)

Integrate function func from a to b and place the result in res and the error in err.

Public Members

fp_t L1norm

L1 norm.

Protected Attributes

size_t max_depth

Maximum depth.