Go to the documentation of this file.
20 params.addRequiredCoupledVar(
"porepressure",
21 "Variable that represents the porepressure of the single phase");
22 params.addRequiredParam<UserObjectName>(
"capillary_pressure",
23 "Name of the UserObject defining the capillary pressure");
24 params.addClassDescription(
"This Material is used for the fully saturated single-phase situation "
25 "where porepressure is the primary variable");
32 _porepressure_var(_nodal_material ? coupledDofValues(
"porepressure")
33 : coupledValue(
"porepressure")),
34 _gradp_qp_var(coupledGradient(
"porepressure")),
35 _porepressure_varnum(coupled(
"porepressure")),
36 _p_var_num(_dictator.isPorousFlowVariable(_porepressure_varnum)
37 ? _dictator.porousFlowVariableNum(_porepressure_varnum)
42 mooseError(
"The Dictator proclaims that the number of phases is ",
43 _dictator.numPhases(),
44 " whereas PorousFlow1PhaseP can only be used for 1-phase simulations. Be aware "
45 "that the Dictator has noted your mistake.");
78 (*_dgradp_qp_dgradv)[_qp][0][
_p_var_num] = 1.0;
Real dSaturation(Real pc, unsigned qp=0) const
Derivative of saturation wrt capillary pressure.
virtual void computeQpProperties() override
virtual void initQpStatefulProperties() override
const VariableGradient & _gradp_qp_var
Gradient(_porepressure at quadpoints)
Base class for capillary pressure for multiphase flow in porous media.
InputParameters validParams< PorousFlow1PhaseP >()
const unsigned int _num_phases
Number of phases.
Base class for thermophysical variable materials, which assemble materials for primary variables such...
PorousFlow1PhaseP(const InputParameters ¶meters)
MaterialProperty< std::vector< Real > > & _porepressure
Computed nodal or quadpoint values of porepressure of the phases.
registerMooseObject("PorousFlowApp", PorousFlow1PhaseP)
MaterialProperty< std::vector< std::vector< Real > > > & _dporepressure_dvar
d(porepressure)/d(PorousFlow variable)
virtual void computeQpProperties() override
const PorousFlowCapillaryPressure & _pc_uo
Capillary pressure UserObject.
const unsigned int _porepressure_varnum
Moose variable number of the porepressure.
Real d2Saturation(Real pc, unsigned qp=0) const
Second derivative of saturation wrt capillary pressure.
const VariableValue & _porepressure_var
Nodal or quadpoint value of porepressure of the fluid phase.
virtual void initQpStatefulProperties() override
MaterialProperty< std::vector< Real > > & _saturation
Computed nodal or qp saturation of the phases.
void buildQpPPSS()
Assemble std::vectors of porepressure, saturation and temperature at the quadpoints.
Real saturation(Real pc, unsigned qp=0) const
Saturation as a function of capillary pressure.
MaterialProperty< std::vector< std::vector< Real > > > & _dsaturation_dvar
d(saturation)/d(PorousFlow variable)
const unsigned int _p_var_num
The PorousFlow variable number of the porepressure.
InputParameters validParams< PorousFlowVariableBase >()
Base material designed to calculate fluid phase porepressure and saturation for the single-phase situ...