Provides the auxiliary methods required for consideration of the dispersion equation.
More...
#include <blackoildispersionmodule.hh>
|
template<class Context > |
static void | addDispersiveFlux (RateVector &flux, const Context &context, unsigned spaceIdx, unsigned timeIdx) |
| Adds the mass flux due to dispersion to the flux vector over the flux integration point. More...
|
|
template<class FluidState , class Scalar > |
static void | addDispersiveFlux (RateVector &flux, const FluidState &fluidStateI, const FluidState &fluidStateJ, const Evaluation &dispersivity, const Scalar &normVelocityAvg) |
| Adds the mass flux due to dispersion to the flux vector over the integration point. Following the notation in blackoilmodel.hh, the dispersive flux for component in phase is given by: , where is the shrinkage/expansion factor [-], E is the isotropic dispersivity coefficient [L], is the filter velocity [L/T], and the component mass fraction [-]. Each component mass fraction can be computed using . For example, , where and are the reference densities. Following the implementation of the diffusive flux (blackoildiffusionmodule.hh) and considering the case for the water phase and gas component as an example, for cells i and j, the discrete version of the dispersive flux at the face's integration point is given by where , , and are computed using the arithmetic mean, and the ratio is denoted as conversion factor. The dispersivity is computed in ecltransmissibility_impl.hh, using the dispersion coefficients and . More...
|
|
template<class TypeTag>
class Opm::BlackOilDispersionModule< TypeTag, true > Provides the auxiliary methods required for consideration of the dispersion equation.
◆ ExtensiveQuantities
◆ addDispersiveFlux() [1/2]
template<class TypeTag >
template<class Context >
static void Opm::BlackOilDispersionModule< TypeTag, true >::addDispersiveFlux |
( |
RateVector & |
flux, |
|
|
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| |
|
inlinestatic |
Adds the mass flux due to dispersion to the flux vector over the flux integration point.
◆ addDispersiveFlux() [2/2]
template<class TypeTag >
template<class FluidState , class Scalar >
static void Opm::BlackOilDispersionModule< TypeTag, true >::addDispersiveFlux |
( |
RateVector & |
flux, |
|
|
const FluidState & |
fluidStateI, |
|
|
const FluidState & |
fluidStateJ, |
|
|
const Evaluation & |
dispersivity, |
|
|
const Scalar & |
normVelocityAvg |
|
) |
| |
|
inlinestatic |
Adds the mass flux due to dispersion to the flux vector over the integration point. Following the notation in blackoilmodel.hh, the dispersive flux for component in phase is given by: , where is the shrinkage/expansion factor [-], E is the isotropic dispersivity coefficient [L], is the filter velocity [L/T], and the component mass fraction [-]. Each component mass fraction can be computed using . For example, , where and are the reference densities. Following the implementation of the diffusive flux (blackoildiffusionmodule.hh) and considering the case for the water phase and gas component as an example, for cells i and j, the discrete version of the dispersive flux at the face's integration point is given by where , , and are computed using the arithmetic mean, and the ratio is denoted as conversion factor. The dispersivity is computed in ecltransmissibility_impl.hh, using the dispersion coefficients and .
The documentation for this class was generated from the following file:
|