|
ReservoirCouplingSlave.hpp
Go to the documentation of this file.
119 std::pair<Scalar, Group::ProductionCMode> masterProductionTarget(const std::string& gname) const;
148 void sendInjectionDataToMaster(const std::vector<SlaveGroupInjectionData> &injection_data) const;
150 void sendProductionDataToMaster(const std::vector<SlaveGroupProductionData> &production_data) const;
211 // True if no GRUPMAST keyword in the master schedule and no GRUPSLAV keyword in the slave schedule
218 // Later, the master process will send us group name indices, and not the group names themselves,
Definition: DeferredLogger.hpp:57 Definition: ReservoirCoupling.hpp:42 void setDeferredLogger(DeferredLogger *deferred_logger) Definition: ReservoirCoupling.hpp:54 void clearDeferredLogger() Definition: ReservoirCoupling.hpp:47 Definition: ReservoirCouplingSlave.hpp:40 const std::map< std::string, std::string > & getSlaveToMasterGroupNameMap() const Definition: ReservoirCouplingSlave.hpp:59 ReservoirCouplingSlave(const Parallel::Communication &comm, const Schedule &schedule, const SimulatorTimer &timer) const std::string & getSlaveName() const Definition: ReservoirCouplingSlave.hpp:58 void setFirstSubstepOfSyncTimestep(bool value) bool lastReceivedMasterGroupNodePressuresIsFinal() const Whether the most recent master-group-node-pressures receive carried the is_final flag. Scalar masterGroupNodePressure(const std::string &gname) const Get the master-computed network-leaf node pressure for a master group. void sendProductionDataToMaster(const std::vector< SlaveGroupProductionData > &production_data) const std::size_t numSlaveGroups() const Definition: ReservoirCouplingSlave.hpp:121 bool isFirstSubstepOfSyncTimestep() const std::pair< Scalar, Group::ProductionCMode > masterProductionTarget(const std::string &gname) const Get the master-imposed production target and control mode for a group. const Parallel::Communication & getComm() const Definition: ReservoirCouplingSlave.hpp:56 bool isSlaveGroup(const std::string &group_name) const std::pair< std::size_t, bool > receiveNumMasterGroupNodePressuresFromMaster() Receive the master-group-node-pressures header from master. void receiveCoupledNetworkActiveStatusFromMaster() Receive the master's single-bool flag for the current sync timestep and mirror it into the slave's lo... std::pair< std::size_t, std::size_t > receiveNumGroupConstraintsFromMaster() const const MasterProductionLimits & masterProductionLimits(const std::string &gname) const Get the master-imposed per-rate-type production limits for a group. void receiveInjectionGroupTargetsFromMaster(std::size_t num_targets) Receive injection group targets from master and store them locally. void initTimeStepping() void receiveProductionGroupConstraintsFromMaster(std::size_t num_targets) Receive production group constraints from master and store them locally. bool connectedToMasterCoupledNetwork() const Whether this slave is connected to the master's cross-rescoup network this sync step. bool isLastSubstepOfSyncTimestep() const Check if this is the last substep within a "sync" timestep. void sendAndReceiveInitialData() void setDeferredLogger(DeferredLogger *deferred_logger) Definition: ReservoirCouplingSlave.hpp:151 MPI_Comm getMasterComm() const Definition: ReservoirCouplingSlave.hpp:57 void clearDeferredLogger() Definition: ReservoirCouplingSlave.hpp:55 bool hasMasterInjectionTarget(const std::string &gname, const Phase phase) const Check if a master-imposed injection target exists for a group and phase. const std::map< std::string, Scalar > & masterGroupNodePressures() const Get the full map of master-computed network-leaf node pressures. void sendNextReportDateToMasterProcess() const std::pair< Scalar, Group::InjectionCMode > masterInjectionTarget(const std::string &gname, const Phase phase) const Get the master-imposed injection target and control mode for a group and phase. ReservoirCoupling::Logger & logger() Definition: ReservoirCouplingSlave.hpp:98 bool maybeReceiveTerminateSignalFromMaster() Blocking receive for terminate/continue signal from master. bool hasMasterGroupNodePressure(const std::string &gname) const Check if a master-computed network-leaf node pressure exists for a master group. const std::string & slaveGroupIdxToGroupName(std::size_t group_idx) const Definition: ReservoirCouplingSlave.hpp:164 bool terminated() const Definition: ReservoirCouplingSlave.hpp:167 void sendInjectionDataToMaster(const std::vector< SlaveGroupInjectionData > &injection_data) const bool hasMasterProductionTarget(const std::string &gname) const Check if a master-imposed production target exists for a group. bool activated() const Definition: ReservoirCouplingSlave.hpp:54 ReservoirCoupling::Logger & logger() const Definition: ReservoirCouplingSlave.hpp:99 void setLastSubstepOfSyncTimestep(bool value) Set whether this is the last substep within a "sync" timestep. void maybeActivate(int report_step) bool hasMasterProductionLimits(const std::string &gname) const Check if master-imposed per-rate-type production limits exist for a group. void receiveTerminateAndDisconnect() Receive terminate signal from master and disconnect the intercommunicator. void receiveMasterGroupNodePressuresFromMaster(std::size_t num_pressures) Receive master-computed network-leaf node pressures from master. void markSlaveGroupsInSchedule(Schedule &schedule, int report_step_idx) Mark slave groups in the Schedule as production/injection groups. typename ReservoirCoupling::MasterProductionLimits< Scalar > MasterProductionLimits Definition: ReservoirCouplingSlave.hpp:48 double receiveNextTimeStepFromMaster() Definition: SimulatorTimer.hpp:39 Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 Phase Phase indices for reservoir coupling, we currently only support black-oil phases (oil,... Definition: ReservoirCoupling.hpp:159 Definition: blackoilbioeffectsmodules.hh:45 Definition: ReservoirCoupling.hpp:238 Master-computed network-leaf node pressure for a single master group. Definition: ReservoirCoupling.hpp:281 Per-rate-type production limits received from master hierarchy. A value of -1 means no limit defined ... Definition: ReservoirCoupling.hpp:266 Definition: ReservoirCoupling.hpp:190 Definition: ReservoirCoupling.hpp:248 Definition: ReservoirCoupling.hpp:232 Definition: ReservoirCoupling.hpp:214 |