www.mooseframework.org
Public Member Functions | Protected Attributes | List of all members
RichardsSeff2waterRSC Class Reference

Rogers-Stallybrass-Clements version of effective saturation of water phase as a function of (Pwater, Pgas), and its derivs wrt to those pressures. More...

#include <RichardsSeff2waterRSC.h>

Inheritance diagram for RichardsSeff2waterRSC:
[legend]

Public Member Functions

 RichardsSeff2waterRSC (const InputParameters &parameters)
 
Real seff (std::vector< const VariableValue * > p, unsigned int qp) const
 water effective saturation More...
 
void dseff (std::vector< const VariableValue * > p, unsigned int qp, std::vector< Real > &result) const
 derivative of effective saturation as a function of porepressure More...
 
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 More...
 
void initialize ()
 
void execute ()
 
void finalize ()
 

Protected Attributes

Real _oil_viscosity
 oil viscosity More...
 
Real _scale_ratio
 RSC scale ratio. More...
 
Real _shift
 RSC shift. More...
 
Real _scale
 RSC scale. More...
 

Detailed Description

Rogers-Stallybrass-Clements version of effective saturation of water phase as a function of (Pwater, Pgas), and its derivs wrt to those pressures.

Note that the water pressure appears first in the tuple (Pwater, Pgas). 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 29 of file RichardsSeff2waterRSC.h.

Constructor & Destructor Documentation

RichardsSeff2waterRSC::RichardsSeff2waterRSC ( const InputParameters &  parameters)

Definition at line 38 of file RichardsSeff2waterRSC.C.

39  : RichardsSeff(parameters),
40  _oil_viscosity(getParam<Real>("oil_viscosity")),
41  _scale_ratio(getParam<Real>("scale_ratio")),
42  _shift(getParam<Real>("shift")),
44 {
45 }
Real _scale_ratio
RSC scale ratio.
RichardsSeff(const InputParameters &parameters)
Definition: RichardsSeff.C:22
Real _oil_viscosity
oil viscosity

Member Function Documentation

void RichardsSeff2waterRSC::d2seff ( std::vector< const VariableValue * >  p,
unsigned int  qp,
std::vector< std::vector< Real >> &  result 
) const
virtual

second derivative of effective saturation as a function of porepressure

Parameters
pporepressure in the element. Note that (*p[0])[qp] is the porepressure at quadpoint qp
qpthe quad point to evaluate effective saturation at
resultthe derivtives will be placed in this array

Implements RichardsSeff.

Definition at line 65 of file RichardsSeff2waterRSC.C.

68 {
69  Real pc = (*p[1])[qp] - (*p[0])[qp];
70  result[1][1] = RichardsSeffRSC::d2seff(pc, _shift, _scale);
71  result[0][1] = -result[1][1];
72  result[1][0] = -result[1][1];
73  result[0][0] = result[1][1];
74 }
static Real d2seff(Real pc, Real shift, Real scale)
2nd derivative of effective saturation wrt capillary pressure
void RichardsSeff2waterRSC::dseff ( std::vector< const VariableValue * >  p,
unsigned int  qp,
std::vector< Real > &  result 
) const
virtual

derivative of effective saturation as a function of porepressure

Parameters
pporepressure in the element. Note that (*p[0])[qp] is the porepressure at quadpoint qp
qpthe quad point to evaluate effective saturation at
resultthe derivtives will be placed in this array

Implements RichardsSeff.

Definition at line 55 of file RichardsSeff2waterRSC.C.

58 {
59  Real pc = (*p[1])[qp] - (*p[0])[qp];
60  result[1] = RichardsSeffRSC::dseff(pc, _shift, _scale);
61  result[0] = -result[1];
62 }
static Real dseff(Real pc, Real shift, Real scale)
derivative of effective saturation wrt capillary pressure
void RichardsSeff::execute ( )
inherited

Definition at line 30 of file RichardsSeff.C.

31 {
32 }
void RichardsSeff::finalize ( )
inherited

Definition at line 35 of file RichardsSeff.C.

36 {
37 }
void RichardsSeff::initialize ( )
inherited

Definition at line 25 of file RichardsSeff.C.

26 {
27 }
Real RichardsSeff2waterRSC::seff ( std::vector< const VariableValue * >  p,
unsigned int  qp 
) const
virtual

water effective saturation

Parameters
pporepressures. Here (*p[0])[qp] is the water pressure at quadpoint qp, and (*p[1])[qp] is the gas porepressure
qpthe quadpoint to evaluate effective saturation at

Implements RichardsSeff.

Definition at line 48 of file RichardsSeff2waterRSC.C.

49 {
50  Real pc = (*p[1])[qp] - (*p[0])[qp];
51  return RichardsSeffRSC::seff(pc, _shift, _scale);
52 }
static Real seff(Real pc, Real shift, Real scale)
effective saturation as a function of capillary pressure

Member Data Documentation

Real RichardsSeff2waterRSC::_oil_viscosity
protected

oil viscosity

Definition at line 65 of file RichardsSeff2waterRSC.h.

Real RichardsSeff2waterRSC::_scale
protected

RSC scale.

Definition at line 74 of file RichardsSeff2waterRSC.h.

Referenced by d2seff(), dseff(), and seff().

Real RichardsSeff2waterRSC::_scale_ratio
protected

RSC scale ratio.

Definition at line 68 of file RichardsSeff2waterRSC.h.

Real RichardsSeff2waterRSC::_shift
protected

RSC shift.

Definition at line 71 of file RichardsSeff2waterRSC.h.

Referenced by d2seff(), dseff(), and seff().


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