toms438


toms438, a FORTRAN77 code which implements ACM toms algorithm 438, which carries out a product type two point Gauss-Legendre-Simpson's integration rule to estimate the integral from A to B of F(X) * G(X).

While the text of many ACM toms algorithms is available online through ACM: http://www.acm.org/pubs/calgo or NETLIB: http://www.netlib.org/toms/index.html, most of the early algorithms are not available. This is one of them. I typed it in.

Usage:

call p2pgs ( a, b, n, fn, gn, vint )
where A and B are the left and right endpoints of the interval, N is the number of times the rule is to be compounded, FN and GN are external functions for evaluating the integrand factors, and VINT is returned as the estimated value of the integral of FN(X) * GN(X) from A to B.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

toms438 is available in a FORTRAN77 version.

Related Data and Programs:

toms438_test

intlib, a FORTRAN90 library which estimates integrals.

QUADRULE, a FORTRAN90 library which can define various quadrature rules to estimate integrals.

TEST_INT, a FORTRAN90 library which defines a number of scalar functions of to test routines that estimate integrals.

toms436, a FORTRAN77 library which carries out product type trapezoidal integration.

toms437, a FORTRAN77 library which carries out product type Simpson's integration.

toms439, a FORTRAN77 library which carries out product type three-point Gauss-Legendre-Simpson's integration.

Reference:

  1. Robert Boland,
    Algorithm 438: Product Type Two-point Guass-Legendre Simpson's Integration,
    Communications of the ACM,
    Volume 15, Number 12, December 1972, page 1071.

Source Code:

Last revised on 16 November 2023.