Opm::BlackOilExtensiveQuantities< TypeTag > Class Template Reference

This template class contains the data which is required to calculate the fluxes of the fluid phases over a face of a finite volume for the black-oil model. More...

#include <blackoilextensivequantities.hh>

Inheritance diagram for Opm::BlackOilExtensiveQuantities< TypeTag >:
Inheritance graph

Public Member Functions

void update (const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx)
 Update the extensive quantities for a given sub-control-volume-face. More...
 
template<class Context , class FluidState >
void updateBoundary (const Context &ctx, unsigned bfIdx, unsigned timeIdx, const FluidState &fluidState)
 
short upstreamIndex (unsigned phaseIdx) const
 Return the local index of the upstream control volume for a given phase as a function of the normal flux. More...
 
short downstreamIndex (unsigned phaseIdx) const
 Return the local index of the downstream control volume for a given phase as a function of the normal flux. More...
 
Scalar upstreamWeight (unsigned) const
 Return the weight of the upstream control volume for a given phase as a function of the normal flux. More...
 
Scalar downstreamWeight (unsigned phaseIdx) const
 Return the weight of the downstream control volume for a given phase as a function of the normal flux. More...
 
void updateVolumeFluxPerm (const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx)
 Method which calculates the volume flux of the polymer "phase" using the pressure potential gradient of the gas phase and the intrinsic permeability. More...
 
void updateVolumeFluxTrans (const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx)
 Method which calculates the volume flux of the polymer "phase" using the gas pressure potential difference between cells and transmissibilities. More...
 
unsigned solventUpstreamIndex () const
 
unsigned solventDownstreamIndex () const
 
const Evaluation & solventVolumeFlux () const
 
void setSolventVolumeFlux (const Evaluation &solventVolumeFlux)
 

Static Public Member Functions

static void registerParameters ()
 Register all run-time parameters for the extensive quantities. More...
 

Protected Member Functions

Implementation & asImp_ ()
 
const Implementation & asImp_ () const
 

Detailed Description

template<class TypeTag>
class Opm::BlackOilExtensiveQuantities< TypeTag >

This template class contains the data which is required to calculate the fluxes of the fluid phases over a face of a finite volume for the black-oil model.

This means pressure and concentration gradients, phase densities at the intergration point, etc.

Member Function Documentation

◆ asImp_() [1/2]

template<class TypeTag >
Implementation & Opm::BlackOilExtensiveQuantities< TypeTag >::asImp_ ( )
inlineprotected

◆ asImp_() [2/2]

template<class TypeTag >
const Implementation & Opm::BlackOilExtensiveQuantities< TypeTag >::asImp_ ( ) const
inlineprotected

◆ downstreamIndex()

template<class TypeTag >
short Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::downstreamIndex ( unsigned  phaseIdx) const
inlineinherited

Return the local index of the downstream control volume for a given phase as a function of the normal flux.

Parameters
phaseIdxThe index of the fluid phase for which the downstream direction is requested.

◆ downstreamWeight()

template<class TypeTag >
Scalar Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::downstreamWeight ( unsigned  phaseIdx) const
inlineinherited

Return the weight of the downstream control volume for a given phase as a function of the normal flux.

Parameters
phaseIdxThe index of the fluid phase

References Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::upstreamWeight().

◆ registerParameters()

template<class TypeTag >
static void Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::registerParameters ( )
inlinestaticinherited

Register all run-time parameters for the extensive quantities.

Referenced by Opm::ImmiscibleExtensiveQuantities< TypeTag >::registerParameters().

◆ setSolventVolumeFlux()

void Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::setSolventVolumeFlux ( const Evaluation &  solventVolumeFlux)
inlineinherited

◆ solventDownstreamIndex()

unsigned Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::solventDownstreamIndex ( ) const
inlineinherited

◆ solventUpstreamIndex()

unsigned Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::solventUpstreamIndex ( ) const
inlineinherited

◆ solventVolumeFlux()

const Evaluation & Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::solventVolumeFlux ( ) const
inlineinherited

◆ update()

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

Update the extensive quantities for a given sub-control-volume-face.

Parameters
elemCtxReference to the current element context.
scvfIdxThe local index of the sub-control-volume face for which the extensive quantities should be calculated.
timeIdxThe index used by the time discretization.

References Opm::BlackOilExtensiveQuantities< TypeTag >::asImp_(), and Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::update().

◆ updateBoundary()

template<class TypeTag >
template<class Context , class FluidState >
void Opm::BlackOilExtensiveQuantities< TypeTag >::updateBoundary ( const Context &  ctx,
unsigned  bfIdx,
unsigned  timeIdx,
const FluidState &  fluidState 
)
inline

◆ updateVolumeFluxPerm()

void Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::updateVolumeFluxPerm ( const ElementContext &  elemCtx,
unsigned  scvfIdx,
unsigned  timeIdx 
)
inlineinherited

Method which calculates the volume flux of the polymer "phase" using the pressure potential gradient of the gas phase and the intrinsic permeability.

◆ updateVolumeFluxTrans()

void Opm::BlackOilSolventExtensiveQuantities< TypeTag, enableSolventV >::updateVolumeFluxTrans ( const ElementContext &  elemCtx,
unsigned  scvfIdx,
unsigned  timeIdx 
)
inlineinherited

Method which calculates the volume flux of the polymer "phase" using the gas pressure potential difference between cells and transmissibilities.

◆ upstreamIndex()

template<class TypeTag >
short Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::upstreamIndex ( unsigned  phaseIdx) const
inlineinherited

Return the local index of the upstream control volume for a given phase as a function of the normal flux.

Parameters
phaseIdxThe index of the fluid phase for which the upstream direction is requested.

◆ upstreamWeight()

template<class TypeTag >
Scalar Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::upstreamWeight ( unsigned  ) const
inlineinherited

Return the weight of the upstream control volume for a given phase as a function of the normal flux.

Parameters
phaseIdxThe index of the fluid phase

Referenced by Opm::MultiPhaseBaseExtensiveQuantities< TypeTag >::downstreamWeight().


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