Opm::NcpLocalResidual< TypeTag > Class Template Reference

Details needed to calculate the local residual in the compositional multi-phase NCP-model . More...

#include <ncplocalresidual.hh>

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

Public Member Functions

template<class LhsEval >
void addPhaseStorage (Dune::FieldVector< LhsEval, numEq > &storage, const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx, unsigned phaseIdx) const
 Adds the amount all conservation quantities (e.g. phase mass) within a single fluid phase. More...
 
template<class LhsEval >
void computeStorage (Dune::FieldVector< LhsEval, numEq > &storage, const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx) const
 Evaluate the amount all conservation quantities (e.g. phase mass) within a finite sub-control volume. More...
 
void computeFlux (RateVector &flux, const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx) const
 Evaluates the total mass flux of all conservation quantities over a face of a sub-control volume. More...
 
void addAdvectiveFlux (RateVector &flux, const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx) const
 Add the advective mass flux at a given flux integration point. More...
 
void addDiffusiveFlux (RateVector &flux, const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx) const
 Adds the diffusive flux at a given flux integration point. More...
 
void computeSource (RateVector &source, const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx) const
 Calculate the source term of the equation. More...
 
template<class LhsEval = Evaluation>
LhsEval phaseNcp (const ElementContext &elemCtx, unsigned dofIdx, unsigned timeIdx, unsigned phaseIdx) const
 Returns the value of the NCP-function for a phase. More...
 

Detailed Description

template<class TypeTag>
class Opm::NcpLocalResidual< TypeTag >

Details needed to calculate the local residual in the compositional multi-phase NCP-model .

Member Function Documentation

◆ addAdvectiveFlux()

template<class TypeTag >
void Opm::NcpLocalResidual< TypeTag >::addAdvectiveFlux ( RateVector &  flux,
const ElementContext &  elemCtx,
unsigned  scvfIdx,
unsigned  timeIdx 
) const
inline

Add the advective mass flux at a given flux integration point.

Parameters
fluxArea-specific flux over the phase.

Referenced by Opm::NcpLocalResidual< TypeTag >::computeFlux().

◆ addDiffusiveFlux()

template<class TypeTag >
void Opm::NcpLocalResidual< TypeTag >::addDiffusiveFlux ( RateVector &  flux,
const ElementContext &  elemCtx,
unsigned  scvfIdx,
unsigned  timeIdx 
) const
inline

Adds the diffusive flux at a given flux integration point.

For the immiscible model, this is a no-op for mass fluxes. For energy it adds the contribution of thermal conduction to the enthalpy flux.

Parameters
fluxArea-specific flux over the phase.

Referenced by Opm::NcpLocalResidual< TypeTag >::computeFlux().

◆ addPhaseStorage()

template<class TypeTag >
template<class LhsEval >
void Opm::NcpLocalResidual< TypeTag >::addPhaseStorage ( Dune::FieldVector< LhsEval, numEq > &  storage,
const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx,
unsigned  phaseIdx 
) const
inline

Adds the amount all conservation quantities (e.g. phase mass) within a single fluid phase.

Parameters
storageStores the total amount of each conserved quantity inside the domain.
phaseIdxThe index of the fluid phase of interest.

Referenced by Opm::NcpLocalResidual< TypeTag >::computeStorage().

◆ computeFlux()

template<class TypeTag >
void Opm::NcpLocalResidual< TypeTag >::computeFlux ( RateVector &  flux,
const ElementContext &  elemCtx,
unsigned  scvfIdx,
unsigned  timeIdx 
) const
inline

Evaluates the total mass flux of all conservation quantities over a face of a sub-control volume.

Parameters
fluxArea-specific flux over the phase.

References Opm::NcpLocalResidual< TypeTag >::addAdvectiveFlux(), and Opm::NcpLocalResidual< TypeTag >::addDiffusiveFlux().

◆ computeSource()

template<class TypeTag >
void Opm::NcpLocalResidual< TypeTag >::computeSource ( RateVector &  source,
const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx 
) const
inline

Calculate the source term of the equation.

Parameters
sourceThe values of the source term.

By default, this method only asks the problem to specify a source term.

References Opm::NcpLocalResidual< TypeTag >::phaseNcp().

◆ computeStorage()

template<class TypeTag >
template<class LhsEval >
void Opm::NcpLocalResidual< TypeTag >::computeStorage ( Dune::FieldVector< LhsEval, numEq > &  storage,
const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx 
) const
inline

Evaluate the amount all conservation quantities (e.g. phase mass) within a finite sub-control volume.

Parameters
storageStores the total amount of each conserved quantity inside the domain.

References Opm::NcpLocalResidual< TypeTag >::addPhaseStorage().

◆ phaseNcp()

template<class TypeTag >
template<class LhsEval = Evaluation>
LhsEval Opm::NcpLocalResidual< TypeTag >::phaseNcp ( const ElementContext &  elemCtx,
unsigned  dofIdx,
unsigned  timeIdx,
unsigned  phaseIdx 
) const
inline

Returns the value of the NCP-function for a phase.

Referenced by Opm::NcpLocalResidual< TypeTag >::computeSource().


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