Opm::EclMaterialLawManager< TraitsT > Class Template Reference

Provides an simple way to create and manage the material law objects for a complete ECL deck. More...

#include <EclMaterialLawManager.hpp>

Public Types

typedef EclMultiplexerMaterial
< Traits, GasOilTwoPhaseLaw,
OilWaterTwoPhaseLaw
MaterialLaw
 
typedef MaterialLaw::Params MaterialLawParams
 

Public Member Functions

 EclMaterialLawManager ()
 
void initFromDeck (Opm::DeckConstPtr deck, Opm::EclipseStateConstPtr eclState, const std::vector< int > &compressedToCartesianElemIdx)
 
Scalar applySwatinit (unsigned elemIdx, Scalar pcow, Scalar Sw)
 Modify the initial condition according to the SWATINIT keyword. More...
 
bool enableEndPointScaling () const
 
bool enableHysteresis () const
 
MaterialLawParamsmaterialLawParams (unsigned elemIdx)
 
const MaterialLawParamsmaterialLawParams (unsigned elemIdx) const
 
template<class FluidState >
void updateHysteresis (const FluidState &fluidState, unsigned elemIdx)
 
const
Opm::EclEpsScalingPointsInfo
< Scalar > & 
oilWaterScaledEpsInfoDrainage (size_t elemIdx) const
 

Detailed Description

template<class TraitsT>
class Opm::EclMaterialLawManager< TraitsT >

Provides an simple way to create and manage the material law objects for a complete ECL deck.

Member Typedef Documentation

template<class TraitsT >
typedef MaterialLaw::Params Opm::EclMaterialLawManager< TraitsT >::MaterialLawParams

Constructor & Destructor Documentation

template<class TraitsT >
Opm::EclMaterialLawManager< TraitsT >::EclMaterialLawManager ( )
inline

Member Function Documentation

template<class TraitsT >
Scalar Opm::EclMaterialLawManager< TraitsT >::applySwatinit ( unsigned  elemIdx,
Scalar  pcow,
Scalar  Sw 
)
inline

Modify the initial condition according to the SWATINIT keyword.

The method returns the water saturation which yields a givenn capillary pressure. The reason this method is not folded directly into initFromDeck() is that the capillary pressure given depends on the particuars of how the simulator calculates its initial condition.

References Opm::EclOilWaterSystem, and Opm::EclMaterialLawManager< TraitsT >::materialLawParams().

template<class TraitsT >
bool Opm::EclMaterialLawManager< TraitsT >::enableEndPointScaling ( ) const
inline
template<class TraitsT >
bool Opm::EclMaterialLawManager< TraitsT >::enableHysteresis ( ) const
inline
template<class TraitsT >
void Opm::EclMaterialLawManager< TraitsT >::initFromDeck ( Opm::DeckConstPtr  deck,
Opm::EclipseStateConstPtr  eclState,
const std::vector< int > &  compressedToCartesianElemIdx 
)
inline
template<class TraitsT >
MaterialLawParams& Opm::EclMaterialLawManager< TraitsT >::materialLawParams ( unsigned  elemIdx)
inline
template<class TraitsT >
const MaterialLawParams& Opm::EclMaterialLawManager< TraitsT >::materialLawParams ( unsigned  elemIdx) const
inline
template<class TraitsT >
const Opm::EclEpsScalingPointsInfo<Scalar>& Opm::EclMaterialLawManager< TraitsT >::oilWaterScaledEpsInfoDrainage ( size_t  elemIdx) const
inline
template<class TraitsT >
template<class FluidState >
void Opm::EclMaterialLawManager< TraitsT >::updateHysteresis ( const FluidState &  fluidState,
unsigned  elemIdx 
)
inline

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