Quadpack : A Subroutine Package for Automatic Integration I. Introduction II. Theoretical Background 2.1. Automatic integration with QUADPACK 2.2. Integration methods III. Algorithm Descriptions 3.1. QUADPACK contents 3.2. Prototype of algorithm description 3.3. Algorithm schemes 3.4. Heuristics used in the algorithms IV. Guidelines for the use of Quadpack 4.1. General remarks 4.2. Decision tree for finite range integration 4.3. Decision tree for infinite range integration 4.4. Numerical examples 4.5. Sample programs illustrating the use of the QUADPACK integrators V. Special Applications of Quadpack 5.1. Two dimensional integration 5.2. Hankel transform 5.3. Numerical inversion of the Laplace transform VI. Implementation Notes and Routine Listings 6.1. Implementation notes 6.2. Routine listings References. 1. 1. Overview of Numerical Quadrature The numerical evaluation of integrals is one of the oldest problems in mathematics. One can trace its roots back at least to Archimedes. The task is to compute the value of the definite integral of a given function. This is the area under a curve in one dimension or a volume in several dimensions. In addition to being a problem of great practi­ cal interest it has also lead to the development of mathematics of much beauty and insight. Many portions of approximation theory are directly applicable to integration and results from areas as diverse as orthogo­ nal polynomials Fourier series and number theory have had important implications for the evaluation of integrals. We denote the problem addressed here as numerical integration or numerical quadrature. Over the years analysts and engineers have contributed to a growing body of theorems algorithms and lately programs for the solution of this specific problem. Much effort has been devoted to techniques for the analytic evalua­ tion of integrals. However most routine integrals in practical scien­ tific work are incapable of being evaluated in closed form. Even if an expression can be derived for the value of an integral often this reveals itself only after inordinate amounts of error prone algebraic manipulation. Recently some computer procedures have been developed which can perform analytic integration when it is possible.