OGS
MeshLib::QuadRule8 Class Reference

Detailed Description

This class represents a 2d quadrilateral element with 8 nodes. The following sketch shows the node and edge numbering.

2
3-----6-----2
| |
| |
3 7 5 1
| |
| |
0-----4-----1
0

Definition at line 36 of file QuadRule8.h.

#include <QuadRule8.h>

Inheritance diagram for MeshLib::QuadRule8:
[legend]
Collaboration diagram for MeshLib::QuadRule8:
[legend]

Public Types

using EdgeReturn = MeshLib::QuadraticEdgeReturn
 Returns the i-th edge of the element.
 

Static Public Member Functions

static unsigned identifyFace (Node const *const *element_nodes, Node const *nodes[3])
 
- Static Public Member Functions inherited from MeshLib::QuadRule
static bool isPntInElement (Node const *const *nodes, MathLib::Point3d const &pnt, double eps)
 
static ElementErrorCode validate (const Element *e)
 
static double computeVolume (Node const *const *element_nodes)
 Calculates the area of a quad with straight edges.
 
- Static Public Member Functions inherited from MeshLib::FaceRule
static const ElementgetFace (const Element *e, unsigned i)
 Returns the face i of the element.
 
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.
 

Static Public Attributes

static const unsigned n_all_nodes = 8u
 Constant: The number of all nodes for this element.
 
static const CellType cell_type = CellType::QUAD8
 Constant: The FEM type of the element.
 
static const unsigned edge_nodes [4][3]
 Constant: Local node index table for edge.
 
- Static Public Attributes inherited from MeshLib::QuadRule
static const unsigned n_base_nodes = 4u
 Constant: The number of base nodes for this element.
 
static const MeshElemType mesh_elem_type = MeshElemType::QUAD
 Constant: The geometric type of the element.
 
static const unsigned n_edges = 4
 Constant: The number of edges.
 
static const unsigned n_neighbors = 4
 Constant: The number of neighbors.
 
- Static Public Attributes inherited from MeshLib::FaceRule
static const unsigned dimension = 2u
 Constant: Dimension of this mesh element.
 
static const unsigned n_faces = 0
 Constant: The number of faces.
 

Additional Inherited Members

- Static Protected Member Functions inherited from MeshLib::FaceRule
template<typename ElementRule >
static unsigned identifyFace (Node const *const *element_nodes, Node const *nodes[ElementRule::dimension])
 Returns the ID of an edge given an array of nodes.
 

Member Typedef Documentation

◆ EdgeReturn

Returns the i-th edge of the element.

Definition at line 49 of file QuadRule8.h.

Member Function Documentation

◆ identifyFace()

static unsigned MeshLib::QuadRule8::identifyFace ( Node const *const * element_nodes,
Node const * nodes[3] )
inlinestatic

Definition at line 51 of file QuadRule8.h.

53 {
54 return FaceRule::identifyFace<QuadRule8>(element_nodes, nodes);
55 }
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

References MeshLib::FaceRule::identifyFace().

Member Data Documentation

◆ cell_type

const CellType MeshLib::QuadRule8::cell_type = CellType::QUAD8
static

Constant: The FEM type of the element.

Definition at line 43 of file QuadRule8.h.

◆ edge_nodes

const unsigned MeshLib::QuadRule8::edge_nodes
static
Initial value:
= {
{0, 1, 4},
{1, 2, 5},
{2, 3, 6},
{3, 0, 7}
}

Constant: Local node index table for edge.

Definition at line 46 of file QuadRule8.h.

◆ n_all_nodes

const unsigned MeshLib::QuadRule8::n_all_nodes = 8u
static

Constant: The number of all nodes for this element.

Definition at line 40 of file QuadRule8.h.


The documentation for this class was generated from the following files: