# pyramid_witherden_rule

pyramid_witherden_rule, a Python code which returns a Witherden quadrature rule, with exactness up to total degree 10, over the interior of a pyramid in 3D.

The integration region is:

```       - ( 1 - Z ) <= X <= 1 - Z
- ( 1 - Z ) <= Y <= 1 - Z
0 <= Z <= 1.
```
When Z is zero, the integration region is a square lying in the (X,Y) plane, centered at (0,0,0) with "radius" 1. As Z increases to 1, the radius of the square diminishes, and when Z reaches 1, the square has contracted to the single point (0,0,1).

### Languages:

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

### Related Data and Programs:

ccn_rule, a Python code which defines a Clenshaw Curtis Nested (CCN) quadrature rule.

clenshaw_curtis_rule, a Python code which defines a Clenshaw Curtis quadrature rule.

hermite_rule, a Python code which returns a Gauss-Hermite quadrature rule for estimating the integral of a function with density exp(-x^2) over the interval (-oo,+oo).

hexagon_stroud_rule, a Python code which returns a Stroud quadrature rule over the interior of the unit hexagon.

jacobi_rule, a Python code which returns a Gauss-Jacobi quadrature rule.

laguerre_rule, a Python code which returns a Gauss-Laguerre quadrature rule for estimating the integral of a function with density exp(-x) over the interval [0,+oo).

legendre_rule, a Python code which returns a Gauss-Legendre quadrature rule for estimating the integral of a function with density rho(x)=1 over the interval [-1,+1].

pyramid_exactness, a Python code which tests the exactness of a quadrature rule over the interior of the unit pyramid in 3d.

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

pyramid_integrals, a Python code which returns the exact value of the integral of any monomial over the interior of the unit pyramid in 3d.

pyramid_jaskowiec_rule, a Python code which returns quadrature rules, with exactness up to total degree 20, over the interior of a pyramid in 3D, by Jan Jaskowiec, Natarajan Sukumar.

pyramid_monte_carlo, a Python code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit pyramid in 3d;

pyramid_rule, a Python code which computes a conical product quadrature rule over the interior of the unit pyramid in 3d.

### Reference:

1. Freddie Witherden, Peter Vincent,
On the identification of symmetric quadrature rules for finite element methods,
Computers and Mathematics with Applications,
Volume 69, pages 1232-1241, 2015.

### Source Code:

Last revised on 26 April 2023.