simplex_gm_rule, a C++ code which defines Grundmann-Moeller quadrature rules over the interior of a simplex in M dimensions.
The user can choose the spatial dimension M, thus defining the region to be a triangle (M = 2), tetrahedron (M = 3) or a general M-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 M-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 computer code and data files described and made available on this web page are distributed under the MIT license
simplex_gm_rule is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.
ANNULUS_RULE, a C++ code which computes a quadrature rule for estimating integrals of a function over the interior of a circular annulus in 2D.
CUBE_FELIPPA_RULE, a C++ code which returns the points and weights of a Felippa quadrature rule over the interior of a cube in 3D.
PYRAMID_FELIPPA_RULE, a C++ code which returns Felippa's quadratures rules for approximating integrals over the interior of a pyramid in 3D.
SIMPLEX_GRID, a C++ code which generates a regular grid of points over the interior of an arbitrary simplex in M dimensions.
SQUARE_FELIPPA_RULE, a C++ code which returns the points and weights of a Felippa quadrature rule over the interior of a square in 2D.
TETRAHEDRON_EXACTNESS, a C++ code which investigates the monomial exactness of a quadrature rule over the interior of a tetrahedron in 3D.
TETRAHEDRON_FELIPPA_RULE, a C++ code which returns Felippa's quadratures rules for approximating integrals over the interior of a tetrahedron in 3D.
TETRAHEDRON_INTEGRALS, a C++ code which returns the exact value of the integral of any monomial over the interior of the unit tetrahedron in 3D.
TETRAHEDRON_KEAST_RULE, a C++ code which defines ten quadrature rules, with exactness degrees 0 through 8, over the interior of a tetrahedron in 3D.
TETRAHEDRON_MONTE_CARLO, a C++ code which uses the Monte Carlo method to estimate integrals over the interior of a tetrahedron in 3D.
TETRAHEDRON_NCC_RULE, a C++ code which defines Newton-Cotes Closed (NCC) quadrature rules over the interior of a tetrahedron in 3D.
TETRAHEDRON_NCO_RULE, a C++ code which defines Newton-Cotes Open (NCO) quadrature rules over the interior of a tetrahedron in 3D.
TRIANGLE_DUNAVANT_RULE, a C++ code which defines Dunavant quadrature rules over the interior of a triangle in 2D.
TRIANGLE_FEKETE_RULE, a C++ code which defines Fekete rules for interpolation or quadrature over the interior of a triangle in 2D.
TRIANGLE_FELIPPA_RULE, a C++ code which returns Felippa's quadratures rules for approximating integrals over the interior of a triangle in 2D.
TRIANGLE_LYNESS_RULE, a C++ code which returns Lyness-Jespersen quadrature rules for the triangle.
TRIANGLE_MONTE_CARLO, a C++ code which uses the Monte Carlo method to estimate integrals over a triangle.
TRIANGLE_NCC_RULE, a C++ code which defines Newton-Cotes Closed (NCC) quadrature rules over the interior of a triangle in 2D.
TRIANGLE_NCO_RULE, a C++ code which defines Newton-Cotes Open (NCO) quadrature rules over the interior of a triangle in 2D.
TRIANGLE_WANDZURA_RULE, a C++ code which defines Wandzura rules for quadrature over the interior of a triangle in 2D.
WEDGE_FELIPPA_RULE, a C++ code which returns quadratures rules for approximating integrals over the interior of the unit wedge in 3D.