prism_witherden_rule, a C code which returns a symmetric Witherden quadrature rule for a prism with triangular base, with exactness up to total degree 10.
The data is given for the unit prism: with vertices (1,0,0), (0,1,0), (0,0,0), (1,0,1), (0,1,1), (0,0,1).
Suppose we are given a triangular prism P with vertices (1,0,0), (0,1,0), (0,0,0), (1,0,1), (0,1,1), (0,0,1). We call a rule with n points, returning coordinates x, y, z, and weights w. Then the integral I of f(x,y,z) over P is approximated by Q as follows:
Q = volume(P) * sum ( 1 <= i <= n ) w(i) * f(x(i),y(i),z(i))
The computer code and data files made available on this web page are distributed under the MIT license
prism_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.