22 "simm >= 0 & simm < 1",
23 "Immobile saturation. Must be between 0 and 1. Define s = " 24 "(seff - simm)/(1 - simm). Then relperm = s^n");
28 "Exponent. Must be >= 0. Define s = (seff - simm)/(1 - simm). Then relperm = s^n");
30 "zero_to_the_zero", 0.0,
"If n=0, this is the value of relative permeability for s<=simm");
31 params.
addClassDescription(
"Monomial form of relative permeability. Define s = (seff - simm)/(1 " 32 "- simm). Then relperm = s^n if s<simm, otherwise relperm=1");
38 _simm(getParam<
Real>(
"simm")),
39 _n(getParam<
Real>(
"n")),
40 _zero_to_the_zero(getParam<
Real>(
"zero_to_the_zero"))
85 return krelp / (1.0 -
_simm);
static InputParameters validParams()
static InputParameters validParams()
Base class for Richards relative permeability classes that provide relative permeability as a functio...
Real _n
exponent, must be >= 0
registerMooseObject("RichardsApp", RichardsRelPermMonomial)
Real drelperm(Real seff) const
Derivative of elative permeability wrt seff.
Real _simm
immobile saturation
Monomial form of relative permeability relperm = Seff^n for 0<Seff<=1, where S = (S - simm)/(1 - simm...
Real _zero_to_the_zero
0^0, which is used if _n=0
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MooseUnits pow(const MooseUnits &, int)
Real relperm(Real seff) const
Relative permeability.
RichardsRelPermMonomial(const InputParameters ¶meters)
Real d2relperm(Real seff) const
Second derivative of elative permeability wrt seff.