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 >:
Inheritance graph

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 ()
 
 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 FluidStatefluidState () const
 Returns the phase state for the control-volume. More...
 
const Evaluation & mobility (unsigned phaseIdx) const
 Returns the effective mobility of a given phase within the control volume. More...
 
const Evaluation & mobility (unsigned phaseIdx, FaceDir::DirEnum facedir) const
 
const Evaluation & porosity () const
 Returns the average porosity within the control volume. More...
 
const Evaluation & rockCompTransMultiplier () const
 
auto pvtRegionIndex () const -> decltype(std::declval< FluidState >().pvtRegionIndex())
 Returns the index of the PVT region used to calculate the thermodynamic quantities. More...
 
Evaluation relativePermeability (unsigned phaseIdx) const
 Returns the relative permeability of a given phase within the control volume. More...
 
Scalar referencePorosity () const
 Returns the porosity of the rock at reference conditions. More...
 
const Evaluation & permFactor () const
 
void bioeffectsPropertiesUpdate_ (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx)
 Update the intensive properties needed to handle bioeffects from the primary variables. More...
 
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
 

Protected Attributes

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 Typedef Documentation

◆ FluidState

template<class TypeTag >
using Opm::BlackOilIntensiveQuantities< TypeTag >::FluidState = BlackOilFluidState<Evaluation, FluidSystem, enableTemperature, enableEnergy, compositionSwitchEnabled, enableVapwat, enableBrine, enableSaltPrecipitation, enableDisgasInWater, Indices::numPhases>

◆ Problem

template<class TypeTag >
using Opm::BlackOilIntensiveQuantities< TypeTag >::Problem = GetPropType<TypeTag, Properties::Problem>

◆ ScalarFluidState

template<class TypeTag >
using Opm::BlackOilIntensiveQuantities< TypeTag >::ScalarFluidState = BlackOilFluidState<Scalar, FluidSystem, enableTemperature, enableEnergy, compositionSwitchEnabled, enableVapwat, enableBrine, enableSaltPrecipitation, enableDisgasInWater, Indices::numPhases>

Constructor & Destructor Documentation

◆ BlackOilIntensiveQuantities() [1/2]

template<class TypeTag >
Opm::BlackOilIntensiveQuantities< TypeTag >::BlackOilIntensiveQuantities ( )
inline

◆ BlackOilIntensiveQuantities() [2/2]

template<class TypeTag >
Opm::BlackOilIntensiveQuantities< TypeTag >::BlackOilIntensiveQuantities ( const BlackOilIntensiveQuantities< TypeTag > &  other)
default

Member Function Documentation

◆ assertFiniteMembers()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::assertFiniteMembers ( )
inline

◆ bioeffectsPropertiesUpdate_()

void Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::bioeffectsPropertiesUpdate_ ( const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx 
)
inlineinherited

Update the intensive properties needed to handle bioeffects from the primary variables.

◆ biofilmMass()

const Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::biofilmMass ( ) const
inlineinherited

◆ biofilmVolumeFraction()

const Evaluation & Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::biofilmVolumeFraction ( ) const
inlineinherited

◆ calciteMass()

const Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::calciteMass ( ) const
inlineinherited

◆ calciteVolumeFraction()

const Evaluation & Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::calciteVolumeFraction ( ) const
inlineinherited

◆ fluidState()

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

Returns the phase state for the control-volume.

◆ microbialConcentration()

const Evaluation & Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::microbialConcentration ( ) const
inlineinherited

◆ mobility() [1/2]

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.

Referenced by Opm::BlackOilIntensiveQuantities< TypeTag >::relativePermeability().

◆ mobility() [2/2]

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

◆ operator=()

template<class TypeTag >
BlackOilIntensiveQuantities & Opm::BlackOilIntensiveQuantities< TypeTag >::operator= ( const BlackOilIntensiveQuantities< TypeTag > &  other)
default

◆ oxygenConcentration()

const Evaluation & Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::oxygenConcentration ( ) const
inlineinherited

◆ permFactor()

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

◆ 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.

References Opm::BlackOilIntensiveQuantities< TypeTag >::mobility().

◆ rockCompTransMultiplier()

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

The pressure-dependent transmissibility multiplier due to rock compressibility.

◆ update() [1/2]

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

◆ update() [2/2]

template<class TypeTag >
template<class ... Args>
void Opm::BlackOilIntensiveQuantities< TypeTag >::update ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx 
)
inline

◆ updateCommonPart()

◆ updateMobilityAndInvB()

◆ updatePhaseDensities()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updatePhaseDensities ( )
inline

◆ updatePorosity() [1/2]

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

◆ updatePorosity() [2/2]

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updatePorosity ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx 
)
inline

◆ updatePorosityImpl()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updatePorosityImpl ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx 
)
inline

◆ updateRelpermAndPressures()

template<class TypeTag >
template<class ... Args>
void Opm::BlackOilIntensiveQuantities< TypeTag >::updateRelpermAndPressures ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx,
const LinearizationType lintype 
)
inline

◆ updateRsRvRsw()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updateRsRvRsw ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx 
)
inline

◆ updateSaturations()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updateSaturations ( const PrimaryVariables &  priVars,
const unsigned  timeIdx,
const LinearizationType  lintype 
)
inline

◆ updateTempSalt()

template<class TypeTag >
void Opm::BlackOilIntensiveQuantities< TypeTag >::updateTempSalt ( const Problem problem,
const PrimaryVariables &  priVars,
const unsigned  globalSpaceIdx,
const unsigned  timeIdx,
const LinearizationType lintype 
)
inline

◆ ureaConcentration()

const Evaluation & Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::ureaConcentration ( ) const
inlineinherited

Member Data Documentation

◆ biofilmMass_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::biofilmMass_
protectedinherited

◆ biofilmVolumeFraction_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::biofilmVolumeFraction_
protectedinherited

◆ calciteMass_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::calciteMass_
protectedinherited

◆ calciteVolumeFraction_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::calciteVolumeFraction_
protectedinherited

◆ microbialConcentration_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::microbialConcentration_
protectedinherited

◆ oxygenConcentration_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::oxygenConcentration_
protectedinherited

◆ pcFactor_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::pcFactor_
protectedinherited

◆ permFactor_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::permFactor_
protectedinherited

◆ ureaConcentration_

Evaluation Opm::BlackOilBioeffectsIntensiveQuantities< TypeTag, enableBioeffectsV >::ureaConcentration_
protectedinherited

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