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.
move_model_part_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: Marc Núñez,
11 //
12 
13 #ifndef KRATOS_MOVE_MODEL_PART_PROCESS_H
14 #define KRATOS_MOVE_MODEL_PART_PROCESS_H
15 
16 #include "includes/define.h"
17 
19 #include "includes/model_part.h"
20 #include "processes/process.h"
21 
22 namespace Kratos
23 {
24 
25  class KRATOS_API(COMPRESSIBLE_POTENTIAL_FLOW_APPLICATION) MoveModelPartProcess : public Process
26 {
27 public:
30 
33 
34  // Constructor for MoveModelPartProcess Process
35  MoveModelPartProcess(ModelPart& rModelPart, Parameters ThisParameters);
36 
38  ~MoveModelPartProcess() = default;
39 
42 
44  MoveModelPartProcess(MoveModelPartProcess const& rOther) = delete;
45 
47  void operator()()
48  {
49  Execute();
50  }
51 
52  void Execute() override;
53 
55  std::string Info() const override
56  {
57  return "MoveModelPartProcess";
58  }
59 
61  void PrintInfo(std::ostream& rOStream) const override
62  {
63  rOStream << "MoveModelPartProcess";
64  }
65 
67  void PrintData(std::ostream& rOStream) const override
68  {
69  this->PrintInfo(rOStream);
70  }
71 
72 private:
75 
76 
80 
81  ModelPart& mrModelPart;
82  Vector mOrigin;
83  Vector mRotationPoint;
84  Vector mRotationAxis;
85  double mRotationAngle;
86  double mSizingMultiplier;
87 
88 }; // Class Process
89 } // namespace Kratos
90 
91 
92 #endif // KRATOS_MOVE_MODEL_PART_PROCESS_H
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
Definition: move_model_part_process.h:26
MoveModelPartProcess(MoveModelPartProcess const &rOther)=delete
Copy constructor.
MoveModelPartProcess & operator=(MoveModelPartProcess const &rOther)=delete
Assignment operator.
std::string Info() const override
Turn back information as a string.
Definition: move_model_part_process.h:55
KRATOS_CLASS_POINTER_DEFINITION(MoveModelPartProcess)
Pointer definition of Process.
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: move_model_part_process.h:67
~MoveModelPartProcess()=default
Destructor.
void operator()()
This operator is provided to call the process as a function and simply calls the Execute method.
Definition: move_model_part_process.h:47
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: move_model_part_process.h:61
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
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