![]() |
Documentation 6b54b78464
|
Class to define the numerical primal grid. More...
#include <CPrimalGrid.hpp>
Public Member Functions | |
| CPrimalGrid ()=delete | |
| CPrimalGrid (bool FEM, unsigned short nNodes, unsigned short nNeighbor_Elements) | |
| Constructor of the class. | |
| virtual | ~CPrimalGrid ()=default |
| Destructor of the class. | |
| unsigned long | GetNode (unsigned short val_node) const |
| Get the nodes shared by the primal grid element. | |
| void | SetNode (unsigned short val_node, unsigned long val_point) |
| Set the nodes shared by the primal grid element. | |
| long | GetNeighbor_Elements (unsigned short val_face) const |
| Get the elements that surround an element. | |
| void | SetNeighbor_Elements (unsigned long val_elem, unsigned short val_face) |
| Set the elements that surround an element. | |
| su2double | GetLengthScale () const |
| Make available the length scale of the element. | |
| void | SetLengthScale (su2double val_lenScale) |
| Set the length scale of the element. | |
| unsigned short | GetTimeLevel () const |
| Make available the time level of the element. | |
| void | SetTimeLevel (unsigned short val_timeLevel) |
| Set the time level of the element. | |
| bool | GetOwnerFace (unsigned short val_face) const |
| Get the boolean to indicate whether or not this element owns the face between the current and the adjacent element with index val_face. | |
| void | SetOwnerFace (bool val_owner, unsigned short val_face) |
| Set the boolean to indicate whether or not this element owns the face between the current and the adjacent element with index val_face. | |
| short | GetPeriodicIndex (unsigned short val_face) const |
| Get the index of the periodic transformation to the neighboring element. | |
| void | SetPeriodicIndex (unsigned short val_periodic, unsigned short val_face) |
| Set the index of the periodic transformation to the neighboring element. | |
| bool | GetJacobianConstantFace (unsigned short val_face) const |
| Get whether or not the Jacobian of the given face is considered constant. | |
| void | SetJacobianConstantFace (bool val_JacFaceIsConstant, unsigned short val_face) |
| Set whether or not the Jacobian of the given face is considered constant. | |
| template<class T > | |
| su2double * | SetCoord_CG (unsigned short nDim, const T &val_coord) |
| Set the center of gravity of an element (including edges). | |
| su2double | GetCG (unsigned short val_dim) const |
| Get the center of gravity of an element (including edges). | |
| const su2double * | GetCG () const |
| void | SetVolume (su2double val_volume) |
| Set the center of gravity of an element (including edges). | |
| su2double | GetVolume () const |
| Get the center of gravity of an element (including edges). | |
| void | ResetJacobianConstantFaces () |
| Reset the array, which stores whether or not the faces have a constant Jacobian, to false. | |
| void | InitializeNeighbors (unsigned short val_nFaces) |
| Initialize the information about the neighboring elements. | |
| virtual void | SetColor (unsigned long val_color) |
| A virtual member. | |
| virtual unsigned long | GetColor () const |
| A virtual member. | |
| unsigned long | GetGlobalIndex () const |
| Get the element global index in a parallel computation. | |
| void | SetGlobalIndex (unsigned long val_globalindex) |
| Set the global index for an element in a parallel computation. | |
| void | SetDomainElement (unsigned long val_domainelement) |
| Set the index of the domain element of which this boundary element is a face. | |
| unsigned long | GetDomainElement () const |
| Get the index of the domain element of which this boundary element is a face. | |
| virtual void | Change_Orientation ()=0 |
| A pure virtual member. | |
| virtual unsigned short | GetRotation_Type () const |
| A pure virtual member. | |
| virtual void | SetRotation_Type (unsigned short val_rotation_type) |
| A pure virtual member. | |
| virtual unsigned short | GetnNodes () const =0 |
| Get number of nodes of the element. | |
| virtual unsigned short | GetnFaces () const =0 |
| Get number of faces of the element. | |
| virtual unsigned short | GetnNodesFace (unsigned short val_face) const |
| Get number of nodes of a face of the element. | |
| virtual unsigned short | GetMaxNodesFace () const =0 |
| Get the maximum number of nodes contained in a face of the element. | |
| virtual unsigned short | GetFaces (unsigned short val_face, unsigned short val_index) const =0 |
| Get nodes contained in a face. | |
| virtual unsigned short | GetnNeighbor_Nodes (unsigned short val_node) const =0 |
| Get number of neighbor nodes of a node. | |
| virtual unsigned short | GetNeighbor_Nodes (unsigned short val_node, unsigned short val_index) const =0 |
| Get neighbor nodes of a node. | |
| virtual unsigned short | GetVTK_Type () const =0 |
| Get VTK type. | |
| virtual void | GetCornerPointsAllFaces (unsigned short &nFaces, unsigned short nPointsPerFace[], unsigned long faceConn[6][4]) const |
| Virtual function, that must be overwritten by the derived class, if needed. | |
| virtual unsigned long | GetGlobalElemID () const |
| Virtual function to make available the global ID of this element. | |
| virtual unsigned long | GetGlobalOffsetDOFsSol () const |
| Virtual function to make available the global offset of the solution DOFs. | |
| virtual unsigned short | GetNPolyGrid () const |
| Virtual function to make available the polynomial degree of the grid. | |
| virtual unsigned short | GetNPolySol () const |
| Virtual function to make available the polynomial degree of the solution. | |
| virtual unsigned short | GetNDOFsGrid () const |
| Virtual function to make available the number of DOFs of the grid in the element. | |
| virtual unsigned short | GetNDOFsSol () const |
| Virtual function to make available the number of DOFs of the solution in the element. | |
| virtual bool | GetJacobianConsideredConstant () const |
| Virtual function to get whether or not the Jacobian is considered constant. | |
| virtual void | SetJacobianConsideredConstant (bool val_JacobianConsideredConstant) |
| Virtual function to set the value of JacobianConsideredConstant. | |
| virtual void | AddOffsetGlobalDOFs (const unsigned long val_offsetRank) |
| Virtual function to correct the offset of the global DOFs. | |
| virtual void | AddDonorWallFunctions (const unsigned long donorElement) |
| Virtual function to add the given donor ID to the donor elements for the wall function treatment. | |
| virtual unsigned short | GetNDonorsWallFunctions () const |
| Virtual function to make available the number of donor elements for the wall function treatment. | |
| virtual unsigned long * | GetDonorsWallFunctions () |
| Virtual function to make available the pointer to the vector for the donor elements for the wall function treatment. | |
| virtual const unsigned long * | GetDonorsWallFunctions () const |
| virtual void | SetDonorsWallFunctions (const std::vector< unsigned long > &donorElements) |
| Virtual function to set the global ID's of the donor elements for the wall function treatment. | |
| virtual void | RemoveMultipleDonorsWallFunctions () |
| Virtual function to remove the multiple donors for the wall function treatment. | |
Protected Attributes | |
| unsigned long | GlobalIndex_DomainElement |
| std::unique_ptr< unsigned long[]> | Nodes |
| Global node indices of the element. | |
| std::unique_ptr< long[]> | Neighbor_Elements |
| Vector to store the elements surronding this element. | |
| su2double | Coord_CG [3] = {0.0} |
| Coordinates of the center-of-gravity of the element. | |
| su2double | Volume |
| Volume of the element. | |
| su2double | LenScale |
| Length scale of the element. | |
| unsigned short | TimeLevel |
| Time level of the element for time accurate local time stepping. | |
| int8_t | PeriodIndexNeighbors [N_FACES_MAXIMUM] |
| bool | JacobianFaceIsConstant [N_FACES_MAXIMUM] |
| Whether or not the Jacobian of the faces can be considered constant in the transformation to the standard element. | |
| bool | ElementOwnsFace [N_FACES_MAXIMUM] |
| Whether or not the element owns each face. | |
| const bool | FEM |
| Whether this is a FEM element. | |
Class to define the numerical primal grid.
|
delete |
| CPrimalGrid::CPrimalGrid | ( | bool | FEM, |
| unsigned short | nNodes, | ||
| unsigned short | nNeighbor_Elements | ||
| ) |
Constructor of the class.
| [in] | FEM | - Whether this is a FEM element. |
| [in] | nNodes | - Number of nodes. |
| [in] | nNeighbor_Elements | - Number of neighbor elements. |
|
virtualdefault |
Destructor of the class.
|
inlinevirtual |
Virtual function to add the given donor ID to the donor elements for the wall function treatment.
| [in] | donorElement | - Element to be added to donor elements. |
Reimplemented in CPrimalGridBoundFEM.
|
inlinevirtual |
Virtual function to correct the offset of the global DOFs.
| [in] | val_offsetRank | - The offset that must be added for this rank. |
Reimplemented in CPrimalGridFEM.
|
pure virtual |
A pure virtual member.
Implemented in CHexahedron, CLine, CPrism, CPyramid, CQuadrilateral, CTetrahedron, CTriangle, CVertexMPI, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
|
inline |
Get the center of gravity of an element (including edges).
| [in] | val_dim | - Coordinate of the center of gravity. |
|
inlinevirtual |
A virtual member.
Reimplemented in CPrimalGridFEM.
|
inlinevirtual |
Virtual function, that must be overwritten by the derived class, if needed.
| [out] | nFaces | - Number of faces of this element. |
| [out] | nPointsPerFace | - Number of corner points for each of the faces. |
| [out] | faceConn | - Global IDs of the corner points of the faces. |
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
Get the index of the domain element of which this boundary element is a face.
|
inlinevirtual |
Virtual function to make available the pointer to the vector for the donor elements for the wall function treatment.
Reimplemented in CPrimalGridBoundFEM.
|
inlinevirtual |
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridBoundFEM.
|
pure virtual |
Get nodes contained in a face.
| [in] | val_face | - Index of the face among all faces of the element. |
| [in] | val_index | - Index of the node among all nodes of the face. |
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inlinevirtual |
Virtual function to make available the global ID of this element.
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
Get the element global index in a parallel computation.
|
inlinevirtual |
Virtual function to make available the global offset of the solution DOFs.
Reimplemented in CPrimalGridFEM.
|
inlinevirtual |
Virtual function to get whether or not the Jacobian is considered constant.
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
Get whether or not the Jacobian of the given face is considered constant.
| [in] | val_face | - Local index of the face. |
|
inline |
Make available the length scale of the element.
|
pure virtual |
Get the maximum number of nodes contained in a face of the element.
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inlinevirtual |
Virtual function to make available the number of DOFs of the grid in the element.
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inlinevirtual |
Virtual function to make available the number of DOFs of the solution in the element.
Reimplemented in CPrimalGridFEM.
|
inlinevirtual |
Virtual function to make available the number of donor elements for the wall function treatment.
Reimplemented in CPrimalGridBoundFEM.
|
inline |
Get the elements that surround an element.
| [in] | val_face | - Local index of the face. |
|
pure virtual |
Get neighbor nodes of a node.
| [in] | val_node | - Index of node N among all nodes of the element. |
| [in] | val_index | - Index of the neighbor node among all neighbor nodes of the node N. |
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
pure virtual |
Get number of faces of the element.
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
pure virtual |
Get number of neighbor nodes of a node.
| [in] | val_node | - Index of node among all nodes of the element. |
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
pure virtual |
Get number of nodes of the element.
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inlinevirtual |
Get number of nodes of a face of the element.
| [in] | val_face | - Index of the face among all faces of the element. |
Reimplemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
Get the nodes shared by the primal grid element.
| [in] | val_node | - Local (to the element) index of the node (lines have 2 nodes, triangles 3 nodes etc). |
|
inlinevirtual |
Virtual function to make available the polynomial degree of the grid.
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inlinevirtual |
Virtual function to make available the polynomial degree of the solution.
Reimplemented in CPrimalGridFEM.
|
inline |
Get the boolean to indicate whether or not this element owns the face between the current and the adjacent element with index val_face.
| [in] | val_face | - Local index of the face. |
|
inline |
Get the index of the periodic transformation to the neighboring element.
| [in] | val_face | - Local index of the face. |
|
inlinevirtual |
A pure virtual member.
Reimplemented in CVertexMPI.
|
inline |
Make available the time level of the element.
|
inline |
Get the center of gravity of an element (including edges).
| [in] | val_dim | - Coordinate of the center of gravity. |
|
pure virtual |
Get VTK type.
Implemented in CPrimalGridWithConnectivity< Connectivity >, CPrimalGridWithConnectivity< CHexahedronConnectivity >, CPrimalGridWithConnectivity< CLineConnectivity >, CPrimalGridWithConnectivity< CPrismConnectivity >, CPrimalGridWithConnectivity< CPyramidConnectivity >, CPrimalGridWithConnectivity< CQuadrilateralConnectivity >, CPrimalGridWithConnectivity< CTetrahedronConnectivity >, CPrimalGridWithConnectivity< CTriangleConnectivity >, CPrimalGridWithConnectivity< CVertexMPIConnectivity >, CPrimalGridBoundFEM, and CPrimalGridFEM.
| void CPrimalGrid::InitializeNeighbors | ( | unsigned short | val_nFaces | ) |
Initialize the information about the neighboring elements.
| [in] | val_nFaces | - Number of faces for which neighboring information must be initialized. |
|
inlinevirtual |
Virtual function to remove the multiple donors for the wall function treatment.
Reimplemented in CPrimalGridBoundFEM.
|
inline |
Reset the array, which stores whether or not the faces have a constant Jacobian, to false.
|
inlinevirtual |
A virtual member.
| [in] | val_color | - New color of the element. |
Reimplemented in CPrimalGridFEM.
|
inline |
Set the center of gravity of an element (including edges).
| [in] | nDim | - Number of dimensions (2 or 3). |
| [in] | val_coord | - Coordinates of the element. |
|
inline |
Set the index of the domain element of which this boundary element is a face.
| [in] | val_domainelement | - Value to set. |
|
inlinevirtual |
Virtual function to set the global ID's of the donor elements for the wall function treatment.
| [in] | donorElements | - Vector, which contain the donor elements. |
Reimplemented in CPrimalGridBoundFEM.
|
inline |
Set the global index for an element in a parallel computation.
|
inlinevirtual |
Virtual function to set the value of JacobianConsideredConstant.
| [in] | val_JacobianConsideredConstant | - The value to be set for JacobianConsideredConstant. |
Reimplemented in CPrimalGridBoundFEM, and CPrimalGridFEM.
|
inline |
Set whether or not the Jacobian of the given face is considered constant.
| [in] | val_JacFaceIsConstant | - Boolean to indicate whether or not the Jacobian is constant. |
| [in] | val_face | - Local index of the face. |
|
inline |
Set the length scale of the element.
| [in] | val_lenScale | - Length scale of the element. |
|
inline |
Set the elements that surround an element.
| [in] | val_elem | - Global index of the element. |
| [in] | val_face | - Local index of the face. |
|
inline |
Set the nodes shared by the primal grid element.
| [in] | val_node | - Local (to the element) index of the node (lines have 2 nodes, triangles 3 nodes etc). |
| [in] | val_point | - Global index of the node. |
|
inline |
Set the boolean to indicate whether or not this element owns the face between the current and the adjacent element with index val_face.
| [in] | val_owner | - Whether or not this element owns the face. |
| [in] | val_face | - Local index of the face. |
|
inline |
Set the index of the periodic transformation to the neighboring element.
| [in] | val_periodic | - Index of the periodic marker to which the face belongs. |
| [in] | val_face | - Local index of the face. |
|
inlinevirtual |
A pure virtual member.
| [in] | val_rotation_type | - Kind of rotation/traslation that must be applied. |
Reimplemented in CVertexMPI.
|
inline |
Set the time level of the element.
| [in] | val_timeLevel | - Time level of the element. |
|
inline |
Set the center of gravity of an element (including edges).
| [in] | val_coord | - Coordinates of the element. |
|
protected |
Coordinates of the center-of-gravity of the element.
|
protected |
Whether or not the element owns each face.
|
protected |
Whether this is a FEM element.
|
protected |
|
protected |
Whether or not the Jacobian of the faces can be considered constant in the transformation to the standard element.
|
protected |
Length scale of the element.
|
protected |
Vector to store the elements surronding this element.
|
protected |
Global node indices of the element.
|
protected |
|
protected |
Time level of the element for time accurate local time stepping.
Vector to store the periodic index of a neighbor, -1 indicates no periodic transformation to the neighbor.
|
protected |
Volume of the element.