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.
droplet_dynamics_application.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: Mohammad R. Hashemi
11 //
12 
13 
14 #if !defined(KRATOS_DROPLET_DYNAMICS_APPLICATION_H_INCLUDED )
15 #define KRATOS_DROPLET_DYNAMICS_APPLICATION_H_INCLUDED
16 
17 
18 // System includes
19 
20 
21 // External includes
22 
23 
24 // Project includes
26 
27 // Application includes
29 #include "../FluidDynamicsApplication/custom_utilities/two_fluid_navier_stokes_data.h"
30 
31 
32 namespace Kratos {
33 
36 
40 
44 
48 
52 
54 
56 class KRATOS_API(DROPLET_DYNAMICS_APPLICATION) KratosDropletDynamicsApplication : public KratosApplication {
57 public:
60 
63 
67 
70 
73 
77 
78 
82 
83  void Register() override;
84 
88 
89 
93 
94 
98 
100  std::string Info() const override
101  {
102  return "KratosDropletDynamicsApplication";
103  }
104 
106  void PrintInfo(std::ostream& rOStream) const override
107  {
108  rOStream << Info();
109  PrintData(rOStream);
110  }
111 
113  void PrintData(std::ostream& rOStream) const override
114  {
115  KRATOS_WATCH("in my application");
117 
118  rOStream << "Variables:" << std::endl;
120  rOStream << std::endl;
121  rOStream << "Elements:" << std::endl;
122  KratosComponents<Element>().PrintData(rOStream);
123  rOStream << std::endl;
124  rOStream << "Conditions:" << std::endl;
125  KratosComponents<Condition>().PrintData(rOStream);
126  }
127 
131 
132 
134 
135 protected:
138 
139 
143 
144 
148 
149 
153 
154 
158 
159 
163 
164 
168 
169 
171 
172 private:
175 
176  // static const ApplicationCondition msApplicationCondition;
177 
181 
182  const DropletDynamicsElement< TwoFluidNavierStokesData<2, 3> > mDropletDynamics2D3N;
183  const DropletDynamicsElement< TwoFluidNavierStokesData<3, 4> > mDropletDynamics3D4N;
184 
188 
189 
193 
194 
198 
199 
203 
204 
208 
211 
214 
215 
217 
218 }; // Class KratosDropletDynamicsApplication
219 
221 
222 
225 
226 
230 
232 
233 
234 } // namespace Kratos.
235 
236 #endif // KRATOS_DROPLET_DYNAMICS_APPLICATION_H_INCLUDED defined
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
Definition: droplet_dynamics_element.h:57
This class defines the interface with kernel for all applications in Kratos.
Definition: kratos_application.h:91
Definition: kratos_components.h:253
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: kratos_components.h:403
KratosComponents class encapsulates a lookup table for a family of classes in a generic way.
Definition: kratos_components.h:49
Short class definition.
Definition: droplet_dynamics_application.h:56
~KratosDropletDynamicsApplication() override
Destructor.
Definition: droplet_dynamics_application.h:72
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: droplet_dynamics_application.h:106
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: droplet_dynamics_application.h:113
KRATOS_CLASS_POINTER_DEFINITION(KratosDropletDynamicsApplication)
Pointer definition of KratosDropletDynamicsApplication.
std::string Info() const override
Turn back information as a string.
Definition: droplet_dynamics_application.h:100
#define KRATOS_WATCH(variable)
Definition: define.h:806
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
KRATOS_API_EXTERN template class KratosComponents< Condition >
Definition: condition.h:1191
KRATOS_API_EXTERN template class KratosComponents< Element >
Definition: element.h:1240