toms468


toms468, a Fortran77 code which implements ACM toms algorithm 468, for estimating the integral of a function over a finite interval.

The text of many ACM TOMS algorithms is available online through ACM: https://www.acm.org/pubs/calgo or NETLIB: https://www.netlib.org/toms/index.html.

Usage:

call quad ( a, b, result, k, epsil, npts, icheck, f )
where A and B are the limits of the interval, RESULT is an array of length 8, which on output will contain the integral estimate in entry RESULT(K), K is set on output to indicate the appropriate entry of RESULT, EPSIL is a requested relative accuracy, NPTS is returned with the number of function evaluations, ICHECK is an error flag which is 0 for normal return, and F is the name of a user-supplied function which evaluates the integrand at an arbitrary point X.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

toms468 is available in a Fortran77 version.

Related Data and Programs:

toms468_test

intlib, a Fortran90 code which includes many routines for estimating the integral of a function.

quadpack, a Fortran90 library which includes many routines for estimating the integral of a function, including weight functions, singularities, and infinite intervals.

quad_rule, a Fortran90 code which defines many simple quadrature schemes.

stroud_rule, a Fortran90 library which defines quadrature schemes for a number of geometrically interesting regions.

test_int, a Fortran90 library which contains routines which define integrands suitable for testing integration software.

toms351, a Fortran77 library which carries out Romberg integration of a function.

toms379, a Fortran77 code which carries out adaptive integration of a function.

Reference:

  1. TNL Patterson,
    The Optimal Addition of Points to Quadrature Formulae,
    Mathematics of Computation,
    Volume 22, 1968, pages 847-856.
  2. TNL Patterson,
    Algorithm 468: Algorithm for Automatic Numerical Integration Over a Finite Interval,
    Communications of the ACM,
    November 1973, Volume 16, Number 11, pages 694-699.

Source Code:


Last revised on 18 November 2023.