BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
belfem::integration Namespace Reference

Functions

void gauss_line (const int aOrder, Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_quad (const int aOrder, Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_hex (const int aOrder, Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_hex14 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_hex34 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_hex6 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta1 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta11 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta16 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta29 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta40 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta5 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta50 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta71 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_penta8 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_pyra1 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_pyra125 (Vector< real > &aWeights, Matrix< real > &aPoints)
 Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 5-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 5-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.
void gauss_pyra27 (Vector< real > &aWeights, Matrix< real > &aPoints)
 Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 3-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 3-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.
void gauss_pyra64 (Vector< real > &aWeights, Matrix< real > &aPoints)
 Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 4-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 4-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.
void gauss_pyra8 (Vector< real > &aWeights, Matrix< real > &aPoints)
 Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 2-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 2-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.
void gauss_quad12 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_quad20 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_quad28 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_quad37 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_quad8 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet1 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet10 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet11 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet15 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet165 (Vector< real > &aWeights, Matrix< real > &aPoints)
 11th order interpolation
void gauss_tet20 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet220 (Vector< real > &aWeights, Matrix< real > &aPoints)
 13th order interpolation
void gauss_tet236 (Vector< real > &aWeights, Matrix< real > &aPoints)
 14th order interpolation
void gauss_tet24 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet31 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet35 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet4 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet46 (Vector< real > &aWeights, Matrix< real > &aPoints)
 8th order interpolation
void gauss_tet5 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet56 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tet81 (Vector< real > &aWeights, Matrix< real > &aPoints)
 10th order interpolation
void gauss_tri1 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tri12 (Vector< real > &aWeights, Matrix< real > &aPoints)
 6th order interpolation
void gauss_tri15 (Vector< real > &aWeights, Matrix< real > &aPoints)
 7th order interpolation
void gauss_tri16 (Vector< real > &aWeights, Matrix< real > &aPoints)
 8th order interpolation
void gauss_tri19 (Vector< real > &aWeights, Matrix< real > &aPoints)
 9th order interpolation
void gauss_tri25 (Vector< real > &aWeights, Matrix< real > &aPoints)
 10th order interpolation
void gauss_tri28 (Vector< real > &aWeights, Matrix< real > &aPoints)
 11th order interpolation
void gauss_tri3 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tri33 (Vector< real > &aWeights, Matrix< real > &aPoints)
 12th order interpolation
void gauss_tri37 (Vector< real > &aWeights, Matrix< real > &aPoints)
 13th order interpolation
void gauss_tri4 (Vector< real > &aWeights, Matrix< real > &aPoints)
void gauss_tri42 (Vector< real > &aWeights, Matrix< real > &aPoints)
 14th order interpolation
void gauss_tri49 (Vector< real > &aWeights, Matrix< real > &aPoints)
 15th order interpolation
void gauss_tri55 (Vector< real > &aWeights, Matrix< real > &aPoints)
 16th order interpolation
void gauss_tri60 (Vector< real > &aWeights, Matrix< real > &aPoints)
 17th order interpolation
void gauss_tri67 (Vector< real > &aWeights, Matrix< real > &aPoints)
 18th order interpolation
void gauss_tri7 (Vector< real > &aWeights, Matrix< real > &aPoints)
 5th order interpolation
void gauss_tri73 (Vector< real > &aWeights, Matrix< real > &aPoints)
 19th order interpolation
void gauss_tri79 (Vector< real > &aWeights, Matrix< real > &aPoints)
 20th order interpolation

Function Documentation

◆ gauss_hex()

void belfem::integration::gauss_hex ( const int aOrder,
Vector< real > & aWeights,
Matrix< real > & aPoints )

◆ gauss_hex14()

void belfem::integration::gauss_hex14 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_hex34()

void belfem::integration::gauss_hex34 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_hex6()

void belfem::integration::gauss_hex6 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_line()

void belfem::integration::gauss_line ( const int aOrder,
Vector< real > & aWeights,
Matrix< real > & aPoints )

◆ gauss_penta1()

void belfem::integration::gauss_penta1 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta11()

void belfem::integration::gauss_penta11 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta16()

void belfem::integration::gauss_penta16 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta29()

void belfem::integration::gauss_penta29 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta40()

void belfem::integration::gauss_penta40 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta5()

void belfem::integration::gauss_penta5 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta50()

void belfem::integration::gauss_penta50 ( Vector< real > & aWeights,
Matrix< real > & aPoints )

◆ gauss_penta71()

void belfem::integration::gauss_penta71 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_penta8()

void belfem::integration::gauss_penta8 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_pyra1()

void belfem::integration::gauss_pyra1 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_pyra125()

void belfem::integration::gauss_pyra125 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 5-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 5-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.

Exact for polynomials up to degree 9; the weights sum to 4/3. Regenerated 2026-09-03: the stored coordinates did not integrate degree 1 ( the weights already were these ). Construction as in 10.1108/02644400410554362

◆ gauss_pyra27()

void belfem::integration::gauss_pyra27 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 3-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 3-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.

Exact for polynomials up to degree 5; the weights sum to 4/3. Regenerated 2026-09-03: the stored coordinates did not integrate degree 1 ( the weights already were these ). Construction as in 10.1108/02644400410554362

◆ gauss_pyra64()

void belfem::integration::gauss_pyra64 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 4-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 4-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.

Exact for polynomials up to degree 7; the weights sum to 4/3. Regenerated 2026-09-03: the stored coordinates did not integrate degree 1 ( the weights already were these ). Construction as in 10.1108/02644400410554362

◆ gauss_pyra8()

void belfem::integration::gauss_pyra8 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

Conical-product Gauss rule on the reference pyramid ( base [-1,1]^2 at zeta = 0, apex ( 0, 0, 1 ), as in cl_IF_PYRA5.hpp ): 2-point Gauss-Legendre in xi and eta, scaled by ( 1 - zeta ), times 2-point Gauss-Jacobi(2,0) in zeta, which absorbs the ( 1 - zeta )^2 volume factor.

Exact for polynomials up to degree 3; the weights sum to 4/3. Regenerated 2026-09-03: the stored coordinates did not integrate degree 1 ( the weights already were these ). Construction as in 10.1108/02644400410554362

◆ gauss_quad()

void belfem::integration::gauss_quad ( const int aOrder,
Vector< real > & aWeights,
Matrix< real > & aPoints )

◆ gauss_quad12()

void belfem::integration::gauss_quad12 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_quad20()

void belfem::integration::gauss_quad20 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_quad28()

void belfem::integration::gauss_quad28 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_quad37()

void belfem::integration::gauss_quad37 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_quad8()

void belfem::integration::gauss_quad8 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet1()

void belfem::integration::gauss_tet1 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet10()

void belfem::integration::gauss_tet10 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet11()

void belfem::integration::gauss_tet11 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet15()

void belfem::integration::gauss_tet15 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet165()

void belfem::integration::gauss_tet165 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

11th order interpolation

B. Vioreanu, V. Rokhlin : Spectra of Multiplication Operators as a Numerical Tool SIAM J. Sci. Comput., vol. 36, no. 1, 2014 https://doi.org/10.1137/110860082

◆ gauss_tet20()

void belfem::integration::gauss_tet20 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet220()

void belfem::integration::gauss_tet220 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

13th order interpolation

B. Vioreanu, V. Rokhlin : Spectra of Multiplication Operators as a Numerical Tool SIAM J. Sci. Comput., vol. 36, no. 1, 2014 https://doi.org/10.1137/110860082

◆ gauss_tet236()

void belfem::integration::gauss_tet236 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

14th order interpolation

Linbo Zhang, Tao Cui, Hui Liu : A set of symmetric quadrature rules on triangles and tetrahedra Journal of Computational Mathematics, vol. 27, no. 1, pp. 89-96, 2009 https://www.jstor.org/stable/43693493

◆ gauss_tet24()

void belfem::integration::gauss_tet24 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet31()

void belfem::integration::gauss_tet31 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet35()

void belfem::integration::gauss_tet35 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet4()

void belfem::integration::gauss_tet4 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet46()

void belfem::integration::gauss_tet46 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

8th order interpolation

F.D. Witherden, P.E. Vincent : On the identification of symmetric quadrature rules for finite element methods Computers & Mathematics with Applications, vol. 69, no. 10, pp. 1232–1241, 2015 https://doi.org/10.1016/j.camwa.2015.03.017

◆ gauss_tet5()

void belfem::integration::gauss_tet5 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet56()

void belfem::integration::gauss_tet56 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tet81()

void belfem::integration::gauss_tet81 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

10th order interpolation

F.D. Witherden, P.E. Vincent : On the identification of symmetric quadrature rules for finite element methods Computers & Mathematics with Applications, vol. 69, no. 10, pp. 1232–1241, 2015 https://doi.org/10.1016/j.camwa.2015.03.017

◆ gauss_tri1()

void belfem::integration::gauss_tri1 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tri12()

void belfem::integration::gauss_tri12 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

6th order interpolation

G.R. Cowper : Gaussian quadrature formulas for triangles Numerical Methods in Engineering, vol. 7, no. 3, pp. 405–408, 1973 https://doi.org/10.1002/nme.1620070316

◆ gauss_tri15()

void belfem::integration::gauss_tri15 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

7th order interpolation

M.E. Laursen, M. Gellert : Some criteria for numerically integrated matrices and quadrature formulas for triangles International Journal for Numerical Methods in Engineering, vol. 12, no. 1, pp. 67–76, 1978 https://doi.org/10.1002/nme.1620120107

◆ gauss_tri16()

void belfem::integration::gauss_tri16 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

8th order interpolation

J.N. Lyness, D. Jespersen : Moderate Degree Symmetric Quadrature Rules for the Triangle IMA Journal of Applied Mathematics, vol. 15, no. 1, pp. 19-32, 1975 https://doi.org/10.1093/imamat/15.1.19

◆ gauss_tri19()

void belfem::integration::gauss_tri19 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

9th order interpolation

J.N. Lyness, D. Jespersen : Moderate Degree Symmetric Quadrature Rules for the Triangle IMA Journal of Applied Mathematics, vol. 15, no. 1, pp. 19-32, 1975 https://doi.org/10.1093/imamat/15.1.19

◆ gauss_tri25()

void belfem::integration::gauss_tri25 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

10th order interpolation

F.D. Witherden, P.E. Vincent : On the identification of symmetric quadrature rules for finite element methods Computers & Mathematics with Applications, vol. 69, no. 10, pp. 1232–1241, 2015 https://doi.org/10.1016/j.camwa.2015.03.017

◆ gauss_tri28()

void belfem::integration::gauss_tri28 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

11th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri3()

void belfem::integration::gauss_tri3 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tri33()

void belfem::integration::gauss_tri33 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

12th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri37()

void belfem::integration::gauss_tri37 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

13th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri4()

void belfem::integration::gauss_tri4 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

◆ gauss_tri42()

void belfem::integration::gauss_tri42 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

14th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri49()

void belfem::integration::gauss_tri49 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

15th order interpolation

F.D. Witherden, P.E. Vincent : On the identification of symmetric quadrature rules for finite element methods Computers & Mathematics with Applications, vol. 69, no. 10, pp. 1232–1241, 2015 https://doi.org/10.1016/j.camwa.2015.03.017

◆ gauss_tri55()

void belfem::integration::gauss_tri55 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

16th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri60()

void belfem::integration::gauss_tri60 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

17th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027

◆ gauss_tri67()

void belfem::integration::gauss_tri67 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

18th order interpolation

F.D. Witherden, P.E. Vincent : On the identification of symmetric quadrature rules for finite element methods Computers & Mathematics with Applications, vol. 69, no. 10, pp. 1232–1241, 2015 https://doi.org/10.1016/j.camwa.2015.03.017

◆ gauss_tri7()

void belfem::integration::gauss_tri7 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

5th order interpolation

P.C. Hammer, O.J. Marlowe, A.H. Stroud : Numerical Integration Over Simplexes and Cones Mathematical Tables and Other Aids to Computation, vol. 10, no. 55, pp. 130-137, 1956 https://doi.org/10.1090/S0025-5718-1956-0086389-6

◆ gauss_tri73()

void belfem::integration::gauss_tri73 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

19th order interpolation

D.A. Dunavant : High Degree Efficient Symmetrical Gaussian Quadrature Rules for the Triangle Article in International Journal for Numerical Methods in Engineering, vol. 21, no. 6, pp. 1129-1148, 1985 https://doi.org/10.1002/nme.1620210612

◆ gauss_tri79()

void belfem::integration::gauss_tri79 ( Vector< real > & aWeights,
Matrix< real > & aPoints )
inline

20th order interpolation

Hong Xiao, Zydrunas Gimbutas : A numerical algorithm for the construction of efficient quadrature rules in two and higher dimensions Computers & Mathematics with Applications, vol. 59, no. 2, pp. 663–676, 2010 https://doi.org/10.1016/j.camwa.2009.10.027