opm-common
BlackOilFluidState.hpp File Reference

Implements a "tailor-made" fluid state class for the black-oil model. More...

#include <type_traits>
#include <opm/common/utility/gpuDecorators.hpp>
#include <opm/material/fluidsystems/BlackOilFluidSystem.hpp>
#include <opm/material/common/HasMemberGeneratorMacros.hpp>
#include <opm/material/common/Valgrind.hpp>
#include <opm/material/common/ConditionalStorage.hpp>

Go to the source code of this file.

Classes

class  Opm::BlackOilFluidState< ValueT, FluidSystemT, storeTemperature, storeEnthalpy, enableDissolution, enableVapwat, enableBrine, enableSaltPrecipitation, enableDissolutionInWater, enableSolvent, numStoragePhases >
 Implements a "tailor-made" fluid state class for the black-oil model. More...
 

Namespaces

 Opm
 This class implements a small container which holds the transmissibility mulitpliers for all the faces in the grid.
 

Functions

 Opm::OPM_GENERATE_HAS_MEMBER (pvtRegionIndex,) template< class FluidState > OPM_HOST_DEVICE unsigned getPvtRegionIndex_(typename std
 
template<class FluidState >
OPM_HOST_DEVICE unsigned Opm::getPvtRegionIndex_ (typename std::enable_if<!HasMember_pvtRegionIndex< FluidState >::value, const FluidState &>::type)
 
 Opm::OPM_GENERATE_HAS_MEMBER (invB, 0) template< class FluidSystem
 
class LhsEval OPM_HOST_DEVICE auto Opm::getInvB_ (typename std::enable_if< HasMember_invB< FluidState >::value, const FluidState &>::type fluidState, unsigned phaseIdx, unsigned, [[maybe_unused]] const FluidSystem &fluidSystem=FluidSystem{}) -> decltype(decay< LhsEval >(fluidState.invB(phaseIdx)))
 
template<class FluidSystem , class FluidState , class LhsEval >
OPM_HOST_DEVICE LhsEval Opm::getInvB_ (typename std::enable_if<!HasMember_invB< FluidState >::value, const FluidState &>::type fluidState, unsigned phaseIdx, unsigned pvtRegionIdx, const FluidSystem &fluidSystem=FluidSystem{})
 
 Opm::OPM_GENERATE_HAS_MEMBER (saltConcentration,) template< class FluidState > OPM_HOST_DEVICE auto getSaltConcentration_(typename std
 
template<class FluidState >
OPM_HOST_DEVICE auto Opm::getSaltConcentration_ (typename std::enable_if<!HasMember_saltConcentration< FluidState >::value, const FluidState &>::type)
 
 Opm::OPM_GENERATE_HAS_MEMBER (saltSaturation,) template< class FluidState > OPM_HOST_DEVICE auto getSaltSaturation_(typename std
 
template<class FluidState >
OPM_HOST_DEVICE auto Opm::getSaltSaturation_ (typename std::enable_if<!HasMember_saltSaturation< FluidState >::value, const FluidState &>::type)
 
 Opm::OPM_GENERATE_HAS_MEMBER (solventSaturation,) template< class FluidState > OPM_HOST_DEVICE auto getSolventSaturation_(typename std
 
template<class FluidState >
OPM_HOST_DEVICE auto Opm::getSolventSaturation_ (typename std::enable_if<!HasMember_solventSaturation< FluidState >::value, const FluidState &>::type)
 

Detailed Description

Implements a "tailor-made" fluid state class for the black-oil model.

I.e., it uses exactly the same quantities which are used by the ECL blackoil model. Further quantities are computed "on the fly" and are accessing them is thus relatively slow.