Introduce WellState::stopWell()

This commit is contained in:
Joakim Hove 2020-12-10 09:54:37 +01:00
parent bd3fa0af88
commit f5f3d8a98e
3 changed files with 10 additions and 2 deletions

View File

@ -748,7 +748,7 @@ namespace Opm {
continue;
} else {
// stopped wells are added to the container but marked as stopped
well_state_.thp()[w] = 0.;
well_state_.stopWell(w);
wellIsStopped = true;
}
}
@ -795,7 +795,7 @@ namespace Opm {
}
if (well_status == Well::Status::STOP) {
well_state_.thp()[w] = 0.;
well_state_.stopWell(w);
wellIsStopped = true;
}

View File

@ -225,6 +225,10 @@ namespace Opm
this->wellrates_[np * well_index + p] = 0;
}
virtual void stopWell(int well_index) {
this->status_[well_index] = Well::Status::STOP;
this->thp_[well_index] = 0;
}
virtual data::Wells report(const PhaseUsage& pu, const int* globalCellIdxMap) const
{

View File

@ -1075,6 +1075,10 @@ namespace Opm
this->well_reservoir_rates_[np * well_index + p] = 0;
}
virtual void stopWell(int well_index) override {
WellState::stopWell(well_index);
}
template<class Comm>
void communicateGroupRates(const Comm& comm)
{