21 params.
addClassDescription(
"Computes eigenstrain due to thermal expansion using a function that "
22 "describes the mean thermal expansion as a function of temperature");
24 "thermal_expansion_function",
25 "Function describing the mean thermal expansion as a function of temperature");
26 params.
addRequiredParam<Real>(
"thermal_expansion_function_reference_temperature",
27 "Reference temperature for thermal_exansion_function (IMPORTANT: "
28 "this is different in general from the stress_free_temperature)");
37 _thermal_expansion_function(this->getFunction(
"thermal_expansion_function")),
39 this->template getParam<Real>(
"thermal_expansion_function_reference_temperature"))
47 return _thexp_func_ref_temp;
57 return _thermal_expansion_function.value(temperature);
59 return {_thermal_expansion_function.value(temperature.value()),
60 _thermal_expansion_function.timeDerivative(temperature.value()) *
61 temperature.derivatives()};
registerMooseObject("SolidMechanicsApp", ComputeMeanThermalExpansionFunctionEigenstrain)
typename std::conditional< is_ad, ADReal, ChainedReal >::type ValueAndDerivative
Return type with a single derivative.
ComputeMeanThermalExpansionEigenstrainBase is a base class for computing the thermal expansion eigens...
static InputParameters validParams()
ComputeMeanThermalExpansionFunctionEigenstrain computes an eigenstrain for thermal expansion accordin...
virtual Real referenceTemperature() override
Get the reference temperature for the mean thermal expansion relationship.
virtual ValueAndDerivative< is_ad > meanThermalExpansionCoefficient(const ValueAndDerivative< is_ad > &temperature) override
static InputParameters validParams()