#include <props.hpp>
|
virtual void | upd_res_sat (const double *sat)=0 |
|
virtual void | upscale_pressure (const double *coarseSaturation, const double *finePressure, double *coarsePressure)=0 |
|
virtual void | upscale_saturation (const double *fineSaturation, double *coarseSaturation)=0 |
|
virtual void | downscale_saturation (const double *coarseSaturation, double *fineSaturation)=0 |
|
virtual void | downscale_pressure (const double *coarseSaturation, const double *coarsePressure, double *finePressure)=0 |
|
static VertEqProps* Opm::VertEqProps::create |
( |
const IncompPropertiesInterface & |
fineProps, |
|
|
const TopSurf & |
topSurf, |
|
|
const double * |
gravity |
|
) |
| |
|
static |
Create an upscaled version of fluid and rock properties.
- Parameters
-
fineProps | Fluid and rock properties for the fine grid. |
topSurf | Grid for which the properties should be upscaled. |
gravity | Gravity vector (three-dimensional); must contain three elements, whereas the last is for depth. Usually this is {0., 0., Opm::unit::gravity}. |
- Returns
- Fluid object for the corresponding coarse grid. The caller has the responsibility to dispose off the object returned from here.
virtual void Opm::VertEqProps::downscale_pressure |
( |
const double * |
coarseSaturation, |
|
|
const double * |
coarsePressure, |
|
|
double * |
finePressure |
|
) |
| |
|
pure virtual |
Downscale to corresponding 3D fine-scale pressure from 2D coarse-scale pressure.
- Parameters
-
[in] | coarseSaturation | Saturation for each phase, in each column. This is used to determine the brine-co2 phase contact properly. |
[in] | coarsePressure | Pressure of the CO2 phase at the top of each column. |
[out] | finePressure | Pressure in each block in the fine-scale grid. The order of the cells is given by the fine_col/col_cells members of the TopSurf object which was passed the constructor. |
- Note
- The space for the data must have been allocated by the caller.
virtual void Opm::VertEqProps::downscale_saturation |
( |
const double * |
coarseSaturation, |
|
|
double * |
fineSaturation |
|
) |
| |
|
pure virtual |
Downscale to corresponding 3D fine-scale saturations from 2D coarse-scale saturations.
- Parameters
-
[in] | coarseSaturation | Saturation for each phase, and for each column in the coarse grid. The data for each column is kept together, i.e. the phase index varies most quickly. |
[out] | fineSaturation | Saturation for each phase, and for each block in the fine grid. The data for each block is kept together, i.e. the phase index varies most quickly. |
- Note
- The space for the data must have been allocated by the caller.
-
You should call upd_res_sat before calling this method to make sure that the position of the interface is up-to-date.
virtual void Opm::VertEqProps::upd_res_sat |
( |
const double * |
sat | ) |
|
|
pure virtual |
Update residual saturation of CO2 through-out the domain.
When the plume move forward, it leaves behind some residual CO2 which wasn't there before. This must be accounted for when calculating the position of the interface from the upscaled saturation.
- Parameters
-
sat | Saturation for the phases in the coarse domain. It consists of one record for each column in the top surface grid, where each record has one saturation for each phase. The ordering of the phases is the same as in the properties interface. |
virtual void Opm::VertEqProps::upscale_pressure |
( |
const double * |
coarseSaturation, |
|
|
const double * |
finePressure, |
|
|
double * |
coarsePressure |
|
) |
| |
|
pure virtual |
Upscale pressure from fine-scale to coarse-scale.
- Parameters
-
[in] | coarseSaturation | Saturation for each phase, in each column. This is used to initialize the brine-co2 phase contact properly. |
[in] | finePressure | Pressure for each block in the fine grid. There is only one value for pressure, the pressure for hydrostatic equilibrium in each block. |
[out] | coarsePressure | Pressure for each column in the top surface grid. There is only one value for pressure, weighted from each of the blocks in the column. |
The space for the data must have been allocated by the caller.
virtual void Opm::VertEqProps::upscale_saturation |
( |
const double * |
fineSaturation, |
|
|
double * |
coarseSaturation |
|
) |
| |
|
pure virtual |
Upscale saturation from fine-scale to coarse-scale.
- Parameters
-
[in] | fineSaturation | Saturation for each phase, and for each block in the fine grid. The data for each block is kept together, i.e. the phase index varies most quickly. |
[out] | coarseSaturation | Saturation for each phase, and for each column in the coarse grid. The data for each column is kept together, i.e. the phase index varies most quickly. |
The space for the data must have been allocated by the caller.
The documentation for this struct was generated from the following file:
|