GM_RULES is a MATLAB library which defines Grundmann-Moeller quadratures rules for a simplex.
The user can choose the spatial dimension, thus defining the region to be a triangle (N = 2), tetrahedron (N = 3) or a general N-dimensional simplex.
The user chooses the index S of the rule. Rules are available with index S = 0 on up. A rule of index S will exactly integrate any polynomial of total degree 2*S+1 or less.
The rules are defined on the unit N-dimensional simplex. A simple linear transformation can be used to map the vertices and weights to an arbitrary simplex, while preserving the accuracy of the rule.
The formula for the weight involves the ratio of factorials and a high power. Direct evaluation of this formula results in disastrous inaccuracies, even for relatively low order rules. The original code has been revised to take a more cautious and accurate approach to this computation.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
CUBPACK is a library of FORTRAN90 routines, using double precision arithmetic, which estimates the integral of a function (or vector of functions) over a collection of N-dimensional hyperrectangles and simplices.
DUNAVANT is a MATLAB library of routines for defining Dunavant rules for quadrature on a triangle.
FEKETE is a MATLAB library of routines for defining Fekete rules for interpolation or quadrature on a triangle.
FELIPPA is a MATHEMATICA library which defines quadrature rules for lines, triangles, quadrilaterals, pyramids, wedges, tetrahedrons and hexahedrons.
GM_RULES is also available in a C++ version and a FORTRAN90 version.
KEAST is a MATLAB library which defines a number of quadrature rules for a tetrahedron.
NCC_TETRAHEDRON is a MATLAB library defining Newton-Cotes Closed quadrature rules on a tetrahedron.
NCC_TRIANGLE is a MATLAB library defining Newton-Cotes Closed quadrature rules on a triangle.
NCO_TETRAHEDRON is a MATLAB library defining Newton-Cotes Open quadrature rules on a tetrahedron.
NCO_TRIANGLE is a MATLAB library defining Newton-Cotes Open quadrature rules on a triangle.
NINT_EXACTNESS_TET is an executable MATLAB program which investigates the polynomial exactness of a quadrature rule for the tetrahedron.
NINT_EXACTNESS_TRI is an executable MATLAB program which investigates the polynomial exactness of a quadrature rule for the triangle.
QUADRATURE_RULES_TET is a dataset directory of triples of files defining various quadrature rules on tetrahedrons.
QUADRATURE_RULES_TRI is a dataset directory of triples of files defining various quadrature rules on triangles.
SIMPACK is a FORTRAN77 library of routines which approximate the integral of a function or vector of functions over a multidimensional simplex, or a region which is the sum of multidimensional simplexes.
STROUD is a MATLAB library of routines defining quadrature rules for a variety of unusual areas, surfaces and volumes in 2D, 3D and N-dimensions.
TEST_TRI_INT is a MATLAB library of functions that can be used to test algorithms for quadrature over a triangle.
WANDZURA is a MATLAB library of routines which definine Wandzura rules for quadrature on a triangle.
You can go up one level to the MATLAB source codes.