# square_symq_rule

square_symq_rule, a C++ code which returns symmetric quadrature rules, with exactness up to total degree 20, over the interior of the square in 2D, by Hong Xiao and Zydrunas Gimbutas.

The original source code, from which this library was developed, is available from the Courant Mathematics and Computing Laboratory, at https://www.cims.nyu.edu/cmcl/quadratures/quadratures.html ,

### Languages:

square_symq_rule is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and a Octave version and a Python version.

### Related Data and Programs:

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 a Felippa quadrature rule over the interior of a cube in 3D.

pyramid_felippa_rule, a C++ code which returns a Felippa quadrature rule for approximating integrals over the interior of a pyramid in 3D.

square_arbq_rule, a C++ code which returns quadrature rules, with exactness up to total degree 20, over the interior of the symmetric square in 2D, by Hong Xiao and Zydrunas Gimbutas.

square_felippa_rule, a C++ code which returns a Felippa quadrature rule over the interior of a square in 2D.

square_grid, a C++ code which computes a grid of points over the interior of a square in 2D.

square_integrals, a C++ code which returns the exact value of the integral of any monomial over the interior of the unit square in 2D.

square_minimal_rule, a C++ code which returns "almost minimal" quadrature rules, with exactness up to total degree 55, over the interior of the symmetric square in 2D, by Mattia Festa and Alvise Sommariva.

square_monte_carlo, a C++ code which uses the Monte Carlo method to estimate the integral of a function over the interior of the unit square in 2D.

stroud, a C++ code 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.

toms886, a C++ code which defines the Padua points for interpolation in a 2D region, including the rectangle, triangle, and ellipse, by Marco Caliari, Stefano de Marchi, Marco Vianello. This is a version of ACM TOMS algorithm 886.

tetrahedron_felippa_rule, a C++ code which returns a Felippa quadrature rule for approximating integrals over the interior of a tetrahedron in 3D.

triangle_fekete_rule, a C++ code which defines a Fekete rule for interpolation or quadrature over the interior of a triangle in 2D.

triangle_felippa_rule, a C++ code which returns a Felippa quadrature rule for approximating integrals over the interior of a triangle in 2D.

triangle_symq_rule, a C++ code which returns efficient symmetric quadrature rules, with exactness up to total degree 50, over the interior of an arbitrary triangle in 2D, by Hong Xiao and Zydrunas Gimbutas.

wedge_felippa_rule, a C++ code which returns a Felippa quadrature rule for approximating integrals over the interior of the unit wedge in 3D.

### Reference:

1. Hong Xiao, Zydrunas Gimbutas,
A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions,
Computers and Mathematics with Applications,
Volume 59, 2010, pages 663-676.

### Source Code:

Last revised on 19 April 2020.