My Project
Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT > Struct Template Reference

The type of the fluid system's parameter cache. More...

#include <BlackOilFluidSystem.hpp>

Inheritance diagram for Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT >:
Opm::NullParameterCache< EvaluationT > Opm::ParameterCacheBase< Implementation >

Public Types

using Evaluation = EvaluationT
 
- Public Types inherited from Opm::ParameterCacheBase< Implementation >
enum  ExceptQuantities { None = 0 , Temperature = 1 , Pressure = 2 , Composition = 4 }
 Constants for ORing the quantities of the fluid state that have not changed since the last update. More...
 

Public Member Functions

 ParameterCache (Scalar maxOilSat=1.0, unsigned regionIdx=0)
 
template<class OtherCache >
void assignPersistentData (const OtherCache &other)
 Copy the data which is not dependent on the type of the Scalars from another parameter cache. More...
 
unsigned regionIndex () const
 Return the index of the region which should be used to determine the thermodynamic properties. More...
 
void setRegionIndex (unsigned val)
 Set the index of the region which should be used to determine the thermodynamic properties. More...
 
const Evaluation & maxOilSat () const
 
void setMaxOilSat (const Evaluation &val)
 
- Public Member Functions inherited from Opm::ParameterCacheBase< Implementation >
template<class OtherCache >
void assignPersistentData (const OtherCache &)
 Copy the data which is not dependent on the type of the Scalars from another parameter cache.
 
template<class FluidState >
void updateAll (const FluidState &fluidState, int=None)
 Update the quantities of the parameter cache for all phases. More...
 
template<class FluidState >
void updateAllPressures (const FluidState &fluidState)
 Update pressure dependent quantities of the parameter cache for all phases. More...
 
template<class FluidState >
void updateAllTemperatures (const FluidState &fluidState)
 Update temperature dependent quantities of the parameter cache for all phases. More...
 
template<class FluidState >
void updatePhase (const FluidState &, unsigned, int=None)
 Update all cached parameters of a specific fluid phase. More...
 
template<class FluidState >
void updateTemperature (const FluidState &fluidState, unsigned phaseIdx)
 Update all cached parameters of a specific fluid phase which depend on temperature. More...
 
template<class FluidState >
void updatePressure (const FluidState &fluidState, unsigned phaseIdx)
 Update all cached parameters of a specific fluid phase which depend on pressure. More...
 
template<class FluidState >
void updateComposition (const FluidState &fluidState, unsigned phaseIdx)
 Update all cached parameters of a specific fluid phase which depend on composition. More...
 
template<class FluidState >
void updateSingleMoleFraction (const FluidState &fluidState, unsigned phaseIdx, unsigned)
 Update all cached parameters of a specific fluid phase which depend on the mole fraction of a single component. More...
 

Detailed Description

template<class Scalar, class IndexTraits = BlackOilDefaultIndexTraits>
template<class EvaluationT>
struct Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT >

The type of the fluid system's parameter cache.

The parameter cache can be used to avoid re-calculating expensive parameters for multiple quantities. Be aware that what the parameter cache actually does is specific for each fluid system and that it is opaque outside the fluid system.

Member Function Documentation

◆ assignPersistentData()

template<class Scalar , class IndexTraits = BlackOilDefaultIndexTraits>
template<class EvaluationT >
template<class OtherCache >
void Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT >::assignPersistentData ( const OtherCache &  other)
inline

Copy the data which is not dependent on the type of the Scalars from another parameter cache.

For the black-oil parameter cache this means that the region index must be copied.

◆ regionIndex()

template<class Scalar , class IndexTraits = BlackOilDefaultIndexTraits>
template<class EvaluationT >
unsigned Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT >::regionIndex ( ) const
inline

Return the index of the region which should be used to determine the thermodynamic properties.

This is only required because "oil" and "gas" are pseudo-components, i.e. for more comprehensive equations of state there would only be one "region".

◆ setRegionIndex()

template<class Scalar , class IndexTraits = BlackOilDefaultIndexTraits>
template<class EvaluationT >
void Opm::BlackOilFluidSystem< Scalar, IndexTraits >::ParameterCache< EvaluationT >::setRegionIndex ( unsigned  val)
inline

Set the index of the region which should be used to determine the thermodynamic properties.

This is only required because "oil" and "gas" are pseudo-components, i.e. for more comprehensive equations of state there would only be one "region".


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