Adaptive multivariate integration over hypercubes (admitting infinite limits)
Adaptive multivariate integration over hypercubes (admitting infinite limits)
The function performs adaptive multidimensional integration (cubature) of (possibly) vector-valued integrands over hypercubes. It is a wrapper for cubature:::adaptIntegrate, transforming (-)Inf appropriately as described in cubature's help page (http://ab-initio.mit.edu/wiki/index.php/Cubature#Infinite_intervals).
lowerLimit: The lower limit of integration, a vector for hypercubes
upperLimit: The upper limit of integration, a vector for hypercubes
...: All other arguments passed to the function f
tol.ai: The maximum tolerance, default 1e-5.
fDim.ai: The dimension of the integrand, default 1, bears no relation to the dimension of the hypercube
maxEval.ai: The maximum number of function evaluations needed, default 0 implying no limit
absError.ai: The maximum absolute error tolerated
doChecking.ai: A flag to be thorough checking inputs to C routines. A FALSE value results in approximately 9 percent speed gain in our experiments. Your mileage will of course vary. Default value is FALSE.
Examples
## integrate Cauchy Density from -Inf to InfadaptIntegrate_inf_limPD(function(x)1/pi *1/(1+x^2),-Inf,Inf)adaptIntegrate_inf_limPD(function(x, scale)1/(pi*scale)*1/(1+(x/scale)^2),-Inf,Inf, scale=4)## integrate Cauchy Density from -Inf to -3adaptIntegrate_inf_limPD(function(x)1/pi *1/(1+x^2),-Inf,-3)$int
stats::pcauchy(-3)adaptIntegrate_inf_limPD(function(x, scale)1/(pi*scale)*1/(1+(x/scale)^2),-Inf,-3, scale=4)$int
stats::pcauchy(-3, scale=4)