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.
hencky_borja_cam_clay_plane_strain_2D_law.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: Bodhinanda Chandra
11 //
12 
13 
14 #if !defined (KRATOS_HENCKY_BORJA_CAM_CLAY_PLASTIC_PLANE_STRAIN_2D_LAW_H_INCLUDED)
15 #define KRATOS_HENCKY_BORJA_CAM_CLAY_PLASTIC_PLANE_STRAIN_2D_LAW_H_INCLUDED
16 
17 // System includes
18 
19 // External includes
20 
21 // Project includes
26 
27 
28 namespace Kratos
29 {
42 class KRATOS_API(PARTICLE_MECHANICS_APPLICATION) HenckyBorjaCamClayPlasticPlaneStrain2DLaw
44 
45 {
46 public:
52  typedef std::size_t SizeType;
53 
54  typedef ParticleFlowRule::Pointer MPMFlowRulePointer;
55  typedef ParticleYieldCriterion::Pointer YieldCriterionPointer;
56  typedef ParticleHardeningLaw::Pointer HardeningLawPointer;
57  typedef Properties::Pointer PropertiesPointer;
58 
64 
73 
74 
76 
81 
82 
87  //HyperElasticPlasticJ2PlaneStrain2DLaw& operator=(const HyperElasticPlasticJ2PlaneStrain2DLaw& rOther);
88 
93  ConstitutiveLaw::Pointer Clone() const override;
94 
99 
118  int Check(const Properties& rProperties, const GeometryType& rGeometry, const ProcessInfo& rCurrentProcessInfo) const override;
119 
120 
121 
128  //virtual String Info() const;
132  //virtual void PrintInfo(std::ostream& rOStream) const;
136  //virtual void PrintData(std::ostream& rOStream) const;
137 
138 protected:
139 
145 
152 
154 
155 private:
156 
159 
160 
164 
165 
169 
170 
174 
175 
180 
181 
185  friend class Serializer;
186 
187  void save(Serializer& rSerializer) const override
188  {
190  }
191 
192  void load(Serializer& rSerializer) override
193  {
195  }
196 
197 
198 
199 }; // Class HyperElasticPlasticMohrCoulombPlaneStrain2DLaw
200 } // namespace Kratos.
201 #endif // KRATOS_HENCKY_BORJA_CAM_CLAY_PLASTIC_PLANE_STRAIN_2D_LAW_H_INCLUDED defined
Definition: constitutive_law.h:47
Geometry base class.
Definition: geometry.h:71
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:45
ParticleFlowRule::Pointer MPMFlowRulePointer
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:54
ParticleHardeningLaw::Pointer HardeningLawPointer
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:56
std::size_t SizeType
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:52
KRATOS_CLASS_POINTER_DEFINITION(HenckyBorjaCamClayPlasticPlaneStrain2DLaw)
Properties::Pointer PropertiesPointer
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:57
ConstitutiveLaw BaseType
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:51
ParticleYieldCriterion::Pointer YieldCriterionPointer
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:55
ProcessInfo ProcessInfoType
Definition: hencky_borja_cam_clay_plane_strain_2D_law.hpp:50
Definition: hencky_plastic_plane_strain_2D_law.hpp:36
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307