mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
adding three-phase simulator including water evaporation and saltpreciopitation
This commit is contained in:
parent
aaf063ed98
commit
c2fa5fc5a8
@ -388,7 +388,7 @@ add_dependencies(moduleVersion opmsimulators)
|
|||||||
set(FLOW_MODELS blackoil brine energy extbo foam gasoil gaswater
|
set(FLOW_MODELS blackoil brine energy extbo foam gasoil gaswater
|
||||||
oilwater oilwater_brine gaswater_brine oilwater_polymer
|
oilwater oilwater_brine gaswater_brine oilwater_polymer
|
||||||
oilwater_polymer_injectivity micp polymer solvent
|
oilwater_polymer_injectivity micp polymer solvent
|
||||||
gasoil_energy brine_saltprecipitation gaswater_saltprec_vapwat)
|
gasoil_energy brine_saltprecipitation gaswater_saltprec_vapwat brine_precsalt_vapwat)
|
||||||
set(FLOW_VARIANT_MODELS brine_energy onephase onephase_energy)
|
set(FLOW_VARIANT_MODELS brine_energy onephase onephase_energy)
|
||||||
|
|
||||||
set(FLOW_TGTS)
|
set(FLOW_TGTS)
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
#include <flow/flow_ebos_brine.hpp>
|
#include <flow/flow_ebos_brine.hpp>
|
||||||
#include <flow/flow_ebos_brine_saltprecipitation.hpp>
|
#include <flow/flow_ebos_brine_saltprecipitation.hpp>
|
||||||
#include <flow/flow_ebos_gaswater_saltprec_vapwat.hpp>
|
#include <flow/flow_ebos_gaswater_saltprec_vapwat.hpp>
|
||||||
|
#include <flow/flow_ebos_brine_precsalt_vapwat.hpp>
|
||||||
#include <flow/flow_ebos_oilwater_brine.hpp>
|
#include <flow/flow_ebos_oilwater_brine.hpp>
|
||||||
#include <flow/flow_ebos_gaswater_brine.hpp>
|
#include <flow/flow_ebos_gaswater_brine.hpp>
|
||||||
#include <flow/flow_ebos_energy.hpp>
|
#include <flow/flow_ebos_energy.hpp>
|
||||||
@ -685,9 +686,17 @@ private:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (eclipseState_->getSimulationConfig().hasPRECSALT()) {
|
else if (eclipseState_->getSimulationConfig().hasPRECSALT()) {
|
||||||
flowEbosBrineSaltPrecipitationSetDeck(
|
if (eclipseState_->getSimulationConfig().hasVAPWAT()) {
|
||||||
setupTime_, deck_, eclipseState_, schedule_, summaryConfig_);
|
//case with water vaporization into gas phase and salt precipitation
|
||||||
return flowEbosBrineSaltPrecipitationMain(argc_, argv_, outputCout_, outputFiles_);
|
flowEbosBrinePrecsaltVapwatSetDeck(
|
||||||
|
setupTime_, deck_, eclipseState_, schedule_, summaryConfig_);
|
||||||
|
return flowEbosBrinePrecsaltVapwatMain(argc_, argv_, outputCout_, outputFiles_);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
flowEbosBrineSaltPrecipitationSetDeck(
|
||||||
|
setupTime_, deck_, eclipseState_, schedule_, summaryConfig_);
|
||||||
|
return flowEbosBrineSaltPrecipitationMain(argc_, argv_, outputCout_, outputFiles_);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
flowEbosBrineSetDeck(
|
flowEbosBrineSetDeck(
|
||||||
|
@ -289,6 +289,7 @@ namespace Opm
|
|||||||
perf_vap_oil_rate = getValue(vap_oil);
|
perf_vap_oil_rate = getValue(vap_oil);
|
||||||
}
|
}
|
||||||
if (FluidSystem::phaseIsActive(FluidSystem::waterPhaseIdx)) {
|
if (FluidSystem::phaseIsActive(FluidSystem::waterPhaseIdx)) {
|
||||||
|
const unsigned waterCompIdx = Indices::canonicalToActiveComponentIndex(FluidSystem::waterCompIdx);
|
||||||
const Value vap_wat = rvw * cq_sGas;
|
const Value vap_wat = rvw * cq_sGas;
|
||||||
cq_s[waterCompIdx] += vap_wat;
|
cq_s[waterCompIdx] += vap_wat;
|
||||||
if (this->isProducer())
|
if (this->isProducer())
|
||||||
|
Loading…
Reference in New Issue
Block a user