.\" .de Id .. .de Sp .if n .sp .if t .sp 0.4 .. .TH tetrahedron 7rheolef "rheolef-6.5" "rheolef-6.5" "rheolef-6.5" .\" label: /*Class:tetra .SH NAME \fBtetrahedron\fP - Tetraedron reference element .\" skip: @cindex tetrahedron .\" skip: @cindex reference element .\" skip: @pindex gmsh .\" skip: @pindex msh2geo .SH DESCRIPTION The tetrahedron reference element is .\" begin_example .Sp .nf K = { 0 < x < 1 and 0 < y < 1-x and 0 < z < 1-x-y } .Sp .fi .\" end_example .\" begin_example .Sp .nf z . ,/ / 3 ,/|`\\ ,/ | `\\ ,/ '. `\\ ,/ | `\\ ,/ | `\\ 0-----------'.--------2 --> y `\\. | ,/ `\\. | ,/ `\\. '. ,/ `\\. |/ `1 `\\. ` x .Sp .fi .\" end_example Curved high order Pk tetrahedra (k >= 1) in 3d geometries are supported. These tetrahedra have additional edge-nodes, face-nodes and internal volume-nodes. .SH THESE NODES ARE NUMBERED AS first vertex, then edge-node, following the edge numbering order and orientation, then face-nodes following the face numbering order and orientation, and finally the face internal nodes, following the tetrahedron lattice. See below for edges and faces numbering and orioentation. .\" begin_example .Sp .nf 3 ,/|`\\ ,/ | `\\ ,7 '. `9 ,/ | `\\ ,/ 8 `\\ 0--------6--'.--------2 `\\. | ,/ `\\. | ,5 `4. '. ,/ `\\. |/ `1 P2 .Sp .fi .\" end_example .SH NUMBERING The orientation is such that triedra (01, 02, 03) is direct, and all faces, see from exterior, are in the direct sens. References: P. L. Georges, "Generation automatique de maillages", page 24-, coll RMA, 16, Masson, 1994. Notice that the edge-nodes and face-nodes numbering slighly differ from those used in the \fBgmsh\fP mesh generator when using high-order elements. This difference is handled by the \fBmsh2geo\fP mesh file converter (see msh2geo(1)). .\" END .SH IMPLEMENTATION .\" begin_example .Sp .nf const size_t dimension = 3; const Float measure = Float(1.)/Float(6.); const size_t n_vertex = 4; const point vertex [n_vertex] = { point( 0, 0, 0 ), point( 1, 0, 0 ), point( 0, 1, 0 ), point( 0, 0, 1 ) }; const size_t n_face = 4; const size_t face [n_face][3] = { { 0, 2, 1 }, { 0, 3, 2 }, { 0, 1, 3 }, { 1, 2, 3 } }; const size_t n_edge = 6; const size_t edge [n_edge][2] = { { 0, 1 }, { 1, 2 }, { 2, 0 }, { 0, 3 }, { 1, 3 }, { 2, 3 } }; .Sp .fi .\" end_example .\" LENGTH = 1 .SH SEE ALSO msh2geo(1)