NuMFor 9f2ab49 (2024-04-08)
Numerical (Modern) Fortran. Library for Simple Numerical computing
|
Integration by Adaptive Simpson method of a function by a globally adaptive strategy, using a Simpson rule. More...
Public Member Functions | |
subroutine | iads_sp (f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_sp_f (f_f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_sp_arg (f_arg, a, b, args, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_dp (f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_dp_f (f_f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_dp_arg (f_arg, a, b, args, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_qp (f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_qp_f (f_f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_qp_arg (f_arg, a, b, args, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cs (f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cs_f (f_f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cs_arg (f_arg, a, b, args, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cd (f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cd_f (f_f, a, b, intval, epsabs, epsrel, abserr, neval, ier) |
subroutine | iads_cd_arg (f_arg, a, b, args, intval, epsabs, epsrel, abserr, neval, ier) |
Integration by Adaptive Simpson method of a function by a globally adaptive strategy, using a Simpson rule.
The routine calculates an approximation to a definite integral
hopefully satisfying
[in] | f | The function to integrate |
[in] | a | (real) lower limit of integration |
[in] | b | (real) upper limit of integration |
[in] | args | (real, array, optional) extra arguments (if needed) to be passed to the function f |
[out] | IntVal | (same kind as f ) Approximation to integral |
[in] | epsabs | (real, optional) Absolute accuracy requested. Default = 1.e-7 |
[in] | epsrel | (real, optional) Relative accuracy requested. Default = 1.e-5 |
[out] | abserr | (real, optional) Estimation of absolute error achieved |
[out] | neval | (integer, optional) Number of function evaluations performed |
[out] | ier | (integer, optional) Error code |
subroutine iads_cd | ( | procedure(funqcd) | f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
complex(cd), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_cd_arg | ( | procedure(funqcd_arg) | f_arg, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), dimension(:), intent(in) | args, | ||
complex(cd), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_arg | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_cd_f | ( | procedure(funqcd_f) | f_f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
complex(cd), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_cs | ( | procedure(funqcs) | f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
complex(cs), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_cs_arg | ( | procedure(funqcs_arg) | f_arg, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), dimension(:), intent(in) | args, | ||
complex(cs), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_arg | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_cs_f | ( | procedure(funqcs_f) | f_f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
complex(cs), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_dp | ( | procedure(funqdp) | f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_dp_arg | ( | procedure(funqdp_arg) | f_arg, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), dimension(:), intent(in) | args, | ||
real(dp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_arg | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_dp_f | ( | procedure(funqdp_f) | f_f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_qp | ( | procedure(funqqp) | f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(qp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_qp_arg | ( | procedure(funqqp_arg) | f_arg, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), dimension(:), intent(in) | args, | ||
real(qp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_arg | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_qp_f | ( | procedure(funqqp_f) | f_f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(qp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_sp | ( | procedure(funqsp) | f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(sp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_sp_arg | ( | procedure(funqsp_arg) | f_arg, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(dp), dimension(:), intent(in) | args, | ||
real(sp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_arg | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |
subroutine iads_sp_f | ( | procedure(funqsp_f) | f_f, |
real(dp), intent(in) | a, | ||
real(dp), intent(in) | b, | ||
real(sp), intent(out) | intval, | ||
real(dp), intent(in), optional | epsabs, | ||
real(dp), intent(in), optional | epsrel, | ||
real(dp), intent(out), optional | abserr, | ||
integer, intent(out), optional | neval, | ||
integer, intent(out), optional | ier ) |
f_f | function to integrate | |
[out] | intval | Result |
[in] | a | Lower limit of integration |
[in] | b | Upper limit of integration |
[in] | epsrel | Bound to estimation error desired |
[out] | abserr | Estimated error |
[out] | neval | Number of function evaluations |
[out] | ier | Output (error) code |