19 params.addRangeCheckedParam<Real>(
20 "biot_coefficient", 1.0,
"biot_coefficient>=0 & biot_coefficient<=1",
"Biot coefficient");
21 params.addRangeCheckedParam<Real>(
22 "fluid_bulk_modulus", 2.0E9,
"fluid_bulk_modulus>0",
"Fluid bulk modulus");
23 params.addRangeCheckedParam<Real>(
"solid_bulk_compliance",
25 "solid_bulk_compliance>=0.0",
26 "Reciprocal of the drained bulk modulus of the porous "
27 "skeleton. If strain = C * stress, then solid_bulk_compliance "
28 "= de_ij de_kl C_ijkl. If the grain bulk modulus is Kg then "
29 "1/Kg = (1 - biot_coefficient) * solid_bulk_compliance.");
30 params.addPrivateParam<std::string>(
"pf_material_type",
"biot_modulus");
31 params.addClassDescription(
"Computes the Biot Modulus, which is assumed to be constant for all "
32 "time. Sometimes 1 / BiotModulus is called storativity");
38 _biot_coefficient(getParam<Real>(
"biot_coefficient")),
39 _fluid_bulk_modulus(getParam<Real>(
"fluid_bulk_modulus")),
40 _solid_bulk_compliance(getParam<Real>(
"solid_bulk_compliance")),
41 _porosity(_nodal_material ? getMaterialProperty<Real>(
"PorousFlow_porosity_nodal")
42 : getMaterialProperty<Real>(
"PorousFlow_porosity_qp")),
43 _biot_modulus(_nodal_material ? declareProperty<Real>(
"PorousFlow_constant_biot_modulus_nodal")
44 : declareProperty<Real>(
"PorousFlow_constant_biot_modulus_qp")),
45 _biot_modulus_old(_nodal_material
46 ? getMaterialPropertyOld<Real>(
"PorousFlow_constant_biot_modulus_nodal")
47 : getMaterialPropertyOld<Real>(
"PorousFlow_constant_biot_modulus_qp"))