Reconstructs the fine-level quantities of a column from its coarse-level quantities assuming vertical equilibrium.
More...
#include <dumux/porousmediumflow/2pve/quantityreconstruction.hh>
template<class Scalar, class FluidSystem>
class Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >
The reconstruction uses the Brooks-Corey material law [21]. Below the gas plume distance, the pore space is water-saturated apart from residually trapped gas. Above the gas plume distance, the saturation follows from the capillary pressure in hydrostatic equilibrium. The averages of the saturation and the relative permeabilities over fine-level cells are evaluated in closed form.
- Template Parameters
-
| Scalar | the scalar type |
| FluidSystem | the immiscible two-phase fluid system |
|
| Scalar | computeGasPlumeDist (const PhaseDensities &densities, const ResidualSaturations &residualSaturations, Scalar gravityNorm, Scalar domainHeight, Scalar saturationWCoarse, Scalar minGasPlumeDist, const BrooksCoreyParameters &brooksCoreyParameters) const |
| | Computes the gas plume distance for a coarse column, which is the height of the lower boundary of the mobile gas relative to the bottom of the domain.
|
| Scalar | computeCapillaryPressureCoarse (Scalar gasPlumeDist, const PhaseDensities &densities, Scalar gravityNorm, Scalar entryPressureBC) const |
| | Computes the capillary pressure on the coarse level.
|
| std::array< Scalar, numPhases > | reconstructPressure (Scalar gasPlumeDist, const PhaseDensities &densities, Scalar gravityNorm, Scalar heightAboveBottom, Scalar pressureWCoarse, Scalar entryPressureBC) const |
| | Reconstructs the fine-level wetting-phase and nonwetting-phase pressures.
|
| Scalar | reconstructSaturation (const GasPlumeDistances &gasPlumeDistances, const PhaseDensities &densities, const ResidualSaturations &residualSaturations, Scalar gravityNorm, Scalar heightAboveBottom, Scalar deltaZ, const BrooksCoreyParameters &brooksCoreyParameters) const |
| | Reconstructs the fine-level wetting-phase saturation as a mean integral of the saturation across the cell height.
|
| Scalar | reconstructCapillaryPressure (Scalar gasPlumeDist, const PhaseDensities &densities, Scalar gravityNorm, Scalar heightAboveBottom, Scalar entryPressureBC) const |
| | Reconstructs the fine-level capillary pressure.
|
| std::array< Scalar, numPhases > | reconstructMobilitiesFine (const GasPlumeDistances &gasPlumeDistances, const PhaseDensities &densities, const PhaseViscosities &viscosities, Scalar gravityNorm, Scalar heightAboveBottom, Scalar deltaZ, const BrooksCoreyParameters &brooksCoreyParameters) const |
| | Reconstructs the fine-level wetting-phase and nonwetting-phase mobilities.
|
◆ computeCapillaryPressureCoarse()
template<class Scalar, class FluidSystem>
| Scalar Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::computeCapillaryPressureCoarse |
( |
Scalar | gasPlumeDist, |
|
|
const PhaseDensities & | densities, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | entryPressureBC ) const |
|
inline |
- Parameters
-
| gasPlumeDist | value of the gas plume distance |
| densities | contains the phase densities (here: 2 phases) |
| gravityNorm | norm of the gravity |
| entryPressureBC | entry pressure of the Brooks-Corey model |
◆ computeGasPlumeDist()
template<class Scalar, class FluidSystem>
| Scalar Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::computeGasPlumeDist |
( |
const PhaseDensities & | densities, |
|
|
const ResidualSaturations & | residualSaturations, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | domainHeight, |
|
|
Scalar | saturationWCoarse, |
|
|
Scalar | minGasPlumeDist, |
|
|
const BrooksCoreyParameters & | brooksCoreyParameters ) const |
|
inline |
The gas plume distance is the root of the column water balance. The water content of the column accounts for the trapped-gas region between the minimum gas plume distance and the gas plume distance, such that the column integral of the reconstructed saturation equals the coarse-level saturation. If the coarse-level saturation exceeds the water content of a column without mobile gas, the gas plume distance is the domain height. If the mobile gas fills the column down to its bottom, the capillary fringe extends below the column and the gas plume distance is negative.
- Parameters
-
| densities | contains the phase densities (here: 2 phases) |
| residualSaturations | contains the phase residual saturation (here: 2 phases) |
| gravityNorm | norm of the gravity |
| domainHeight | height of the whole domain |
| saturationWCoarse | wetting-phase saturation (on the coarse level) |
| minGasPlumeDist | minimum gas plume distance of the previous time steps, at most domainHeight |
| brooksCoreyParameters | contains the two Brooks-Corey parameters (lambda and entry pressure) |
- Exceptions
-
| NumericalProblem | if the coarse-level saturation does not exceed the residual saturation |
◆ reconstructCapillaryPressure()
template<class Scalar, class FluidSystem>
| Scalar Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::reconstructCapillaryPressure |
( |
Scalar | gasPlumeDist, |
|
|
const PhaseDensities & | densities, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | heightAboveBottom, |
|
|
Scalar | entryPressureBC ) const |
|
inline |
- Parameters
-
| gasPlumeDist | value of the gas plume distance |
| densities | contains the phase densities (here: 2 phases) |
| gravityNorm | norm of the gravity |
| heightAboveBottom | height (relative to the bottom of the domain) at which the capillary pressure should be reconstructed |
| entryPressureBC | entry pressure of the Brooks-Corey model |
◆ reconstructMobilitiesFine()
template<class Scalar, class FluidSystem>
| std::array< Scalar, numPhases > Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::reconstructMobilitiesFine |
( |
const GasPlumeDistances & | gasPlumeDistances, |
|
|
const PhaseDensities & | densities, |
|
|
const PhaseViscosities & | viscosities, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | heightAboveBottom, |
|
|
Scalar | deltaZ, |
|
|
const BrooksCoreyParameters & | brooksCoreyParameters ) const |
|
inline |
- Parameters
-
| gasPlumeDistances | contains the gas plume distance and the minimum gas plume distance |
| densities | contains the phase densities (here: 2 phases) |
| viscosities | contains the phase viscosities (here: 2 phases) |
| gravityNorm | norm of the gravity |
| heightAboveBottom | height (relative to the bottom of the domain) at which the mobilities should be reconstructed |
| deltaZ | discretization width of the fine-level grid in vertical direction |
| brooksCoreyParameters | contains the two Brooks-Corey parameters (lambda and entry pressure) |
◆ reconstructPressure()
template<class Scalar, class FluidSystem>
| std::array< Scalar, numPhases > Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::reconstructPressure |
( |
Scalar | gasPlumeDist, |
|
|
const PhaseDensities & | densities, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | heightAboveBottom, |
|
|
Scalar | pressureWCoarse, |
|
|
Scalar | entryPressureBC ) const |
|
inline |
- Parameters
-
| gasPlumeDist | value of the gas plume distance |
| densities | contains the phase densities (here: 2 phases) |
| gravityNorm | norm of the gravity |
| heightAboveBottom | height (relative to the bottom of the domain) at which the pressures should be reconstructed |
| pressureWCoarse | wetting-phase pressure on the coarse level |
| entryPressureBC | entry pressure of the Brooks-Corey model |
◆ reconstructSaturation()
template<class Scalar, class FluidSystem>
| Scalar Dumux::TwoPVEQuantityReconstruction< Scalar, FluidSystem >::reconstructSaturation |
( |
const GasPlumeDistances & | gasPlumeDistances, |
|
|
const PhaseDensities & | densities, |
|
|
const ResidualSaturations & | residualSaturations, |
|
|
Scalar | gravityNorm, |
|
|
Scalar | heightAboveBottom, |
|
|
Scalar | deltaZ, |
|
|
const BrooksCoreyParameters & | brooksCoreyParameters ) const |
|
inline |
Compute the saturation as the mean of the reconstructed saturation over the height of a fine-level cell.
- Parameters
-
| gasPlumeDistances | contains the gas plume distance and the minimum gas plume distance |
| densities | contains the phase densities (here: 2 phases) |
| residualSaturations | contains the phase residual saturation (here: 2 phases) |
| gravityNorm | norm of the gravity |
| heightAboveBottom | height (relative to the bottom of the domain) at which the saturation should be reconstructed |
| deltaZ | discretization width of the fine-level grid in vertical direction |
| brooksCoreyParameters | contains the two Brooks-Corey parameters (lambda and entry pressure) |
The documentation for this class was generated from the following file: