DUNAVANT
Quadrature Rules for the Triangle


DUNAVANT is a FORTRAN90 library, using double precision arithmetic, which defines the weights and abscisass for a sequence of 20 quadrature rules on a triangle, which are exact for polynomials up to degree 20.

These rules are almost optimal, in the sense that, for each polynomial degree, the number of points used in the rule is close to, or equal to, the theoretical minimum possible value.

A few of the rules include one or two points which are "slightly" outside the triangle; a few of the rules include weights which are negative. Both of these occurrences are generally undesirable.

Licensing:

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

Related Data and Programs:

CLENSHAW_CURTIS is a FORTRAN90 library which can set up a Clenshaw Curtis quadrature grid in multiple dimensions.

DUNAVANT is also available in a C++ version and a MATLAB version

FEKETE is a FORTRAN90 library which defines Fekete rules for quadrature or interpolation on a triangle.

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

FEM_SAMPLE is a FORTRAN90 library which evaluates a finite element function defined on an order 3 or order 6 triangulation.

FEMPACK is a FORTRAN90 library of routines for finite element calculations.

GM_RULES is a FORTRAN90 library of routines for defining a Grundmann-Moeller rule for quadrature over a triangle, tetrahedron, or general M-dimensional simplex.

NCC_TRIANGLE is a FORTRAN90 library defining Newton-Cotes closed quadrature rules on a triangle.

NCO_TRIANGLE is a FORTRAN90 library defining Newton-Cotes open quadrature rules on a triangle.

NINT_EXACTNESS_TRI is an executable FORTRAN90 program which investigates the polynomial exactness of a quadrature rule for the triangle.

NINTLIB is a FORTRAN90 library containing a variety of routines for numerical estimation of integrals in multiple dimensions.

QUADRATURE_RULES_TRI is a dataset directory of triples of files defining various quadrature rules on triangles.

QUADRULE is a FORTRAN90 library for defining quadrature rules on a variety of intervals with different weight functions.

STROUD is a FORTRAN90 library which contains quadrature rules for a variety of unusual areas, surfaces and volumes in 2D, 3D and N-dimensions.

TEST_TRI_INT is a FORTRAN90 library which can be used to test algorithms for quadrature over a triangle.

TOMS612 is a FORTRAN77 library which estimates the integral of a function over a triangle.

TOMS706 is a FORTRAN77 library which estimates the integral of a function over a triangulated region.

WANDZURA is a FORTRAN90 library which defines Wandzura rules for quadrature on a triangle.

Reference:

  1. David Dunavant,
    High Degree Efficient Symmetrical Gaussian Quadrature Rules for the Triangle,
    International Journal for Numerical Methods in Engineering,
    Volume 21, 1985, pages 1129-1148.
  2. 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.

Source Code:

Examples and Tests:

One of the tests in the sample calling program creates EPS files of the Dunavant points in the unit triangle. These have been converted to PNG files for display here.

List of Routines:

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


Last revised on 11 December 2006