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.
set_initial_state_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: Alejandro Cornejo
11 //
12 //
13 
14 #if !defined(KRATOS_SET_INITIAL_STATE_H_INCLUDED )
15 #define KRATOS_SET_INITIAL_STATE_H_INCLUDED
16 
17 // System includes
18 
19 // External includes
20 #include "includes/model_part.h"
21 #include "processes/process.h"
22 
23 // Project includes
24 
25 namespace Kratos
26 {
27 
30 
32 
35 template<std::size_t TDim>
36 class KRATOS_API(KRATOS_CORE) SetInitialStateProcess : public Process
37 {
38 public:
41 
42 
45 
49 
51  SetInitialStateProcess(ModelPart& rModelPart);
52 
55  ModelPart& rModelPart,
56  const Vector& rInitialStrain,
57  const Vector& rInitialStress,
58  const Matrix& rInitialF);
59 
62  ModelPart& rModelPart,
63  const Vector& rInitialStateVector,
64  const int InitialStateType);
65 
68  const Matrix& rInitialStateF);
69 
72 
73 
77 
79  void operator()()
80  {
81  Execute();
82  }
83 
84 
88 
89 
91  void ExecuteInitializeSolutionStep() override;
92 
96 
100 
104 
108 
109 
111 
112 private:
115 
116 
117  ModelPart& mrModelPart;
118 
119  Vector mInitialStrain;
120  Vector mInitialStress;
121  Matrix mInitialF;
122 
126 
128  SetInitialStateProcess& operator=(Process const& rOther) = delete;
129 
131 
132 }; // Class Process
133 
135 
138 
139 
143 
144 
145 } // namespace Kratos.
146 
147 #endif // defined
148 
149 
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
The base class for all processes in Kratos.
Definition: process.h:49
The SetInitialStateProcess.
Definition: set_initial_state_process.h:37
void operator()()
This operator is provided to call the process as a function and simply calls the Execute method.
Definition: set_initial_state_process.h:79
KRATOS_CLASS_POINTER_DEFINITION(SetInitialStateProcess)
Pointer definition of Process.
~SetInitialStateProcess() override
Destructor.
Definition: set_initial_state_process.h:71
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21