18 params.addRequiredCoupledVar(
"c",
"Name of damage variable");
19 params.addParam<
bool>(
20 "use_current_history_variable",
false,
"Use the current value of the history variable.");
21 params.addParam<MaterialPropertyName>(
"barrier_energy",
22 "Name of material property for fracture energy barrier.");
23 params.addParam<MaterialPropertyName>(
24 "E_name",
"elastic_energy",
"Name of material property for elastic energy");
25 params.addParam<MaterialPropertyName>(
26 "D_name",
"degradation",
"Name of material property for energetic degradation function.");
27 params.addParam<MaterialPropertyName>(
29 "local_fracture_energy",
30 "Name of material property for local fracture energy function.");
36 _elasticity_tensor_name(_base_name +
"elasticity_tensor"),
37 _elasticity_tensor(getMaterialPropertyByName<
RankFourTensor>(_elasticity_tensor_name)),
38 _c(coupledValue(
"c")),
39 _l(getMaterialProperty<Real>(
"l")),
40 _gc(getMaterialProperty<Real>(
"gc_prop")),
41 _use_current_hist(getParam<bool>(
"use_current_history_variable")),
42 _H(declareProperty<Real>(
"hist")),
43 _H_old(getMaterialPropertyOld<Real>(
"hist")),
44 _barrier(getDefaultMaterialProperty<Real>(
"barrier_energy")),
45 _E(declareProperty<Real>(getParam<MaterialPropertyName>(
"E_name"))),
46 _dEdc(declarePropertyDerivative<Real>(getParam<MaterialPropertyName>(
"E_name"),
47 getVar(
"c", 0)->
name())),
48 _d2Ed2c(declarePropertyDerivative<Real>(
49 getParam<MaterialPropertyName>(
"E_name"), getVar(
"c", 0)->
name(), getVar(
"c", 0)->
name())),
51 declarePropertyDerivative<
RankTwoTensor>(_base_name +
"stress", getVar(
"c", 0)->
name())),
52 _d2Fdcdstrain(declareProperty<
RankTwoTensor>(
"d2Fdcdstrain")),
53 _D(getMaterialProperty<Real>(
"D_name")),
54 _dDdc(getMaterialPropertyDerivative<Real>(
"D_name", getVar(
"c", 0)->
name())),
55 _d2Dd2c(getMaterialPropertyDerivative<Real>(
56 "D_name", getVar(
"c", 0)->
name(), getVar(
"c", 0)->
name()))