31#include "../geometry/CGeometry.hpp"
33#include "../wall_model.hpp"
34#include "../linear_algebra/blas_structure.hpp"
35#include "../toolboxes/fem/CFaceOfElement.hpp"
127 void GetCornerPointsAllFaces(
unsigned short& numFaces,
unsigned short nPointsPerFace[],
unsigned long faceConn[6][4]);
332 vector<CFEMStandardBoundaryFace>
335 vector<CFEMStandardBoundaryFace>
670 const unsigned short iZone);
771 const unsigned short VTK_TypeElem,
const unsigned short nPolyGrid,
772 const vector<unsigned long>& elemNodeIDsGrid,
const unsigned short nPolyConn,
773 const unsigned long* connElem,
bool& swapFaceInElement,
unsigned long* modConnFace,
774 unsigned long* modConnElem);
795 const unsigned short nPolyGrid,
796 const vector<unsigned long>& quadNodeIDsGrid,
797 const unsigned short nPolyConn,
const unsigned long* connQuad,
798 unsigned long* modConnLine,
unsigned long* modConnQuad);
819 const vector<unsigned long>& triaNodeIDsGrid,
820 const unsigned short nPolyConn,
const unsigned long* connTria,
821 unsigned long* modConnLine,
unsigned long* modConnTria);
842 const unsigned short nPolyGrid,
843 const vector<unsigned long>& hexaNodeIDsGrid,
844 const unsigned short nPolyConn,
845 const unsigned long* connHexa,
unsigned long* modConnQuad,
846 unsigned long* modConnHexa);
870 const unsigned short nPolyGrid,
871 const vector<unsigned long>& prismNodeIDsGrid,
872 const unsigned short nPolyConn,
const unsigned long* connPrism,
873 bool& swapFaceInElement,
unsigned long* modConnQuad,
874 unsigned long* modConnPrism);
895 const unsigned short nPolyGrid,
896 const vector<unsigned long>& pyraNodeIDsGrid,
897 const unsigned short nPolyConn,
const unsigned long* connPyra,
898 unsigned long* modConnQuad,
unsigned long* modConnPyra);
919 const vector<unsigned long>& prismNodeIDsGrid,
920 const unsigned short nPolyConn,
const unsigned long* connPrism,
921 unsigned long* modConnTria,
unsigned long* modConnPrism);
945 const unsigned short nPolyGrid,
946 const vector<unsigned long>& pyraNodeIDsGrid,
947 const unsigned short nPolyConn,
const unsigned long* connPyra,
948 bool& swapFaceInElement,
unsigned long* modConnTria,
949 unsigned long* modConnPyra);
970 const unsigned short nPolyGrid,
971 const vector<unsigned long>& tetNodeIDsGrid,
972 const unsigned short nPolyConn,
const unsigned long* connTet,
973 unsigned long* modConnTria,
unsigned long* modConnTet);
1017 vector<su2double>& metricTerms);
Class for storing an ADT of (linear) elements in an arbitrary number of dimensions.
Definition CADTElemClass.hpp:41
Class, which serves as an interface to the BLAS functionalities needed.
Definition blas_structure.hpp:41
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Class for defining a DG geometry that does not contain any points/elements. Can be used for initializ...
Definition fem_geometry_structure.hpp:1049
Class to define a FEM standard boundary face.
Definition fem_standard_element.hpp:1439
Class to define a FEM standard element.
Definition fem_standard_element.hpp:673
Class to define a FEM standard internal face.
Definition fem_standard_element.hpp:1106
Parent class for defining the geometry of the problem (complete geometry, multigrid agglomerated geom...
Definition CGeometry.hpp:75
Class which contains all the variables for the DG FEM solver.
Definition fem_geometry_structure.hpp:553
void WallFunctionPreprocessing(CConfig *config)
Function, which carries out the preprocessing tasks when wall functions are used.
Definition fem_geometry_structure.cpp:5693
void CreateStandardVolumeElements(CConfig *config)
Function to create the standard volume elements.
Definition fem_geometry_structure.cpp:2999
vector< CFEMStandardElement > standardElementsSol
Vector that contains the standard volume elements used for the solution of the DG solver.
Definition fem_geometry_structure.hpp:555
map< unsigned long, unsigned long > Global_to_Local_Point
Global-local mapping for the DOFs.
Definition fem_geometry_structure.hpp:581
void CreateFaces(CConfig *config)
Function to create the faces used in the DG formulation.
Definition fem_geometry_structure.cpp:2296
su2double * GetTimeCoefADER_DG(void)
Function, which makes available the time coefficients in the iteration matrix of the ADER-DG predicto...
Definition fem_geometry_structure.hpp:624
unsigned short GetNStandardElementsSol(void)
Function, which makes available the number of standard volume elements of the solution.
Definition fem_geometry_structure.hpp:676
void CreateConnectivitiesQuadrilateralAdjacentPrism(const unsigned long *cornerPointsQuad, const unsigned short nPolyGrid, const vector< unsigned long > &prismNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connPrism, bool &swapFaceInElement, unsigned long *modConnQuad, unsigned long *modConnPrism)
Function, which computes the correct sequence of the connectivities of a quad adjacent to a prism,...
Definition fem_geometry_structure.cpp:3837
void LengthScaleVolumeElements(void)
Function, which computes a length scale of the volume elements.
Definition fem_geometry_structure.cpp:4736
unsigned long * GetNMatchingFacesWithHaloElem(void)
Function, which makes available the number of matching internal faces between an owned element and a ...
Definition fem_geometry_structure.hpp:648
std::unique_ptr< CADTElemClass > ComputeViscousWallADT(const CConfig *config) const override
Compute an ADT including the coordinates of all viscous markers.
Definition fem_wall_distance.cpp:31
void MetricTermsMatchingFaces(CConfig *config)
Function, which computes the metric terms for internal matching faces.
Definition fem_geometry_structure.cpp:4664
CFEMStandardInternalFace * GetStandardMatchingFacesSol(void)
Function, which makes available the standard internal matching faces of the solution.
Definition fem_geometry_structure.hpp:694
void CreateConnectivitiesTriangleAdjacentPyramid(const unsigned long *cornerPointsTria, const unsigned short nPolyGrid, const vector< unsigned long > &pyraNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connPyra, bool &swapFaceInElement, unsigned long *modConnTria, unsigned long *modConnPyra)
Function, which computes the correct sequence of the connectivities of a triangle adjacent to a pyram...
Definition fem_geometry_structure.cpp:4327
vector< unsigned long > nMatchingFacesInternal
Number of matching faces between between two owned elements per time level. Cumulative storage format...
Definition fem_geometry_structure.hpp:575
void MetricTermsVolumeElements(CConfig *config)
Function, which computes the metric terms of the volume elements.
Definition fem_geometry_structure.cpp:4982
void CreateConnectivitiesLineAdjacentQuadrilateral(const unsigned long *cornerPointsLine, const unsigned short nPolyGrid, const vector< unsigned long > &quadNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connQuad, unsigned long *modConnLine, unsigned long *modConnQuad)
Function, which computes the correct sequence of the connectivities of a line adjacent to a quadrilat...
Definition fem_geometry_structure.cpp:3270
vector< CFEMStandardElement > standardElementsGrid
Vector that contains the standard volume elements used for the geometry of the DG solver.
Definition fem_geometry_structure.hpp:557
CInternalFaceElementFEM * GetMatchingFaces(void)
Function, which makes available the matching internal faces.
Definition fem_geometry_structure.hpp:661
CFEMStandardElement * GetStandardElementsSol(void)
Function, which makes available the standard volume elements of the solution.
Definition fem_geometry_structure.hpp:682
vector< unsigned long > nMatchingFacesWithHaloElem
Number of matching faces between an owned element and a halo element per time level....
Definition fem_geometry_structure.hpp:577
void CreateConnectivitiesQuadrilateralAdjacentHexahedron(const unsigned long *cornerPointsQuad, const unsigned short nPolyGrid, const vector< unsigned long > &hexaNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connHexa, unsigned long *modConnQuad, unsigned long *modConnHexa)
Function, which computes the correct sequence of the connectivities of a quad adjacent to a hexahedro...
Definition fem_geometry_structure.cpp:3534
su2double * GetTimeInterpolDOFToIntegrationADER_DG(void)
Function, which makes available the time interpolation matrix between the time DOFs and time integrat...
Definition fem_geometry_structure.hpp:631
unsigned long * GetNMatchingFacesInternal(void)
Function, which makes available the number of matching internal faces between two owned elements per ...
Definition fem_geometry_structure.hpp:655
void CreateConnectivitiesFace(const unsigned short VTK_TypeFace, const unsigned long *cornerPointsFace, const unsigned short VTK_TypeElem, const unsigned short nPolyGrid, const vector< unsigned long > &elemNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connElem, bool &swapFaceInElement, unsigned long *modConnFace, unsigned long *modConnElem)
Function, which computes the correct sequence of the connectivities of a face, such that it matches t...
Definition fem_geometry_structure.cpp:3202
void CreateConnectivitiesQuadrilateralAdjacentPyramid(const unsigned long *cornerPointsQuad, const unsigned short nPolyGrid, const vector< unsigned long > &pyraNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connPyra, unsigned long *modConnQuad, unsigned long *modConnPyra)
Function, which computes the correct sequence of the connectivities of a quad adjacent to a pyramid,...
Definition fem_geometry_structure.cpp:4073
su2double * GetTimeInterpolAdjDOFToIntegrationADER_DG(void)
Function, which makes available the time interpolation matrix between the adjacent time DOFs of the n...
Definition fem_geometry_structure.hpp:639
vector< CFEMStandardInternalFace > standardMatchingFacesSol
Vector that contains the standard matching internal faces used for the solution of the DG solver.
Definition fem_geometry_structure.hpp:560
void MetricTermsSurfaceElements(CConfig *config)
Function, which computes the metric terms of the surface elements, both internal faces and physical b...
Definition fem_geometry_structure.cpp:4971
void HighOrderContainmentSearch(const su2double *coor, const unsigned long parElem, const unsigned short subElem, const su2double *weightsSubElem, su2double *parCoor)
Function, which computes the parametric coordinates of the given Cartesian coordinates inside the giv...
Definition fem_geometry_structure.cpp:5960
unsigned short GetNStandardMatchingFacesSol(void)
Function, which makes available the number of standard internal matching faces of the solution.
Definition fem_geometry_structure.hpp:688
vector< CFEMStandardInternalFace > standardMatchingFacesGrid
Vector that contains the standard matching internal faces used for the geometry of the DG solver.
Definition fem_geometry_structure.hpp:563
void TimeCoefficientsPredictorADER_DG(CConfig *config)
Function, which computes the time coefficients for the ADER-DG predictor step.
Definition fem_geometry_structure.cpp:5419
void SetGlobal_to_Local_Point() override
Set the local index that correspond with the global numbering index.
Definition fem_geometry_structure.cpp:2151
long GetGlobal_to_Local_Point(unsigned long val_ipoint) const override
Get the local index that correspond with the global numbering index.
Definition fem_geometry_structure.hpp:732
void CoordinatesSolDOFs(void)
Function to compute the coordinates of solution DOFs.
Definition fem_geometry_structure.cpp:2265
vector< su2double > timeInterpolDOFToIntegrationADER_DG
The interpolation matrix between the time DOFs and the time integration points for ADER-DG.
Definition fem_geometry_structure.hpp:569
vector< su2double > timeInterpolAdjDOFToIntegrationADER_DG
The interpolation matrix between the time DOFs of adjacent elements of a higher time level and the ti...
Definition fem_geometry_structure.hpp:571
void CreateConnectivitiesLineAdjacentTriangle(const unsigned long *cornerPointsLine, const unsigned short nPolyGrid, const vector< unsigned long > &triaNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connTria, unsigned long *modConnLine, unsigned long *modConnTria)
Function, which computes the correct sequence of the connectivities of a line adjacent to a triangle,...
Definition fem_geometry_structure.cpp:3404
CMeshFEM_DG(void)
Constructor of the class.
Definition fem_geometry_structure.hpp:587
void CreateConnectivitiesTriangleAdjacentTetrahedron(const unsigned long *cornerPointsTria, const unsigned short nPolyGrid, const vector< unsigned long > &tetNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connTet, unsigned long *modConnTria, unsigned long *modConnTet)
Function, which computes the correct sequence of the connectivities of a triangle adjacent to a tetra...
Definition fem_geometry_structure.cpp:4475
vector< CInternalFaceElementFEM > matchingFaces
Vector of the local matching internal faces.
Definition fem_geometry_structure.hpp:579
void CreateConnectivitiesTriangleAdjacentPrism(const unsigned long *cornerPointsTria, const unsigned short nPolyGrid, const vector< unsigned long > &prismNodeIDsGrid, const unsigned short nPolyConn, const unsigned long *connPrism, unsigned long *modConnTria, unsigned long *modConnPrism)
Function, which computes the correct sequence of the connectivities of a triangle adjacent to a prism...
Definition fem_geometry_structure.cpp:4193
void SetSendReceive(const CConfig *config) override
Set the send receive boundaries of the grid.
Definition fem_geometry_structure.cpp:3034
void InitStaticMeshMovement(const CConfig *config, const unsigned short Kind_Grid_Movement, const unsigned short iZone)
Function to compute the grid velocities for static problems.
Definition fem_geometry_structure.cpp:6166
void CoordinatesIntegrationPoints(void)
Function to compute the coordinates of the integration points.
Definition fem_geometry_structure.cpp:2161
void SetWallDistance(su2double val) override
Set wall distances a specific value.
Definition fem_wall_distance.cpp:122
vector< su2double > timeCoefADER_DG
The time coefficients in the iteration matrix of the ADER-DG predictor step.
Definition fem_geometry_structure.hpp:567
void VolumeMetricTermsFromCoorGradients(const unsigned short nEntities, const su2double *gradCoor, vector< su2double > &metricTerms)
Function, which computes the volume metric terms for the given entities from the gradients of the coo...
Definition fem_geometry_structure.cpp:5632
Base class for the FEM solver.
Definition fem_geometry_structure.hpp:288
vector< int > ranksRecv
Vector of ranks, from which this rank will receive halo information. Self communication is included.
Definition fem_geometry_structure.hpp:318
vector< vector< unsigned long > > rotPerHalos
Vector of vector, which contains the indices of the halo elements for which a rotationally periodic c...
Definition fem_geometry_structure.hpp:314
vector< unsigned long > nVolElemOwnedPerTimeLevel
Number of owned local volume elements per time level. Cumulative storage.
Definition fem_geometry_structure.hpp:293
const vector< vector< unsigned long > > & GetRotPerHalos(void) const
Function, which makes available the vector of vectors containing the rotational periodic halos as a c...
Definition fem_geometry_structure.hpp:480
unsigned long * GetNVolElemHaloPerTimeLevel(void)
Function, which makes available the number of halo volume elements per time level.
Definition fem_geometry_structure.hpp:412
unsigned long GetNMeshPoints(void)
Function, which makes available the number of mesh points of the local FEM mesh.
Definition fem_geometry_structure.hpp:376
unsigned long nVolElemOwned
Number of owned local volume elements.
Definition fem_geometry_structure.hpp:291
vector< unsigned long > nVolElemHaloPerTimeLevel
Number of local halo volume elements per time level. Cumulative storage.
Definition fem_geometry_structure.hpp:298
void ComputeNormalsFace(const unsigned short nIntegration, const unsigned short nDOFs, const su2double *dr, const su2double *ds, const unsigned long *DOFs, su2double *normals)
Function, which computes the information of the normals in the integration points of a face.
Definition fem_geometry_structure.cpp:1946
vector< vector< unsigned long > > GetHaloElemAdjLowTimeLevel(void)
Function, which makes available the vector of vectors containing the halo element IDs adjacent to ele...
Definition fem_geometry_structure.hpp:426
const vector< vector< unsigned long > > & GetEntitiesRecv(void) const
Function, which makes available the vector of vectors containing the receive entities as a const refe...
Definition fem_geometry_structure.hpp:459
vector< vector< unsigned long > > entitiesSend
Vector of vector, which contains the entities that must be sent. Self communication is included....
Definition fem_geometry_structure.hpp:323
CMeshFEM(void)
Constructor of the class.
Definition fem_geometry_structure.hpp:345
void ComputeGradientsCoordinatesFace(const unsigned short nIntegration, const unsigned short nDOFs, const su2double *matDerBasisInt, const unsigned long *DOFs, su2double *derivCoor, CConfig *config)
Function, which computes the gradients of the parametric coordinates w.r.t. the Cartesian coordinates...
Definition fem_geometry_structure.cpp:1850
vector< vector< unsigned long > > ownedElemAdjLowTimeLevel
List of owned elements per time level that are adjacent to elements of the lower time level.
Definition fem_geometry_structure.hpp:301
vector< CVolumeElementFEM > volElem
Vector of the local volume elements, including halos.
Definition fem_geometry_structure.hpp:306
unsigned long nVolElemTot
Total number of local volume elements, including halos.
Definition fem_geometry_structure.hpp:290
vector< CFEMStandardBoundaryFace > standardBoundaryFacesGrid
Vector that contains the standard boundary faces used for the geometry of the DG solver.
Definition fem_geometry_structure.hpp:336
const vector< vector< unsigned long > > & GetEntitiesSend(void) const
Function, which makes available the vector of vectors containing the send entities as a const referen...
Definition fem_geometry_structure.hpp:466
vector< vector< unsigned long > > GetOwnedElemAdjLowTimeLevel(void)
Function, which makes available the vector of vectors containing the owned element IDs adjacent to el...
Definition fem_geometry_structure.hpp:419
unsigned long * GetNVolElemInternalPerTimeLevel(void)
Function, which makes available the number of internal volume elements per time level.
Definition fem_geometry_structure.hpp:406
unsigned long GetNVolElemTot(void) const
Function, which makes available the total number of volume elements in the local FEM mesh.
Definition fem_geometry_structure.hpp:388
const vector< int > & GetRanksRecv(void) const
Function, which makes available the vector of receive ranks as a const reference.
Definition fem_geometry_structure.hpp:445
CBlasStructure * blasFunctions
Pointer to the object to carry out the BLAS functionalities.
Definition fem_geometry_structure.hpp:339
CVolumeElementFEM * GetVolElem(void)
Function, which makes available the volume elements in the local FEM mesh.
Definition fem_geometry_structure.hpp:394
unsigned long GetNVolElemOwned(void) const
Function, which makes available the number of owned volume elements in the local FEM mesh.
Definition fem_geometry_structure.hpp:382
vector< CFEMStandardBoundaryFace > standardBoundaryFacesSol
Vector that contains the standard boundary faces used for the solution of the DG solver.
Definition fem_geometry_structure.hpp:333
void MetricTermsBoundaryFaces(CBoundaryFEM *boundary, CConfig *config)
Function, which computes the metric terms of the faces of a physical boundary.
Definition fem_geometry_structure.cpp:2028
CBoundaryFEM * GetBoundaries(void)
Function, which makes available the boundaries of the local FEM mesh.
Definition fem_geometry_structure.hpp:364
vector< CPointFEM > meshPoints
Vector of the points of the FEM mesh.
Definition fem_geometry_structure.hpp:308
vector< unsigned long > nVolElemInternalPerTimeLevel
Number of internal local volume elements per time level. Internal means that the solution data does n...
Definition fem_geometry_structure.hpp:295
vector< int > ranksSend
Vector of ranks, to which this rank will send halo information. Self communication is included.
Definition fem_geometry_structure.hpp:320
vector< CBoundaryFEM > boundaries
Vector of the boundaries of the FEM mesh.
Definition fem_geometry_structure.hpp:310
vector< vector< unsigned long > > haloElemAdjLowTimeLevel
List of halo elements per time level that are adjacent to elements of the lower time level.
Definition fem_geometry_structure.hpp:303
vector< unsigned short > rotPerMarkers
Vector, which contains the indices of the rotational periodic markers.
Definition fem_geometry_structure.hpp:312
CPointFEM * GetMeshPoints(void)
Function, which makes available the mesh points of the local FEM mesh.
Definition fem_geometry_structure.hpp:370
void SetPositive_ZArea(CConfig *config) override
Compute surface area (positive z-direction) for force coefficient non-dimensionalization.
Definition fem_geometry_structure.cpp:2084
~CMeshFEM(void) override
Destructor of the class.
Definition fem_geometry_structure.hpp:358
CFEMStandardBoundaryFace * GetStandardBoundaryFacesSol(void)
Function, which makes available the standard boundary faces of the solution.
Definition fem_geometry_structure.hpp:438
unsigned short GetNStandardBoundaryFacesSol(void)
Function, which makes available the number of standard boundary faces of the solution.
Definition fem_geometry_structure.hpp:432
vector< vector< unsigned long > > entitiesRecv
Vector of vector, which contains the entities that must be received. Self communication is included....
Definition fem_geometry_structure.hpp:327
void ComputeGradientsCoorWRTParam(const unsigned short nIntegration, const unsigned short nDOFs, const su2double *matDerBasisInt, const unsigned long *DOFs, su2double *derivCoor, CConfig *config)
Function, which computes the gradients of the Cartesian coordinates w.r.t. the parametric coordinates...
Definition fem_geometry_structure.cpp:1927
unsigned long * GetNVolElemOwnedPerTimeLevel(void)
Function, which makes available the number of owned volume elements per time level.
Definition fem_geometry_structure.hpp:400
const vector< int > & GetRanksSend(void) const
Function, which makes available the vector of send ranks as a const reference.
Definition fem_geometry_structure.hpp:452
const vector< unsigned short > & GetRotPerMarkers(void) const
Function, which makes available the vector of rotational periodic markers as a const reference.
Definition fem_geometry_structure.hpp:473
Class to store a volume element for the FEM solver.
Definition fem_geometry_structure.hpp:45
unsigned long offsetDOFsSolLocal
Local offset of the solution DOFs of this element.
Definition fem_geometry_structure.hpp:75
unsigned short indStandardElement
Index in the vector of standard elements.
Definition fem_geometry_structure.hpp:67
vector< su2double > gridVelocities
Vector of the grid velocities in the integration points of this element.
Definition fem_geometry_structure.hpp:104
unsigned short VTK_Type
Element type using the VTK convention.
Definition fem_geometry_structure.hpp:58
su2double lenScale
Length scale of the element.
Definition fem_geometry_structure.hpp:90
vector< su2double > gridVelocitiesSolDOFs
Vector of the grid velocities in the solution DOFs of this element.
Definition fem_geometry_structure.hpp:106
unsigned short nDOFsGrid
Number of DOFs for the geometry of the element.
Definition fem_geometry_structure.hpp:61
vector< su2double > metricTerms2ndDer
Vector of the metric terms needed for the computation of the 2nd derivatives in the integration point...
Definition fem_geometry_structure.hpp:99
vector< su2double > coorIntegrationPoints
The coordinates of the integration points of this element.
Definition fem_geometry_structure.hpp:112
vector< su2double > coorSolDOFs
The coordinates of the solution DOFs of this element.
Definition fem_geometry_structure.hpp:113
void GetCornerPointsAllFaces(unsigned short &numFaces, unsigned short nPointsPerFace[], unsigned long faceConn[6][4])
Get all the corner points of all the faces of this element. It must be made sure that the numbering o...
Definition fem_geometry_structure.cpp:60
vector< bool > JacFacesIsConsideredConstant
Vector with the booleans whether the Jacobian of the transformation to the standard element is consta...
Definition fem_geometry_structure.hpp:83
vector< su2double > metricTerms
Vector of the metric terms in the integration points of this element.
Definition fem_geometry_structure.hpp:95
vector< su2double > wallDistanceSolDOFs
The wall distance to the viscous walls for the solution DOFs of this element.
Definition fem_geometry_structure.hpp:116
short periodIndexToDonor
The index of the periodic transformation to the donor element. Only for halo elements....
Definition fem_geometry_structure.hpp:54
int rankOriginal
The rank where the original volume is stored. For the owned volumes, this is simply the current rank.
Definition fem_geometry_structure.hpp:51
unsigned long offsetDOFsSolGlobal
Global offset of the solution DOFs of this element.
Definition fem_geometry_structure.hpp:74
vector< bool > ElementOwnsFaces
Vector with the booleans whether the element is the owner of the faces.
Definition fem_geometry_structure.hpp:85
bool JacIsConsideredConstant
Whether or not the Jacobian of the transformation to the standard element is considered constant.
Definition fem_geometry_structure.hpp:48
unsigned int factTimeLevel
Number of local time steps for this element compared to the largest time step when time accurate loca...
Definition fem_geometry_structure.hpp:69
unsigned short nPolyGrid
Polynomial degree for the geometry of the element.
Definition fem_geometry_structure.hpp:59
bool elemIsOwned
Whether or not this is an owned element.
Definition fem_geometry_structure.hpp:47
vector< su2double > wallDistance
The wall distance to the viscous walls for the integration points of this element.
Definition fem_geometry_structure.hpp:114
vector< su2double > lumpedMassMatrix
Lumped mass matrix for this element.
Definition fem_geometry_structure.hpp:110
vector< unsigned long > nodeIDsGrid
Vector with the node IDs of the grid for this element.
Definition fem_geometry_structure.hpp:88
unsigned long offsetDOFsSolPrevTimeLevel
Local offset of the solution DOFs of this element in the working vector of the previous time level.
Definition fem_geometry_structure.hpp:80
unsigned short nFaces
Number of faces of the element.
Definition fem_geometry_structure.hpp:63
unsigned long elemIDGlobal
Global element ID of this element.
Definition fem_geometry_structure.hpp:73
unsigned short timeLevel
Time level of the element when time accurate local time stepping is employed.
Definition fem_geometry_structure.hpp:64
unsigned long offsetDOFsSolThisTimeLevel
Local offset of the solution DOFs of this element in the working vector of the time level of the elem...
Definition fem_geometry_structure.hpp:77
vector< su2double > invMassMatrix
Inverse mass matrix for this element.
Definition fem_geometry_structure.hpp:109
vector< su2double > metricTermsSolDOFs
Vector of the metric terms in the solution DOFs of this element.
Definition fem_geometry_structure.hpp:97
unsigned short nPolySol
Polynomial degree for the solution of the element.
Definition fem_geometry_structure.hpp:60
su2double shockArtificialViscosity
Artificial viscosity for a shock.
Definition fem_geometry_structure.hpp:93
vector< su2double > massMatrix
Mass matrix for this element.
Definition fem_geometry_structure.hpp:108
unsigned short nDOFsSol
Number of DOFs for the solution of the element.
Definition fem_geometry_structure.hpp:62
su2double shockSensorValue
Value for sensing a shock.
Definition fem_geometry_structure.hpp:92
Base class for defining the LES wall model.
Definition wall_model.hpp:47
passivedouble su2double
Definition code_config.hpp:181
Headers of the main functions for the FEM standard elements. The functions are in the fem_standard_el...
Class to store a boundary for the FEM solver.
Definition fem_geometry_structure.hpp:265
bool periodicBoundary
Whether or not this boundary is a periodic boundary.
Definition fem_geometry_structure.hpp:268
bool haloInfoNeededForBC
Whether or not information of halo elements is needed to impose the boundary conditions.
Definition fem_geometry_structure.hpp:269
vector< CSurfaceElementFEM > surfElem
Vector of the local surface elements.
Definition fem_geometry_structure.hpp:275
string markerTag
Marker tag of this boundary.
Definition fem_geometry_structure.hpp:266
vector< unsigned long > nSurfElem
Number of surface elements per time level, cumulative storage format.
Definition fem_geometry_structure.hpp:272
~CBoundaryFEM(void)
Definition fem_geometry_structure.hpp:279
CWallModel * wallModel
Wall model for LES.
Definition fem_geometry_structure.hpp:277
Class to store an internal face for the FEM solver.
Definition fem_geometry_structure.hpp:160
vector< su2double > metricCoorDerivFace1
The terms dxdr, dydr, etc. of side 1 in the integration points of the face.
Definition fem_geometry_structure.hpp:182
unsigned long elemID0
Element ID adjacent to side 0 of the face.
Definition fem_geometry_structure.hpp:165
unsigned short VTK_Type
Element type using the VTK convention.
Definition fem_geometry_structure.hpp:161
unsigned long elemID1
Element ID adjacent to side 1 of the face.
Definition fem_geometry_structure.hpp:166
vector< su2double > coorIntegrationPoints
Coordinates for the integration points of this face.
Definition fem_geometry_structure.hpp:185
vector< unsigned long > DOFsGridElementSide1
Vector of the grid DOFs of the element of side 1.
Definition fem_geometry_structure.hpp:174
bool operator<(const CInternalFaceElementFEM &other) const
Less than operator of the class. Needed for the sorting. The criterion for comparison are the standar...
Definition fem_geometry_structure.cpp:74
unsigned short indStandardElement
Index in the vector of standard face elements.
Definition fem_geometry_structure.hpp:163
vector< unsigned long > DOFsGridFaceSide1
Vector of the grid DOFs of side 1 of the face.
Definition fem_geometry_structure.hpp:169
vector< unsigned long > DOFsGridElementSide0
Vector of the grid DOFs of the element of side 0.
Definition fem_geometry_structure.hpp:173
vector< unsigned long > DOFsSolElementSide0
Vector of the solution DOFs of the element of side 0.
Definition fem_geometry_structure.hpp:175
vector< unsigned long > DOFsSolFaceSide1
Vector of the solution DOFs of side 1 of the face.
Definition fem_geometry_structure.hpp:171
vector< unsigned long > DOFsSolElementSide1
Vector of the solution DOFs of the element of side 1.
Definition fem_geometry_structure.hpp:176
vector< unsigned long > DOFsGridFaceSide0
Vector of the grid DOFs of side 0 of the face.
Definition fem_geometry_structure.hpp:168
vector< su2double > gridVelocities
Grid velocities in the integration points of this face.
Definition fem_geometry_structure.hpp:186
vector< su2double > metricNormalsFace
The normals in the integration points of the face. The normals point from side 0 to side 1.
Definition fem_geometry_structure.hpp:178
vector< su2double > metricCoorDerivFace0
The terms drdx, dsdx, etc. of side 0 in the integration points of the face.
Definition fem_geometry_structure.hpp:180
vector< unsigned long > DOFsSolFaceSide0
Vector of the solution DOFs of side 0 of the face.
Definition fem_geometry_structure.hpp:170
vector< su2double > wallDistance
The wall distance to the viscous walls for the integration points of this face.
Definition fem_geometry_structure.hpp:187
Class to store a point for the FEM solver.
Definition fem_geometry_structure.hpp:136
short periodIndexToDonor
The index of the periodic transformation to the donor element. Only for halo elements....
Definition fem_geometry_structure.hpp:138
su2double coor[3]
Array with the coordinates of the node.
Definition fem_geometry_structure.hpp:141
bool operator==(const CPointFEM &other) const
Equal operator of the class. Needed for the removal of double entities.
Definition fem_geometry_structure.cpp:56
unsigned long globalID
The global ID of this point in the grid.
Definition fem_geometry_structure.hpp:137
bool operator<(const CPointFEM &other) const
Less than operator of the class. Needed for the sorting.
Definition fem_geometry_structure.cpp:51
Class to store a surface element for the FEM solver.
Definition fem_geometry_structure.hpp:204
unsigned long volElemID
ID of the corresponding volume element.
Definition fem_geometry_structure.hpp:211
void GetCornerPointsFace(unsigned short &nPointsPerFace, unsigned long faceConn[])
Function, which determines the corner points of this surface element.
Definition fem_geometry_structure.cpp:86
vector< unsigned long > DOFsGridFace
Vector of the grid DOFs of the face. In principle the same information as nodeIDsGrid,...
Definition fem_geometry_structure.hpp:219
unsigned short VTK_Type
Element type using the VTK convention.
Definition fem_geometry_structure.hpp:205
vector< su2double > metricNormalsFace
The normals in the integration points of the face. The normals point out of the adjacent element.
Definition fem_geometry_structure.hpp:227
vector< su2double > coorIntegrationPoints
The coordinates of the integration points of the face.
Definition fem_geometry_structure.hpp:231
vector< su2double > metricCoorDerivFace
The terms drdx, dsdx, etc. in the integration points of the face.
Definition fem_geometry_structure.hpp:229
unsigned short indStandardElement
Index in the vector of standard elements.
Definition fem_geometry_structure.hpp:209
vector< vector< su2double > > matWallFunctionDonor
Matrices, which store the interpolation coefficients for the donors of the integration points.
Definition fem_geometry_structure.hpp:242
vector< su2double > wallDistance
The wall distances of the integration points of the face.
Definition fem_geometry_structure.hpp:233
vector< su2double > gridVelocities
Grid velocities in the integration points of this face.
Definition fem_geometry_structure.hpp:232
vector< unsigned long > donorsWallFunction
Local element IDs of the donors for the wall function treatment. These donors can be halo's.
Definition fem_geometry_structure.hpp:236
vector< unsigned long > DOFsGridElement
Vector of the grid DOFs of the adjacent element.
Definition fem_geometry_structure.hpp:224
unsigned short nPolyGrid
Polynomial degree for the geometry of the element.
Definition fem_geometry_structure.hpp:206
unsigned short nDOFsGrid
Number of DOFs for the geometry of the element.
Definition fem_geometry_structure.hpp:207
vector< unsigned short > intPerWallFunctionDonor
The integration points per donor element for the wall function treatment.
Definition fem_geometry_structure.hpp:240
vector< unsigned short > nIntPerWallFunctionDonor
The number of integration points per donor element for the wall function treatment.
Definition fem_geometry_structure.hpp:238
unsigned long boundElemIDGlobal
Global ID of this surface element inside the boundary to which it belongs.
Definition fem_geometry_structure.hpp:212
vector< unsigned long > DOFsSolElement
Vector of the solution DOFs of the adjacent element.
Definition fem_geometry_structure.hpp:225
vector< unsigned long > nodeIDsGrid
Vector with the node IDs of the grid for this element. In this vector the original sequence of the gr...
Definition fem_geometry_structure.hpp:215
bool operator<(const CSurfaceElementFEM &other) const
Less than operator of the class. Needed for the sorting. The criterion for comparison is the correspo...
Definition fem_geometry_structure.hpp:249
vector< unsigned long > DOFsSolFace
Vector of the solution DOFs of the face.
Definition fem_geometry_structure.hpp:222