www.mooseframework.org
PorousFlowCapillaryPressureRSC.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef POROUSFLOWCAPILLARYPRESSURERSC_H
9 #define POROUSFLOWCAPILLARYPRESSURERSC_H
10 
12 
14 
15 template <>
17 
22 {
23 public:
24  PorousFlowCapillaryPressureRSC(const InputParameters & parameters);
25 
26  virtual Real capillaryPressureCurve(Real saturation) const override;
27  virtual Real dCapillaryPressureCurve(Real saturation) const override;
28  virtual Real d2CapillaryPressureCurve(Real saturation) const override;
29 
30  virtual Real effectiveSaturation(Real pc) const override;
31  virtual Real dEffectiveSaturation(Real pc) const override;
32  virtual Real d2EffectiveSaturation(Real pc) const override;
33 
34 protected:
36  const Real _oil_viscosity;
38  const Real _scale_ratio;
40  const Real _shift;
42  const Real _scale;
43 };
44 
45 #endif // POROUSFLOWCAPILLARYPRESSURERSC_H
const Real _oil_viscosity
Oil viscosity (which must be twice the water viscocity in this formulation)
InputParameters validParams< PorousFlowCapillaryPressureRSC >()
virtual Real d2EffectiveSaturation(Real pc) const override
Second derivative of effective saturation wrt capillary pressure.
const Real _shift
Shift. seff_water = 1/Sqrt(1 + Exp((Pc - shift)/scale)), where scale = 0.25 * scale_ratio * oil_visco...
Base class for capillary pressure for multiphase flow in porous media.
virtual Real dEffectiveSaturation(Real pc) const override
Derivative of effective saturation wrt capillary pressure.
virtual Real effectiveSaturation(Real pc) const override
Effective saturation as a function of capillary pressure.
PorousFlowCapillaryPressureRSC(const InputParameters &parameters)
virtual Real capillaryPressureCurve(Real saturation) const override
Raw capillary pressure curve (does not include logarithmic extension)
virtual Real d2CapillaryPressureCurve(Real saturation) const override
Second derivative of raw capillary pressure wrt true saturation.
void FORTRAN_CALL() saturation(double &P, double &T, int &N, int &nerr)
const Real _scale_ratio
Scale ratio: porosity/permeability/beta^2, where beta is chosen by the user.
virtual Real dCapillaryPressureCurve(Real saturation) const override
Derivative of raw capillary pressure wrt true saturation.
const Real _scale
Scale = 0.25 * scale_ratio * oil_viscosity.
Rogers-Stallybrass-Clements form of capillary pressure.