32#include "../../option_structure.hpp"
41 unsigned long elemIDGlobal;
42 unsigned long offsetDOFsSolGlobal;
45 unsigned short VTK_Type;
46 unsigned short nPolyGrid;
47 unsigned short nPolySol;
48 unsigned short nDOFsGrid;
49 unsigned short nDOFsSol;
50 unsigned short nFaces;
52 bool JacobianConsideredConstant;
61 CPrimalGridFEM(
const unsigned long* dataElem,
unsigned long& offsetSolDOFs);
68 inline unsigned short GetnNodesFace(
unsigned short val_face)
const override {
69 return std::numeric_limits<unsigned short>::max();
78 inline unsigned short GetFaces(
unsigned short val_face,
unsigned short val_index)
const override {
79 return std::numeric_limits<unsigned short>::max();
88 inline unsigned short GetNeighbor_Nodes(
unsigned short val_node,
unsigned short val_index)
const override {
89 return std::numeric_limits<unsigned short>::max();
96 inline unsigned short GetnNodes(
void)
const override {
return nDOFsGrid; }
102 inline unsigned short GetnFaces(
void)
const override {
return nFaces; }
110 return std::numeric_limits<unsigned short>::max();
134 inline unsigned short GetMaxNodesFace(
void)
const override {
return std::numeric_limits<unsigned short>::max(); }
140 inline unsigned short GetVTK_Type(
void)
const override {
return VTK_Type; }
146 inline unsigned short GetNPolyGrid(
void)
const override {
return nPolyGrid; }
152 inline unsigned short GetNPolySol(
void)
const override {
return nPolySol; }
158 inline unsigned short GetNDOFsGrid(
void)
const override {
return nDOFsGrid; }
164 inline unsigned short GetNDOFsSol(
void)
const override {
return nDOFsSol; }
175 unsigned long faceConn[6][4])
const override;
189 unsigned short& numFaces,
unsigned short nPointsPerFace[],
190 unsigned long faceConn[6][4]);
201 inline void SetColor(
unsigned long val_color)
override { color = val_color; }
207 inline unsigned long GetColor(
void)
const override {
return color; }
214 JacobianConsideredConstant = val_JacobianConsideredConstant;
222 offsetDOFsSolGlobal += val_offsetRank;
Headers of the main subroutines for storing the primal grid structure. The subroutines and functions ...
Class to define primal grid element for the FEM solver.
Definition CPrimalGridFEM.hpp:39
unsigned short GetFaces(unsigned short val_face, unsigned short val_index) const override
Get the face index of an element.
Definition CPrimalGridFEM.hpp:78
unsigned short GetnNeighbor_Nodes(unsigned short val_node) const override
Get the number of neighbors nodes of a node.
Definition CPrimalGridFEM.hpp:109
void SetJacobianConsideredConstant(bool val_JacobianConsideredConstant) override
Function to set the value of JacobianConsideredConstant.
Definition CPrimalGridFEM.hpp:213
unsigned short GetMaxNodesFace(void) const override
Get the Maximum number of nodes of a face of an element.
Definition CPrimalGridFEM.hpp:134
unsigned short GetVTK_Type(void) const override
Get the type of the element using VTK nomenclature.
Definition CPrimalGridFEM.hpp:140
unsigned short GetNDOFsSol(void) const override
Function to make available the number of DOFs of the solution in the element.
Definition CPrimalGridFEM.hpp:164
unsigned long GetGlobalElemID(void) const override
Make available the global ID of this element.
Definition CPrimalGridFEM.hpp:122
unsigned long GetGlobalOffsetDOFsSol(void) const override
Make available the global offset of the solution DOFs of this element.
Definition CPrimalGridFEM.hpp:128
bool GetJacobianConsideredConstant(void) const override
Function to get whether or not the Jacobian is considered constant.
Definition CPrimalGridFEM.hpp:195
void GetCornerPointsAllFaces(unsigned short &numFaces, unsigned short nPointsPerFace[], unsigned long faceConn[6][4]) const override
Get all the corner points of all the faces of this element. It must be made sure that the numbering o...
Definition CPrimalGridFEM.cpp:204
void Change_Orientation(void) override
Change the orientation of an element.
Definition CPrimalGridFEM.hpp:116
unsigned short GetnNodesFace(unsigned short val_face) const override
Get the number of nodes that composes a face of an element.
Definition CPrimalGridFEM.hpp:68
static void GetLocalCornerPointsAllFaces(unsigned short elementType, unsigned short nPoly, unsigned short nDOFs, unsigned short &numFaces, unsigned short nPointsPerFace[], unsigned long faceConn[6][4])
Static member function to get the local the corner points of all the faces of this element....
Definition CPrimalGridFEM.cpp:52
unsigned short GetnFaces(void) const override
Get the number of faces of an element.
Definition CPrimalGridFEM.hpp:102
unsigned long GetColor(void) const override
Get the color of the element for the partitioning. return - The color of the element in the partition...
Definition CPrimalGridFEM.hpp:207
unsigned short GetNPolySol(void) const override
Get the polynomial degree of the solution for this element.
Definition CPrimalGridFEM.hpp:152
unsigned short GetnNodes(void) const override
Get the number of nodes of an element.
Definition CPrimalGridFEM.hpp:96
void SetColor(unsigned long val_color) override
Set the color of the element.
Definition CPrimalGridFEM.hpp:201
unsigned short GetNDOFsGrid(void) const override
Function to make available the number of DOFs of the grid in the element.
Definition CPrimalGridFEM.hpp:158
void AddOffsetGlobalDOFs(const unsigned long val_offsetRank) override
Function to correct the offset of the global DOFs.
Definition CPrimalGridFEM.hpp:221
unsigned short GetNPolyGrid(void) const override
Get the polynomial degree of the grid for this element.
Definition CPrimalGridFEM.hpp:146
unsigned short GetNeighbor_Nodes(unsigned short val_node, unsigned short val_index) const override
Get the local index of the neighbors to a node (given the local index).
Definition CPrimalGridFEM.hpp:88
Class to define the numerical primal grid.
Definition CPrimalGrid.hpp:45