# tetrahedron_witherden_rule

tetrahedron_witherden_rule, a Python code which returns a symmetric Witherden quadrature rule for the tetrahedron, with exactness up to total degree 10.

The data is given for the tetrahedron: with vertices (0,0,0), (1,0,0), (0,1,0), (0,0,1).

We suppose we are given a tetrahedron T with vertices A, B, C, D. We call a rule with n points, returning barycentric coordinates a, b, c, d, and weights w. Then the integral I of f(x,y,z) over T is approximated by Q as follows:

```      (x,y,z) = a(1:n) * A + b(1:n) * B + c(1:n) * C + d(1:n) * D
Q = volume(T) * sum ( 1 <= i <= n ) w(i) * f(x(i),y(i),z(i))
```

### Languages:

tetrahedron_witherden_rule is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave versionand 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).

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].

simplex_gm_rule, a Python code which defines Grundmann-Moeller quadrature rules over the interior of a triangle in 2d, a tetrahedron in 3d, or over the interior of the simplex in m dimensions.

tetrahedron_arbq_rule, a Python code which returns quadrature rules, with exactness up to total degree 15, over the interior of a tetrahedron in 3D, by Hong Xiao and Zydrunas Gimbutas.

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

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

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

tetrahedron_monte_carlo, a Python code which uses the Monte Carlo method to estimate the integral of a function over the interior of the unit tetrahedron 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 24 April 2023.