Go to the documentation of this file.
17 params.addCoupledVar(
"PT_shift",
19 "Whenever the sink is an explicit function of porepressure "
20 "(such as a PiecewiseLinear function) the argument of the "
21 "function is set to P - PT_shift instead of simply P. "
22 "Similarly for temperature. PT_shift does not enter into "
23 "any use_* calculations.");
29 _pp(_involves_fluid ? &getMaterialProperty<std::vector<Real>>(
"PorousFlow_porepressure_nodal")
31 _dpp_dvar(_involves_fluid ? &getMaterialProperty<std::vector<std::vector<Real>>>(
32 "dPorousFlow_porepressure_nodal_dvar")
34 _temp(!_involves_fluid ? &getMaterialProperty<Real>(
"PorousFlow_temperature_nodal") : nullptr),
35 _dtemp_dvar(!_involves_fluid
36 ? &getMaterialProperty<std::vector<Real>>(
"dPorousFlow_temperature_nodal_dvar")
38 _pt_shift(coupledDofValues(
"PT_shift"))
41 mooseError(
"PorousFlowSink: There is no porepressure Material");
43 mooseError(
"PorousFlowSink: There is no temperature Material");
PorousFlowSinkPTDefiner(const InputParameters ¶meters)
const MaterialProperty< std::vector< Real > > *const _pp
Nodal pore pressure in each phase.
virtual Real ptVar() const
Provides the variable value (either porepressure, or temperature, depending on _involves_fluid)
const VariableValue & _pt_shift
Subtract this from porepressure or temperature before evaluating PiecewiseLinearSink,...
virtual Real dptVar(unsigned pvar) const
Provides the d(variable)/(d PorousFlow Variable pvar)
const bool _involves_fluid
Whether this BC involves fluid (whether the user has supplied a fluid phase number)
const MaterialProperty< Real > *const _temp
Nodal temperature.
InputParameters validParams< PorousFlowSink >()
const MaterialProperty< std::vector< Real > > *const _dtemp_dvar
d(Nodal temperature)/d(PorousFlow variable)
const MaterialProperty< std::vector< std::vector< Real > > > *const _dpp_dvar
d(Nodal pore pressure in each phase)/d(PorousFlow variable)
const unsigned int _ph
The phase number.
InputParameters validParams< PorousFlowSinkPTDefiner >()
Applies a flux sink to a boundary.