Skip to main content

DQAINT: An Algorithm for Adaptive Quadrature Over a Collection of Finite Intervals

  • Chapter
Numerical Integration

Part of the book series: NATO ASI Series ((ASIC,volume 357))

Abstract

In this paper we describe a new one-dimensional general purpose algorithm for adaptive quadrature. This algorithm differs from the well known, and high quality, general purpose code DQAG (QUADPACK) [6] in a number of aspects:

  1. 1.

    Three different basic rules are offered: Gauss, Lobatto or Gauss-Kronrod as integration rules over each local interval, while DQAG offers Gauss-Kronrod rules (with a choice of the number of evaluation points). This choice of rules is based on the experience, [1], that Gauss rules are at least as effective as Gauss-Kronrod rules in this kind of software and that closed rules (Lobatto) are better for discontinuous problems.

  2. 2.

    The local error estimation is based on a procedure developed in [1], and this procedure is principally the same for all three basic rules. A key element in this error estimation procedure is the null rules, first introduced in [5]. A rule is a null rule, N[f], iff it has at least one nonzero weight and the sum of the weights are zero A null rule is furthermore said to have degree d if it integrates to zero all polynomials of degree < d and fails to do so with f(x) = x d+1. The basic rule has degree of precision at least n while the null rules have degree of precision at most n - 1. In the code we use symmetric rules and a sequence of null rules of decreasing degrees n -1, n -2, …, which are either symmetric or anti-symmetric. We have chosen n = 20 and used a sequence of 8 (this number is based on heuristics) null rules of degrees 19, 18, …, 12. The null rules are combined into pairs to give 4 independent error estimates in order to create a reliable final local error estimate. Tests in [1] show that this error estimate is as reliable as the one implemented in QAG. The fact that the lowest degree null rule is as high as 12 (in [1] 8 symmetric null rules were used: lowest degree 5) makes the code more economic in regions where the function is smooth, without ruining the reliability.

  3. 3.

    As the subdivision strategy a non-uniform 3-division has been implemented based on ideas and experience reported in [4]. In this procedure one attempts to focus on the difficulty in order to reduce the effort in the adaptive algorithm. Tests of the new code confirm the results reported in [4] that this technique does reduce the number of function evaluations when adaptability is important.

  4. 4.

    The initial integration problem may consist of a collection of intervals. This way we allow the user to give information to the code about good subdivision points, but are still treating this as one quadrature problem. Thus the user gives only one error request for the whole problem.

  5. 5.

    Simultaneous integration of the elements in a vector function is also allowed. This idea is not new (e. g. it has been implemented in [2, 3]) however no one-dimensional code has, to the author’s knowledge, such an option. We found it necessary to include some modifications of the global strategy because of this feature. This option should be used with care since simultaneous integration of several functions, with different behavior in the integration region, may increase the overall computation time. However, in many problems there may be a substantial gain in simultaneous integration.

  6. 6.

    Finally, the code is designed to take advantage of shared memory parallel computers.

A FORTRAN 77 implementation of the algorithm, DQAINT, has been tested both with respect to efficiency and reliability. We noticed only small differences with respect to reliability for all codes that we tested: DQAINT (Gauss, Lobatto, Gauss-Kronrod) and DQAG (21 point Gauss-Kronrod). Lobatto turned out to be better on discontinuous problems. Economy: the number of function values are in general (all test problems) lower for DQAINT (all options) compared to DQAG. A reduction of the average number of function evaluations up to 50 % was achieved for several of the problem classes. This reduction stems both from the error estimation and the non-uniform 3-division. The overhead is greater for DQAINT than for DQAG: thus for inexpensive functions DQAG is a natural choice while for expensive functions one should choose DQAINT.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. J. Berntsen and T.O. Espelid. Error Estimation in Automatic Quadrature Routines. ACM Trans. Math. Software, 17(2): 233–252, 1991.

    Article  MathSciNet  MATH  Google Scholar 

  2. J. Berntsen, T.O. Espelid, and A. Genz. An Adaptive Algorithm for the Approximate Calculation of Multiple Integrals. ACM Trans. Math. Software, 17(4), 1991.

    Google Scholar 

  3. J. Berntsen, T.O. Espelid, and A. Genz. An Adaptive Multidimensional Integration Routine for a Vector of Integrals. ACM Trans. Math. Software, 17(4), 1991.

    Google Scholar 

  4. J. Berntsen, T.O. Espelid, and T. Sorevik. On the Subdivision Strategy in Adaptive Quadrature Algorithms. Journal of Comp. and Appl. Math., 35: 119–132, 1991.

    Article  MATH  Google Scholar 

  5. J.N. Lyness. Symmetric integration rules for hypercubes III. Construction of integration rules using null rules. Math. Comp., 19: 625–637, 1965.

    MathSciNet  Google Scholar 

  6. R. Piessens, E. de Doncker-Kapenga, C.W. Uberhuber, and D.K. Kahaner. QUAD-PACK, A Subroutine Package for Automatic Integration. Series in Computational Math., 1. Springer-Verlag, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer Science+Business Media Dordrecht

About this chapter

Cite this chapter

Espelid, T.O. (1992). DQAINT: An Algorithm for Adaptive Quadrature Over a Collection of Finite Intervals. In: Espelid, T.O., Genz, A. (eds) Numerical Integration. NATO ASI Series, vol 357. Springer, Dordrecht. https://doi.org/10.1007/978-94-011-2646-5_27

Download citation

  • DOI: https://doi.org/10.1007/978-94-011-2646-5_27

  • Publisher Name: Springer, Dordrecht

  • Print ISBN: 978-94-010-5169-9

  • Online ISBN: 978-94-011-2646-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics