|
|
◆ deiint()
| void deiint |
( |
double(*)(double) |
f, |
|
|
double |
eps, |
|
|
double * |
result, |
|
|
int * |
neval, |
|
|
int * |
info |
|
) |
| |
Infinite interval automatic quadrature (double exponential (DE) formula)
- Purpose
- This routine computes the integral of f(x) over [-∞, +∞], satisfying the requested accuracy, where f(x) is a given function defined by a user supplied subroutine f.
The result is obtained by the automatic integration applying the double exponential (DE) formula.
The double exponential (DE) formulas (see defint) for infinite interval [-∞, +∞] is obtained by using the following transformation function. φ(t) = sinh((π/2)sinh(t))
This formula is suitable for the slowly decaying functions.
- Parameters
-
| [in] | f | The user supplied subroutine which calculates the integrand function f(x) defined as follows. double f(double x)
{
return computed f(x) value
}
|
| [in] | eps | Absolute accuracy requested.
max(|eps|, 1.0e-32) is used as the tolerance. |
| [out] | result | Approximation to integral of f(x) over [-inf, +inf]. |
| [out] | neval | Number of integrand evaluations. |
| [out] | info | = 0: Successful exit
= 1: Slow decay on negative side
= 2: Slow decay on positive side
= 3: Both of above
= 4: Insufficient mesh refinement |
- Reference
- Masatake Mori "FORTRAN77 Numerical Calculation Programming (augmented edition)" Iwanami Shoten, 1987. (Japanese book)
|