opm-simulators
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, getPropValue< TypeTag, Properties::EnableConvectiveMixing >()> Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableBioeffects >()> Opm::BlackOilEnergyIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableEnergy >()> Opm::BlackOilBrineIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableBrine >()> Opm::BlackOilFoamIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableFoam >()> Opm::BlackOilPolymerIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnablePolymer >()> Opm::BlackOilExtboIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableExtbo >()> Opm::BlackOilSolventIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableSolvent >()> 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, enableDisgasInWater, Indices::numPhases >
 
using ScalarFluidState = BlackOilFluidState< Scalar, FluidSystem, enableTemperature, enableEnergy, compositionSwitchEnabled, enableVapwat, enableBrine, enableSaltPrecipitation, enableDisgasInWater, Indices::numPhases >
 
using Problem = GetPropType< TypeTag, Properties::Problem >
 

Public Member Functions

 BlackOilIntensiveQuantities (const BlackOilIntensiveQuantities &other)=default
 
BlackOilIntensiveQuantitiesoperator= (const BlackOilIntensiveQuantities &other)=default
 
void updateTempSalt (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx, const LinearizationType &lintype)
 
void updateSaturations (const PrimaryVariables &priVars, const unsigned timeIdx, const LinearizationType lintype)
 
template<class ... Args>
void updateRelpermAndPressures (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx, const LinearizationType &lintype)
 
void updateRsRvRsw (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx)
 
void updateMobilityAndInvB ()
 
void updatePhaseDensities ()
 
void updatePorosity (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
void updatePorosity (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx)
 
void updatePorosityImpl (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx)
 
void assertFiniteMembers ()
 
template<class ... Args>
void update (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 
template<class ... Args>
void update (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const unsigned timeIdx)
 
template<class ... Args>
void updateCommonPart (const Problem &problem, const PrimaryVariables &priVars, const unsigned globalSpaceIdx, const 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::BlackOilBioeffectsIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableBioeffects >()>
void bioeffectsPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle bioeffects from the primary variables.
 
const Evaluation & microbialConcentration () const
 
const Evaluation & oxygenConcentration () const
 
const Evaluation & ureaConcentration () const
 
const Evaluation & biofilmVolumeFraction () const
 
const Evaluation & calciteVolumeFraction () const
 
const Evaluation biofilmMass () const
 
const Evaluation calciteMass () const
 
const Evaluation & permFactor () const
 

Additional Inherited Members

- Protected Attributes inherited from Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, getPropValue< TypeTag, Properties::EnableBioeffects >()>
Evaluation microbialConcentration_
 
Evaluation oxygenConcentration_
 
Evaluation ureaConcentration_
 
Evaluation biofilmVolumeFraction_
 
Evaluation calciteVolumeFraction_
 
Evaluation biofilmMass_
 
Evaluation calciteMass_
 
Evaluation permFactor_
 
Evaluation pcFactor_
 

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 >
template<class ... Args>
void Opm::BlackOilIntensiveQuantities< TypeTag >::update ( const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx 
)
inline


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