Implementation of three-phase capillary pressure and relative permeability relations proposed by Parker and van Genuchten. More...
#include <ThreePhaseParkerVanGenuchten.hpp>
Public Types | |
typedef TraitsT | Traits |
typedef ParamsT | Params |
typedef Traits::Scalar | Scalar |
Public Member Functions | |
static_assert (TraitsT::numPhases==3,"The number of phases considered by this capillary pressure ""law is always three!") | |
Static Public Member Functions | |
template<class ContainerT , class FluidState > | |
static void | capillaryPressures (ContainerT &values, const Params ¶ms, const FluidState &fluidState) |
Implements the three phase capillary pressure law proposed by Parker and van Genuchten. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | pcgn (const Params ¶ms, const FluidState &fluidState) |
Capillary pressure between the gas and the non-wetting liquid (i.e., oil) phase. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | pcnw (const Params ¶ms, const FluidState &fluidState) |
Capillary pressure between the non-wetting liquid (i.e., oil) and the wetting liquid (i.e., water) phase. | |
template<class ContainerT , class FluidState > | |
static void | saturations (ContainerT &, const Params &, const FluidState &) |
The saturation-capillary pressure curve. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | Sg (const Params &, const FluidState &) |
The saturation of the gas phase. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | Sn (const Params &, const FluidState &) |
The saturation of the non-wetting (i.e., oil) phase. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | Sw (const Params &, const FluidState &) |
The saturation of the wetting (i.e., water) phase. | |
template<class ContainerT , class FluidState > | |
static void | relativePermeabilities (ContainerT &values, const Params ¶ms, const FluidState &fluidState) |
The relative permeability of all phases. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | krw (const Params ¶ms, const FluidState &fluidState) |
The relative permeability for the wetting phase of the medium implied by van Genuchten's parameterization. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | krn (const Params ¶ms, const FluidState &fluidState) |
The relative permeability for the non-wetting phase due to the model of Parker et al. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | krg (const Params ¶ms, const FluidState &fluidState) |
The relative permeability for the non-wetting phase of the medium implied by van Genuchten's parameterization. | |
Static Public Attributes | |
static const int | numPhases = 3 |
static const int | wettingPhaseIdx = Traits::wettingPhaseIdx |
static const int | nonWettingPhaseIdx = Traits::nonWettingPhaseIdx |
static const int | gasPhaseIdx = Traits::gasPhaseIdx |
static const bool | implementsTwoPhaseApi = false |
Specify whether this material law implements the two-phase convenience API. | |
static const bool | implementsTwoPhaseSatApi = false |
Specify whether this material law implements the two-phase convenience API which only depends on the phase saturations. | |
static const bool | isSaturationDependent = true |
Specify whether the quantities defined by this material law are saturation dependent. | |
static const bool | isPressureDependent = false |
Specify whether the quantities defined by this material law are dependent on the absolute pressure. | |
static const bool | isTemperatureDependent = false |
Specify whether the quantities defined by this material law are temperature dependent. | |
static const bool | isCompositionDependent = false |
Specify whether the quantities defined by this material law are dependent on the phase composition. |
Implementation of three-phase capillary pressure and relative permeability relations proposed by Parker and van Genuchten.
Reference: J.B. Kool, J.C. Parker, M.Th. van Genuchten: Parameter Estimation for Unsaturated Flow and Transport Models -- A Review; Journal of Hydrology, 91 (1987) 255-293
static void Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::capillaryPressures | ( | ContainerT & | values, | |
const Params & | params, | |||
const FluidState & | fluidState | |||
) | [inline, static] |
Implements the three phase capillary pressure law proposed by Parker and van Genuchten.
This material law is valid for three fluid phases and only depends on the saturations.
values | Container for the return values | |
params | Parameters | |
state | The fluid state |
static Evaluation Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::krg | ( | const Params & | params, | |
const FluidState & | fluidState | |||
) | [inline, static] |
The relative permeability for the non-wetting phase of the medium implied by van Genuchten's parameterization.
The permeability of gas in a three-phase system equals the standard two-phase description. (see p61. of "Comparison of the Three-Phase Oil Relative Permeability Models" M. Delshad and G. A. Pope, Transport in Porous Media 4 (1989), 59-83.)
static Evaluation Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::krn | ( | const Params & | params, | |
const FluidState & | fluidState | |||
) | [inline, static] |
The relative permeability for the non-wetting phase due to the model of Parker et al.
(1987).
See model 7 of "Comparison of the Three-Phase Oil Relative Permeability Models" M. Delshad and G. A. Pope, Transport in Porous Media 4 (1989), 59-83; or -- more comprehensively -- "Estimation of primary drainage three-phase relative permeability for organic liquid transport in the vadose zone", L. I. Oliveira, A. H. Demond, Journal of Contaminant Hydrology 66 (2003), 261-285
static Evaluation Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::krw | ( | const Params & | params, | |
const FluidState & | fluidState | |||
) | [inline, static] |
The relative permeability for the wetting phase of the medium implied by van Genuchten's parameterization.
The permeability of water in a 3p system equals the standard 2p description. (see p61. in "Comparison of the Three-Phase Oil Relative Permeability Models" MOJDEH DELSHAD and GARY A. POPE, Transport in Porous Media 4 (1989), 59-83.)
static Evaluation Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::pcgn | ( | const Params & | params, | |
const FluidState & | fluidState | |||
) | [inline, static] |
Capillary pressure between the gas and the non-wetting liquid (i.e., oil) phase.
This is defined as
static Evaluation Opm::ThreePhaseParkerVanGenuchten< TraitsT, ParamsT >::pcnw | ( | const Params & | params, | |
const FluidState & | fluidState | |||
) | [inline, static] |
Capillary pressure between the non-wetting liquid (i.e., oil) and the wetting liquid (i.e., water) phase.
This is defined as