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.
generic_small_strain_thermal_isotropic_damage_plane_stress.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: Alejandro Cornejo
12 //
13 
14 #pragma once
15 
16 // System includes
17 
18 // External includes
19 // Project includes
21 
22 namespace Kratos
23 {
26 
30 
34 
38 
42 
50 template <class TConstLawIntegratorType>
51 class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress
52  : public GenericSmallStrainThermalIsotropicDamage<TConstLawIntegratorType>
53 {
54 public:
57 
58 
61 
63  static constexpr SizeType Dimension = BaseType::Dimension;
64 
66  static constexpr SizeType VoigtSize = BaseType::VoigtSize;
67 
70 
74 
77 
79  static constexpr double tolerance = std::numeric_limits<double>::epsilon();
80  static constexpr double threshold_tolerance = 1.0e-5;
81 
82 
86 
91  {
92  }
93 
97  ConstitutiveLaw::Pointer Clone() const override
98  {
99  return Kratos::make_shared<GenericSmallStrainThermalIsotropicDamagePlaneStress<TConstLawIntegratorType>>(*this);
100  }
101 
106  : BaseType(rOther)
107  {
108  }
109 
114  {
115  }
116 
120 
124 
129  void CalculateMaterialResponseCauchy(ConstitutiveLaw::Parameters &rValues) override;
130 
131 
136  void FinalizeMaterialResponseCauchy(ConstitutiveLaw::Parameters &rValues) override;
137 
138 
142 
146 
150 
154 
156 
157 protected:
160 
164 
168 
172 
176 
180 
184 
186 private:
189 
193 
197 
201 
205 
209 
213 
214  // Serialization
215 
216  friend class Serializer;
217 
218  void save(Serializer &rSerializer) const override
219  {
221  }
222 
223  void load(Serializer &rSerializer) override
224  {
226  }
227 
229 
230 }; // Class GenericYieldSurface
231 
232 } // namespace Kratos
This class includes several utilities necessaries for the computation of the constitutive law.
Definition: advanced_constitutive_law_utilities.h:59
This class includes several utilities necessaries for the computation of the constitutive law.
Definition: constitutive_law_utilities.h:63
std::conditional< VoigtSize==6, ElasticIsotropic3D, LinearPlaneStrain >::type BaseType
Definition of the base class.
Definition: generic_small_strain_isotropic_damage.h:70
This class derives from the Isotropic damage CL and adds thermal effects (material properties affecta...
Definition: generic_small_strain_thermal_isotropic_damage.h:58
Definition: generic_small_strain_thermal_isotropic_damage_plane_stress.h:53
GenericSmallStrainThermalIsotropicDamagePlaneStress()
Definition: generic_small_strain_thermal_isotropic_damage_plane_stress.h:90
GenericSmallStrainThermalIsotropicDamagePlaneStress(const GenericSmallStrainThermalIsotropicDamagePlaneStress &rOther)
Definition: generic_small_strain_thermal_isotropic_damage_plane_stress.h:105
KRATOS_CLASS_POINTER_DEFINITION(GenericSmallStrainThermalIsotropicDamagePlaneStress)
Counted pointer of GenericYieldSurface.
~GenericSmallStrainThermalIsotropicDamagePlaneStress() override
Definition: generic_small_strain_thermal_isotropic_damage_plane_stress.h:113
ConstitutiveLaw::Pointer Clone() const override
Definition: generic_small_strain_thermal_isotropic_damage_plane_stress.h:97
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
std::size_t SizeType
The definition of the size type.
Definition: mortar_classes.h:43
def load(f)
Definition: ode_solve.py:307
Definition: constitutive_law.h:189