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.
elastic_isotropic_plane_stress_uncoupled_shear.h
Go to the documentation of this file.
1 // KRATOS ___ _ _ _ _ _ __ _
2 // / __\___ _ __ ___| |_(_) |_ _ _| |_(_)_ _____ / / __ ___ _____ /_\ _ __ _ __
3 // / / / _ \| '_ \/ __| __| | __| | | | __| \ \ / / _ \/ / / _` \ \ /\ / / __| //_\\| '_ \| '_ |
4 // / /__| (_) | | | \__ \ |_| | |_| |_| | |_| |\ V / __/ /__| (_| |\ V V /\__ \/ _ \ |_) | |_) |
5 // \____/\___/|_| |_|___/\__|_|\__|\__,_|\__|_| \_/ \___\____/\__,_| \_/\_/ |___/\_/ \_/ .__/| .__/
6 // |_| |_|
7 //
8 // License: BSD License
9 // license: structural_mechanics_application/license.txt
10 //
11 // Main authors: Philippe Bussetta
12 //
13 
14 #pragma once
15 
16 // System includes
17 
18 // External includes
19 
20 // Project includes
21 #include "custom_constitutive/linear_plane_stress.h"
22 
23 namespace Kratos
24 {
27 
31 
35 
39 
43 class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) ElasticIsotropicPlaneStressUncoupledShear : public LinearPlaneStress
59 {
60 public:
61 
64 
67  typedef std::size_t SizeType;
68 
73 
76 
81 
82  ConstitutiveLaw::Pointer Clone() const override;
83 
88 
93 
97 
101 
111  int Check(
112  const Properties& rMaterialProperties,
113  const GeometryType& rElementGeometry,
114  const ProcessInfo& rCurrentProcessInfo
115  ) const override;
116 
120 
124 
128 
132 
134 
135 protected:
136 
139 
143 
147 
151 
158  void CalculateElasticMatrix(Matrix& C, ConstitutiveLaw::Parameters& rValues) override;
159 
166  void CalculatePK2Stress(
167  const Vector& rStrainVector,
168  Vector& rStressVector,
170  ) override;
171 
173 
174 private:
175 
178 
182 
186 
191 
196 
200  friend class Serializer;
201 
202  void save(Serializer& rSerializer) const override
203  {
205  }
206 
207  void load(Serializer& rSerializer) override
208  {
210  }
212 
213 }; // Class ElasticIsotropicPlaneStressUncoupledShear
214 } // namespace Kratos.
Defines a elastic constitutive law in 2D under plane stress in addition the shear modulus is independ...
Definition: elastic_isotropic_plane_stress_uncoupled_shear.h:59
std::size_t SizeType
Definition: elastic_isotropic_plane_stress_uncoupled_shear.h:67
KRATOS_CLASS_POINTER_DEFINITION(ElasticIsotropicPlaneStressUncoupledShear)
LinearPlaneStress BaseType
Definition: elastic_isotropic_plane_stress_uncoupled_shear.h:66
ProcessInfo ProcessInfoType
Definition: elastic_isotropic_plane_stress_uncoupled_shear.h:65
Geometry base class.
Definition: geometry.h:71
This class defines a small deformation linear elastic constitutive model for plane stress cases.
Definition: linear_plane_stress.h:50
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
int C
Definition: generate_hyper_elastic_simo_taylor_neo_hookean.py:27
def load(f)
Definition: ode_solve.py:307
Definition: constitutive_law.h:189