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_wall_distance_calculation_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_WALL_DISTANCE_CALCULATION_PROCESS_H_INCLUDED)
14 #define KRATOS_RANS_WALL_DISTANCE_CALCULATION_PROCESS_H_INCLUDED
15 
16 // System includes
17 #include <string>
18 
19 // External includes
20 
21 // Project includes
22 #include "containers/model.h"
23 #include "includes/define.h"
24 
25 // Application includes
27 
28 namespace Kratos
29 {
32 
35 
36 class KRATOS_API(RANS_APPLICATION) RansWallDistanceCalculationProcess
38 {
39 public:
42 
45 
49 
52  Model& rModel,
53  Parameters rParameters);
54 
57 
60 
63 
67 
68  int Check() override;
69 
70  void ExecuteInitialize() override;
71 
72  void ExecuteInitializeSolutionStep() override;
73 
74  const Parameters GetDefaultParameters() const override;
75 
79 
80  std::string Info() const override;
81 
83  void PrintInfo(std::ostream& rOStream) const override
84  {
85  rOStream << this->Info();
86  }
87 
89  void PrintData(std::ostream& rOStream) const override
90  {
91  }
92 
94 
95 private:
98 
99  Model& mrModel;
100  std::string mMainModelPartName;
101  std::string mWallModelPartName;
102 
103  int mMaxLevels;
104  int mEchoLevel;
105  std::string mDistanceVariableName;
106  std::string mNodalAreaVariableName;
107  bool mRecalculateAtEachTimeStep;
108  double mMaxDistance;
109 
113 
131  void CalculateWallDistances();
132 
134 
135 }; // Class RansWallDistanceCalculationProcess
136 
140 
142 inline std::ostream& operator<<(
143  std::ostream& rOStream,
145 
147 
149 
150 } // namespace Kratos.
151 
152 #endif // KRATOS_RANS_WALL_DISTANCE_CALCULATION_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
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
This class is extending standard Process interface.
Definition: rans_formulation_process.h:41
Definition: rans_wall_distance_calculation_process.h:38
~RansWallDistanceCalculationProcess() override=default
Destructor.
KRATOS_CLASS_POINTER_DEFINITION(RansWallDistanceCalculationProcess)
Pointer definition of RansWallDistanceCalculationProcess.
RansWallDistanceCalculationProcess & operator=(RansWallDistanceCalculationProcess const &rOther)=delete
Assignment operator.
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: rans_wall_distance_calculation_process.h:89
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: rans_wall_distance_calculation_process.h:83
RansWallDistanceCalculationProcess(RansWallDistanceCalculationProcess const &rOther)=delete
Copy constructor.
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