23 "Low saturation. This must be < Ss, and non-negative. This is BW's "
24 "initial effective saturation, below which effective saturation never goes "
25 "in their simulations/models. If Kn=0 then Sn is the immobile saturation. "
26 "This form of effective saturation is only correct for Kn small.");
31 "High saturation. This must be > Sn and <= 1. Effective saturation "
32 "where porepressure = 0. Effective saturation never exceeds this "
33 "value in BW's simulations/models.");
35 "Kn",
"Kn >= 0",
"Low relative permeability. This must be < Ks, and non-negative.");
37 "Ks",
"Ks <= 1",
"High relative permeability. This must be > Kn and less than unity");
39 "C",
"C > 1",
"BW's C parameter. Must be > 1. Typical value would be 1.05.");
48 _sn(this->template getParam<Real>(
"Sn")),
49 _ss(this->template getParam<Real>(
"Ss")),
50 _kn(this->template getParam<Real>(
"Kn")),
51 _ks(this->template getParam<Real>(
"Ks")),
52 _c(this->template getParam<Real>(
"C"))
55 mooseError(
"In BW relative permeability Sn set to ",
59 " but these must obey Ss > Sn");
61 mooseError(
"In BW relative permeability Kn set to ",
65 " but these must obey Ks > Kn");
void mooseError(Args &&... args)
Moose::GenericType< Real, is_ad > GenericReal
registerMooseObject("PorousFlowApp", PorousFlowRelativePermeabilityBW)
Material that calculates the Broadbridge-White relative permeability P Broadbridge,...
const Real _kn
BW's low relative permeability.
const Real _ss
BW's high saturation.
PorousFlowRelativePermeabilityBWTempl(const InputParameters ¶meters)
virtual Real dRelativePermeability(Real seff) const override
Derivative of relative permeability with respect to effective saturation.
const Real _ks
BW's high relative permeability.
const Real _sn
BW's low saturation.
virtual GenericReal< is_ad > relativePermeability(GenericReal< is_ad > seff) const override
Relative permeability equation (must be overriden in derived class)
static InputParameters validParams()
Base class for PorousFlow relative permeability materials.
static InputParameters validParams()
Real dRelativePermeability(Real s, Real c, Real sn, Real ss, Real kn, Real ks)
Derivative of relative permeability with respect to saturation.
T relativePermeability(const T &s, Real c, Real sn, Real ss, Real kn, Real ks)
Relative permeability as a function of saturation.