#include <ConstitutiveModel.h>
Definition at line 22 of file ConstitutiveModel.h.
◆ ConstitutiveModel()
ConstitutiveModel::ConstitutiveModel |
( |
const InputParameters & |
parameters | ) |
|
Definition at line 39 of file ConstitutiveModel.C.
40 : Material(parameters),
44 _alpha(parameters.isParamValid(
"thermal_expansion") ? getParam<Real>(
"thermal_expansion") : 0.),
46 ? &getFunction(
"thermal_expansion_function")
51 _step_zero_cm(declareRestartableData<bool>(
"step_zero_cm", true)),
52 _step_one_cm(declareRestartableData<bool>(
"step_one_cm", true))
54 if (parameters.isParamValid(
"thermal_expansion_function_type"))
57 mooseError(
"thermal_expansion_function_type can only be set when thermal_expansion_function "
59 MooseEnum tec = getParam<MooseEnum>(
"thermal_expansion_function_type");
62 else if (tec ==
"instantaneous")
65 mooseError(
"Invalid option for thermal_expansion_function_type");
70 if (parameters.isParamValid(
"thermal_expansion_reference_temperature"))
73 mooseError(
"thermal_expansion_reference_temperature can only be set when "
74 "thermal_expansion_function is used");
76 mooseError(
"thermal_expansion_reference_temperature can only be set when "
77 "thermal_expansion_function_type = mean");
78 _ref_temp = getParam<Real>(
"thermal_expansion_reference_temperature");
81 "Cannot specify thermal_expansion_reference_temperature without coupling to temperature");
84 mooseError(
"Must specify thermal_expansion_reference_temperature if "
85 "thermal_expansion_function_type = mean");
◆ ~ConstitutiveModel()
virtual ConstitutiveModel::~ConstitutiveModel |
( |
| ) |
|
|
inlinevirtual |
◆ applyThermalStrain()
bool ConstitutiveModel::applyThermalStrain |
( |
SymmTensor & |
strain_increment, |
|
|
SymmTensor & |
d_strain_dT |
|
) |
| |
|
virtual |
Definition at line 106 of file ConstitutiveModel.C.
116 Real inc_thermal_strain;
117 Real d_thermal_strain_d_temp;
127 Real delta_t = current_temp - old_temp;
142 Real numerator = alpha_current_temp * (current_temp -
_ref_temp) -
145 if (denominator < small)
146 mooseError(
"Denominator too small in thermal strain calculation");
147 inc_thermal_strain = numerator / denominator;
148 d_thermal_strain_d_temp = alpha_current_temp * (current_temp -
_ref_temp);
152 inc_thermal_strain = delta_t * 0.5 * (alpha_current_temp + alpha_old_temp);
153 d_thermal_strain_d_temp = alpha_current_temp;
158 inc_thermal_strain = delta_t * alpha;
159 d_thermal_strain_d_temp = alpha;
162 strain_increment.
addDiag(-inc_thermal_strain);
163 d_strain_dT.
addDiag(-d_thermal_strain_d_temp);
166 bool modified =
true;
Referenced by modifyStrainIncrement().
◆ computeStress()
◆ modifyStrainIncrement()
virtual bool ConstitutiveModel::modifyStrainIncrement |
( |
const Elem & |
, |
|
|
SymmTensor & |
strain_increment, |
|
|
SymmTensor & |
d_strain_dT |
|
) |
| |
|
inlinevirtual |
◆ setQp()
void ConstitutiveModel::setQp |
( |
unsigned int |
qp | ) |
|
◆ updateElasticityTensor()
◆ _alpha
const Real ConstitutiveModel::_alpha |
|
protected |
◆ _alpha_function
const Function* ConstitutiveModel::_alpha_function |
|
protected |
◆ _has_stress_free_temp
bool ConstitutiveModel::_has_stress_free_temp |
|
protected |
◆ _has_temp
const bool ConstitutiveModel::_has_temp |
|
protected |
◆ _mean_alpha_function
bool ConstitutiveModel::_mean_alpha_function |
|
protected |
◆ _ref_temp
Real ConstitutiveModel::_ref_temp |
|
protected |
◆ _step_one_cm
bool& ConstitutiveModel::_step_one_cm |
|
protected |
◆ _step_zero_cm
bool& ConstitutiveModel::_step_zero_cm |
|
protected |
◆ _stress_free_temp
Real ConstitutiveModel::_stress_free_temp |
|
protected |
◆ _temperature
const VariableValue& ConstitutiveModel::_temperature |
|
protected |
◆ _temperature_old
const VariableValue& ConstitutiveModel::_temperature_old |
|
protected |
The documentation for this class was generated from the following files: