All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Ewoms::BlackOilSolventModule< TypeTag, enableSolvent > Class Template Reference

Contains the high level supplements required to extend the black oil model by solvents. More...

#include <blackoilsolventmodules.hh>

Static Public Member Functions

static void setNumSatRegions (unsigned numRegions)
 Specify the number of satuation regions. More...
 
static void setSsfn (unsigned satRegionIdx, const TabulatedFunction &ssfnKrg, const TabulatedFunction &ssfnKrs)
 Specify the solvent saturation functions of a single region. More...
 
static void setSof2 (unsigned satRegionIdx, const TabulatedFunction &sof2Krn)
 Specify misicible hydrocabon relative permeability wrt water of a single region. More...
 
static void setMisc (unsigned miscRegionIdx, const TabulatedFunction &misc)
 Misicibility function wrt solvent fraction of a single region. More...
 
static void setPmisc (unsigned miscRegionIdx, const TabulatedFunction &pmisc)
 Misicibility function wrt pressure of a single region. More...
 
static void setMsfn (unsigned satRegionIdx, const TabulatedFunction &msfnKrsg, const TabulatedFunction &msfnKro)
 Specify misicible relative permeability multipliers of a single region. More...
 
static void setSorwmis (unsigned miscRegionIdx, const TabulatedFunction &sorwmis)
 Misicibe residual oil saturation function wrt water saturation of a single region. More...
 
static void setSgcmis (unsigned miscRegionIdx, const TabulatedFunction &sgcwmis)
 Misicibe critical gas saturation function wrt water saturation of a single region. More...
 
static void setTlmixpar (unsigned miscRegionIdx, const Scalar &tlMixParamViscosity, const Scalar &tlMixParamDensity)
 Todd-Longstaff mixing parameters of a single region. More...
 
static void setTlpmixpa (unsigned miscRegionIdx, const TabulatedFunction &tlPMixTable)
 Todd-Longstaff mixing parameter multiplier wrt pressure of a single region. More...
 
static void setSolventPvt (const SolventPvt &value)
 Specify the solvent PVT of a all PVT regions.
 
static void setIsMiscible (const bool isMiscible)
 
static void registerParameters ()
 Register all run-time parameters for the black-oil solvent module.
 
static void registerOutputModules (Model &model, Simulator &simulator)
 Register all solvent specific VTK and ECL output modules.
 
static bool primaryVarApplies (unsigned pvIdx)
 
static std::string primaryVarName (unsigned pvIdx OPM_OPTIM_UNUSED)
 
static Scalar primaryVarWeight (unsigned pvIdx OPM_OPTIM_UNUSED)
 
static bool eqApplies (unsigned eqIdx)
 
static std::string eqName (unsigned eqIdx OPM_OPTIM_UNUSED)
 
static Scalar eqWeight (unsigned eqIdx OPM_OPTIM_UNUSED)
 
template<class LhsEval >
static void addStorage (Dune::FieldVector< LhsEval, numEq > &storage, const IntensiveQuantities &intQuants)
 
static void computeFlux (RateVector &flux, const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx)
 
static void assignPrimaryVars (PrimaryVariables &priVars, Scalar solventSaturation)
 Assign the solvent specific primary variables to a PrimaryVariables object.
 
static void updatePrimaryVars (PrimaryVariables &newPv, const PrimaryVariables &oldPv, const EqVector &delta)
 Do a Newton-Raphson update the primary variables of the solvents.
 
static Scalar computeUpdateError (const PrimaryVariables &oldPv OPM_UNUSED, const EqVector &delta OPM_UNUSED)
 Return how much a Newton-Raphson update is considered an error.
 
static Scalar computeResidualError (const EqVector &resid)
 Return how much a residual is considered an error.
 
template<class DofEntity >
static void serializeEntity (const Model &model, std::ostream &outstream, const DofEntity &dof)
 
template<class DofEntity >
static void deserializeEntity (Model &model, std::istream &instream, const DofEntity &dof)
 
static const SolventPvt & solventPvt ()
 
static const TabulatedFunction & ssfnKrg (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & ssfnKrs (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & sof2Krn (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & misc (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & pmisc (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & msfnKrsg (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & msfnKro (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & sorwmis (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & sgcwmis (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const TabulatedFunction & tlPMixTable (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const Scalar & tlMixParamViscosity (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static const Scalar & tlMixParamDensity (const ElementContext &elemCtx, unsigned scvIdx, unsigned timeIdx)
 
static bool isMiscible ()
 

Detailed Description

template<class TypeTag, bool enableSolvent>
class Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >

Contains the high level supplements required to extend the black oil model by solvents.

Member Function Documentation

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setMisc ( unsigned  miscRegionIdx,
const TabulatedFunction &  misc 
)
inlinestatic

Misicibility function wrt solvent fraction of a single region.

The index of specified here must be in range [0, numMiscRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setMsfn ( unsigned  satRegionIdx,
const TabulatedFunction &  msfnKrsg,
const TabulatedFunction &  msfnKro 
)
inlinestatic

Specify misicible relative permeability multipliers of a single region.

The index of specified here must be in range [0, numSatRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setNumSatRegions ( unsigned  numRegions)
inlinestatic

Specify the number of satuation regions.

This must be called before setting the SSFN of any region.

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setPmisc ( unsigned  miscRegionIdx,
const TabulatedFunction &  pmisc 
)
inlinestatic

Misicibility function wrt pressure of a single region.

The index of specified here must be in range [0, numMiscRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setSgcmis ( unsigned  miscRegionIdx,
const TabulatedFunction &  sgcwmis 
)
inlinestatic

Misicibe critical gas saturation function wrt water saturation of a single region.

The index of specified here must be in range [0, numMiscRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setSof2 ( unsigned  satRegionIdx,
const TabulatedFunction &  sof2Krn 
)
inlinestatic

Specify misicible hydrocabon relative permeability wrt water of a single region.

The index of specified here must be in range [0, numSatRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setSorwmis ( unsigned  miscRegionIdx,
const TabulatedFunction &  sorwmis 
)
inlinestatic

Misicibe residual oil saturation function wrt water saturation of a single region.

The index of specified here must be in range [0, numMiscRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setSsfn ( unsigned  satRegionIdx,
const TabulatedFunction &  ssfnKrg,
const TabulatedFunction &  ssfnKrs 
)
inlinestatic

Specify the solvent saturation functions of a single region.

The index of specified here must be in range [0, numSatRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setTlmixpar ( unsigned  miscRegionIdx,
const Scalar &  tlMixParamViscosity,
const Scalar &  tlMixParamDensity 
)
inlinestatic

Todd-Longstaff mixing parameters of a single region.

The index of specified here must be in range [0, numMiscRegions)

template<class TypeTag , bool enableSolvent>
static void Ewoms::BlackOilSolventModule< TypeTag, enableSolvent >::setTlpmixpa ( unsigned  miscRegionIdx,
const TabulatedFunction &  tlPMixTable 
)
inlinestatic

Todd-Longstaff mixing parameter multiplier wrt pressure of a single region.

The index of specified here must be in range [0, numMiscRegions)


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