OGS
TriRule6.h
Go to the documentation of this file.
1
11#pragma once
12
13#include "EdgeReturn.h"
14#include "MeshLib/MeshEnums.h"
15#include "TriRule.h"
16
17namespace MeshLib
18{
19
39class TriRule6 : public TriRule
40{
41public:
43 static const unsigned n_all_nodes = 6u;
44
47
49 constexpr static const unsigned edge_nodes[3][3] = {
50 {0, 1, 3}, // Edge 0
51 {1, 2, 4}, // Edge 1
52 {2, 0, 5}, // Edge 2
53 };
54
57
59 static unsigned identifyFace(Node const* const* element_nodes,
60 Node const* nodes[2])
61 {
62 return FaceRule::identifyFace<TriRule6>(element_nodes, nodes);
63 }
64
65}; /* class */
66
67} // namespace MeshLib
Definition of mesh-related Enumerations.
static unsigned identifyFace(Node const *const *element_nodes, Node const *nodes[ElementRule::dimension])
Returns the ID of an edge given an array of nodes.
Definition FaceRule.h:48
Returns quadratic order edge.
Definition EdgeReturn.h:39
static unsigned identifyFace(Node const *const *element_nodes, Node const *nodes[2])
Returns the ID of a face given an array of nodes.
Definition TriRule6.h:59
static const unsigned n_all_nodes
Constant: The number of all nodes for this element.
Definition TriRule6.h:43
static constexpr const unsigned edge_nodes[3][3]
Constant: Local node index table for edge.
Definition TriRule6.h:49
static const CellType cell_type
Constant: The FEM type of the element.
Definition TriRule6.h:46
CellType
Types of mesh elements supported by OpenGeoSys.
Definition MeshEnums.h:64