KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
omega_element_data.h
Go to the documentation of this file.
1 // | / |
2 // ' / __| _` | __| _ \ __|
3 // . \ | ( | | ( |\__ `
4 // _|\_\_| \__,_|\__|\___/ ____/
5 // Multi-Physics
6 //
7 // License: BSD License
8 // Kratos default license: kratos/license.txt
9 //
10 // Main authors: Suneth Warnakulasuriya
11 //
12 
13 #if !defined(KRATOS_K_OMEGA_SST_ELEMENT_DATA_OMEGA_ELEMENT_DATA_H_INCLUDED)
14 #define KRATOS_K_OMEGA_SST_ELEMENT_DATA_OMEGA_ELEMENT_DATA_H_INCLUDED
15 
16 // System includes
17 
18 // Project includes
19 #include "containers/array_1d.h"
20 #include "containers/variable.h"
22 #include "includes/node.h"
23 #include "includes/process_info.h"
25 
26 // Application includes
28 
29 namespace Kratos
30 {
33 
34 namespace KOmegaSSTElementData
35 {
36 template <unsigned int TDim>
38 {
39 public:
42 
44 
45  using NodeType = Node;
46 
48 
49  using ArrayD = typename BaseType::ArrayD;
50 
54 
56  const GeometryType& rGeometry,
57  const Properties& rProperties,
58  const ProcessInfo& rProcessInfo)
59  : BaseType(rGeometry, rProperties, rProcessInfo)
60  {
61  }
62 
63  ~OmegaElementData() override = default;
64 
68 
69  static const Variable<double>& GetScalarVariable();
70 
71  static void Check(
72  const Element& rElement,
73  const ProcessInfo& rCurrentProcessInfo);
74 
75  static const std::string GetName()
76  {
77  return "KOmegaSSTOmegaElementData";
78  }
79 
83 
84  void CalculateConstants(
85  const ProcessInfo& rCurrentProcessInfo);
86 
88  const Vector& rShapeFunctions,
89  const Matrix& rShapeFunctionDerivatives,
90  const int Step = 0);
91 
93 
94 protected:
97 
101  using BaseType::mSourceTerm;
102 
106 
107  double mBeta1;
108  double mBeta2;
109  double mSigmaOmega1;
110  double mSigmaOmega2;
111  double mBetaStar;
117  double mF1;
119  double mBlendedBeta;
123  double mKappa;
124  double mDensity;
125 
127 };
128 
130 
131 } // namespace KOmegaSSTElementData
132 
133 } // namespace Kratos
134 
135 #endif
Base class to hold Convection-Diffusion-Reaction transport equation data.
Definition: convection_diffusion_reaction_element_data.h:64
double mSourceTerm
Definition: convection_diffusion_reaction_element_data.h:137
double mReactionTerm
Definition: convection_diffusion_reaction_element_data.h:136
ArrayD mEffectiveVelocity
Definition: convection_diffusion_reaction_element_data.h:134
Geometry< Node > GeometryType
Definition: convection_diffusion_reaction_element_data.h:69
double mEffectiveKinematicViscosity
Definition: convection_diffusion_reaction_element_data.h:135
array_1d< double, TDim > ArrayD
Definition: convection_diffusion_reaction_element_data.h:71
Base class for all Elements.
Definition: element.h:60
Geometry base class.
Definition: geometry.h:71
Definition: omega_element_data.h:38
double mBeta2
Definition: omega_element_data.h:108
ArrayD mTurbulentSpecificEnergyDissipationRateGradient
Definition: omega_element_data.h:105
double mKappa
Definition: omega_element_data.h:123
double mTurbulentKineticEnergy
Definition: omega_element_data.h:112
double mF1
Definition: omega_element_data.h:117
double mBlendedGamma
Definition: omega_element_data.h:120
static const std::string GetName()
Definition: omega_element_data.h:75
void CalculateConstants(const ProcessInfo &rCurrentProcessInfo)
Definition: omega_element_data.cpp:83
double mKinematicViscosity
Definition: omega_element_data.h:114
static const Variable< double > & GetScalarVariable()
Definition: omega_element_data.cpp:35
double mSigmaOmega1
Definition: omega_element_data.h:109
double mBetaStar
Definition: omega_element_data.h:111
void CalculateGaussPointData(const Vector &rShapeFunctions, const Matrix &rShapeFunctionDerivatives, const int Step=0)
Definition: omega_element_data.cpp:97
double mBlendedSigmaOmega
Definition: omega_element_data.h:118
double mCrossDiffusion
Definition: omega_element_data.h:116
ArrayD mTurbulentKineticEnergyGradient
Definition: omega_element_data.h:104
double mVelocityDivergence
Definition: omega_element_data.h:121
static void Check(const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
Definition: omega_element_data.cpp:41
double mWallDistance
Definition: omega_element_data.h:115
double mTurbulentKinematicViscosity
Definition: omega_element_data.h:122
double mDensity
Definition: omega_element_data.h:124
double mTurbulentSpecificEnergyDissipationRate
Definition: omega_element_data.h:113
OmegaElementData(const GeometryType &rGeometry, const Properties &rProperties, const ProcessInfo &rProcessInfo)
Definition: omega_element_data.h:55
double mBlendedBeta
Definition: omega_element_data.h:119
double mBeta1
Definition: omega_element_data.h:107
double mSigmaOmega2
Definition: omega_element_data.h:110
BoundedMatrix< double, TDim, TDim > mVelocityGradient
Definition: omega_element_data.h:103
This class defines the node.
Definition: node.h:65
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21