OGS
QuadRule4.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include "EdgeReturn.h"
7#include "MeshLib/MeshEnums.h"
8#include "QuadRule.h"
9
10namespace MeshLib
11{
12
29class QuadRule4 : public QuadRule
30{
31public:
33 static const unsigned n_all_nodes = 4u;
34
37
39 constexpr static const unsigned edge_nodes[4][2] = {
40 {0, 1}, // Edge 0
41 {1, 2}, // Edge 1
42 {2, 3}, // Edge 2
43 {3, 0} // Edge 3
44 };
45
48
49 static unsigned identifyFace(Node const* const* element_nodes,
50 Node const* nodes[3])
51 {
52 return FaceRule::identifyFace<QuadRule4>(element_nodes, nodes);
53 }
54}; /* class */
55
56} // namespace MeshLib
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:41
Returns linear order edge.
Definition EdgeReturn.h:24
MeshLib::LinearEdgeReturn EdgeReturn
Returns the i-th edge of the element.
Definition QuadRule4.h:47
static constexpr const unsigned edge_nodes[4][2]
Constant: Local node index table for edge.
Definition QuadRule4.h:39
static const unsigned n_all_nodes
Constant: The number of all nodes for this element.
Definition QuadRule4.h:33
static unsigned identifyFace(Node const *const *element_nodes, Node const *nodes[3])
Definition QuadRule4.h:49
static const CellType cell_type
Constant: The FEM type of the element.
Definition QuadRule4.h:36
CellType
Types of mesh elements supported by OpenGeoSys.
Definition MeshEnums.h:53