My Project
Loading...
Searching...
No Matches
Opm::BlackOilIntensiveQuantities< TypeTag > Class Template Reference

Contains the quantities which are are constant within a finite volume in the black-oil model. More...

#include <blackoilintensivequantities.hh>

Inheritance diagram for Opm::BlackOilIntensiveQuantities< TypeTag >:
Opm::BlackOilConvectiveMixingIntensiveQuantities< TypeTag, enableConvectiveMixingV > Opm::BlackOilMICPIntensiveQuantities< TypeTag, enableMICPV > Opm::BlackOilEnergyIntensiveQuantities< TypeTag, enableEnergyV > Opm::BlackOilBrineIntensiveQuantities< TypeTag, enableBrineV > Opm::BlackOilFoamIntensiveQuantities< TypeTag, enableFoam > Opm::BlackOilPolymerIntensiveQuantities< TypeTag, enablePolymerV > Opm::BlackOilExtboIntensiveQuantities< TypeTag, enableExtboV > Opm::BlackOilSolventIntensiveQuantities< TypeTag, enableSolventV > Opm::BlackOilDispersionIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableDispersion >() > Opm::BlackOilDiffusionIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableDiffusion >() >

Public Types

using FluidState = BlackOilFluidState< Evaluation, FluidSystem, enableTemperature, enableEnergy, compositionSwitchEnabled, enableVapwat, enableBrine, enableSaltPrecipitation, has_disgas_in_water, Indices::numPhases >
 
using ScalarFluidState = BlackOilFluidState< Scalar, FluidSystem, enableTemperature, enableEnergy, compositionSwitchEnabled, enableVapwat, enableBrine, enableSaltPrecipitation, has_disgas_in_water, Indices::numPhases >
 
using Problem = GetPropType< TypeTag, Properties::Problem >
 

Public Member Functions

 BlackOilIntensiveQuantities (const BlackOilIntensiveQuantities &other)=default
 
BlackOilIntensiveQuantitiesoperator= (const BlackOilIntensiveQuantities &other)=default
 
void updateTempSalt (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
void updateSaturations (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
void updateRelpermAndPressures (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
Evaluation updateRsRvRsw (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
void updateMobilityAndInvB ()
 
void updatePhaseDensities ()
 
void updatePorosity (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
void assertFiniteMembers ()
 
void update (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
const FluidState & fluidState () const
 Returns the phase state for the control-volume.
 
const Evaluation & mobility (unsigned phaseIdx) const
 Returns the effective mobility of a given phase within the control volume.
 
const Evaluation & mobility (unsigned phaseIdx, FaceDir::DirEnum facedir) const
 
const Evaluation & porosity () const
 Returns the average porosity within the control volume.
 
const Evaluation & rockCompTransMultiplier () const
 The pressure-dependent transmissibility multiplier due to rock compressibility.
 
auto pvtRegionIndex () const -> decltype(std::declval< FluidState >().pvtRegionIndex())
 Returns the index of the PVT region used to calculate the thermodynamic quantities.
 
Evaluation relativePermeability (unsigned phaseIdx) const
 Returns the relative permeability of a given phase within the control volume.
 
Scalar referencePorosity () const
 Returns the porosity of the rock at reference conditions.
 
const Evaluation & permFactor () const
 
- Public Member Functions inherited from Opm::BlackOilSolventIntensiveQuantities< TypeTag, enableSolventV >
void solventPreSatFuncUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Called before the saturation functions are doing their magic.
 
void solventPostSatFuncUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Called after the saturation functions have been doing their magic.
 
void solventPvtUpdate_ (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 Update the intensive PVT properties needed to handle solvents from the primary variables.
 
const Evaluation & solventSaturation () const
 
const Evaluation & rsSolw () const
 
const Evaluation & solventDensity () const
 
const Evaluation & solventViscosity () const
 
const Evaluation & solventMobility () const
 
const Evaluation & solventInverseFormationVolumeFactor () const
 
const Scalar & solventRefDensity () const
 
- Public Member Functions inherited from Opm::BlackOilExtboIntensiveQuantities< TypeTag, enableExtboV >
void zFractionUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Compute extended pvt properties from table lookups.
 
void zPvtUpdate_ ()
 Re-compute face densities to account for zFraction dependency.
 
const Evaluation & zFraction () const
 
const Evaluation & xVolume () const
 
const Evaluation & yVolume () const
 
const Evaluation & oilViscosity () const
 
const Evaluation & gasViscosity () const
 
const Evaluation & bo () const
 
const Evaluation & bg () const
 
const Evaluation & rs () const
 
const Evaluation & rv () const
 
const Evaluation zPureInvFormationVolumeFactor () const
 
const Scalar & zRefDensity () const
 
- Public Member Functions inherited from Opm::BlackOilPolymerIntensiveQuantities< TypeTag, enablePolymerV >
void polymerPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle polymers from the primary variables.
 
const Evaluation & polymerConcentration () const
 
const Evaluation & polymerMoleWeight () const
 
const Scalar & polymerDeadPoreVolume () const
 
const Evaluation & polymerAdsorption () const
 
const Scalar & polymerRockDensity () const
 
const Evaluation & polymerViscosityCorrection () const
 
const Evaluation & waterViscosityCorrection () const
 
- Public Member Functions inherited from Opm::BlackOilFoamIntensiveQuantities< TypeTag, enableFoam >
void foamPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle polymers from the primary variables.
 
const Evaluation & foamConcentration () const
 
Scalar foamRockDensity () const
 
const Evaluation & foamAdsorbed () const
 
- Public Member Functions inherited from Opm::BlackOilBrineIntensiveQuantities< TypeTag, enableBrineV >
void updateSaltConcentration_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle brine from the primary variables.
 
void saltPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
const Evaluation & saltConcentration () const
 
const Evaluation & brineRefDensity () const
 
const Evaluation & saltSaturation () const
 
Scalar saltSolubility () const
 
Scalar saltDensity () const
 
const Evaluation & permFactor () const
 
- Public Member Functions inherited from Opm::BlackOilEnergyIntensiveQuantities< TypeTag, enableEnergyV >
void updateTemperature_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the temperature of the intensive quantity's fluid state.
 
void updateTemperature_ (const Problem &problem, const PrimaryVariables &priVars, unsigned globalDofIdx, const unsigned timeIdx, const LinearizationType &lintype)
 Update the temperature of the intensive quantity's fluid state.
 
void updateEnergyQuantities_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx, const typename FluidSystem::template ParameterCache< Evaluation > &paramCache)
 Compute the intensive quantities needed to handle energy conservation.
 
const Evaluation & rockInternalEnergy () const
 
const Evaluation & totalThermalConductivity () const
 
const Scalar & rockFraction () const
 
- Public Member Functions inherited from Opm::BlackOilMICPIntensiveQuantities< TypeTag, enableMICPV >
void MICPPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle MICP from the primary variables.
 
const Evaluation & microbialConcentration () const
 
const Evaluation & oxygenConcentration () const
 
const Evaluation & ureaConcentration () const
 
const Evaluation & biofilmConcentration () const
 
const Evaluation & calciteConcentration () const
 
const Evaluation biofilmMass () const
 
const Evaluation calciteMass () const
 
const Evaluation & permFactor () const
 
- Public Member Functions inherited from Opm::BlackOilConvectiveMixingIntensiveQuantities< TypeTag, enableConvectiveMixingV >
void updateSaturatedDissolutionFactor_ ()
 Compute the intensive quantities needed to handle convective dissolution.
 
const Evaluation & saturatedDissolutionFactor () const
 

Additional Inherited Members

- Protected Member Functions inherited from Opm::BlackOilSolventIntensiveQuantities< TypeTag, enableSolventV >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilExtboIntensiveQuantities< TypeTag, enableExtboV >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilPolymerIntensiveQuantities< TypeTag, enablePolymerV >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilFoamIntensiveQuantities< TypeTag, enableFoam >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilBrineIntensiveQuantities< TypeTag, enableBrineV >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilEnergyIntensiveQuantities< TypeTag, enableEnergyV >
Implementation & asImp_ ()
 
- Protected Member Functions inherited from Opm::BlackOilConvectiveMixingIntensiveQuantities< TypeTag, enableConvectiveMixingV >
Implementation & asImp_ ()
 
- Protected Attributes inherited from Opm::BlackOilSolventIntensiveQuantities< TypeTag, enableSolventV >
Evaluation hydrocarbonSaturation_
 
Evaluation solventSaturation_
 
Evaluation rsSolw_
 
Evaluation solventDensity_
 
Evaluation solventViscosity_
 
Evaluation solventMobility_
 
Evaluation solventInvFormationVolumeFactor_
 
Scalar solventRefDensity_
 
- Protected Attributes inherited from Opm::BlackOilExtboIntensiveQuantities< TypeTag, enableExtboV >
Evaluation zFraction_
 
Evaluation xVolume_
 
Evaluation yVolume_
 
Evaluation oilViscosity_
 
Evaluation gasViscosity_
 
Evaluation bo_
 
Evaluation bg_
 
Evaluation rs_
 
Evaluation rv_
 
Evaluation bz_
 
Scalar zRefDensity_
 
- Protected Attributes inherited from Opm::BlackOilPolymerIntensiveQuantities< TypeTag, enablePolymerV >
Evaluation polymerConcentration_
 
Evaluation polymerMoleWeight_
 
Scalar polymerDeadPoreVolume_
 
Scalar polymerRockDensity_
 
Evaluation polymerAdsorption_
 
Evaluation polymerViscosityCorrection_
 
Evaluation waterViscosityCorrection_
 
- Protected Attributes inherited from Opm::BlackOilFoamIntensiveQuantities< TypeTag, enableFoam >
Evaluation foamConcentration_
 
Scalar foamRockDensity_
 
Evaluation foamAdsorbed_
 
- Protected Attributes inherited from Opm::BlackOilBrineIntensiveQuantities< TypeTag, enableBrineV >
Evaluation saltConcentration_
 
Evaluation refDensity_
 
Evaluation saltSaturation_
 
Evaluation permFactor_
 
Scalar saltSolubility_
 
Scalar saltDensity_
 
- Protected Attributes inherited from Opm::BlackOilEnergyIntensiveQuantities< TypeTag, enableEnergyV >
Evaluation rockInternalEnergy_
 
Evaluation totalThermalConductivity_
 
Scalar rockFraction_
 
- Protected Attributes inherited from Opm::BlackOilMICPIntensiveQuantities< TypeTag, enableMICPV >
Evaluation microbialConcentration_
 
Evaluation oxygenConcentration_
 
Evaluation ureaConcentration_
 
Evaluation biofilmConcentration_
 
Evaluation calciteConcentration_
 
Evaluation biofilmMass_
 
Evaluation calciteMass_
 
Evaluation permFactor_
 
- Protected Attributes inherited from Opm::BlackOilConvectiveMixingIntensiveQuantities< TypeTag, enableConvectiveMixingV >
Evaluation saturatedDissolutionFactor_
 

Detailed Description

template<class TypeTag>
class Opm::BlackOilIntensiveQuantities< TypeTag >

Contains the quantities which are are constant within a finite volume in the black-oil model.

Member Function Documentation

◆ fluidState()

template<class TypeTag >
const FluidState & Opm::BlackOilIntensiveQuantities< TypeTag >::fluidState ( ) const
inline

Returns the phase state for the control-volume.

◆ mobility()

template<class TypeTag >
const Evaluation & Opm::BlackOilIntensiveQuantities< TypeTag >::mobility ( unsigned  phaseIdx) const
inline

Returns the effective mobility of a given phase within the control volume.

◆ porosity()

template<class TypeTag >
const Evaluation & Opm::BlackOilIntensiveQuantities< TypeTag >::porosity ( ) const
inline

Returns the average porosity within the control volume.

◆ pvtRegionIndex()

template<class TypeTag >
auto Opm::BlackOilIntensiveQuantities< TypeTag >::pvtRegionIndex ( ) const -> decltype(std::declval<FluidState>().pvtRegionIndex())
inline

Returns the index of the PVT region used to calculate the thermodynamic quantities.

This allows to specify different Pressure-Volume-Temperature (PVT) relations in different parts of the spatial domain.

◆ referencePorosity()

template<class TypeTag >
Scalar Opm::BlackOilIntensiveQuantities< TypeTag >::referencePorosity ( ) const
inline

Returns the porosity of the rock at reference conditions.

I.e., the porosity of rock which is not perturbed by pressure and temperature changes.

◆ relativePermeability()

template<class TypeTag >
Evaluation Opm::BlackOilIntensiveQuantities< TypeTag >::relativePermeability ( unsigned  phaseIdx) const
inline

Returns the relative permeability of a given phase within the control volume.

◆ update()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::update ( const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx 
)
inline


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