Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT > Class Template Reference

Implementation of a tabulated capillary pressure and relperm law which uses spline curves as interpolation functions. More...

#include <SplineTwoPhaseMaterial.hpp>

Inheritance diagram for Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >:
Inheritance graph

Public Types

typedef TraitsT Traits
 The traits class for this material law. More...
 
typedef ParamsT Params
 The type of the parameter objects for this law. More...
 
typedef Traits::Scalar Scalar
 The type of the scalar values for this law. More...
 

Static Public Member Functions

template<class Container , class FluidState >
static void capillaryPressures (Container &values, const Params &params, const FluidState &fluidState)
 The capillary pressure-saturation curve. More...
 
template<class Container , class FluidState >
static void saturations (Container &, const Params &, const FluidState &)
 The saturations of the fluid phases starting from their pressure differences. More...
 
template<class Container , class FluidState >
static void relativePermeabilities (Container &values, const Params &params, const FluidState &fluidState)
 The relative permeabilities. More...
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation pcnw (const Params &params, const FluidState &fluidState)
 The capillary pressure-saturation curve. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatPcnw (const Params &params, const Evaluation &Sw)
 The saturation-capillary pressure curve. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatPcnwInv (const Params &params, const Evaluation &pcnw)
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Sw (const Params &, const FluidState &)
 The saturation-capillary pressure curve. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatSw (const Params &, const Evaluation &)
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Sn (const Params &params, const FluidState &fluidState)
 Calculate the non-wetting phase saturations depending on the phase pressures. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatSn (const Params &params, const Evaluation &pC)
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation krw (const Params &params, const FluidState &fluidState)
 The relative permeability for the wetting phase of the porous medium. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatKrw (const Params &params, const Evaluation &Sw)
 
template<class Evaluation >
static Evaluation twoPhaseSatKrwInv (const Params &params, const Evaluation &krw)
 
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation krn (const Params &params, const FluidState &fluidState)
 The relative permeability for the non-wetting phase of the porous medium. More...
 
template<class Evaluation >
static Evaluation twoPhaseSatKrn (const Params &params, const Evaluation &Sw)
 
template<class Evaluation >
static Evaluation twoPhaseSatKrnInv (const Params &params, const Evaluation &krn)
 

Static Public Attributes

static const int numPhases = Traits::numPhases
 The number of fluid phases. More...
 
static const bool implementsTwoPhaseApi = true
 
static const bool implementsTwoPhaseSatApi = true
 
static const bool isSaturationDependent = true
 
static const bool isPressureDependent = false
 
static const bool isTemperatureDependent = false
 
static const bool isCompositionDependent = false
 

Detailed Description

template<class TraitsT, class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
class Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >

Implementation of a tabulated capillary pressure and relperm law which uses spline curves as interpolation functions.

Member Typedef Documentation

◆ Params

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
typedef ParamsT Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::Params

The type of the parameter objects for this law.

◆ Scalar

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
typedef Traits::Scalar Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::Scalar

The type of the scalar values for this law.

◆ Traits

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
typedef TraitsT Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::Traits

The traits class for this material law.

Member Function Documentation

◆ capillaryPressures()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Container , class FluidState >
static void Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::capillaryPressures ( Container &  values,
const Params params,
const FluidState &  fluidState 
)
inlinestatic

The capillary pressure-saturation curve.

◆ krn()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::krn ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

◆ krw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::krw ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

◆ pcnw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::pcnw ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

◆ relativePermeabilities()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Container , class FluidState >
static void Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::relativePermeabilities ( Container &  values,
const Params params,
const FluidState &  fluidState 
)
inlinestatic

The relative permeabilities.

◆ saturations()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Container , class FluidState >
static void Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::saturations ( Container &  ,
const Params ,
const FluidState &   
)
inlinestatic

The saturations of the fluid phases starting from their pressure differences.

◆ Sn()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::Sn ( const Params params,
const FluidState &  fluidState 
)
inlinestatic

Calculate the non-wetting phase saturations depending on the phase pressures.

Referenced by Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::krn().

◆ Sw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class FluidState , class Evaluation = typename FluidState::Scalar>
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::Sw ( const Params ,
const FluidState &   
)
inlinestatic

◆ twoPhaseSatKrn()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatKrn ( const Params params,
const Evaluation &  Sw 
)
inlinestatic

◆ twoPhaseSatKrnInv()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatKrnInv ( const Params params,
const Evaluation &  krn 
)
inlinestatic

◆ twoPhaseSatKrw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatKrw ( const Params params,
const Evaluation &  Sw 
)
inlinestatic

◆ twoPhaseSatKrwInv()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatKrwInv ( const Params params,
const Evaluation &  krw 
)
inlinestatic

◆ twoPhaseSatPcnw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatPcnw ( const Params params,
const Evaluation &  Sw 
)
inlinestatic

◆ twoPhaseSatPcnwInv()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatPcnwInv ( const Params params,
const Evaluation &  pcnw 
)
inlinestatic

◆ twoPhaseSatSn()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatSn ( const Params params,
const Evaluation &  pC 
)
inlinestatic

◆ twoPhaseSatSw()

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
template<class Evaluation >
static Evaluation Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::twoPhaseSatSw ( const Params ,
const Evaluation &   
)
inlinestatic

Member Data Documentation

◆ implementsTwoPhaseApi

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::implementsTwoPhaseApi = true
static

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

◆ implementsTwoPhaseSatApi

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::implementsTwoPhaseSatApi = true
static

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

◆ isCompositionDependent

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::isCompositionDependent = false
static

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

◆ isPressureDependent

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::isPressureDependent = false
static

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

◆ isSaturationDependent

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::isSaturationDependent = true
static

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

◆ isTemperatureDependent

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const bool Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::isTemperatureDependent = false
static

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

◆ numPhases

template<class TraitsT , class ParamsT = SplineTwoPhaseMaterialParams<TraitsT>>
const int Opm::SplineTwoPhaseMaterial< TraitsT, ParamsT >::numPhases = Traits::numPhases
static

The number of fluid phases.


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