21 "Variable that represents the porepressure of the single phase");
22 params.
addClassDescription(
"This Material is used for the fully saturated single-phase situation "
23 "where porepressure is the primary variable");
32 _porepressure_var(_nodal_material ? this->template coupledGenericDofValue<is_ad>(
"porepressure")
33 : this->template coupledGenericValue<is_ad>(
"porepressure")),
34 _gradp_qp_var(this->template coupledGenericGradient<is_ad>(
"porepressure")),
35 _porepressure_varnum(coupled(
"porepressure")),
36 _p_var_num(_dictator.isPorousFlowVariable(_porepressure_varnum)
37 ? _dictator.porousFlowVariableNum(_porepressure_varnum)
42 if (this->_nodal_material)
43 this->checkNodalVariables({
"porepressure"});
45 mooseError(
"The Dictator proclaims that the number of phases is ",
46 _dictator.numPhases(),
47 " whereas PorousFlow1PhaseFullySaturated can only be used for 1-phase simulations."
48 " Be aware that the Dictator has noted your mistake.");
69 (*_gradp_qp)[_qp][0] = _gradp_qp_var[_qp];
72 if (!is_ad && _dictator.isPorousFlowVariable(_porepressure_varnum))
75 (*_dporepressure_dvar)[_qp][0][_p_var_num] = 1.0;
77 (*_dgradp_qp_dgradv)[_qp][0][_p_var_num] = 1.0;
85 _porepressure[_qp][0] = _porepressure_var[_qp];
86 _saturation[_qp][0] = 1.0;
void mooseError(Args &&... args)
registerMooseObject("PorousFlowApp", PorousFlow1PhaseFullySaturated)
Material designed to calculate fluid phase porepressure and saturation for the single-phase situation...
virtual void computeQpProperties() override
virtual void initQpStatefulProperties() override
void buildQpPPSS()
Assemble std::vectors of porepressure, saturation and temperature at the quadpoints.
PorousFlow1PhaseFullySaturatedTempl(const InputParameters ¶meters)
static InputParameters validParams()
Base class for thermophysical variable materials, which assemble materials for primary variables such...
virtual void computeQpProperties() override
const unsigned int _num_phases
Number of phases.
static InputParameters validParams()
virtual void initQpStatefulProperties() override