19 params.addClassDescription(
"Base class for models that compute eigenstrain due to mean"
20 "thermal expansion as a function of temperature");
25 const InputParameters & parameters)
32 Real & instantaneous_cte)
34 const Real small = libMesh::TOLERANCE;
39 const Real thexp_current_temp = current_alphabar * (current_temp - reference_temperature);
45 const Real alphabar_stress_free_temperature =
49 const Real thexp_stress_free_temperature =
59 (thexp_current_temp - thexp_stress_free_temperature) / (1.0 + thexp_stress_free_temperature);
62 const Real numerator = dalphabar_dT * (current_temp - reference_temperature) + current_alphabar;
63 const Real denominator =
66 if (denominator < small)
67 mooseError(
"Denominator too small in thermal strain calculation");
68 instantaneous_cte = numerator / denominator;