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.
real_contact_lu.h
Go to the documentation of this file.
1 // Kratos Multi-Physics - ThermalDEM Application
2 //
3 // License: BSD License
4 // Kratos default license: kratos/license.txt
5 //
6 // Main authors: Rafael Rangel (rrangel@cimne.upc.edu)
7 //
8 
9 #if !defined(REAL_CONTACT_MODEL_LU_H_INCLUDED)
10 #define REAL_CONTACT_MODEL_LU_H_INCLUDED
11 
12 // System includes
13 
14 // External includes
15 
16 // Project includes
17 #include "real_contact_model.h"
19 
20 namespace Kratos
21 {
22  class KRATOS_API(THERMAL_DEM_APPLICATION) RealContactLu : public RealContactModel
23  {
24  public:
25 
26  // Pointer definition
28 
29  // Constructor / Destructor
30  RealContactLu();
31  virtual ~RealContactLu();
32 
33  // Public methods
34  void AdjustContact(const ProcessInfo& r_process_info, ThermalSphericParticle* particle) override;
35 
36  // Clone
37  RealContactModel* CloneRaw() const override {
38  RealContactModel* cloned_model(new RealContactLu(*this));
39  return cloned_model;
40  }
41 
42  RealContactModel::Pointer CloneShared() const override {
43  RealContactModel::Pointer cloned_model(new RealContactLu(*this));
44  return cloned_model;
45  }
46 
47  // Turn back information as a string
48  virtual std::string Info() const override {
49  std::stringstream buffer;
50  buffer << "RealContactLu";
51  return buffer.str();
52  }
53 
54  // Print object information
55  virtual void PrintInfo(std::ostream& rOStream) const override { rOStream << "RealContactLu"; }
56  virtual void PrintData(std::ostream& rOStream) const override {}
57 
58  private:
59 
60  // Assignment operator / Copy constructor
61  RealContactLu& operator=(RealContactLu const& rOther) {return *this;}
62  RealContactLu(RealContactLu const& rOther) {*this = rOther;}
63 
64  }; // Class RealContactLu
65 
66  // input stream function
67  inline std::istream& operator>>(std::istream& rIStream,
68  RealContactLu& rThis) {
69  return rIStream;
70  }
71 
72  // output stream function
73  inline std::ostream& operator<<(std::ostream& rOStream,
74  const RealContactLu& rThis) {
75  rThis.PrintInfo(rOStream);
76  rOStream << std::endl;
77  rThis.PrintData(rOStream);
78  return rOStream;
79  }
80 
81 } // namespace Kratos
82 
83 #endif // REAL_CONTACT_MODEL_LU_H_INCLUDED
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
Definition: real_contact_lu.h:23
virtual void PrintData(std::ostream &rOStream) const override
Definition: real_contact_lu.h:56
KRATOS_CLASS_POINTER_DEFINITION(RealContactLu)
RealContactModel * CloneRaw() const override
Definition: real_contact_lu.h:37
virtual void PrintInfo(std::ostream &rOStream) const override
Definition: real_contact_lu.h:55
virtual std::string Info() const override
Definition: real_contact_lu.h:48
RealContactModel::Pointer CloneShared() const override
Definition: real_contact_lu.h:42
Definition: real_contact_model.h:28
Definition: thermal_spheric_particle.h:30
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::istream & operator>>(std::istream &rIStream, LinearMasterSlaveConstraint &rThis)
input stream function
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432