www.mooseframework.org
Static Public Member Functions | List of all members
RichardsSeffRSC Class Reference

Rogers-Stallybrass-Clements version of effective saturation as a function of CAPILLARY pressure. More...

#include <RichardsSeffRSC.h>

Static Public Member Functions

static Real seff (Real pc, Real shift, Real scale)
 effective saturation as a function of capillary pressure More...
 
static Real dseff (Real pc, Real shift, Real scale)
 derivative of effective saturation wrt capillary pressure More...
 
static Real d2seff (Real pc, Real shift, Real scale)
 2nd derivative of effective saturation wrt capillary pressure More...
 

Detailed Description

Rogers-Stallybrass-Clements version of effective saturation as a function of CAPILLARY pressure.

valid for residual saturations = 0, and viscosityOil = 2*viscosityWater. (the "2" is important here!). C Rogers, MP Stallybrass and DL Clements "On two phase filtration under gravity and with boundary infiltration: application of a Backlund transformation" Nonlinear Analysis Theory Methods and Applications 7 (1983) 785–799.

Definition at line 22 of file RichardsSeffRSC.h.

Member Function Documentation

◆ d2seff()

Real RichardsSeffRSC::d2seff ( Real  pc,
Real  shift,
Real  scale 
)
static

2nd derivative of effective saturation wrt capillary pressure

Parameters
pccapillary pressure
shiftRSC's shift parameter
scaleRSC's scale parameter

Definition at line 37 of file RichardsSeffRSC.C.

Referenced by RichardsSeff1RSC::d2seff(), RichardsSeff2waterRSC::d2seff(), and RichardsSeff2gasRSC::d2seff().

38 {
39  Real x = (pc - shift) / scale;
40  Real ex = std::exp(x);
41  return (0.75 * ex * ex * std::pow(1 + ex, -2.5) - 0.5 * ex * std::pow(1 + ex, -1.5)) / scale /
42  scale;
43 }
void scale(MeshBase &mesh, const Real xs, const Real ys=0., const Real zs=0.)
const std::vector< double > x
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MooseUnits pow(const MooseUnits &, int)

◆ dseff()

Real RichardsSeffRSC::dseff ( Real  pc,
Real  shift,
Real  scale 
)
static

derivative of effective saturation wrt capillary pressure

Parameters
pccapillary pressure
shiftRSC's shift parameter
scaleRSC's scale parameter

Definition at line 29 of file RichardsSeffRSC.C.

Referenced by RichardsSeff1RSC::dseff(), RichardsSeff2waterRSC::dseff(), and RichardsSeff2gasRSC::dseff().

30 {
31  Real x = (pc - shift) / scale;
32  Real ex = std::exp(x);
33  return -0.5 * ex * std::pow(1 + ex, -1.5) / scale;
34 }
void scale(MeshBase &mesh, const Real xs, const Real ys=0., const Real zs=0.)
const std::vector< double > x
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MooseUnits pow(const MooseUnits &, int)

◆ seff()

Real RichardsSeffRSC::seff ( Real  pc,
Real  shift,
Real  scale 
)
static

effective saturation as a function of capillary pressure

Parameters
pccapillary pressure
shiftRSC's shift parameter
scaleRSC's scale parameter

Definition at line 21 of file RichardsSeffRSC.C.

Referenced by RichardsSeff1RSC::seff(), RichardsSeff2waterRSC::seff(), and RichardsSeff2gasRSC::seff().

22 {
23  Real x = (pc - shift) / scale;
24  Real ex = std::exp(x);
25  return std::pow(1 + ex, -0.5);
26 }
const std::vector< double > x
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MooseUnits pow(const MooseUnits &, int)

The documentation for this class was generated from the following files: