15 template <ComputeStage compute_stage>
20 params.addParam<FunctionName>(
21 "elasticity_tensor_prefactor",
22 "Optional function to use as a scalar prefactor on the elasticity tensor.");
23 params.addParam<std::string>(
25 "Optional parameter that allows the user to define multiple mechanics "
26 "material systems on the same block, i.e. for multiple phases");
30 template <ComputeStage compute_stage>
32 const InputParameters & parameters)
33 : ADMaterial<compute_stage>(parameters),
35 _base_name(isParamValid(
"base_name") ? getParam<std::string>(
"base_name") +
"_" :
""),
36 _elasticity_tensor_name(_base_name +
"elasticity_tensor"),
37 _elasticity_tensor(declareADProperty<
RankFourTensor>(_elasticity_tensor_name)),
38 _prefactor_function(isParamValid(
"elasticity_tensor_prefactor")
39 ? &getFunction(
"elasticity_tensor_prefactor")
44 template <ComputeStage compute_stage>
48 computeQpElasticityTensor();
51 if (_prefactor_function)
52 _elasticity_tensor[_qp] *= _prefactor_function->value(_t, _q_point[_qp]);