NAME
hexahedron - Hexaedron reference element
DESCRIPTION
The hexahedron reference element is [-1,1]^3.
^ z 
| 
4----------7 
|\ |\ 
| \ | \ 
| \ | \ 
| 5------+---6 
| | | | 
0---+------3 - | ---> y 
\ | \ | 
\ | \ | 
\| \| 
1----------2 
\ 
x
Curved high order Pk hexaedra (k >= 1) in 3d geometries are supported. These hexaedra have additional edge-nodes, face-nodes and internal volume-nodes.
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 hexaedron lattice. See below for edges and faces numbering and orioentation.
4----19----7
|\ |\ 
|16 23 | 18 
12 \ 21 15 \ 
| 5----17+---6 
|22 | 26 | 25| 
0---+-11---3 | 
\ 13 24 \ 14 
8 | 20 10| 
\| \| 
1-----9----2 
P2
NUMBERING
The orientation is such that triedra (01, 03, 04) 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 gmsh mesh generator when using high-order elements. This difference is handled by the msh2geo mesh file converter (see msh2geo(1)).
IMPLEMENTATION
const size_t
dimension = 3; 
const Float measure = 8; 
const size_t n_vertex = 8; 
const point vertex [n_vertex] = { 
point(-1,-1,-1 ), 
point( 1,-1,-1 ), 
point( 1, 1,-1 ), 
point(-1, 1,-1 ), 
point(-1,-1, 1 ), 
point( 1,-1, 1 ), 
point( 1, 1, 1 ), 
point(-1, 1, 1 ) }; 
const size_t n_face = 6; 
const size_t face [n_face][4] = { 
{0, 3, 2, 1 }, 
{0, 4, 7, 3 }, 
{0, 1, 5, 4 }, 
{4, 5, 6, 7 }, 
{1, 2, 6, 5 }, 
{2, 3, 7, 6 } }; 
const size_t n_edge = 12; 
const size_t edge [n_edge][2] = { 
{0, 1 }, 
{1, 2 }, 
{2, 3 }, 
{3, 0 }, 
{0, 4 }, 
{1, 5 }, 
{2, 6 }, 
{3, 7 }, 
{4, 5 }, 
{5, 6 }, 
{6, 7 }, 
{7, 4 } };
SEE ALSO
COPYRIGHT
Copyright (C) 2000-2018 Pierre Saramito <Pierre.Saramito [AT] imag.fr> GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.