|
ReservoirCouplingSlaveReportStep.hpp
Go to the documentation of this file.
33// Avoid including the complete definition of ReservoirCouplingSlave here to avoid circular dependency.
123 std::pair<Scalar, Group::ProductionCMode> masterProductionTarget(const std::string& gname) const;
147 void sendProductionDataToMaster(const std::vector<SlaveGroupProductionData> &production_data) const;
159 void sendInjectionDataToMaster(const std::vector<SlaveGroupInjectionData> &injection_data) const;
175 const std::string& gname, const Phase phase, const Scalar target, const Group::InjectionCMode cmode);
186 void setMasterProductionTarget(const std::string& gname, const Scalar target, const Group::ProductionCMode cmode);
226 std::map<std::pair<Phase, std::string>, std::pair<Scalar, Group::InjectionCMode>> master_injection_targets_;
Definition: ReservoirCoupling.hpp:42 Definition: ReservoirCouplingSlave.hpp:40 Manages slave-side reservoir coupling operations for a single report step. Definition: ReservoirCouplingSlaveReportStep.hpp:55 MPI_Comm getSlaveMasterComm() const Get the MPI communicator for slave-master communication. Definition: ReservoirCouplingSlaveReportStep.hpp:76 const std::string & slaveName() const Get the name of this slave process. Definition: ReservoirCouplingSlaveReportStep.hpp:167 std::pair< Scalar, Group::ProductionCMode > masterProductionTarget(const std::string &gname) const Get the master-imposed production target and control mode for a group. void setMasterInjectionTarget(const std::string &gname, const Phase phase, const Scalar target, const Group::InjectionCMode cmode) Store a master-imposed injection target for a group and phase. bool hasMasterInjectionTarget(const std::string &gname, const Phase phase) const Check if a master-imposed injection target exists for a group and phase. void setFirstSubstepOfSyncTimestep(bool value) Set whether this is the first substep within a "sync" timestep. Definition: ReservoirCouplingSlaveReportStep.hpp:163 void receiveProductionGroupConstraintsFromMaster(std::size_t num_targets) Receive production group constraints from master and store them locally. const MasterProductionLimits & masterProductionLimits(const std::string &gname) const Get the master-imposed per-rate-type production limits for a group. bool hasMasterProductionLimits(const std::string &gname) const Check if master-imposed per-rate-type production limits exist for a group. const Parallel::Communication & comm() const Get the MPI communicator for intra-slave communication. Definition: ReservoirCouplingSlaveReportStep.hpp:72 void setMasterProductionTarget(const std::string &gname, const Scalar target, const Group::ProductionCMode cmode) Store a master-imposed production target for a group. ReservoirCoupling::Logger & logger() const Get the logger for reservoir coupling operations. Definition: ReservoirCouplingSlaveReportStep.hpp:103 void sendProductionDataToMaster(const std::vector< SlaveGroupProductionData > &production_data) const Send production data to the master process. 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. bool hasMasterProductionTarget(const std::string &gname) const Check if a master-imposed production target exists for a group. std::pair< std::size_t, std::size_t > receiveNumGroupConstraintsFromMaster() const Receive the number of injection and production constraints from master. void sendInjectionDataToMaster(const std::vector< SlaveGroupInjectionData > &injection_data) const Send injection data to the master process. void receiveInjectionGroupTargetsFromMaster(std::size_t num_targets) Receive injection group targets from master and store them locally. ReservoirCouplingSlaveReportStep(ReservoirCouplingSlave< Scalar > &slave) Construct a report step manager for the slave process. bool isFirstSubstepOfSyncTimestep() const Check if this is the first substep within a "sync" timestep. Definition: ReservoirCouplingSlaveReportStep.hpp:99 void setMasterProductionLimits(const std::string &gname, const MasterProductionLimits &limits) Store master-imposed per-rate-type production limits for a group. 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:156 Definition: blackoilbioeffectsmodules.hh:45 Definition: ReservoirCoupling.hpp:235 Per-rate-type production limits received from master hierarchy. A value of -1 means no limit defined ... Definition: ReservoirCoupling.hpp:263 Definition: ReservoirCoupling.hpp:245 Definition: ReservoirCoupling.hpp:229 Definition: ReservoirCoupling.hpp:211 |