Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT > Class Template Reference

Multiplexer implementation for the parameters required by the multiplexed three-phase material law. More...

#include <EclMultiplexerMaterialParams.hpp>

Inheritance diagram for Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >:
Inheritance graph

Public Member Functions

 EclMultiplexerMaterialParams ()
 The multiplexer constructor. More...
 
 EclMultiplexerMaterialParams (const EclMultiplexerMaterialParams &other)
 
EclMultiplexerMaterialParamsoperator= (const EclMultiplexerMaterialParams &other)
 
void setApproach (EclMultiplexerApproach newApproach)
 
EclMultiplexerApproach approach () const
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone1Approach, Stone1Params >::type & getRealParams ()
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone1Approach, constStone1Params >::type & getRealParams () const
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone2Approach, Stone2Params >::type & getRealParams ()
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone2Approach, constStone2Params >::type & getRealParams () const
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclDefaultApproach, DefaultParams >::type & getRealParams ()
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclDefaultApproach, constDefaultParams >::type & getRealParams () const
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclTwoPhaseApproach, TwoPhaseParams >::type & getRealParams ()
 
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclTwoPhaseApproach, constTwoPhaseParams >::type & getRealParams () const
 
void finalize ()
 Mark the object as finalized. More...
 

Protected Member Functions

void check () const
 

Detailed Description

template<class Traits, class GasOilMaterialLawT, class OilWaterMaterialLawT, class GasWaterMaterialLawT>
class Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >

Multiplexer implementation for the parameters required by the multiplexed three-phase material law.

Essentially, this class just stores parameter object for the "nested" material law and provides some methods to convert to it.

Constructor & Destructor Documentation

◆ EclMultiplexerMaterialParams() [1/2]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::EclMultiplexerMaterialParams ( )
inline

The multiplexer constructor.

◆ EclMultiplexerMaterialParams() [2/2]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::EclMultiplexerMaterialParams ( const EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT > &  other)
inline

Member Function Documentation

◆ approach()

◆ check()

void Opm::EnsureFinalized::check ( ) const
inlineprotectedinherited

Referenced by Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::betaGN(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::betaNW(), Opm::ParkerLenhardParams< TraitsT >::csc(), Opm::ParkerLenhardParams< TraitsT >::currentSnr(), Opm::EclHeatcrLawParams< ScalarT >::dRockHeatCapacity_dT(), Opm::TwoPhaseLETCurvesParams< TraitsT >::dS(), Opm::TwoPhaseLETCurvesParams< TraitsT >::dSpc(), Opm::EclThconrLawParams< ScalarT >::dTotalThermalConductivity_dSg(), Opm::TwoPhaseLETCurvesParams< TraitsT >::E(), Opm::BrooksCoreyParams< TraitsT >::entryPressure(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Epc(), Opm::EclStone1MaterialParams< Traits, GasOilLawT, OilWaterLawT >::eta(), Opm::EclDefaultMaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::gasOilParams(), Opm::EclStone1MaterialParams< Traits, GasOilLawT, OilWaterLawT >::gasOilParams(), Opm::EclStone2MaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::gasOilParams(), Opm::EclTwoPhaseMaterialParams< Traits, GasOilParamsT, OilWaterParamsT, GasWaterParamsT >::gasOilParams(), Opm::EclTwoPhaseMaterialParams< Traits, GasOilParamsT, OilWaterParamsT, GasWaterParamsT >::gasWaterParams(), Opm::EclSpecrockLawParams< ScalarT >::internalEnergyFunction(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::krnSamples(), Opm::SplineTwoPhaseMaterialParams< TraitsT >::krnSpline(), Opm::EclStone1MaterialParams< Traits, GasOilLawT, OilWaterLawT >::krocw(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::krRegardsSnr(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Krt(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::krwSamples(), Opm::SplineTwoPhaseMaterialParams< TraitsT >::krwSpline(), Opm::TwoPhaseLETCurvesParams< TraitsT >::L(), Opm::BrooksCoreyParams< TraitsT >::lambda(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Lpc(), Opm::ParkerLenhardParams< TraitsT >::mdc(), Opm::ParkerLenhardParams< TraitsT >::mdcParams(), Opm::ParkerLenhardParams< TraitsT >::micParams(), Opm::EclDefaultMaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::oilWaterParams(), Opm::EclStone1MaterialParams< Traits, GasOilLawT, OilWaterLawT >::oilWaterParams(), Opm::EclStone2MaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::oilWaterParams(), Opm::EclTwoPhaseMaterialParams< Traits, GasOilParamsT, OilWaterParamsT, GasWaterParamsT >::oilWaterParams(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Pcir(), Opm::LinearMaterialParams< TraitsT >::pcMaxSat(), Opm::LinearMaterialParams< TraitsT >::pcMinSat(), Opm::RegularizedBrooksCoreyParams< TraitsT >::pcnwHigh(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwHigh(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwHighSpline(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwHighSw(), Opm::RegularizedBrooksCoreyParams< TraitsT >::pcnwLow(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwLow(), Opm::RegularizedBrooksCoreyParams< TraitsT >::pcnwLowSw(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwLowSw(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::pcnwSamples(), Opm::RegularizedBrooksCoreyParams< TraitsT >::pcnwSlopeHigh(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwSlopeHigh(), Opm::RegularizedBrooksCoreyParams< TraitsT >::pcnwSlopeLow(), Opm::RegularizedVanGenuchtenParams< TraitsT >::pcnwSlopeLow(), Opm::SplineTwoPhaseMaterialParams< TraitsT >::pcnwSpline(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Pct(), Opm::ParkerLenhardParams< TraitsT >::pisc(), Opm::EclThcLawParams< ScalarT >::porosity(), Opm::EclHeatcrLawParams< ScalarT >::referenceRockHeatCapacity(), Opm::EclThconrLawParams< ScalarT >::referenceTotalThermalConductivity(), Opm::EffToAbsLawParams< EffLawParamsT, numPhases >::residualSaturation(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::Sgr(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Smin(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Sminpc(), Opm::ParkerLenhardParams< TraitsT >::Snr(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::Snr(), Opm::ConstantSolidHeatCapLawParams< ScalarT >::solidHeatCapacity(), Opm::EffToAbsLawParams< EffLawParamsT, numPhases >::sumResidualSaturations(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::SwKrnSamples(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::SwKrwSamples(), Opm::EclDefaultMaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::Swl(), Opm::EclStone1MaterialParams< Traits, GasOilLawT, OilWaterLawT >::Swl(), Opm::EclStone2MaterialParams< Traits, GasOilParamsT, OilWaterParamsT >::Swl(), Opm::PiecewiseLinearTwoPhaseMaterialParams< TraitsT >::SwPcwnSamples(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::Swr(), Opm::ParkerLenhardParams< TraitsT >::SwrKr(), Opm::ParkerLenhardParams< TraitsT >::SwrPc(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::Swrx(), Opm::TwoPhaseLETCurvesParams< TraitsT >::T(), Opm::EclThcLawParams< ScalarT >::thcgas(), Opm::EclThcLawParams< ScalarT >::thcoil(), Opm::EclThcLawParams< ScalarT >::thcrock(), Opm::EclThcLawParams< ScalarT >::thcwater(), Opm::TwoPhaseLETCurvesParams< TraitsT >::Tpc(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::vgAlpha(), Opm::VanGenuchtenParams< TraitsT >::vgAlpha(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::vgM(), Opm::VanGenuchtenParams< TraitsT >::vgM(), Opm::ThreePhaseParkerVanGenuchtenParams< TraitsT >::vgN(), and Opm::VanGenuchtenParams< TraitsT >::vgN().

◆ finalize()

◆ getRealParams() [1/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone1Approach, Stone1Params >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( )
inline

◆ getRealParams() [2/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone2Approach, Stone2Params >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( )
inline

◆ getRealParams() [3/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclDefaultApproach, DefaultParams >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( )
inline

◆ getRealParams() [4/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclTwoPhaseApproach, TwoPhaseParams >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( )
inline

◆ getRealParams() [5/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone1Approach, constStone1Params >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( ) const
inline

◆ getRealParams() [6/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclStone2Approach, constStone2Params >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( ) const
inline

◆ getRealParams() [7/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclDefaultApproach, constDefaultParams >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( ) const
inline

◆ getRealParams() [8/8]

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
template<EclMultiplexerApproach approachV>
std::enable_if< approachV==EclMultiplexerApproach::EclTwoPhaseApproach, constTwoPhaseParams >::type & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::getRealParams ( ) const
inline

◆ operator=()

template<class Traits , class GasOilMaterialLawT , class OilWaterMaterialLawT , class GasWaterMaterialLawT >
EclMultiplexerMaterialParams & Opm::EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT >::operator= ( const EclMultiplexerMaterialParams< Traits, GasOilMaterialLawT, OilWaterMaterialLawT, GasWaterMaterialLawT > &  other)
inline

◆ setApproach()


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