opm-common
Loading...
Searching...
No Matches
Opm::ParkerLenhard< TraitsT, ParamsT > Class Template Reference

Implements the Parker-Lenhard twophase p_c-Sw hysteresis model. More...

#include <ParkerLenhard.hpp>

Inheritance diagram for Opm::ParkerLenhard< TraitsT, ParamsT >:

Public Types

using Traits = TraitsT
using Params = ParamsT
using Scalar = typename Traits::Scalar

Static Public Member Functions

static void reset (Params &params)
 Resets the hysteresis model to the initial parameters on the main drainage curve.
template<class FluidState>
static void update (Params &params, const FluidState &fs)
 Set the current absolute saturation for the current timestep.
template<class Container, class FluidState>
static void capillaryPressures (Container &values, const Params &params, const FluidState &fs)
 Returns the capillary pressure dependening on the phase saturations.
template<class Container, class FluidState>
static void saturations (Container &, const Params &, const FluidState &)
 Returns the capillary pressure dependening on the phase saturations.
template<class Container, class FluidState>
static void relativePermeabilities (Container &values, const Params &params, const FluidState &fs)
 Returns the relative permeabilities of the phases dependening on the phase saturations.
template<class FluidState, class Evaluation = typename FluidState::Scalar>
static Evaluation pcnw (const Params &params, const FluidState &fs)
 Returns the capillary pressure dependend on the phase saturations.
template<class Evaluation>
static Evaluation twoPhaseSatPcnw (const Params &params, const Evaluation &Sw)
template<class FluidState, class Evaluation = typename FluidState::Scalar>
static Evaluation Sw (const Params &, const FluidState &)
 Calculate the wetting phase saturations depending on the phase pressures.
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 &fs)
 Calculate the non-wetting phase saturations depending on the phase pressures.
template<class Evaluation>
static Evaluation twoPhaseSatSn (const Params &, const Evaluation &)
template<class FluidState, class Evaluation = typename FluidState::Scalar>
static Evaluation krw (const Params &params, const FluidState &fs)
 The relative permeability for the wetting phase of the medium.
template<class Evaluation>
static Evaluation twoPhaseSatKrw (const Params &params, const Evaluation &Sw)
template<class FluidState, class Evaluation = typename FluidState::Scalar>
static Evaluation krn (const Params &params, const FluidState &fs)
 The relative permeability for the non-wetting phase of the params.
template<class Evaluation>
static Evaluation twoPhaseSatKrn (const Params &params, const Evaluation &Sw)
template<class Evaluation>
static Evaluation absoluteToApparentSw_ (const Params &params, const Evaluation &Sw)
 Convert an absolute wetting saturation to an apparent one.

Static Public Attributes

static constexpr int numPhases = Traits::numPhases
 The number of fluid phases.
static constexpr bool implementsTwoPhaseApi = true
 Specify whether this material law implements the two-phase convenience API.
static constexpr bool implementsTwoPhaseSatApi = true
 Specify whether this material law implements the two-phase convenience API which only depends on the phase saturations.
static constexpr bool isSaturationDependent = true
 Specify whether the quantities defined by this material law are saturation dependent.
static constexpr bool isPressureDependent = false
 Specify whether the quantities defined by this material law are dependent on the absolute pressure.
static constexpr bool isTemperatureDependent = false
 Specify whether the quantities defined by this material law are temperature dependent.
static constexpr bool isCompositionDependent = false
 Specify whether the quantities defined by this material law are dependent on the phase composition.

Detailed Description

template<class TraitsT, class ParamsT = ParkerLenhardParams<TraitsT>>
class Opm::ParkerLenhard< TraitsT, ParamsT >

Implements the Parker-Lenhard twophase p_c-Sw hysteresis model.

This class adheres to the twophase capillary pressure API.


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