#include <composite_inte.h>
Naively combine several one-dimensional integration objects from class inte in order to perform a multi-dimensional integration over a region defined by constant limits. For more general regions of integration, use children of the class gen_inte.
The 1-dimensional integration routines are specified in the function set_oned_inte().
The integration routines are called in order of the index specified in the function set_oned_inte(). For n-
dimensional integration, n
one-dimensional integration objects should be specified, with indexes 0
through n-1
. The integration routines are called in order of their index, so that the outermost integration is done by the routine specified with index 0.
No error estimate is performed. Error estimation for multiple dimension integrals is provided by the Monte Carlo integration classes (see mcarlo_inte).
Definition at line 70 of file composite_inte.h.
Public Member Functions | |
int | set_oned_inte (inte< size_t > &it, size_t i) |
Set the one-dimensional integration object with index i . | |
virtual int | minteg_err (func_t &func, size_t n, const vec_t &a, const vec_t &b, param_t &pa, double &res, double &err) |
Integrate function func over the hypercube from ![]() ![]() ![]() | |
virtual const char * | type () |
Return string denoting type ("composite_inte"). | |
Data Fields | |
size_t | max_dim |
The maxiumum number of integration dimensions (default 100). | |
Protected Member Functions | |
double | odfunc (double x, size_t &ix) |
The one-dimensional integration function. | |
Protected Attributes | |
const vec_t * | ax |
The user-specified upper limits. | |
const vec_t * | bx |
The user-specified lower limits. | |
alloc_vec_t * | cx |
The independent variable vector. | |
func_t * | mf |
The user-specified function. | |
size_t | ndim |
The user-specified number of dimensions. | |
param_t * | vp |
The user-specified parameter. | |
alloc_t | ao |
Memory allocator for objects of type alloc_vec_t . | |
funct_mfptr_noerr < composite_inte< param_t, func_t, vec_t, alloc_vec_t, alloc_t >, size_t > * | fmn |
This function to send to the integrators. | |
size_t | nint |
The size of the integration object arrays. | |
inte< size_t > ** | iptrs |
Pointers to the integration objects. | |
bool * | tptrs |
Flag indicating if integration object has been set. |
Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.
Project hosting provided by
,
O2scl Sourceforge Project Page