fem.py

Define the classes, methods and functions for Finite Element Method (FEM) of lowest order in tetrahedral meshes.

petgem.efem.fem.gauss_points_tetrahedron(polyOrder)[source]

Compute the quadrature points X and the weights W for the integration over the unit tetrahedra whose nodes are (0,0,0), (1,0,0), (0,1,0) and (0,0,1).

Parameters:polyOrder (int) – degree of polynominal
Returns:quadrature Gauss points and Gauss weights.
Return type:ndarray.

Note

References:

P Keast, Moderate degree tetrahedral quadrature formulas, CMAME 55: 339-348 (1986).

O.C. Zienkiewicz, The Finite Element Method, Sixth Edition.

petgem.efem.fem.tetraXiEtaZeta2XYZ(eleNodes, XiEtaZetaPoints)[source]

Map a set of points in XiEtaZeta coordinates to XYZ coordinates.

Parameters:
  • eleNodes (ndarray) – nodal spatial coordinates of the tetrahedral element.
  • XiEtaZetaPoints (ndarray) – set of points in XiEtaZeta coordinates.
Returns:

new spatial coordinates of XiEtaZetaPoints.

Return type:

ndarray.

petgem.efem.fem.unitary_test()[source]

Unitary test for fem.py script.