From 4392cc87134b6b111959e6c271605ef1a05f5e7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A5rd=20Skaflestad?= Date: Wed, 30 Jun 2021 17:21:52 +0200 Subject: [PATCH] Don't Access Phase Rates Unless Active Fixes two-phase Oil/Water runs. Probably needs more refinement later. --- opm/simulators/wells/GasLiftGroupInfo.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/opm/simulators/wells/GasLiftGroupInfo.cpp b/opm/simulators/wells/GasLiftGroupInfo.cpp index bbecb76b0..ac1d18f42 100644 --- a/opm/simulators/wells/GasLiftGroupInfo.cpp +++ b/opm/simulators/wells/GasLiftGroupInfo.cpp @@ -300,10 +300,16 @@ GasLiftGroupInfo:: getProducerWellRates_(int well_index) { const auto& pu = this->phase_usage_; - auto oil_rate = - -this->well_state_.wellRates(well_index)[pu.phase_pos[Oil]]; - auto gas_rate = - -this->well_state_.wellRates(well_index)[pu.phase_pos[Gas]]; + const auto& wrate = this->well_state_.wellRates(well_index); + + const auto oil_rate = pu.phase_used[Oil] + ? -wrate[pu.phase_pos[Oil]] + : 0.0; + + const auto gas_rate = pu.phase_used[Gas] + ? -wrate[pu.phase_pos[Gas]] + : 0.0; + return {oil_rate, gas_rate}; }