ComputeMeanThermalExpansionEigenstrainBase.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef COMPUTEMEANTHERMALEXPANSIONEIGENSTRAINBASE_H
8 #define COMPUTEMEANTHERMALEXPANSIONEIGENSTRAINBASE_H
9
11
13
14 template <>
16
29 {
30 public:
31  ComputeMeanThermalExpansionEigenstrainBase(const InputParameters & parameters);
32
33 protected:
34  /*
35  * Compute the total thermal strain relative to the stress-free temperature at the
36  * current temperature, as well as the current instantaneous thermal expansion coefficient.
37  * param thermal_strain The current total linear thermal strain (\f$\delta L / L\f$)
38  * param instantaneous_cte The current instantaneous coefficient of thermal expansion
39  * (derivative of thermal_strain wrt temperature
40  */
41  virtual void computeThermalStrain(Real & thermal_strain, Real & instantaneous_cte) override;
42
43  /*
44  * Get the reference temperature for the mean thermal expansion relationship. This is
45  * the temperature at which \f$\delta L = 0\f$.
46  */
47  virtual Real referenceTemperature() = 0;
48
49  /*
50  * Compute the mean thermal expansion coefficient relative to the reference temperature.
51  * This is the linear thermal strain divided by the temperature difference:
52  * \f$\bar{\alpha}=(\delta L / L)/(T - T_{ref})\f$.
53  * param temperature temperature at which this is evaluated
54  */
55  virtual Real meanThermalExpansionCoefficient(const Real temperature) = 0;
56
57  /*
58  * Compute the derivative of the mean thermal expansion coefficient \f$\bar{\alpha}\f$
59  * with respect to temperature, where \f$\bar{\alpha}=(\delta L / L)/(T - T_{ref})\f$.
60  * param temperature temperature at which this is evaluated
61  */
62  virtual Real meanThermalExpansionCoefficientDerivative(const Real temperature) = 0;
63 };
64
65 #endif // COMPUTEMEANTHERMALEXPANSIONEIGENSTRAINBASE_H
ComputeMeanThermalExpansionEigenstrainBase is a base class for computing the thermal expansion eigens...
const std::string temperature
Definition: NS.h:25
virtual Real meanThermalExpansionCoefficientDerivative(const Real temperature)=0
ComputeThermalExpansionEigenstrainBase is a base class for all models that compute eigenstrains due t...
virtual Real meanThermalExpansionCoefficient(const Real temperature)=0
ComputeMeanThermalExpansionEigenstrainBase(const InputParameters &parameters)
InputParameters validParams< ComputeMeanThermalExpansionEigenstrainBase >()
virtual void computeThermalStrain(Real &thermal_strain, Real &instantaneous_cte) override