Go to the documentation of this file.
23 #ifndef O2SCL_MULTI_INTE_H
24 #define O2SCL_MULTI_INTE_H
29 #include <boost/numeric/ublas/vector.hpp>
31 #include <o2scl/inte.h>
32 #include <o2scl/multi_funct.h>
34 #ifndef DOXYGEN_NO_O2NS
80 virtual double minteg(func_t &func,
size_t ndim,
const vec_t &a,
91 virtual int minteg_err(func_t &func,
size_t ndim,
const vec_t &a,
92 const vec_t &b,
double &res,
double &err)=0;
103 const char *
type() {
return "inte_multi"; }
105 #ifndef DOXYGEN_INTERNAL
116 #ifndef DOXYGEN_NO_O2NS
double interror
The uncertainty for the last integration computation.
The main O<span style='position: relative; top: 0.3em; font-size: 0.8em'>2</span>scl O$_2$scl names...
Multi-dimensional integration over a hypercube [abstract base].
double get_error()
Return the error in the result from the last call to minteg() or minteg_err()
std::function< double(size_t, const boost::numeric::ublas::vector< double > &)> multi_funct
Multi-dimensional function typedef in src/base/multi_funct.h.
double tol_rel
The maximum "uncertainty" in the value of the integral (default ).
bool err_nonconv
If true, call the error handler if the routine does not "converge".
const char * type()
Return string denoting type ("inte_multi")
virtual double minteg(func_t &func, size_t ndim, const vec_t &a, const vec_t &b)
Integrate function func over the hypercube from to for ndim-1.
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 to for ndim-1.
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).