|
template<class T > |
T | norm (const T &x) |
|
template<class T > |
T | real (const T &x) |
|
template<class T > |
T | Epsilon () |
|
template<class T > |
T | MinRep () |
|
template<class T > |
T | rescale_error (T err, T const &resabs, T const &resasc) |
|
template<typename UnaryFunctionT , typename Arg > |
bool | intGKPNA (UnaryFunctionT func, IntRegion< Arg > ®, Arg const epsabs, Arg const epsrel, std::map< Arg, Arg > *fxmap=0) |
| Non-adaptive integration of the function f over the region 'reg'. More...
|
|
template<typename UnaryFunctionT , typename Arg > |
void | intGKP (UnaryFunctionT func, IntRegion< Arg > ®, Arg const epsabs, Arg const epsrel, std::map< Arg, Arg > *fxmap=0) |
| An adaptive integration algorithm which computes the integral of f over the region reg. More...
|
|
template<class UF > |
AuxFunc1< UF > | Aux1 (UF uf) |
| Auxiliary function 1. More...
|
|
template<class UF > |
AuxFunc2< UF > | Aux2 (UF uf) |
| Auxiliary function 2. More...
|
|
template<class BF , class Tp > |
binder2_1< BF > | bind21 (const BF &oper, const Tp &x) |
|
template<class TF , class Tp > |
binder3_1< TF > | bind31 (const TF &oper, const Tp &x) |
|
int | gkp_n (int level) |
|
template<class T > |
const std::vector< T > & | gkp_x (int level) |
|
template<class T > |
const std::vector< T > & | gkp_wa (int level) |
|
template<class T > |
const std::vector< T > & | gkp_wb (int level) |
|
template<typename UnaryFunctionT , typename Arg >
void lsst::afw::math::details::intGKP |
( |
UnaryFunctionT |
func, |
|
|
IntRegion< Arg > & |
reg, |
|
|
Arg const |
epsabs, |
|
|
Arg const |
epsrel, |
|
|
std::map< Arg, Arg > * |
fxmap = 0 |
|
) |
| |
|
inline |
An adaptive integration algorithm which computes the integral of f over the region reg.
- Note
- First the non-adaptive GKP algorithm is tried. If that is not accurate enough (according to the absolute and relative accuracies, epsabs and epsrel), the region is split in half, and each new region is integrated. The routine continues by successively splitting the subregion which gave the largest absolute error until the integral converges.
The area and estimated error are returned as reg.Area() and reg.Err() If desired, *retx and *retf return std::vectors of x,f(x) respectively They only include the evaluations in the non-adaptive pass, so they do not give an accurate estimate of the number of function evaluations.
Definition at line 426 of file Integrate.h.