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.
rans_nut_k_omega_sst_update_process.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_RANS_NUT_K_OMEGA_SST_UPDATE_PROCESS_H_INCLUDED)
14 #define KRATOS_RANS_NUT_K_OMEGA_SST_UPDATE_PROCESS_H_INCLUDED
15 
16 // System includes
17 #include <string>
18 
19 // External includes
20 
21 // Project includes
22 #include "containers/model.h"
23 
24 // Application includes
26 
27 namespace Kratos
28 {
31 
34 
47 class KRATOS_API(RANS_APPLICATION) RansNutKOmegaSSTUpdateProcess
49 {
50 public:
53 
56 
60 
62 
64  Model& rModel,
65  Parameters rParameters);
66 
68  Model& rModel,
69  const std::string& rModelPartName,
70  const double MinValue,
71  const int EchoLevel);
72 
74  ~RansNutKOmegaSSTUpdateProcess() override = default;
75 
78 
81 
85 
86  int Check() override;
87 
88  void ExecuteInitialize() override;
89 
90  void ExecuteInitializeSolutionStep() override;
91 
92  void ExecuteAfterCouplingSolveStep() override;
93 
94  const Parameters GetDefaultParameters() const override;
95 
99 
101  std::string Info() const override;
102 
104  void PrintInfo(std::ostream& rOStream) const override;
105 
107  void PrintData(std::ostream& rOStream) const override;
108 
110 
111 private:
114 
115  Model& mrModel;
116  std::string mModelPartName;
117  double mMinValue;
118  int mEchoLevel;
119  bool mIsInitialized = false;
120 
124 
135  template <unsigned int TDim>
136  double CalculateElementNuT(
137  const Element& rElement,
138  const ProcessInfo& rProcessInfo) const;
139 
141 
142 }; // Class RansNutKOmegaSSTUpdateProcess
143 
147 
149 inline std::ostream& operator<<(
150  std::ostream& rOStream,
151  const RansNutKOmegaSSTUpdateProcess& rThis);
152 
154 
156 
157 } // namespace Kratos.
158 
159 #endif // KRATOS_RANS_NUT_K_OMEGA_SST_UPDATE_PROCESS_H_INCLUDED defined
void ExecuteInitialize() override
Definition: periodic_interface_process.hpp:37
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
Base class for all Elements.
Definition: element.h:60
This class aims to manage different model parts across multi-physics simulations.
Definition: model.h:60
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
This class is extending standard Process interface.
Definition: rans_formulation_process.h:41
Calculates turbulent kinematic viscosity.
Definition: rans_nut_k_omega_sst_update_process.h:49
KRATOS_CLASS_POINTER_DEFINITION(RansNutKOmegaSSTUpdateProcess)
Pointer definition of RansNutKOmegaSSTUpdateProcess.
RansNutKOmegaSSTUpdateProcess & operator=(RansNutKOmegaSSTUpdateProcess const &rOther)=delete
Assignment operator.
RansNutKOmegaSSTUpdateProcess(RansNutKOmegaSSTUpdateProcess const &rOther)=delete
Copy constructor.
~RansNutKOmegaSSTUpdateProcess() override=default
Destructor.
static int EchoLevel
Definition: co_sim_EMPIRE_API.h:42
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432