|
double | satFromPc (const BlackoilPropertiesInterface &props, const int phase, const int cell, const double target_pc, const bool increasing=false) |
|
double | satFromSumOfPcs (const BlackoilPropertiesInterface &props, const int phase1, const int phase2, const int cell, const double target_pc) |
|
double | satFromDepth (const BlackoilPropertiesInterface &props, const double cellDepth, const double contactDepth, const int phase, const int cell, const bool increasing=false) |
| Compute saturation from depth. Used for constant capillary pressure function. More...
|
|
bool | isConstPc (const BlackoilPropertiesInterface &props, const int phase, const int cell) |
| Return true if capillary pressure function is constant. More...
|
|
template<class Grid , class Region , class CellRange > |
std::vector< std::vector
< double > > | phasePressures (const Grid &G, const Region ®, const CellRange &cells, const double grav) |
|
template<class Grid , class Region , class CellRange > |
std::vector< double > | temperature (const Grid &, const Region &, const CellRange &cells) |
|
template<class Grid , class Region , class CellRange > |
std::vector< std::vector
< double > > | phaseSaturations (const Grid &G, const Region ®, const CellRange &cells, BlackoilPropertiesInterface &props, const std::vector< double > swat_init, std::vector< std::vector< double > > &phase_pressures) |
|
template<class Grid , class CellRangeType > |
std::vector< double > | computeRs (const Grid &grid, const CellRangeType &cells, const std::vector< double > oil_pressure, const std::vector< double > &temperature, const Miscibility::RsFunction &rs_func, const std::vector< double > gas_saturation) |
|
Types and routines that collectively implement a basic ECLIPSE-style equilibration-based initialisation scheme.
This namespace is intentionally nested to avoid name clashes with other parts of OPM.
template<class Grid , class CellRangeType >
std::vector<double> Opm::Equil::computeRs |
( |
const Grid & |
grid, |
|
|
const CellRangeType & |
cells, |
|
|
const std::vector< double > |
oil_pressure, |
|
|
const std::vector< double > & |
temperature, |
|
|
const Miscibility::RsFunction & |
rs_func, |
|
|
const std::vector< double > |
gas_saturation |
|
) |
| |
Compute initial Rs values.
- Template Parameters
-
CellRangeType | Type of cell range that demarcates the cells pertaining to the current equilibration region. Must implement methods begin() and end() to bound the range as well as provide an inner type, const_iterator, to traverse the range. |
- Parameters
-
[in] | grid | Grid. |
[in] | cells | Range that spans the cells of the current equilibration region. |
[in] | oil_pressure | Oil pressure for each cell in range. |
[in] | temperature | Temperature for each cell in range. |
[in] | rs_func | Rs as function of pressure and depth. |
- Returns
- Rs values, one for each cell in the 'cells' range.
References Opm::UgGridHelpers::cellCentroidCoordinate(), and Opm::UgGridHelpers::dimensions().
bool Opm::Equil::isConstPc |
( |
const BlackoilPropertiesInterface & |
props, |
|
|
const int |
phase, |
|
|
const int |
cell |
|
) |
| |
|
inline |
template<class Grid , class Region , class CellRange >
std::vector< std::vector<double> > Opm::Equil::phasePressures |
( |
const Grid & |
G, |
|
|
const Region & |
reg, |
|
|
const CellRange & |
cells, |
|
|
const double |
grav |
|
) |
| |
template<class Grid , class Region , class CellRange >
std::vector< std::vector<double> > Opm::Equil::phaseSaturations |
( |
const Grid & |
G, |
|
|
const Region & |
reg, |
|
|
const CellRange & |
cells, |
|
|
BlackoilPropertiesInterface & |
props, |
|
|
const std::vector< double > |
swat_init, |
|
|
std::vector< std::vector< double > > & |
phase_pressures |
|
) |
| |
References Opm::BlackoilPhases::Aqua, Opm::BlackoilPropertiesInterface::capPress(), Opm::UgGridHelpers::cellCentroidCoordinate(), Opm::UgGridHelpers::dimensions(), Opm::Details::PhasePressure::gas(), isConstPc(), Opm::BlackoilPhases::Liquid, Opm::BlackoilPhases::MaxNumPhases, satFromDepth(), satFromPc(), satFromSumOfPcs(), Opm::BlackoilPropertiesInterface::satRange(), Opm::BlackoilPropertiesInterface::swatInitScaling(), Opm::BlackoilPhases::Vapour, and Opm::Details::PhasePressure::water().
double Opm::Equil::satFromDepth |
( |
const BlackoilPropertiesInterface & |
props, |
|
|
const double |
cellDepth, |
|
|
const double |
contactDepth, |
|
|
const int |
phase, |
|
|
const int |
cell, |
|
|
const bool |
increasing = false |
|
) |
| |
|
inline |
double Opm::Equil::satFromPc |
( |
const BlackoilPropertiesInterface & |
props, |
|
|
const int |
phase, |
|
|
const int |
cell, |
|
|
const double |
target_pc, |
|
|
const bool |
increasing = false |
|
) |
| |
|
inline |
double Opm::Equil::satFromSumOfPcs |
( |
const BlackoilPropertiesInterface & |
props, |
|
|
const int |
phase1, |
|
|
const int |
phase2, |
|
|
const int |
cell, |
|
|
const double |
target_pc |
|
) |
| |
|
inline |
template<class Grid , class Region , class CellRange >
std::vector<double> Opm::Equil::temperature |
( |
const Grid & |
, |
|
|
const Region & |
, |
|
|
const CellRange & |
cells |
|
) |
| |
|