![]() |
OGS
|
This class represents a 2d triangle element. The following sketch shows the node and edge numbering.
Definition at line 38 of file TriRule3.h.
#include <TriRule3.h>
Public Types | |
using | EdgeReturn = MeshLib::LinearEdgeReturn |
Returns the i-th edge of the element. More... | |
Static Public Member Functions | |
static bool | isPntInElement (Node const *const *nodes, MathLib::Point3d const &pnt, double eps) |
static ElementErrorCode | validate (const Element *e) |
static unsigned | identifyFace (Node const *const *, Node const *nodes[3]) |
Returns the ID of a face given an array of nodes. More... | |
static double | computeVolume (Node const *const *_nodes) |
Calculates the volume of a convex hexahedron by partitioning it into six tetrahedra. More... | |
![]() | |
static const Element * | getFace (const Element *e, unsigned i) |
Returns the face i of the element. More... | |
static bool | testElementNodeOrder (Element const &e) |
static Eigen::Vector3d | getFirstSurfaceVector (Element const &e) |
static Eigen::Vector3d | getSecondSurfaceVector (Element const &e) |
static Eigen::Vector3d | getSurfaceNormal (Element const &e) |
Returns the surface normal of a 2D element. More... | |
Static Public Attributes | |
static const unsigned | n_base_nodes = 3u |
Constant: The number of base nodes for this element. More... | |
static const unsigned | n_all_nodes = 3u |
Constant: The number of all nodes for this element. More... | |
static const MeshElemType | mesh_elem_type = MeshElemType::TRIANGLE |
Constant: The geometric type of the element. More... | |
static const CellType | cell_type = CellType::TRI3 |
Constant: The FEM type of the element. More... | |
static const unsigned | n_edges = 3 |
Constant: The number of edges. More... | |
static const unsigned | n_neighbors = 3 |
Constant: The number of neighbors. More... | |
static const unsigned | edge_nodes [3][2] |
Constant: Local node index table for edge. More... | |
![]() | |
static const unsigned | dimension = 2u |
Constant: Dimension of this mesh element. More... | |
static const unsigned | n_faces = 0 |
Constant: The number of faces. More... | |
Returns the i-th edge of the element.
Definition at line 63 of file TriRule3.h.
|
static |
Calculates the volume of a convex hexahedron by partitioning it into six tetrahedra.
Definition at line 24 of file TriRule3.cpp.
References MathLib::calcTriangleArea().
|
static |
Returns the ID of a face given an array of nodes.
Definition at line 36 of file TriRule3.cpp.
References edge_nodes.
|
static |
Checks if a point is inside the element.
pnt | a 3D MathLib::Point3d object |
eps | tolerance for numerical algorithm used or computing the property |
nodes | the nodes of the element. |
Definition at line 29 of file TriRule3.cpp.
References MathLib::isPointInTriangle().
|
static |
Tests if the element is geometrically valid.
Definition at line 59 of file TriRule3.cpp.
References MeshLib::hasZeroVolume(), NodeOrder, MeshLib::Element::testElementNodeOrder(), and ZeroVolume.
|
static |
Constant: The FEM type of the element.
Definition at line 51 of file TriRule3.h.
|
static |
Constant: Local node index table for edge.
Definition at line 60 of file TriRule3.h.
Referenced by identifyFace().
|
static |
Constant: The geometric type of the element.
Definition at line 48 of file TriRule3.h.
|
static |
Constant: The number of all nodes for this element.
Definition at line 45 of file TriRule3.h.
|
static |
Constant: The number of base nodes for this element.
Definition at line 42 of file TriRule3.h.
|
static |
Constant: The number of edges.
Definition at line 54 of file TriRule3.h.
|
static |
Constant: The number of neighbors.
Definition at line 57 of file TriRule3.h.