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.
ULF_application.h
Go to the documentation of this file.
1 
2 // Project Name: Kratos
3 // Last Modified by: $Author: anonymous $
4 // Date: $Date: 2008-04-01 10:25:52 $
5 // Revision: $Revision: 1.7 $
6 //
7 //
8 
9 
10 #if !defined(KRATOS_KRATOS_ULF_APPLICATION_H_INCLUDED )
11 #define KRATOS_KRATOS_ULF_APPLICATION_H_INCLUDED
12 
13 
14 
15 // System includes
16 #include <string>
17 #include <iostream>
18 
19 
20 // External includes
21 
22 
23 // Project includes
24 #include "includes/define.h"
26 
27 #include <pybind11/pybind11.h>
28 
30 
31 #include "includes/variables.h"
33 #include "includes/condition.h"
42 //#include "custom_elements/ulf_frac2d_swimming.h"
43 //#include "custom_elements/ulf_frac3d_swimming.h"
49 
50 namespace Kratos
51 {
52 
55 
56 
60 
64 
68 
72 
74 
77 {
78 public:
81 
82 
85 
89 
92 
94 // virtual ~KratosULFApplication() {}
95  ~KratosULFApplication() override {}
96 
97 
101 
102 
106 
107  void Register() override;
108 
109 
110 
114 
115 
119 
120 
124 
126  std::string Info() const override
127  {
128  return "KratosULFApplication";
129  }
130 
132  void PrintInfo(std::ostream& rOStream) const override
133  {
134  rOStream << Info();
135  PrintData(rOStream);
136  }
137 
139  void PrintData(std::ostream& rOStream) const override
140  {
141  KRATOS_WATCH("in KratosULFApplication");
143  rOStream << "Variables:" << std::endl;
145  rOStream << std::endl;
146  rOStream << "Elements:" << std::endl;
147  KratosComponents<Element>().PrintData(rOStream);
148  rOStream << std::endl;
149  rOStream << "Conditions:" << std::endl;
150  KratosComponents<Condition>().PrintData(rOStream);
151  }
152 
153 
157 
158 
160 
161 protected:
164 
165 
169 
170 
174 
175 
179 
180 
184 
185 
189 
190 
194 
195 
197 
198 private:
201 
202 
206  const UpdatedLagrangianFluid mUpdatedLagrangianFluid2D;
207  const UpdatedLagrangianFluid3D mUpdatedLagrangianFluid3D;
208  const UpdatedLagrangianFluidInc mUpdatedLagrangianFluid2Dinc;
209  const UpdatedLagrangianFluid3Dinc mUpdatedLagrangianFluid3Dinc;
210  //
211  const UlfFrac2D mUlfFrac2D;
212  const UlfFrac3D mUlfFrac3D;
213  const UlfAxisym mUlfAxisym;
214  const Fluid2DGLS_expl mFluid2DGLS_expl;
215  const PointNeumann3D mPointNeumann3D;
216  const PointNeumann2D mPointNeumann2D;
217  const PointNeumannAxisym mPointNeumannAxisym;
218 
220  const SurfaceTension<2> mSurfaceTension2D;
222  const SurfaceTension<3> mSurfaceTension3D;
223 
227 
228 
232 
233 
237 
238 
242 
243 
247 
249  KratosULFApplication& operator=(KratosULFApplication const& rOther);
250 
253 
254 
256 
257 }; // Class KratosULFApplication
258 
260 
261 
264 
265 
269 
271 
272 
273 } // namespace Kratos.
274 
275 #endif // KRATOS_KRATOS_ULF_APPLICATION_H_INCLUDED defined
Short class definition.
Definition: fluid_2dGLS_expl.h:61
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: ULF_application.h:77
~KratosULFApplication() override
Destructor.
Definition: ULF_application.h:95
std::string Info() const override
Turn back information as a string.
Definition: ULF_application.h:126
KRATOS_CLASS_POINTER_DEFINITION(KratosULFApplication)
Pointer definition of KratosULFApplication.
KratosULFApplication()
Default constructor.
Definition: ULF_application.cpp:44
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: ULF_application.h:132
void Register() override
Definition: ULF_application.cpp:65
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: ULF_application.h:139
Short class definition.
Definition: Point_Neumann2D.h:97
Short class definition.
Definition: Point_Neumann3D.h:97
Short class definition.
Definition: Point_Neumann_Axisym.h:97
Short class definition.
Definition: ulf_axisym.h:98
Short class definition.
Definition: ulf_frac2d.h:98
Short class definition.
Definition: ulf_frac3d.h:98
Short class definition.
Definition: updated_lagrangian_fluid3D.h:98
Short class definition.
Definition: updated_lagrangian_fluid3D_inc.h:98
Short class definition.
Definition: updated_lagrangian_fluid.h:98
Short class definition.
Definition: updated_lagrangian_fluid_inc.h:98
#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