diff --git a/opm/autodiff/FlowMainEbos.hpp b/opm/autodiff/FlowMainEbos.hpp index b2bfdabb9..54a6727ce 100644 --- a/opm/autodiff/FlowMainEbos.hpp +++ b/opm/autodiff/FlowMainEbos.hpp @@ -284,7 +284,8 @@ namespace Opm Base::deck_->hasKeyword("VAPOIL"), Base::eclipse_state_, *Base::output_writer_, - Base::threshold_pressures_)); + Base::threshold_pressures_, + Base::defunct_well_names_)); } private: diff --git a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp index fcb91801c..d4797bc71 100644 --- a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp +++ b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp @@ -103,7 +103,8 @@ public: const bool has_vapoil, std::shared_ptr eclipse_state, BlackoilOutputWriterEbos& output_writer, - const std::vector& threshold_pressures_by_face) + const std::vector& threshold_pressures_by_face, + const std::unordered_set& defunct_well_names) : ebosSimulator_(ebosSimulator), param_(param), model_param_(param), @@ -118,6 +119,7 @@ public: terminal_output_(param.getDefault("output_terminal", true)), output_writer_(output_writer), threshold_pressures_by_face_(threshold_pressures_by_face), + defunct_well_names_( defunct_well_names ), is_parallel_run_( false ) { DUNE_UNUSED_PARAMETER(eclipse_state); @@ -229,7 +231,8 @@ public: props_.permeability(), dynamic_list_econ_limited, is_parallel_run_, - well_potentials ); + well_potentials, + defunct_well_names_ ); const Wells* wells = wells_manager.c_wells(); WellState well_state; @@ -733,6 +736,11 @@ protected: std::unique_ptr rateConverter_; // Threshold pressures. std::vector threshold_pressures_by_face_; + // The names of wells that should be defunct + // (e.g. in a parallel run when they are handeled by + // a different process) + std::unordered_set defunct_well_names_; + // Whether this a parallel simulation or not bool is_parallel_run_;