20#ifndef SIMULATOR_UPDATE_HPP
21#define SIMULATOR_UPDATE_HPP
24#include <unordered_set>
41 return simulatorUpdate;
44 template<
class Serializer>
87 this->tran_update = this->tran_update || otherSimUpdate.
tran_update;
89 this->well_structure_changed = this->well_structure_changed
95 this->welpi_wells.insert(otherSimUpdate.
welpi_wells.begin(),
102 this->tran_update =
false;
103 this->well_structure_changed =
false;
104 this->affected_wells.clear();
105 this->welpi_wells.clear();
108 bool operator==(
const SimulatorUpdate& that)
const
Class for (de-)serializing.
Definition Serializer.hpp:94
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30
This struct is used to communicate back from the Schedule::applyAction() what needs to be updated in ...
Definition SimulatorUpdate.hpp:33
bool tran_update
Whether or not a transmissibility multiplier keyword was invoked in an ACTIONX block.
Definition SimulatorUpdate.hpp:65
std::unordered_set< std::string > welpi_wells
Wells affected only by WELPI for which the simulator needs to update its internal notion of the conne...
Definition SimulatorUpdate.hpp:59
DelayedIteration
Enumeration of how to handled delayed schedule iteration.
Definition SimulatorUpdate.hpp:75
@ On
Delayed iteration enabled.
Definition SimulatorUpdate.hpp:78
@ Possible
No current status.
Definition SimulatorUpdate.hpp:77
@ Off
Force delayed iteration off.
Definition SimulatorUpdate.hpp:76
bool well_structure_changed
Whether or not well structure changed in processing an ACTIONX block.
Definition SimulatorUpdate.hpp:72
std::unordered_set< std::string > affected_wells
Wells affected by ACTIONX and for which the simulator needs to reapply rates and state from the newly...
Definition SimulatorUpdate.hpp:55
DelayedIteration delayed_iteration
Whether or not to do schedule iteration after update has been applied.
Definition SimulatorUpdate.hpp:83