Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
DgInfo.h
Go to the documentation of this file.
1 /*------------------------------------------------------------------------*/
2 /* Copyright 2014 Sandia Corporation. */
3 /* This software is released under the license detailed */
4 /* in the file, LICENSE, which is located in the top-level Nalu */
5 /* directory structure */
6 /*------------------------------------------------------------------------*/
7 
8 
9 #ifndef DgInfo_h
10 #define DgInfo_h
11 
12 //==============================================================================
13 // Includes and forwards
14 //==============================================================================
15 
16 #include <stk_mesh/base/Entity.hpp>
17 #include <stk_topology/topology.hpp>
18 
19 #include <vector>
20 
21 namespace sierra {
22 namespace nalu {
23 
24 class MasterElement;
25 
26 //=============================================================================
27 // Class Definition
28 //=============================================================================
29 // DgInfo
30 //=============================================================================
38 //=============================================================================
39 class DgInfo {
40 
41  public:
42 
43  // constructor and destructor
44  DgInfo(
45  int parallelRank,
46  uint64_t globalFaceId,
47  uint64_t localGaussPointId,
48  int currentGaussPointId,
49  stk::mesh::Entity currentFace,
50  stk::mesh::Entity currentElement,
51  const int currentFaceOrdinal,
52  MasterElement *meFCCurrent,
53  MasterElement *meSCSurrent,
54  stk::topology currentElementTopo,
55  const int nDim);
56 
57  ~DgInfo();
58 
60  uint64_t globalFaceId_;
63 
64  stk::mesh::Entity currentFace_;
65  stk::mesh::Entity currentElement_;
69  stk::topology currentElementTopo_;
70 
71  int nDim_;
72 
73  double bestX_;
75 
76  // search provides opposing face
77  stk::mesh::Entity opposingFace_;
78 
79  // face:element relations provide connected element to opposing face
80  stk::mesh::Entity opposingElement_;
81 
82  // opposing element topo
83  stk::topology opposingElementTopo_;
84 
85  // for the opposing face, what is its ordinal?
87 
88  // master element for opposing face
90 
91  // master element for opposing face connected element
93 
94  // coordinates of gauss points on current face
95  std::vector<double> currentGaussPointCoords_;
96 
97  // iso-parametric coordinates for gauss point on current face (-1:1)
98  std::vector<double> currentIsoParCoords_;
99 
100  // iso-parametric coordinates for gauss point on opposing face (-1:1)
101  std::vector<double> opposingIsoParCoords_;
102 };
103 
104 } // end sierra namespace
105 } // end nalu namespace
106 
107 #endif
int parallelRank_
Definition: DgInfo.h:59
~DgInfo()
Definition: DgInfo.C:63
Definition: ABLForcingAlgorithm.C:26
Definition: MasterElement.h:53
stk::mesh::Entity opposingFace_
Definition: DgInfo.h:77
std::vector< double > opposingIsoParCoords_
Definition: DgInfo.h:101
int opposingFaceIsGhosted_
Definition: DgInfo.h:74
uint64_t globalFaceId_
Definition: DgInfo.h:60
MasterElement * meSCSCurrent_
Definition: DgInfo.h:68
stk::topology currentElementTopo_
Definition: DgInfo.h:69
MasterElement * meFCOpposing_
Definition: DgInfo.h:89
MasterElement * meSCSOpposing_
Definition: DgInfo.h:92
stk::mesh::Entity currentFace_
Definition: DgInfo.h:64
double bestX_
Definition: DgInfo.h:73
uint64_t localGaussPointId_
Definition: DgInfo.h:61
stk::mesh::Entity currentElement_
Definition: DgInfo.h:65
stk::topology opposingElementTopo_
Definition: DgInfo.h:83
std::vector< double > currentIsoParCoords_
Definition: DgInfo.h:98
stk::mesh::Entity opposingElement_
Definition: DgInfo.h:80
Definition: UnitTestMasterElements.C:367
int currentGaussPointId_
Definition: DgInfo.h:62
Definition: DgInfo.h:39
std::vector< double > currentGaussPointCoords_
Definition: DgInfo.h:95
const int currentFaceOrdinal_
Definition: DgInfo.h:66
int opposingFaceOrdinal_
Definition: DgInfo.h:86
int nDim_
Definition: DgInfo.h:71
DgInfo(int parallelRank, uint64_t globalFaceId, uint64_t localGaussPointId, int currentGaussPointId, stk::mesh::Entity currentFace, stk::mesh::Entity currentElement, const int currentFaceOrdinal, MasterElement *meFCCurrent, MasterElement *meSCSurrent, stk::topology currentElementTopo, const int nDim)
Definition: DgInfo.C:27
MasterElement * meFCCurrent_
Definition: DgInfo.h:67