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.
dem_structures_coupling_application.h
Go to the documentation of this file.
1 /*
2  * Author: Miguel Angel Celigueta
3  *
4  * maceli@cimne.upc.edu
5  */
6 
7 #if !defined (KRATOS_DEM_STRUCTURES_COUPLING_APPLICATION_H_INCLUDED)
8 #define KRATOS_DEM_STRUCTURES_COUPLING_APPLICATION_H_INCLUDED
9 
10 // System includes
11 #include <string>
12 #include <iostream>
13 
14 // External includes
15 #include "includes/define.h"
17 #include "includes/variables.h"
18 
19 /* CONDITIONS */
22 
23 namespace Kratos {
24 
25  class KRATOS_API(DEM_STRUCTURES_COUPLING_APPLICATION) KratosDemStructuresCouplingApplication : public KratosApplication {
26 
27  public:
28 
32 
35 
38 
39  virtual void Register() override;
40 
42  virtual std::string Info() const override {
43  return "KratosDemStructuresCouplingApplication";
44  }
45 
47  virtual void PrintInfo(std::ostream& rOStream) const override {
48  rOStream << Info();
49  PrintData(rOStream);
50  }
51 
53  virtual void PrintData(std::ostream& rOStream) const override {
54  rOStream << "Variables:" << std::endl;
56  rOStream << std::endl;
57  rOStream << "Elements:" << std::endl;
58  KratosComponents<Element>().PrintData(rOStream);
59  rOStream << std::endl;
60  rOStream << "Conditions:" << std::endl;
61  KratosComponents<Condition>().PrintData(rOStream);
62  }
63 
64  protected:
65 
66  private:
67 
68  // Line load from DEM
69  const LineLoadFromDEMCondition2D<2> mLineLoadFromDEMCondition2D2N;
70 
71  // Surface load from DEM
72  const SurfaceLoadFromDEMCondition3D mSurfaceLoadFromDEMCondition3D3N;
73 
75 
78 
79  }; // Class KratosDemStructuresCouplingApplication
80 
81 } // namespace Kratos
82 
83 #endif //KRATOS_DEM_STRUCTURES_COUPLING_APPLICATION_H_INCLUDED defined
84 
85 
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
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
Definition: dem_structures_coupling_application.h:25
virtual void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: dem_structures_coupling_application.h:53
KRATOS_CLASS_POINTER_DEFINITION(KratosDemStructuresCouplingApplication)
virtual ~KratosDemStructuresCouplingApplication()
Destructor.
Definition: dem_structures_coupling_application.h:37
virtual std::string Info() const override
Turn back information as a string.
Definition: dem_structures_coupling_application.h:42
virtual void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: dem_structures_coupling_application.h:47
Definition: surface_load_from_DEM_condition_3d.h:50
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