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.
multiaxial_control_module_fem_dem_generalized_2d_utilities.hpp
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: Ignasi de Pouplana
11 // Guillermo Casas
12 //
13 
14 #ifndef KRATOS_MULTIAXIAL_CONTROL_MODULE_FEM_DEM_GENERALIZED_2D_UTILITIES
15 #define KRATOS_MULTIAXIAL_CONTROL_MODULE_FEM_DEM_GENERALIZED_2D_UTILITIES
16 
17 // Project includes
18 
19 // Application includes
22 
23 namespace Kratos
24 {
25 class KRATOS_API(DEM_STRUCTURES_COUPLING_APPLICATION) MultiaxialControlModuleFEMDEMGeneralized2DUtilities
27 {
28 public:
29 
31 
34 
36 
38  ModelPart& rFemModelPart,
39  Parameters& rParameters
41  rDemModelPart,
42  rFemModelPart,
43  rParameters)
44 {
45 
46 }
47 
49 
51 
52 //***************************************************************************************************************
53 //***************************************************************************************************************
54 
55 // Before FEM and DEM solution
56 void ExecuteInitialize() override;
57 
58 // Before FEM and DEM solution
59 void ExecuteInitializeSolutionStep() override;
60 
61 // After FEM and DEM solution
62 void ExecuteFinalizeSolutionStep() override;
63 
64 //***************************************************************************************************************
65 //***************************************************************************************************************
66 
70 
74 
78 
80 
81 protected:
84 
88 
92 
96 
97 Vector MeasureReactionStress(const Variable<array_1d<double,3>>& rVariable) override;
98 
102 
106 
110 
112 
113 private:
114 
117 
124 
128 
132 
136 
140 
143 
145 
146 }; // Class MultiaxialControlModuleFEMDEMGeneralized2DUtilities
147 
148 } // namespace Python.
149 
150 #endif // KRATOS_MULTIAXIAL_CONTROL_MODULE_FEM_DEM_GENERALIZED_2D_UTILITIES
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
void ExecuteFinalizeSolutionStep() override
this function will be executed at every time step AFTER performing the solve phase
Definition: periodic_interface_process.hpp:55
void ExecuteInitialize() override
Definition: periodic_interface_process.hpp:37
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
Definition: multiaxial_control_module_fem_dem_generalized_2d_utilities.hpp:27
~MultiaxialControlModuleFEMDEMGeneralized2DUtilities() override
Destructor.
Definition: multiaxial_control_module_fem_dem_generalized_2d_utilities.hpp:50
KRATOS_CLASS_POINTER_DEFINITION(MultiaxialControlModuleFEMDEMGeneralized2DUtilities)
MultiaxialControlModuleFEMDEMGeneralized2DUtilities(ModelPart &rDemModelPart, ModelPart &rFemModelPart, Parameters &rParameters)
Default constructor.
Definition: multiaxial_control_module_fem_dem_generalized_2d_utilities.hpp:37
Table< double, double > TableType
Defining a table with double argument and result type as table type.
Definition: multiaxial_control_module_fem_dem_generalized_2d_utilities.hpp:33
Definition: multiaxial_control_module_generalized_2d_utilities.hpp:54
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
Definition: table.h:435
Variable class contains all information needed to store and retrive data from a data container.
Definition: variable.h:63
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21