const MaterialProperty< Real > & _pc_older
Older value of capillary pressure.
Real dsecondOrderDryingPc(Real sat) const
Real d2capillaryPressureQp(Real sat) const
virtual void initQpStatefulProperties() override
const Real _s_gr_max
Residual gas saturation: 1 - _s_gr_max is the maximum saturation for which the van Genuchten expressi...
Real d2firstOrderWettingSat(Real pc) const
MaterialProperty< std::array< PorousFlowVanGenuchten::LowCapillaryPressureExtension, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _w_low_ext_tps
Nodal or quadpoint values of the low extension of the wetting curve defined by _s_gr_tps.
MaterialProperty< std::array< PorousFlowVanGenuchten::HighCapillaryPressureExtension, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _w_high_ext_tps
Nodal or quadpoint values of the high extension of the wetting curve defined by _s_gr_tps.
const Real _dpc_low_w
d(Pc)/dS on the primary wetting curve at S = _s_low_w
const PorousFlowVanGenuchten::LowCapillaryPressureExtension::ExtensionStrategy _low_ext_type
Type of low-saturation extension.
const MaterialProperty< unsigned > & _hys_order
Hysteresis order, as computed by PorousFlowHysteresisOrder.
const Real _high_ratio
The high-saturation extension to the wetting will commence at _high_ratio * (1 - _s_gr_del) ...
const PorousFlowVanGenuchten::LowCapillaryPressureExtension _low_ext_w
Parameters involved in the low-saturation extension of the primary wetting curve. ...
const Real _pc_max
Maximum capillary pressure: for Pc above this value, a "lower" extension will be used.
Parameters associated with the extension of the hysteretic wetting capillary pressure function to hig...
Real capillaryPressureQp(Real sat) const
const PorousFlowVanGenuchten::HighCapillaryPressureExtension _high_ext
Parameters involved in the high-saturation extension of the primary wetting curve.
const Real _s_lr
Liquid saturation below which the liquid relative permeability is zero.
Real d2firstOrderWettingPc(Real sat) const
const PorousFlowVanGenuchten::HighCapillaryPressureExtension::ExtensionStrategy _high_ext_type
Type of high-saturation extension of the wetting curves.
void computeTurningPointInfo(unsigned tp_num, Real tp_sat, Real tp_pc)
Compute all relevant quantities at the given turning point.
const Real _alpha_d
van Genuchten alpha parameter for the primary drying curve
Real d2secondOrderDryingSat(Real pc) const
const Real _s_high
Saturation at the point of high-saturation extension.
const Real _n_d
van Genuchten n parameter for the primary drying curve
PorousFlowHystereticCapillaryPressure(const InputParameters ¶meters)
constexpr unsigned MAX_HYSTERESIS_ORDER
const MaterialProperty< std::array< Real, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _hys_sat_tps
Saturation values at the turning points, as computed by PorousFlowHysteresisOrder.
Parameters associated with the extension of the hysteretic capillary pressure function to low saturat...
const Real _s_low_d
Saturation on the primary drying curve where low-saturation extension commences.
const Real _pc_high
Pc at the point of high-saturation extension.
virtual void computeQpProperties() override
Real dliquidSaturationQp(Real pc) const
Base class for thermophysical variable materials, which assemble materials for primary variables such...
static InputParameters validParams()
Real landSat(Real slDel) const
Real dsecondOrderDryingSat(Real pc) const
const Real _alpha_w
van Genuchten alpha parameter for the primary wetting curve
Real d2liquidSaturationQp(Real pc) const
Base material designed to calculate and store quantities relevant for hysteretic capillary pressure c...
MaterialProperty< std::array< Real, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _pc_tps
Nodal or quadpoint values of Pc at the turning points.
const Real _n_w
van Genuchten n parameter for the primary wetting curve
Real liquidSaturationQp(Real pc) const
const Real _dpc_high
d(Pc)/d(S) at the point of high-saturation extension
Real secondOrderDryingSat(Real pc) const
Real firstOrderWettingSat(Real pc) const
const Real _dpc_low_d
d(Pc)/dS on the primary drying curve at S = _s_low_d
Real secondOrderDryingPc(Real sat) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Real d2secondOrderDryingPc(Real sat) const
const PorousFlowVanGenuchten::LowCapillaryPressureExtension _low_ext_d
Parameters involved in the low-saturation extension of the primary drying curve.
const Real _s_low_w
Saturation on the primary wetting curve where low-saturation extension commences. ...
Real dfirstOrderWettingPc(Real sat) const
MaterialProperty< std::array< Real, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _s_gr_tps
Computed nodal or quadpoint values of S_gr_Del, ie, the Land expression, at the turning points...
MaterialProperty< std::array< Real, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _s_w_tps
Computed nodal or quadpoint values of liquid saturation on the wetting curve defined by _s_gr_del...
Real dfirstOrderWettingSat(Real pc) const
const Real _s_l_min
Minimum liquid saturation for which the van Genuchten expression is valid (Pc(_s_l_min) = infinity) ...
MaterialProperty< std::array< Real, PorousFlowConstants::MAX_HYSTERESIS_ORDER > > & _s_d_tps
Computed nodal or quadpoint values of saturation on the drying curve at _pc_tps.
Real firstOrderWettingPc(Real sat) const
Real dcapillaryPressureQp(Real sat) const
const MaterialProperty< unsigned > & _hys_order_old
Old value of hysteresis order, as computed by PorousFlowHysteresisOrder.