Public Member Functions | Public Attributes | Protected Attributes | List of all members
o2scl::inte_multi< func_t, vec_t > Class Template Referenceabstract

Multi-dimensional integration over a hypercube [abstract base]. More...

#include <inte_multi.h>

Inheritance diagram for o2scl::inte_multi< func_t, vec_t >:
o2scl::mcarlo< func_t, vec_t, rng_t > o2scl::mcarlo_miser< func_t, vec_t, rng_t > o2scl::mcarlo_plain< func_t, vec_t, rng_t > o2scl::mcarlo_vegas< func_t, vec_t, rng_t >

Public Member Functions

virtual double minteg (func_t &func, size_t ndim, const vec_t &a, const vec_t &b)
 Integrate function func over the hypercube from $ x_i=a_i $ to $ x_i=b_i $ for $ 0<i< $ ndim-1. More...
 
virtual int minteg_err (func_t &func, size_t ndim, const vec_t &a, const vec_t &b, double &res, double &err)=0
 Integrate function func over the hypercube from $ x_i=a_i $ to $ x_i=b_i $ for $ 0<i< $ ndim-1.
 
double get_error ()
 Return the error in the result from the last call to minteg() or minteg_err() More...
 
const char * type ()
 Return string denoting type ("inte_multi")
 

Public Attributes

bool err_nonconv
 If true, call the error handler if the routine does not "converge".
 
int verbose
 Verbosity.
 
double tol_rel
 The maximum "uncertainty" in the value of the integral (default $ 10^{-8} $).
 

Protected Attributes

double interror
 The uncertainty for the last integration computation.
 

Detailed Description

template<class func_t = multi_funct11, class vec_t = boost::numeric::ublas::vector<double>>
class o2scl::inte_multi< func_t, vec_t >

Multi-dimensional integration over a region defined by constant limits. For more general regions of integration, use children of the class inte_gen.

Definition at line 46 of file inte_multi.h.

Member Function Documentation

◆ get_error()

template<class func_t = multi_funct11, class vec_t = boost::numeric::ublas::vector<double>>
double o2scl::inte_multi< func_t, vec_t >::get_error ( )
inline

This will quietly return zero if no integrations have been performed.

Definition at line 100 of file inte_multi.h.

◆ minteg()

template<class func_t = multi_funct11, class vec_t = boost::numeric::ublas::vector<double>>
virtual double o2scl::inte_multi< func_t, vec_t >::minteg ( func_t &  func,
size_t  ndim,
const vec_t &  a,
const vec_t &  b 
)
inlinevirtual

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

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).