28 "Viscosity of oil (gas) phase. It is assumed this is " 29 "double the water-phase viscosity. (Note that this " 30 "effective saturation is mostly useful for 2-phase, not " 33 "This is porosity/permeability/beta^2, where beta may be " 34 "chosen by the user. It has dimensions [time]");
35 params.
addParam<
Real>(
"shift",
"effective saturation is a function of (Pc - shift)");
37 "Rogers-Stallybrass-Clements version of effective saturation for the water phase, valid for " 38 "residual saturations = 0, and viscosityOil = 2*viscosityWater. seff_water = 1/Sqrt(1 + " 39 "Exp((Pc - shift)/scale)), where scale = 0.25*scale_ratio*oil_viscosity. Note that this " 40 "effective saturation is mostly useful for 2-phase, not single-phase.");
46 _oil_viscosity(getParam<
Real>(
"oil_viscosity")),
47 _scale_ratio(getParam<
Real>(
"scale_ratio")),
48 _shift(getParam<
Real>(
"shift")),
49 _scale(0.25 * _scale_ratio * _oil_viscosity)
56 Real pc = -(*p[0])[qp];
63 std::vector<Real> & result)
const 65 Real pc = -(*p[0])[qp];
72 std::vector<std::vector<Real>> & result)
const 74 Real pc = -(*p[0])[qp];
registerMooseObject("RichardsApp", RichardsSeff1RSC)
static Real d2seff(Real pc, Real shift, Real scale)
2nd derivative of effective saturation wrt capillary pressure
static InputParameters validParams()
Base class for effective saturation as a function of porepressure(s) The functions seff...
static InputParameters validParams()
Rogers-Stallybrass-Clements version of effective saturation for single-phase simulations as a functio...
void d2seff(std::vector< const VariableValue *> p, unsigned int qp, std::vector< std::vector< Real >> &result) const
second derivative of effective saturation as a function of porepressure
RichardsSeff1RSC(const InputParameters ¶meters)
void dseff(std::vector< const VariableValue *> p, unsigned int qp, std::vector< Real > &result) const
derivative of effective saturation as a function of porepressure
static Real seff(Real pc, Real shift, Real scale)
effective saturation as a function of capillary pressure
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static Real dseff(Real pc, Real shift, Real scale)
derivative of effective saturation wrt capillary pressure
Real seff(std::vector< const VariableValue *> p, unsigned int qp) const
water effective saturation