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.
simo_exponential_thermal_hardening_rule.hpp
Go to the documentation of this file.
1 //
2 // Project Name: KratosConstitutiveModelsApplication $
3 // Created by: $Author: JMCarbonell $
4 // Last modified by: $Co-Author: $
5 // Date: $Date: April 2017 $
6 // Revision: $Revision: 0.0 $
7 //
8 //
9 
10 #if !defined(KRATOS_SIMO_EXPONENTIAL_THERMAL_HARDENING_RULE_H_INCLUDED )
11 #define KRATOS_SIMO_EXPONENTIAL_THERMAL_HARDENING_RULE_H_INCLUDED
12 
13 // System includes
14 
15 // External includes
16 
17 // Project includes
19 
20 namespace Kratos
21 {
24 
27 
31 
35 
39 
43 
45 
47  class KRATOS_API(CONSTITUTIVE_MODELS_APPLICATION) SimoExponentialThermalHardeningRule
49  {
50  public:
53 
56 
60 
63 
66 
69 
71  HardeningRule::Pointer Clone() const override;
72 
75 
79 
80 
84 
85 
90  double& CalculateDeltaThermalHardening(const PlasticDataType& rVariables, double& rDeltaThermalHardening) override;
91 
92 
96 
97 
101 
102 
106 
108  std::string Info() const override
109  {
110  std::stringstream buffer;
111  buffer << "SimoExponentialThermalHardeningRule" ;
112  return buffer.str();
113  }
114 
116  void PrintInfo(std::ostream& rOStream) const override
117  {
118  rOStream << "SimoExponentialThermalHardeningRule";
119  }
120 
122  void PrintData(std::ostream& rOStream) const override
123  {
124  rOStream << "SimoExponentialThermalHardeningRule Data";
125  }
126 
127 
131 
132 
134 
135  protected:
138 
142 
146 
150 
151  double& CalculateThermalReferenceEffect(const PlasticDataType& rVariables, double& rThermalFactor) override;
152 
153  double& CalculateThermalCurrentEffect(const PlasticDataType& rVariables, double& rThermalFactor) override;
154 
158 
159 
163 
164 
168 
169 
171 
172  private:
175 
176 
180 
184 
185 
189 
190 
194 
198  friend class Serializer;
199 
200 
201  void save(Serializer& rSerializer) const override
202  {
204  }
205 
206  void load(Serializer& rSerializer) override
207  {
209  }
210 
214 
215 
219 
220 
222 
223  }; // Class SimoExponentialThermalHardeningRule
224 
226 
229 
230 
234 
235 
237 
239 
240 } // namespace Kratos.
241 
242 #endif // KRATOS_SIMO_EXPONENTIAL_THERMAL_HARDENING_RULE_H_INCLUDED defined
243 
244 
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
Short class definition.
Definition: simo_exponential_hardening_rule.hpp:49
Short class definition.
Definition: simo_exponential_thermal_hardening_rule.hpp:49
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: simo_exponential_thermal_hardening_rule.hpp:122
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: simo_exponential_thermal_hardening_rule.hpp:116
KRATOS_CLASS_POINTER_DEFINITION(SimoExponentialThermalHardeningRule)
Pointer definition of SimoExponentialThermalHardeningRule.
std::string Info() const override
Turn back information as a string.
Definition: simo_exponential_thermal_hardening_rule.hpp:108
#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
Definition: hardening_rule.hpp:104