Merge pull request #3159 from totto82/updateWellTargetFix

get bhp from thp without solving
This commit is contained in:
Tor Harald Sandve 2021-04-26 13:15:30 +02:00 committed by GitHub
commit 12880be916
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1547,17 +1547,12 @@ namespace Opm
} }
case Well::ProducerCMode::THP: case Well::ProducerCMode::THP:
{ {
well_state.thp()[well_index] = this->getTHPConstraint(summaryState); std::vector<double> rates(3, 0.0);
gliftDebug( for (int p = 0; p<np; ++p) {
"computing BHP from THP to update well state", rates[p] = well_state.wellRates()[well_index*np + p];
deferred_logger);
auto bhp = computeBhpAtThpLimitProd(well_state, ebos_simulator, summaryState, deferred_logger);
if (bhp) {
well_state.bhp()[well_index] = *bhp;
} else {
deferred_logger.warning("FAILURE_GETTING_CONVERGED_BHP",
"Failed to find BHP when switching to THP control for well " + name());
} }
double bhp = calculateBhpFromThp(well_state, rates, well, summaryState, deferred_logger);
well_state.bhp()[well_index] = bhp;
break; break;
} }
case Well::ProducerCMode::GRUP: case Well::ProducerCMode::GRUP: