Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT > Class Template Reference

Implements a multiplexer class that provides all three phase capillary pressure laws used by the ECLipse simulator. More...

#include <EclMultiplexerMaterial.hpp>

Inheritance diagram for Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >:
Inheritance graph

Public Types

using GasOilMaterialLaw = GasOilMaterialLawT
 
using OilWaterMaterialLaw = OilWaterMaterialLawT
 
using GasWaterMaterialLaw = GasWaterMaterialLawT
 
using Stone1Material = EclStone1Material< TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw >
 
using Stone2Material = EclStone2Material< TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw >
 
using DefaultMaterial = EclDefaultMaterial< TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw >
 
using TwoPhaseMaterial = EclTwoPhaseMaterial< TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw, GasWaterMaterialLaw >
 
using Traits = TraitsT
 
using Params = ParamsT
 
using Scalar = typename Traits::Scalar
 

Static Public Member Functions

template<class ContainerT , class FluidState >
static void capillaryPressures (ContainerT &values, const Params &params, const FluidState &fluidState)
 Implements the multiplexer three phase capillary pressure law used by the ECLipse simulator. More...
 
static void oilWaterHysteresisParams (Scalar &pcSwMdc, Scalar &krnSwMdc, const Params &params)
 
static void setOilWaterHysteresisParams (const Scalar &pcSwMdc, const Scalar &krnSwMdc, Params &params)
 
static void gasOilHysteresisParams (Scalar &pcSwMdc, Scalar &krnSwMdc, const Params &params)
 
static void setGasOilHysteresisParams (const Scalar &pcSwMdc, const Scalar &krnSwMdc, Params &params)
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation pcgn (const Params &, const FluidState &)
 Capillary pressure between the gas and the non-wetting liquid (i.e., oil) phase. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation pcnw (const Params &, const FluidState &)
 Capillary pressure between the non-wetting liquid (i.e., oil) and the wetting liquid (i.e., water) phase. More...
 
template<class ContainerT , class FluidState >
static void saturations (ContainerT &, const Params &, const FluidState &)
 The inverse of the capillary pressure. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Sg (const Params &, const FluidState &)
 The saturation of the gas phase. More...
 
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. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Sw (const Params &, const FluidState &)
 The saturation of the wetting (i.e., water) phase. More...
 
template<class ContainerT , class FluidState >
static void relativePermeabilities (ContainerT &values, const Params &params, const FluidState &fluidState)
 The relative permeability of all phases. More...
 
template<class Evaluation , class FluidState >
static Evaluation relpermOilInOilGasSystem (const Params &params, const FluidState &fluidState)
 The relative permeability of oil in oil/gas system. More...
 
template<class Evaluation , class FluidState >
static Evaluation relpermOilInOilWaterSystem (const Params &params, const FluidState &fluidState)
 The relative permeability of oil in oil/water system. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation krg (const Params &, const FluidState &)
 The relative permeability of the gas phase. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation krw (const Params &, const FluidState &)
 The relative permeability of the wetting phase. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation krn (const Params &, const FluidState &)
 The relative permeability of the non-wetting (i.e., oil) phase. More...
 
template<class FluidState >
static void updateHysteresis (Params &params, const FluidState &fluidState)
 Update the hysteresis parameters after a time step. More...
 

Static Public Attributes

static constexpr int numPhases = 3
 
static constexpr int waterPhaseIdx = Traits::wettingPhaseIdx
 
static constexpr int oilPhaseIdx = Traits::nonWettingPhaseIdx
 
static constexpr int gasPhaseIdx = Traits::gasPhaseIdx
 
static constexpr bool implementsTwoPhaseApi = false
 
static constexpr bool implementsTwoPhaseSatApi = false
 
static constexpr bool isSaturationDependent = true
 
static constexpr bool isPressureDependent = false
 
static constexpr bool isTemperatureDependent = false
 
static constexpr bool isCompositionDependent = false
 

Detailed Description

template<class TraitsT, class GasOilMaterialLawT, class OilWaterMaterialLawT, class GasWaterMaterialLawT, class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
class Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >

Implements a multiplexer class that provides all three phase capillary pressure laws used by the ECLipse simulator.

Member Typedef Documentation

◆ DefaultMaterial

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::DefaultMaterial = EclDefaultMaterial<TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw>

◆ GasOilMaterialLaw

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::GasOilMaterialLaw = GasOilMaterialLawT

◆ GasWaterMaterialLaw

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::GasWaterMaterialLaw = GasWaterMaterialLawT

◆ OilWaterMaterialLaw

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::OilWaterMaterialLaw = OilWaterMaterialLawT

◆ Params

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Params = ParamsT

◆ Scalar

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Scalar = typename Traits::Scalar

◆ Stone1Material

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Stone1Material = EclStone1Material<TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw>

◆ Stone2Material

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Stone2Material = EclStone2Material<TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw>

◆ Traits

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Traits = TraitsT

◆ TwoPhaseMaterial

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
using Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::TwoPhaseMaterial = EclTwoPhaseMaterial<TraitsT, GasOilMaterialLaw, OilWaterMaterialLaw, GasWaterMaterialLaw>

Member Function Documentation

◆ capillaryPressures()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class ContainerT , class FluidState >
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::capillaryPressures ( ContainerT &  values,
const Params params,
const FluidState &  fluidState 
)
inlinestatic

Implements the multiplexer three phase capillary pressure law used by the ECLipse simulator.

This material law is valid for three fluid phases and only depends on the saturations.

The required two-phase relations are supplied by means of template arguments and can be an arbitrary other material laws.

Parameters
valuesContainer for the return values
paramsParameters
stateThe fluid state

References Opm::EclTwoPhaseMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::capillaryPressures(), Opm::EclDefaultMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::capillaryPressures(), Opm::EclStone1Material< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::capillaryPressures(), Opm::EclStone2Material< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::capillaryPressures(), Opm::EclDefaultApproach, Opm::EclOnePhaseApproach, Opm::EclStone1Approach, Opm::EclStone2Approach, and Opm::EclTwoPhaseApproach.

Referenced by Opm::EclMaterialLawManager< TraitsT >::applySwatinit().

◆ gasOilHysteresisParams()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::gasOilHysteresisParams ( Scalar pcSwMdc,
Scalar krnSwMdc,
const Params params 
)
inlinestatic

◆ krg()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::krg ( const Params ,
const FluidState &   
)
inlinestatic

The relative permeability of the gas phase.

◆ krn()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::krn ( const Params ,
const FluidState &   
)
inlinestatic

The relative permeability of the non-wetting (i.e., oil) phase.

◆ krw()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::krw ( const Params ,
const FluidState &   
)
inlinestatic

The relative permeability of the wetting phase.

◆ oilWaterHysteresisParams()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::oilWaterHysteresisParams ( Scalar pcSwMdc,
Scalar krnSwMdc,
const Params params 
)
inlinestatic

◆ pcgn()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::pcgn ( const Params ,
const FluidState &   
)
inlinestatic

Capillary pressure between the gas and the non-wetting liquid (i.e., oil) phase.

This is defined as

\[
p_{c,gn} = p_g - p_n
\]

◆ pcnw()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::pcnw ( const Params ,
const FluidState &   
)
inlinestatic

Capillary pressure between the non-wetting liquid (i.e., oil) and the wetting liquid (i.e., water) phase.

This is defined as

\[
p_{c,nw} = p_n - p_w
\]

◆ relativePermeabilities()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class ContainerT , class FluidState >
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::relativePermeabilities ( ContainerT &  values,
const Params params,
const FluidState &  fluidState 
)
inlinestatic

The relative permeability of all phases.

The relative permeability of the water phase it uses the same value as the relative permeability for water in the water-oil law with $S_o = 1 - S_w$. The gas relative permebility is taken from the gas-oil material law, but with $S_o = 1 -
S_g$. The relative permeability of the oil phase is calculated using the relative permeabilities of the oil phase in the two two-phase systems.

A more detailed description can be found in the "Three phase oil relative permeability models" section of the ECLipse technical description.

References Opm::EclDefaultApproach, Opm::EclOnePhaseApproach, Opm::EclStone1Approach, Opm::EclStone2Approach, Opm::EclTwoPhaseApproach, Opm::EclDefaultMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::relativePermeabilities(), Opm::EclStone1Material< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::relativePermeabilities(), Opm::EclStone2Material< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, ParamsT >::relativePermeabilities(), and Opm::EclTwoPhaseMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::relativePermeabilities().

◆ relpermOilInOilGasSystem()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class Evaluation , class FluidState >
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::relpermOilInOilGasSystem ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

The relative permeability of oil in oil/gas system.

References Opm::EclDefaultApproach, Opm::EclStone1Approach, and Opm::EclStone2Approach.

◆ relpermOilInOilWaterSystem()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class Evaluation , class FluidState >
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::relpermOilInOilWaterSystem ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

The relative permeability of oil in oil/water system.

References Opm::EclDefaultApproach, Opm::EclStone1Approach, and Opm::EclStone2Approach.

◆ saturations()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class ContainerT , class FluidState >
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::saturations ( ContainerT &  ,
const Params ,
const FluidState &   
)
inlinestatic

The inverse of the capillary pressure.

◆ setGasOilHysteresisParams()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::setGasOilHysteresisParams ( const Scalar pcSwMdc,
const Scalar krnSwMdc,
Params params 
)
inlinestatic

◆ setOilWaterHysteresisParams()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::setOilWaterHysteresisParams ( const Scalar pcSwMdc,
const Scalar krnSwMdc,
Params params 
)
inlinestatic

◆ Sg()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Sg ( const Params ,
const FluidState &   
)
inlinestatic

The saturation of the gas phase.

◆ Sn()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Sn ( const Params ,
const FluidState &   
)
inlinestatic

The saturation of the non-wetting (i.e., oil) phase.

◆ Sw()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::Sw ( const Params ,
const FluidState &   
)
inlinestatic

The saturation of the wetting (i.e., water) phase.

◆ updateHysteresis()

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
template<class FluidState >
static void Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::updateHysteresis ( Params params,
const FluidState &  fluidState 
)
inlinestatic

Member Data Documentation

◆ gasPhaseIdx

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr int Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::gasPhaseIdx = Traits::gasPhaseIdx
staticconstexpr

◆ implementsTwoPhaseApi

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::implementsTwoPhaseApi = false
staticconstexpr

Specify whether this material law implements the two-phase convenience API

◆ implementsTwoPhaseSatApi

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::implementsTwoPhaseSatApi = false
staticconstexpr

Specify whether this material law implements the two-phase convenience API which only depends on the phase saturations

◆ isCompositionDependent

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::isCompositionDependent = false
staticconstexpr

Specify whether the quantities defined by this material law are dependent on the phase composition

◆ isPressureDependent

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::isPressureDependent = false
staticconstexpr

Specify whether the quantities defined by this material law are dependent on the absolute pressure

◆ isSaturationDependent

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::isSaturationDependent = true
staticconstexpr

Specify whether the quantities defined by this material law are saturation dependent

◆ isTemperatureDependent

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr bool Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::isTemperatureDependent = false
staticconstexpr

Specify whether the quantities defined by this material law are temperature dependent

◆ numPhases

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr int Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::numPhases = 3
staticconstexpr

◆ oilPhaseIdx

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr int Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::oilPhaseIdx = Traits::nonWettingPhaseIdx
staticconstexpr

◆ waterPhaseIdx

template<class TraitsT , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT , class ParamsT = EclMultiplexerMaterialParams<TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT>>
constexpr int Opm::EclMultiplexerMaterial< TraitsT, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT, ParamsT >::waterPhaseIdx = Traits::wettingPhaseIdx
staticconstexpr

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