Elements¶
Overview¶
The elements of Muscat (Points, Bars, Square, Triangles, Tetrahedras…) are gathered under an enumeration called ElementType.
This enum can be found in the file ElementsDescription.py/h
.
This description itself includes several information for each elements. As each element are represented by a unique number, bit masks are defined to provide more information about each element.
ElementType::Bar_2 & ElementType::MaskP1; // evaluate to true
ElementType::Quadrangle_4 & ElementType::MaskP2; // evaluate to false
ElementType::Tetrahedron_10 & ElementType::MaskD2; // evaluate to false
ElementType::Tetrahedron_4 & ElementType::MaskD3; // evaluate to true
Note
The name of the elements in the enum is made up with the geometrical support (example: Triangle) immediately followed by an ‘_’ and the number of node that compose the given element (example: 3). Therefore, several quadratic elements exist for some given geometric support, each differentiated by the number of node (example: Quadrangle_8 and Quadrangle_9)
Descriptions of the elements¶
A data structure mapping an ElementType to its ElementDescription object exists. This description of each elements involves:
name: the element name
geoSupport: the geometrical support of this element
dimension: the dimensionality (0,1,2,3)
numberOfNodes: number of nodes of this element
linear: true if the the jacobian matrix is constant in the elemen
degree: the higher degree of the polynomial