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.
borja_hencky_cam_clay_3D_law.hpp
Go to the documentation of this file.
1 //
2 // Project Name: KratosPfemSolidMechanicsApplication $
3 // Created by: $Author: LMonforte $
4 // Last modified by: $Co-Author: $
5 // Date: $Date: July 2015 $
6 // Revision: $Revision: 0.0 $
7 //
8 //
9 
10 #if !defined (KRATOS_BORJA_HENCKY_CAM_CLAY_PLASTIC_3D_LAW_H_INCLUDED)
11 #define KRATOS_BORJA_HENCKY_CAM_CLAY_PLASTIC_3D_LAW_H_INCLUDED
12 
13 // System includes
14 
15 // External includes
16 
17 // Project includes
22 
23 namespace Kratos
24 {
35 class KRATOS_API(PFEM_SOLID_MECHANICS_APPLICATION) BorjaHenckyCamClayPlastic3DLaw
37 
38 {
39 public:
45  typedef std::size_t SizeType;
46 
47  typedef FlowRule::Pointer FlowRulePointer;
48  typedef YieldCriterion::Pointer YieldCriterionPointer;
49  typedef HardeningLaw::Pointer HardeningLawPointer;
50  typedef Properties::Pointer PropertiesPointer;
51 
57 
66 
67 
69 
74 
75 
80  ConstitutiveLaw::Pointer Clone() const override;
81 
86 
91  double& GetValue( const Variable<double>& rThisVariable, double& rValue ) override;
92 
93  void SetValue( const Variable<double>& rThisVariable, const double& rValue, const ProcessInfo& rCurrentProcessInfo ) override;
94 
95  void SetValue( const Variable<Vector>& rThisVarialbe, const Vector& rValue, const ProcessInfo& rCurrentProcessInfo ) override;
96 
97  int Check( const Properties& rMaterialProperties, const GeometryType& rElementGeometry, const ProcessInfo& rCurrentProcessInfo) override;
112  //int Check(const Properties& rProperties, const GeometryType& rGeometry, const ProcessInfo& rCurrentProcessInfo);
113 
114 
115 
122  //String Info() const override;
126  //void PrintInfo(std::ostream& rOStream) const override;
130  //void PrintData(std::ostream& rOStream) const override;
131 
132 protected:
133 
139 
143 
147 
149 
150 private:
151 
154 
155 
159 
160 
164 
165 
169 
170 
175 
176 
180  friend class Serializer;
181 
182  void save(Serializer& rSerializer) const override
183  {
185  }
186 
187  void load(Serializer& rSerializer) override
188  {
190  }
191 
192 
193 
194 }; // Class BorjaHenckyCamClayPlastic3DLaw
195 } // namespace Kratos.
196 #endif // KRATOS_BORJA_HENCKY_CAM_CLAY_PLASTIC_3D_LAW_H_INCLUDED
Definition: borja_hencky_cam_clay_3D_law.hpp:38
YieldCriterion::Pointer YieldCriterionPointer
Definition: borja_hencky_cam_clay_3D_law.hpp:48
ProcessInfo ProcessInfoType
Definition: borja_hencky_cam_clay_3D_law.hpp:43
std::size_t SizeType
Definition: borja_hencky_cam_clay_3D_law.hpp:45
Properties::Pointer PropertiesPointer
Definition: borja_hencky_cam_clay_3D_law.hpp:50
KRATOS_CLASS_POINTER_DEFINITION(BorjaHenckyCamClayPlastic3DLaw)
FlowRule::Pointer FlowRulePointer
Definition: borja_hencky_cam_clay_3D_law.hpp:47
HardeningLaw::Pointer HardeningLawPointer
Definition: borja_hencky_cam_clay_3D_law.hpp:49
ConstitutiveLaw BaseType
Definition: borja_hencky_cam_clay_3D_law.hpp:44
Definition: constitutive_law.h:47
Geometry base class.
Definition: geometry.h:71
Definition: non_linear_hencky_plastic_3D_law.hpp:32
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
Parameters GetValue(Parameters &rParameters, const std::string &rEntry)
Definition: add_kratos_parameters_to_python.cpp:53
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def SetValue(entity, variable, value)
Definition: coupling_interface_data.py:256
def load(f)
Definition: ode_solve.py:307