Abstract
A new adaptive algorithm for the integration of analytic functions is presented. The algorithm processes the integration interval by generating local subintervals whose length is controlled through a feedback loop. Control is performed by means of a relation derived on an analytical basis and valid for an arbitrary integration rule: two different estimates of an integral are used to compute the interval length necessary to obtain an integral estimate with accuracy within the assigned error bounds. The implied method for local generation of subintervals and an effective assumption of error partition among subintervals give rise to an adaptive algorithm provided with an accurate and very efficient integration process.
The particular algorithm obtained by choosing the 6-point Gauß-Legendre integration rule is considered and extensive comparisons are made with other outstanding integration algorithms.
Zusammenfassung
Hier wird ein neuer selbsteichender Algorithmus für die Integration der analytischen Funktionen dargestellt. Der Algorithmus wirkt auf das Integrationsintervall indem er örtliche Unterintervalle hervorruft, deren Länge durch ein neues System überwacht wird. Die Überwachung ergibt sich aus einer Formel, die von einer analytischen Basis abgeleitet wird und für jede beliebige Integrationsregel gilt: mit zwei verschiedenen Annäherungen eines Integrals wird die Intervallänge berechnet, die notwendig ist, um eine Integralannäherung mit der innerhalb zugelassener Fehlergrenzen notwendigen Genauigkeit zu erreichen. Die daraus entstehende Methode für die Erzeugung der Unterintervalle und eine wirksame Auswahl der Fehlerverteilung unter die Unterintervalle bringen einen selbstanpassenden Algorithmus hervor, der über einen genauen und höchst günstigen Integrationsprozeß verfügt.
Darauf wird der besondere Algorithmus betrachtet, der sich mit Hilfe der 6-Punkte-Gauß-Legendre-Integrationsregel ergibt. Außerdem wird er mit den besten unter den anderen Integrationsalgorithmen verglichen.
Similar content being viewed by others
References
de Boor, C.: CADRE. An Algorithm for Numerical Quadrature. Mathematical Software (Rice, J. R., ed.), p. 417. London-New York: Academic Press 1971.
Casaletto, J., Pickett, M., Rice, J.: A Comparison of Some Numerical Integration Programs. Signum Newsletter4, 30 (1969).
Davis, P., Rabinowitz, P.: Methods of Numerical Integration. London-New York: Academic Press 1975.
Einarsson, B.: Testing and Evaluation of Some Subroutines for Numerical Quadrature. Software for Numerical Mathematics (Evans, D. J., ed.), p. 149. London-New York: Academic Press 1974.
Kahaner, D. K.: Comparison of Numerical Quadrature Formulas. Mathematical Software (Rice, J. R., ed.), p. 229. London-New York: Academic Press 1971.
Lyness, J. N.: SQUANK. Simpson Quadrature Used Adaptively-Noise Killed. Algorithm 379. Comm. ACM13, 260 (1970).
O'Hara, H., Smith, F. J.: The Evaluation of Definite Integrals by Interval Subdivision. The Computer J.12, 179 (1969).
Oliver, J.: A Doubly-Adaptive Clenshaw-Curtis Quadrature. The Computer J.15, 141 (1972).
Patterson, T. N. L.: Algorithm for Automatic Integration over a Finite Interval. Comm. ACM16, 694 (1973).
Sterbenz, P. H.: Floating-Point Computation. Englewood Cliffs, N. J.: Prentice-Hall 1974.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Garribba, S., Quartapelle, L. & Reina, G. Algorithm 36 SNIFF: Efficient self-tuning algorithm for numerical integration. Computing 20, 363–375 (1978). https://doi.org/10.1007/BF02252384
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF02252384