Merge pull request #393 from akva2/no_density_kw
changed: avoid using DENSITY from deck in Pvt classes
This commit is contained in:
commit
c681d0a402
@ -74,11 +74,11 @@ public:
|
||||
* \brief Sets the pressure-dependent water viscosity and density
|
||||
* using a table stemming from the Eclipse PVTWSALT keyword.
|
||||
*/
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
void initFromDeck(const Deck&, const EclipseState& eclState)
|
||||
{
|
||||
const auto& tableManager = eclState.getTableManager();
|
||||
size_t numRegions = tableManager.getTabdims().getNumPVTTables();
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = tableManager.getDensityTable();
|
||||
|
||||
formationVolumeTables_.resize(numRegions);
|
||||
compressibilityTables_.resize(numRegions);
|
||||
@ -116,10 +116,8 @@ public:
|
||||
setNumRegions(numPvtwRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numPvtwRegions; ++ regionIdx) {
|
||||
auto densityRecord = densityKeyword.getRecord(regionIdx);
|
||||
|
||||
waterReferenceDensity_[regionIdx] =
|
||||
densityRecord.getItem("WATER").getSIDouble(0);
|
||||
waterReferenceDensity_[regionIdx] = densityTable[regionIdx].water;
|
||||
}
|
||||
|
||||
initEnd();
|
||||
|
@ -76,20 +76,20 @@ public:
|
||||
/*!
|
||||
* \brief Initialize the oil parameters via the data specified by the PVTO ECL keyword.
|
||||
*/
|
||||
void initFromDeck(const Deck& deck, const EclipseState& /*eclState*/)
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvcdoKeyword = deck.getKeyword("PVCDO");
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvcdoKeyword.size() == densityKeyword.size());
|
||||
assert(pvcdoKeyword.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvcdoKeyword.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
Scalar rhoRefO = densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
Scalar rhoRefG = densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
Scalar rhoRefW = densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
Scalar rhoRefO = densityTable[regionIdx].oil;
|
||||
Scalar rhoRefG = densityTable[regionIdx].gas;
|
||||
Scalar rhoRefW = densityTable[regionIdx].water;
|
||||
|
||||
setReferenceDensities(regionIdx, rhoRefO, rhoRefG, rhoRefW);
|
||||
|
||||
|
@ -70,22 +70,20 @@ public:
|
||||
* \brief Sets the pressure-dependent water viscosity and density
|
||||
* using a table stemming from the Eclipse PVTW keyword.
|
||||
*/
|
||||
void initFromDeck(const Deck& deck, const EclipseState& /*eclState*/)
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvtwKeyword = deck.getKeyword("PVTW");
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvtwKeyword.size() == densityKeyword.size());
|
||||
assert(pvtwKeyword.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvtwKeyword.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
auto pvtwRecord = pvtwKeyword.getRecord(regionIdx);
|
||||
auto densityRecord = densityKeyword.getRecord(regionIdx);
|
||||
|
||||
waterReferenceDensity_[regionIdx] =
|
||||
densityRecord.getItem("WATER").getSIDouble(0);
|
||||
waterReferenceDensity_[regionIdx] = densityTable[regionIdx].water;
|
||||
|
||||
waterReferencePressure_[regionIdx] =
|
||||
pvtwRecord.getItem("P_REF").getSIDouble(0);
|
||||
|
@ -65,20 +65,20 @@ public:
|
||||
/*!
|
||||
* \brief Initialize the oil parameters via the data specified by the PVDO ECL keyword.
|
||||
*/
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
void initFromDeck(const Deck&, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvdoTables = eclState.getTableManager().getPvdoTables();
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvdoTables.size() == densityKeyword.size());
|
||||
assert(pvdoTables.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvdoTables.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
Scalar rhoRefO = densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
Scalar rhoRefG = densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
Scalar rhoRefW = densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
Scalar rhoRefO = densityTable[regionIdx].oil;
|
||||
Scalar rhoRefG = densityTable[regionIdx].gas;
|
||||
Scalar rhoRefW = densityTable[regionIdx].water;
|
||||
|
||||
setReferenceDensities(regionIdx, rhoRefO, rhoRefG, rhoRefW);
|
||||
|
||||
|
@ -72,20 +72,20 @@ public:
|
||||
*
|
||||
* This method assumes that the deck features valid DENSITY and PVDG keywords.
|
||||
*/
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
void initFromDeck(const Deck&, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvdgTables = eclState.getTableManager().getPvdgTables();
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvdgTables.size() == densityKeyword.size());
|
||||
assert(pvdgTables.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvdgTables.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
Scalar rhoRefO = densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
Scalar rhoRefG = densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
Scalar rhoRefW = densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
Scalar rhoRefO = densityTable[regionIdx].oil;
|
||||
Scalar rhoRefG = densityTable[regionIdx].gas;
|
||||
Scalar rhoRefW = densityTable[regionIdx].water;
|
||||
|
||||
setReferenceDensities(regionIdx, rhoRefO, rhoRefG, rhoRefW);
|
||||
|
||||
|
@ -94,17 +94,17 @@ public:
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvtoTables = eclState.getTableManager().getPvtoTables();
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvtoTables.size() == densityKeyword.size());
|
||||
assert(pvtoTables.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvtoTables.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
Scalar rhoRefO = densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
Scalar rhoRefG = densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
Scalar rhoRefW = densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
Scalar rhoRefO = densityTable[regionIdx].oil;
|
||||
Scalar rhoRefG = densityTable[regionIdx].gas;;
|
||||
Scalar rhoRefW = densityTable[regionIdx].water;
|
||||
|
||||
setReferenceDensities(regionIdx, rhoRefO, rhoRefG, rhoRefW);
|
||||
}
|
||||
|
@ -91,17 +91,17 @@ public:
|
||||
void initFromDeck(const Deck& deck, const EclipseState& eclState)
|
||||
{
|
||||
const auto& pvtgTables = eclState.getTableManager().getPvtgTables();
|
||||
const auto& densityKeyword = deck.getKeyword("DENSITY");
|
||||
const auto& densityTable = eclState.getTableManager().getDensityTable();
|
||||
|
||||
assert(pvtgTables.size() == densityKeyword.size());
|
||||
assert(pvtgTables.size() == densityTable.size());
|
||||
|
||||
size_t numRegions = pvtgTables.size();
|
||||
setNumRegions(numRegions);
|
||||
|
||||
for (unsigned regionIdx = 0; regionIdx < numRegions; ++ regionIdx) {
|
||||
Scalar rhoRefO = densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
Scalar rhoRefG = densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
Scalar rhoRefW = densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
Scalar rhoRefO = densityTable[regionIdx].oil;
|
||||
Scalar rhoRefG = densityTable[regionIdx].gas;
|
||||
Scalar rhoRefW = densityTable[regionIdx].water;
|
||||
|
||||
setReferenceDensities(regionIdx, rhoRefO, rhoRefG, rhoRefW);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user