integration Module Reference
Numerical integration. More...
Functions/Subroutines | |
real function, public | integrate (fkt, xl, xr, eps, plist, method) |
Numerical integration function. More... | |
recursive real function | qadaptive1d_recursive (fkt, oldS, xl, xr, tol, plist) |
real function | qadaptive1d_iterative (fkt, oldS, xl, xr, tol, plist) |
real function | qgauss1d (fkt, xl, xr, plist) |
real function | qromberg (fkt, xl, xr, tol, plist) |
Variables | |
integer, parameter | maxrec = 100 |
maximal depth for recursion More... | |
real, dimension(3, maxrec) | stack |
stack for iterative algorithm More... | |
Detailed Description
Numerical integration.
The module implements the Gauss and Romberg quadrature schemes.
Function/Subroutine Documentation
◆ integrate()
real function, public integration::integrate | ( | fkt, | |
real, intent(in) | xl, | ||
real, intent(in) | xr, | ||
real, intent(in) | eps, | ||
real, dimension(:), intent(inout), optional | plist, | ||
integer, intent(in), optional | method | ||
) |
Numerical integration function.
It computes an approximation for the definite integral of some function.
- Returns
- approximation for integral
- Parameters
-
xl [in] fkt function for integration xl [in] xl lower limit xr [in] xr upper limit eps [in] eps numerical precision plist [in] plist parameter list for function evaluation method [in] method quadrature scheme
The quadrature scheme could be one of
- adaptive Gauss with recursion
- adaptive Gauss with iteration
- Romberg
Definition at line 125 of file integration.f90.
◆ qadaptive1d_iterative()
|
private |
Definition at line 260 of file integration.f90.
◆ qadaptive1d_recursive()
|
private |
Definition at line 220 of file integration.f90.
◆ qgauss1d()
|
private |
Definition at line 340 of file integration.f90.
◆ qromberg()
|
private |
Definition at line 380 of file integration.f90.
Variable Documentation
◆ maxrec
|
private |
maximal depth for recursion
Definition at line 45 of file integration.f90.
◆ stack
|
private |
stack for iterative algorithm
Definition at line 112 of file integration.f90.