jburkardt

STROUD\ Numerical Integration\ in M Dimensions {#stroud-numerical-integration-in-m-dimensions align=”center”} ======================


STROUD is a C++ library which defines quadrature rules for a variety of M-dimensional regions, including the interior of the square, cube and hypercube, the pyramid, cone and ellipse, the hexagon, the M-dimensional octahedron, the circle, sphere and hypersphere, the triangle, tetrahedron and simplex, and the surface of the circle, sphere and hypersphere.

A few other rules have been collected as well, particularly for quadrature over the interior of a triangle, which is useful in finite element calculations.

Arthur Stroud published his vast collection of quadrature formulas for multidimensional regions in 1971. In a few cases, he printed sample FORTRAN77 programs to compute these integrals. Integration regions included:

We have added a few new terms for regions:

Licensing: {#licensing align=”center”}

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

Languages: {#languages align=”center”}

STROUD is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

DISK_RULE, a C++ library which computes quadrature rules for the unit disk in 2D, that is, the interior of the circle of radius 1 and center (0,0).

FELIPPA, a C++ library which defines quadrature rules for lines, triangles, quadrilaterals, pyramids, wedges, tetrahedrons and hexahedrons.

PYRAMID_RULE, a C++ program which computes a quadrature rule for a pyramid.

SIMPLEX_GM_RULE, a C++ library which defines Grundmann-Moeller quadrature rules over the interior of a triangle in 2D, a tetrahedron in 3D, or over the interior of the simplex in M dimensions.

SPHERE_LEBEDEV_RULE, a C++ library which computes Lebedev quadrature rules on the surface of the unit sphere in 3D.

TETRAHEDRON_ARBQ_RULE, a C++ library which returns quadrature rules, with exactness up to total degree 15, over the interior of a tetrahedron in 3D, by Hong Xiao and Zydrunas Gimbutas.

TETRAHEDRON_KEAST_RULE, a C++ library which defines ten quadrature rules, with exactness degrees 0 through 8, over the interior of a tetrahedron in 3D.

TETRAHEDRON_NCC_RULE, a C++ library which defines Newton-Cotes Closed (NCC) quadrature rules over the interior of a tetrahedron in 3D.

TETRAHEDRON_NCO_RULE, a C++ library which defines Newton-Cotes Open (NCO) quadrature rules over the interior of a tetrahedron in 3D.

TRIANGLE_DUNAVANT_RULE, a C++ library which defines Dunavant rules for quadrature over the interior of a triangle in 2D.

TRIANGLE_FEKETE, a C++ library which defines Fekete rules for interpolation or quadrature over the interior of a triangle in 2D.

TRIANGLE_LYNESS_RULE, a C++ library which returns Lyness-Jespersen quadrature rules over the interior of a triangle in 2D.

TRIANGLE_NCC_RULE, a C++ library which defines Newton-Cotes Closed (NCC) quadrature rules over the interior of a triangle in 2D.

TRIANGLE_NCO_RULE, a C++ library which defines Newton-Cotes Open (NCO) quadrature rules over the interior of a triangle in 2D.

TRIANGLE_WANDZURA_RULE, a C++ library which returns quadrature rules of exactness 5, 10, 15, 20, 25 and 30 over the interior of the triangle in 2D.

Reference: {#reference align=”center”}

  1. Milton Abramowitz, Irene Stegun,\ Handbook of Mathematical Functions,\ National Bureau of Standards, 1964,\ ISBN: 0-486-61272-4,\ LC: QA47.A34.
  2. Jarle Berntsen, Terje Espelid,\ Algorithm 706: DCUTRI: an algorithm for adaptive cubature over a collection of triangles,\ ACM Transactions on Mathematical Software,\ Volume 18, Number 3, September 1992, pages 329-342.
  3. SF Bockman,\ Generalizing the Formula for Areas of Polygons to Moments,\ American Mathematical Society Monthly,\ Volume 96, Number 2, February 1989, pages 131-132.
  4. Paul Bratley, Bennett Fox, Linus Schrage,\ A Guide to Simulation,\ Second Edition,\ Springer, 1987,\ ISBN: 0387964673,\ LC: QA76.9.C65.B73.
  5. William Cody, Kenneth Hillstrom,\ Chebyshev Approximations for the Natural Logarithm of the Gamma Function, Mathematics of Computation,\ Volume 21, Number 98, April 1967, pages 198-203.
  6. Philip Davis, Philip Rabinowitz,\ Methods of Numerical Integration,\ Second Edition,\ Dover, 2007,\ ISBN: 0486453391,\ LC: QA299.3.D28.
  7. Elise deDoncker, Ian Robinson,\ Algorithm 612: Integration over a Triangle Using Nonlinear Extrapolation,\ ACM Transactions on Mathematical Software,\ Volume 10, Number 1, March 1984, pages 17-22.
  8. Hermann Engels,\ Numerical Quadrature and Cubature,\ Academic Press, 1980,\ ISBN: 012238850X,\ LC: QA299.3E5.
  9. Thomas Ericson, Victor Zinoviev,\ Codes on Euclidean Spheres,\ Elsevier, 2001,\ ISBN: 0444503293,\ LC: QA166.7E75
  10. Carlos Felippa,\ A compendium of FEM integration formulas for symbolic work,\ Engineering Computation,\ Volume 21, Number 8, 2004, pages 867-890.
  11. Gerald Folland,\ How to Integrate a Polynomial Over a Sphere,\ American Mathematical Monthly,\ Volume 108, Number 5, May 2001, pages 446-448.
  12. Bennett Fox,\ Algorithm 647: Implementation and Relative Efficiency of Quasirandom Sequence Generators,\ ACM Transactions on Mathematical Software,\ Volume 12, Number 4, December 1986, pages 362-376.
  13. Axel Grundmann, Michael Moeller,\ Invariant Integration Formulas for the N-Simplex by Combinatorial Methods,\ SIAM Journal on Numerical Analysis,\ Volume 15, Number 2, April 1978, pages 282-290.
  14. John Harris, Horst Stocker,\ Handbook of Mathematics and Computational Science,\ Springer, 1998,\ ISBN: 0-387-94746-9,\ LC: QA40.S76.
  15. Patrick Keast,\ Moderate Degree Tetrahedral Quadrature Formulas,\ Computer Methods in Applied Mechanics and Engineering,\ Volume 55, Number 3, May 1986, pages 339-348.
  16. Vladimir Krylov,\ Approximate Calculation of Integrals,\ Dover, 2006,\ ISBN: 0486445798,\ LC: QA311.K713.
  17. Dirk Laurie,\ Algorithm 584: CUBTRI, Automatic Cubature Over a Triangle,\ ACM Transactions on Mathematical Software,\ Volume 8, Number 2, 1982, pages 210-218.
  18. Frank Lether,\ A Generalized Product Rule for the Circle,\ SIAM Journal on Numerical Analysis,\ Volume 8, Number 2, June 1971, pages 249-253.
  19. James Lyness, Dennis Jespersen,\ Moderate Degree Symmetric Quadrature Rules for the Triangle,\ Journal of the Institute of Mathematics and its Applications,\ Volume 15, Number 1, February 1975, pages 19-32.
  20. James Lyness, BJJ McHugh,\ Integration Over Multidimensional Hypercubes, A Progressive Procedure,\ The Computer Journal,\ Volume 6, 1963, pages 264-270.
  21. AD McLaren,\ Optimal Numerical Integration on a Sphere,\ Mathematics of Computation,\ Volume 17, Number 84, October 1963, pages 361-383.
  22. Albert Nijenhuis, Herbert Wilf,\ Combinatorial Algorithms for Computers and Calculators,\ Second Edition,\ Academic Press, 1978,\ ISBN: 0-12-519260-6,\ LC: QA164.N54.
  23. William Peirce,\ Numerical Integration Over the Planar Annulus,\ Journal of the Society for Industrial and Applied Mathematics,\ Volume 5, Number 2, June 1957, pages 66-73.
  24. Hans Rudolf Schwarz,\ Finite Element Methods,\ Academic Press, 1988,\ ISBN: 0126330107,\ LC: TA347.F5.S3313.
  25. Gilbert Strang, George Fix,\ An Analysis of the Finite Element Method,\ Cambridge, 1973,\ ISBN: 096140888X,\ LC: TA335.S77.
  26. Arthur Stroud,\ Approximate Calculation of Multiple Integrals,\ Prentice Hall, 1971,\ ISBN: 0130438936,\ LC: QA311.S85.
  27. Arthur Stroud, Don Secrest,\ Gaussian Quadrature Formulas,\ Prentice Hall, 1966,\ LC: QA299.4G3S7.
  28. Stephen Wandzura, Hong Xiao,\ Symmetric Quadrature Rules on a Triangle,\ Computers and Mathematics with Applications,\ Volume 45, 2003, pages 1829-1840.
  29. Stephen Wolfram,\ The Mathematica Book,\ Fourth Edition,\ Cambridge University Press, 1999,\ ISBN: 0-521-64314-7,\ LC: QA76.95.W65.
  30. Dongbin Xiu,\ Numerical integration formulas of degree two,\ Applied Numerical Mathematics,\ Volume 58, 2008, pages 1515-1520.
  31. Olgierd Zienkiewicz,\ The Finite Element Method,\ Sixth Edition,\ Butterworth-Heinemann, 2005,\ ISBN: 0750663200,\ LC: TA640.2.Z54
  32. Daniel Zwillinger, editor,\ CRC Standard Mathematical Tables and Formulae,\ 30th Edition,\ CRC Press, 1996,\ ISBN: 0-8493-2479-3,\ LC: QA47.M315.

Source Code: {#source-code align=”center”}

Examples and Tests: {#examples-and-tests align=”center”}

List of Routines: {#list-of-routines align=”center”}

You can go up one level to the C++ source codes.


Last revised on 12 July 2014.