|
ReservoirCouplingMasterReportStep.hpp
Go to the documentation of this file.
36// Avoid including the complete definition of ReservoirCouplingMaster here to avoid circular dependency.
108 Scalar getMasterGroupInjectionSurfaceRate(const std::string &group_name, ReservoirCoupling::Phase phase) const;
114 Scalar getMasterGroupInjectionReservoirRate(const std::string &group_name, ReservoirCoupling::Phase phase) const;
120 Scalar getMasterGroupProductionSurfaceRate(const std::string &group_name, ReservoirCoupling::Phase phase) const;
144 Scalar getMasterGroupProductionReservoirRate(const std::string &group_name, ReservoirCoupling::Phase phase) const;
169 std::size_t numSlaveGroups(unsigned int index) const { return this->master_.numSlaveGroups(index); }
208 std::size_t slave_idx, std::size_t num_injection_targets, std::size_t num_production_constraints
Definition: ReservoirCoupling.hpp:42 Definition: ReservoirCouplingMaster.hpp:38 Manages master-side reservoir coupling operations for a single report step. Definition: ReservoirCouplingMasterReportStep.hpp:60 ReservoirCouplingMasterReportStep(ReservoirCouplingMaster< Scalar > &master) Construct a report step manager for the master process. void sendProductionConstraintsToSlave(std::size_t slave_idx, const std::vector< ProductionGroupConstraints > &production_constraints) const bool isFirstSubstepOfSyncTimestep() const Check if this is the first substep within a "sync" timestep. Definition: ReservoirCouplingMasterReportStep.hpp:156 const std::vector< std::string > & getMasterGroupNamesForSlave(std::size_t slave_idx) const Get the names of master groups associated with a specific slave. Definition: ReservoirCouplingMasterReportStep.hpp:82 MPI_Comm getSlaveComm(int index) const Get the MPI communicator for a specific slave process. Definition: ReservoirCouplingMasterReportStep.hpp:102 void receiveProductionDataFromSlaves() Receive production data from all active slave processes. Scalar getMasterGroupInjectionSurfaceRate(const std::string &group_name, ReservoirCoupling::Phase phase) const Get the injection surface rate for a master group. const Parallel::Communication & comm() const Get the MPI communicator for master-slave communication. Definition: ReservoirCouplingMasterReportStep.hpp:77 std::size_t getMasterGroupCanonicalIdx(const std::string &slave_name, const std::string &master_group_name) const Get the canonical index for a master group. const std::map< std::string, std::string > & getMasterGroupToSlaveNameMap() const Get the mapping from master group names to slave names. Definition: ReservoirCouplingMasterReportStep.hpp:88 void setNeedsSlaveDataReceive(bool value) Set/clear the flag for pending slave data receive. Definition: ReservoirCouplingMasterReportStep.hpp:164 Scalar getMasterGroupNetworkProductionSurfaceRate(const std::string &group_name, ReservoirCoupling::Phase phase) const Get the network production surface rate for a master group. void setReportStepIdx(int report_step_idx) Set the current report step index. Scalar getMasterGroupProductionSurfaceRate(const std::string &group_name, ReservoirCoupling::Phase phase) const Get the production surface rate for a master group. ReservoirCoupling::Logger & logger() const Get the logger for reservoir coupling operations. Definition: ReservoirCouplingMasterReportStep.hpp:177 data::ReservoirCouplingGroupRates collectGroupRatesForSummary() const Collect production/injection rates for all master groups. bool needsSlaveDataReceive() const Check if the master needs to receive slave data at the next timeStepSucceeded() call. Definition: ReservoirCouplingMasterReportStep.hpp:161 Scalar getMasterGroupProductionReservoirRate(const std::string &group_name, ReservoirCoupling::Phase phase) const Get the production reservoir rate for a master group. const Schedule & schedule() const Get the simulation schedule. Definition: ReservoirCouplingMasterReportStep.hpp:202 bool slaveIsActivated(int index) const Check if a specific slave process has been activated. Definition: ReservoirCouplingMasterReportStep.hpp:232 const Potentials & getSlaveGroupPotentials(const std::string &master_group_name) const Get the production potentials for a slave group. void receiveInjectionDataFromSlaves() Receive injection data from all active slave processes. std::size_t numSlaves() const Get the total number of active slave processes. Definition: ReservoirCouplingMasterReportStep.hpp:173 void sendInjectionTargetsToSlave(std::size_t slave_idx, const std::vector< InjectionGroupTarget > &injection_targets) const Scalar getMasterGroupInjectionReservoirRate(const std::string &group_name, ReservoirCoupling::Phase phase) const Get the injection reservoir rate for a master group. void setFirstSubstepOfSyncTimestep(bool value) Set whether this is the first substep within a "sync" timestep. Definition: ReservoirCouplingMasterReportStep.hpp:216 void sendNumGroupConstraintsToSlave(std::size_t slave_idx, std::size_t num_injection_targets, std::size_t num_production_constraints) const std::size_t numSlaveGroups(unsigned int index) const Get the number of slave groups for a specific slave process. Definition: ReservoirCouplingMasterReportStep.hpp:169 const std::string & slaveName(int index) const Get the name of a specific slave process. Definition: ReservoirCouplingMasterReportStep.hpp:237 Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 RateKind Selects which kind of rate to retrieve from slave group data. Definition: ReservoirCoupling.hpp:168 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 Definition: ReservoirCoupling.hpp:187 Definition: ReservoirCoupling.hpp:245 Definition: ReservoirCoupling.hpp:229 Definition: ReservoirCoupling.hpp:211 |