Go to the documentation of this file.
19 params.set<std::string>(
"pf_material_type") =
"effective_pressure";
20 params.addClassDescription(
"This Material calculates an effective fluid pressure: "
21 "effective_stress = total_stress + "
22 "biot_coeff*effective_fluid_pressure. The effective_fluid_pressure = "
23 "sum_{phases}(S_phase * P_phase)");
28 const InputParameters & parameters)
30 _porepressure(_nodal_material
31 ? getMaterialProperty<std::vector<Real>>(
"PorousFlow_porepressure_nodal")
32 : getMaterialProperty<std::vector<Real>>(
"PorousFlow_porepressure_qp")),
33 _dporepressure_dvar(_nodal_material ? getMaterialProperty<std::vector<std::vector<Real>>>(
34 "dPorousFlow_porepressure_nodal_dvar")
35 : getMaterialProperty<std::vector<std::vector<Real>>>(
36 "dPorousFlow_porepressure_qp_dvar")),
37 _saturation(_nodal_material
38 ? getMaterialProperty<std::vector<Real>>(
"PorousFlow_saturation_nodal")
39 : getMaterialProperty<std::vector<Real>>(
"PorousFlow_saturation_qp")),
40 _dsaturation_dvar(_nodal_material ? getMaterialProperty<std::vector<std::vector<Real>>>(
41 "dPorousFlow_saturation_nodal_dvar")
42 : getMaterialProperty<std::vector<std::vector<Real>>>(
43 "dPorousFlow_saturation_qp_dvar")),
44 _pf(_nodal_material ? declareProperty<Real>(
"PorousFlow_effective_fluid_pressure_nodal")
45 : declareProperty<Real>(
"PorousFlow_effective_fluid_pressure_qp")),
48 ? declareProperty<std::vector<Real>>(
"dPorousFlow_effective_fluid_pressure_nodal_dvar")
49 : declareProperty<std::vector<Real>>(
"dPorousFlow_effective_fluid_pressure_qp_dvar"))
69 for (
unsigned v = 0; v <
_num_var; ++v)
Base class for all PorousFlow vector materials.
Material designed to calculate the effective fluid pressure that can be used in the mechanical effect...
InputParameters validParams< PorousFlowMaterialVectorBase >()
const MaterialProperty< std::vector< std::vector< Real > > > & _dporepressure_dvar
d(porepressure)/d(PorousFlow variable)
virtual void computeQpProperties() override
const MaterialProperty< std::vector< Real > > & _porepressure
Quadpoint or nodal porepressure of each phase.
InputParameters validParams< PorousFlowEffectiveFluidPressure >()
MaterialProperty< std::vector< Real > > & _dpf_dvar
d(_pf)/d(PorousFlow variable)
virtual void initQpStatefulProperties() override
const MaterialProperty< std::vector< Real > > & _saturation
Quadpoint or nodal saturation of each phase.
PorousFlowEffectiveFluidPressure(const InputParameters ¶meters)
const unsigned int _num_var
Number of PorousFlow variables.
const unsigned int _num_phases
Number of phases.
MaterialProperty< Real > & _pf
Computed effective fluid pressure (at quadpoints or nodes)
const MaterialProperty< std::vector< std::vector< Real > > > & _dsaturation_dvar
d(saturation)/d(PorousFlow variable)
registerMooseObject("PorousFlowApp", PorousFlowEffectiveFluidPressure)