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.
metric_fast_init_process.h
Go to the documentation of this file.
1 // KRATOS __ __ _____ ____ _ _ ___ _ _ ____
2 // | \/ | ____/ ___|| | | |_ _| \ | |/ ___|
3 // | |\/| | _| \___ \| |_| || || \| | | _
4 // | | | | |___ ___) | _ || || |\ | |_| |
5 // |_| |_|_____|____/|_| |_|___|_| \_|\____| APPLICATION
6 //
7 // License: BSD License
8 // license: MeshingApplication/license.txt
9 //
10 // Main authors: Vicente Mataix Ferrandiz
11 //
12 
13 #if !defined(KRATOS_METRIC_FAST_INIT_PROCESS)
14 #define KRATOS_METRIC_FAST_INIT_PROCESS
15 
16 // System includes
17 
18 // External includes
19 
20 // Project includes
21 #include "processes/process.h"
23 #include "includes/model_part.h"
24 
25 namespace Kratos
26 {
29 
33 
35  typedef std::size_t SizeType;
36 
40 
44 
52 template<SizeType TDim>
53 class KRATOS_API(MESHING_APPLICATION) MetricFastInit
54  : public Process
55 {
56 public:
59 
62 
63  // General type definitions
64  typedef Node NodeType;
68 
70  typedef typename std::conditional<TDim == 2, array_1d<double, 3>, array_1d<double, 6>>::type TensorArrayType;
71 
75 
77  MetricFastInit( ModelPart& rThisModelPart):mrThisModelPart(rThisModelPart){}
78 
80  ~MetricFastInit() override = default;
81 
85 
89 
93 
97 
101 
102  void operator()()
103  {
104  Execute();
105  }
106 
110 
111  void Execute() override;
112 
116 
117 
121 
122 
126 
128  std::string Info() const override
129  {
130  return "MetricFastInit";
131  }
132 
134  void PrintInfo(std::ostream& rOStream) const override
135  {
136  rOStream << "MetricFastInit";
137  }
138 
140  void PrintData(std::ostream& rOStream) const override
141  {
142  }
143 
147 
148 
150 
151 protected:
154 
155 
159 
160 
164 
165 
169 
170 
174 
175 
179 
180 
184 
185 
187 
188 private:
191 
192 
196 
197  ModelPart& mrThisModelPart;
198 
202 
206 
207 
211 
212 
216 
217 
221 
223  MetricFastInit& operator=(MetricFastInit const& rOther);
224 
226  //MetricFastInit(MetricFastInit const& rOther);
227 
228 
230 
231 }; // Class MetricFastInit
232 
234 
237 
238 
242 
244 // inline std::istream& operator >> (std::istream& rIStream,
245 // MetricFastInit& rThis);
246 //
247 // /// output stream function
248 // inline std::ostream& operator << (std::ostream& rOStream,
249 // const MetricFastInit& rThis)
250 // {
251 // rThis.PrintInfo(rOStream);
252 // rOStream << std::endl;
253 // rThis.PrintData(rOStream);
254 //
255 // return rOStream;
256 // }
257 
258 }
259 #endif /* KRATOS_METRIC_FAST_INIT_PROCESS defined */
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
Geometry base class.
Definition: geometry.h:71
This process initializes the variables related with the ALM.
Definition: metric_fast_init_process.h:55
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: metric_fast_init_process.h:140
ModelPart::NodesContainerType NodesArrayType
Definition: metric_fast_init_process.h:66
Geometry< NodeType > GeometryType
Definition: metric_fast_init_process.h:65
void operator()()
Definition: metric_fast_init_process.h:102
~MetricFastInit() override=default
Destructor.
ModelPart::ConditionsContainerType ConditionsArrayType
Definition: metric_fast_init_process.h:67
MetricFastInit(ModelPart &rThisModelPart)
Default constructor.
Definition: metric_fast_init_process.h:77
std::string Info() const override
Turn back information as a string.
Definition: metric_fast_init_process.h:128
std::conditional< TDim==2, array_1d< double, 3 >, array_1d< double, 6 > >::type TensorArrayType
The type of array considered for the tensor.
Definition: metric_fast_init_process.h:70
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: metric_fast_init_process.h:134
Node NodeType
Definition: metric_fast_init_process.h:64
KRATOS_CLASS_POINTER_DEFINITION(MetricFastInit)
Pointer definition of MetricFastInit.
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
MeshType::ConditionsContainerType ConditionsContainerType
Condintions container. A vector set of Conditions with their Id's as key.
Definition: model_part.h:183
MeshType::NodesContainerType NodesContainerType
Nodes container. Which is a vector set of nodes with their Id's as key.
Definition: model_part.h:128
This class defines the node.
Definition: node.h:65
The base class for all processes in Kratos.
Definition: process.h:49
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::size_t SizeType
The definition of the size type.
Definition: mortar_classes.h:43
type
Definition: generate_gid_list_file.py:35