Product Type Two-point Guass-Legendre Simpson's Integration

TOMS438 is a FORTRAN77 library 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: or NETLIB:, most of the early algorithms are not available. This is one of them. I typed it in.


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.


TOMS438 is available in a FORTRAN77 version.

Related Data and Programs:

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.


  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:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN77 source codes.

Last revised on 05 December 2005.