mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Change Deck access methods/types to references
opm-parser#677 changes the return types for the Deck family of classes. This patch fixes all broken code from that patch set. https://github.com/OPM/opm-parser/pull/677
This commit is contained in:
@@ -177,31 +177,31 @@ BlackoilPropsAdFromDeck::BlackoilPropsAdFromDeck(const BlackoilPropsAdFromDeck&
|
||||
waterPvt_->initFromDeck(deck, eclState);
|
||||
|
||||
// Surface densities. Accounting for different orders in eclipse and our code.
|
||||
Opm::DeckKeywordConstPtr densityKeyword = deck->getKeyword("DENSITY");
|
||||
int numRegions = densityKeyword->size();
|
||||
const auto& densityKeyword = deck->getKeyword("DENSITY");
|
||||
int numRegions = densityKeyword.size();
|
||||
auto tables = eclState->getTableManager();
|
||||
|
||||
surfaceDensity_.resize(numRegions);
|
||||
for (int regionIdx = 0; regionIdx < numRegions; ++regionIdx) {
|
||||
if (phase_usage_.phase_used[Liquid]) {
|
||||
surfaceDensity_[regionIdx][phase_usage_.phase_pos[Liquid]]
|
||||
= densityKeyword->getRecord(regionIdx)->getItem("OIL")->getSIDouble(0);
|
||||
= densityKeyword.getRecord(regionIdx).getItem("OIL").getSIDouble(0);
|
||||
}
|
||||
if (phase_usage_.phase_used[Aqua]) {
|
||||
surfaceDensity_[regionIdx][phase_usage_.phase_pos[Aqua]]
|
||||
= densityKeyword->getRecord(regionIdx)->getItem("WATER")->getSIDouble(0);
|
||||
= densityKeyword.getRecord(regionIdx).getItem("WATER").getSIDouble(0);
|
||||
}
|
||||
if (phase_usage_.phase_used[Vapour]) {
|
||||
surfaceDensity_[regionIdx][phase_usage_.phase_pos[Vapour]]
|
||||
= densityKeyword->getRecord(regionIdx)->getItem("GAS")->getSIDouble(0);
|
||||
= densityKeyword.getRecord(regionIdx).getItem("GAS").getSIDouble(0);
|
||||
}
|
||||
}
|
||||
|
||||
// Oil vaporization controls (kw VAPPARS)
|
||||
vap1_ = vap2_ = 0.0;
|
||||
if (deck->hasKeyword("VAPPARS") && deck->hasKeyword("VAPOIL") && deck->hasKeyword("DISGAS")) {
|
||||
vap1_ = deck->getKeyword("VAPPARS")->getRecord(0)->getItem(0)->getRawDouble(0);
|
||||
vap2_ = deck->getKeyword("VAPPARS")->getRecord(0)->getItem(1)->getRawDouble(0);
|
||||
vap1_ = deck->getKeyword("VAPPARS").getRecord(0).getItem(0).get< double >(0);
|
||||
vap2_ = deck->getKeyword("VAPPARS").getRecord(0).getItem(1).get< double >(0);
|
||||
satOilMax_.resize(number_of_cells, 0.0);
|
||||
} else if (deck->hasKeyword("VAPPARS")) {
|
||||
OPM_THROW(std::runtime_error, "Input has VAPPARS, but missing VAPOIL and/or DISGAS\n");
|
||||
|
||||
@@ -353,7 +353,7 @@ namespace Opm
|
||||
std::string deck_filename = param_.get<std::string>("deck_filename");
|
||||
ParseMode parseMode({{ ParseMode::PARSE_RANDOM_SLASH , InputError::IGNORE }});
|
||||
deck_ = parser->parseFile(deck_filename, parseMode);
|
||||
checkDeck(deck_);
|
||||
checkDeck(deck_, parser);
|
||||
eclipse_state_.reset(new EclipseState(deck_, parseMode));
|
||||
}
|
||||
catch (const std::invalid_argument& e) {
|
||||
|
||||
@@ -48,12 +48,12 @@ SolventPropsAdFromDeck::SolventPropsAdFromDeck(DeckConstPtr deck,
|
||||
|
||||
// surface densities
|
||||
if (deck->hasKeyword("SDENSITY")) {
|
||||
Opm::DeckKeywordConstPtr densityKeyword = deck->getKeyword("SDENSITY");
|
||||
int numRegions = densityKeyword->size();
|
||||
const auto& densityKeyword = deck->getKeyword("SDENSITY");
|
||||
int numRegions = densityKeyword.size();
|
||||
solvent_surface_densities_.resize(numRegions);
|
||||
for (int regionIdx = 0; regionIdx < numRegions; ++regionIdx) {
|
||||
solvent_surface_densities_[regionIdx]
|
||||
= densityKeyword->getRecord(regionIdx)->getItem("SOLVENT_DENSITY")->getSIDouble(0);
|
||||
= densityKeyword.getRecord(regionIdx).getItem("SOLVENT_DENSITY").getSIDouble(0);
|
||||
}
|
||||
} else {
|
||||
OPM_THROW(std::runtime_error, "SDENSITY must be specified in SOLVENT runs\n");
|
||||
@@ -232,16 +232,16 @@ SolventPropsAdFromDeck::SolventPropsAdFromDeck(DeckConstPtr deck,
|
||||
}
|
||||
|
||||
if (deck->hasKeyword("TLMIXPAR")) {
|
||||
const int numRegions = deck->getKeyword("TLMIXPAR")->size();
|
||||
const int numRegions = deck->getKeyword("TLMIXPAR").size();
|
||||
|
||||
// resize the attributes of the object
|
||||
mix_param_viscosity_.resize(numRegions);
|
||||
mix_param_density_.resize(numRegions);
|
||||
for (int regionIdx = 0; regionIdx < numRegions; ++regionIdx) {
|
||||
const auto& tlmixparRecord = deck->getKeyword("TLMIXPAR")->getRecord(regionIdx);
|
||||
const auto& mix_params_viscosity = tlmixparRecord->getItem("TL_VISCOSITY_PARAMETER")->getSIDoubleData();
|
||||
const auto& tlmixparRecord = deck->getKeyword("TLMIXPAR").getRecord(regionIdx);
|
||||
const auto& mix_params_viscosity = tlmixparRecord.getItem("TL_VISCOSITY_PARAMETER").getSIDoubleData();
|
||||
mix_param_viscosity_[regionIdx] = mix_params_viscosity[0];
|
||||
const auto& mix_params_density = tlmixparRecord->getItem("TL_DENSITY_PARAMETER")->getSIDoubleData();
|
||||
const auto& mix_params_density = tlmixparRecord.getItem("TL_DENSITY_PARAMETER").getSIDoubleData();
|
||||
const int numDensityItems = mix_params_density.size();
|
||||
if (numDensityItems == 0) {
|
||||
mix_param_density_[regionIdx] = mix_param_viscosity_[regionIdx];
|
||||
|
||||
Reference in New Issue
Block a user