|
GroupStateHelper.hpp
Go to the documentation of this file.
171 std::vector<std::string> groupChainTopBot(const std::string& bottom, const std::string& top) const;
354 std::optional<GSatProd::GSatProdGroupProp::Rate> selectRateComponent_(const int phase_pos) const;
371 // NOTE: The phase usage info seems to be read-only throughout the simulation, so it should be safe
392 std::map<std::string, std::unique_ptr<AverageRegionalPressureType>>& regional_average_pressure_calculator)
396 this->setRegionAveragePressureCalculator(this->schedule_.getGroup(groupName, this->report_step_),
500 // we only activate gpmaint if pressure is lower than the target regional pressure for injectors
Definition: DeferredLogger.hpp:57 Definition: GroupStateHelper.hpp:86 GroupStateGuard(GroupStateGuard &&)=delete GroupStateGuard & operator=(GroupStateGuard &&)=delete GroupStateGuard(GroupStateHelper &group_state_helper, GroupState< Scalar > &group_state) Definition: GroupStateHelper.hpp:88 GroupStateGuard(const GroupStateGuard &)=delete ~GroupStateGuard() Definition: GroupStateHelper.hpp:96 GroupStateGuard & operator=(const GroupStateGuard &)=delete Definition: GroupStateHelper.hpp:57 WellStateGuard(WellStateGuard &&)=delete WellStateGuard(const WellStateGuard &)=delete ~WellStateGuard() Definition: GroupStateHelper.hpp:67 WellStateGuard & operator=(const WellStateGuard &)=delete WellStateGuard & operator=(WellStateGuard &&)=delete WellStateGuard(GroupStateHelper &groupStateHelper, WellState< Scalar, IndexTraits > &well_state) Definition: GroupStateHelper.hpp:59 Definition: GroupStateHelper.hpp:53 void updateWellRatesFromGroupTargetScale(const Scalar scale, const Group &group, bool is_injector, WellState< Scalar, IndexTraits > &well_state) const void setRegionAveragePressureCalculator(const Group &group, const FieldPropsManager &fp, std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > ®ional_average_pressure_calculator) const Definition: GroupStateHelper.hpp:389 void setCmodeGroup(const Group &group) Scalar getInjectionGroupTarget(const Group &group, const Phase &injection_phase, const std::vector< Scalar > &resv_coeff, DeferredLogger &deferred_logger) const std::vector< std::string > groupChainTopBot(const std::string &bottom, const std::string &top) const void updateVREPForGroups(const Group &group) void updateWellRates(const Group &group, const WellState< Scalar, IndexTraits > &well_state_nupcol, WellState< Scalar, IndexTraits > &well_state) const ReservoirCouplingMaster< Scalar > & reservoirCouplingMaster() Definition: GroupStateHelper.hpp:230 GroupState< Scalar > & groupState() const Definition: GroupStateHelper.hpp:180 Scalar sumWellResRates(const Group &group, const int phase_pos, const bool injector) const void accumulateGroupEfficiencyFactor(const Group &group, Scalar &factor) const int groupControlledWells(const std::string &group_name, const std::string &always_included_child, const bool is_production_group, const Phase injection_phase) const const PhaseUsageInfo< IndexTraits > & phaseUsage() const Definition: GroupStateHelper.hpp:217 std::pair< bool, Scalar > checkGroupConstraintsProd(const std::string &name, const std::string &parent, const Group &group, const Scalar *rates, const Scalar efficiency_factor, const std::vector< Scalar > &resv_coeff, const bool check_guide_rate, DeferredLogger &deferred_logger) const const SummaryState & summaryState() const Definition: GroupStateHelper.hpp:257 const GuideRate & guideRate() const Definition: GroupStateHelper.hpp:210 ReservoirCoupling::Proxy< Scalar > & rescoup() Get the reservoir coupling proxy. Definition: GroupStateHelper.hpp:224 void updateReservoirRatesInjectionGroups(const Group &group) const WellState< Scalar, IndexTraits > & wellState() const Definition: GroupStateHelper.hpp:306 const PhaseUsageInfo< IndexTraits > & phaseUsageInfo() const Definition: GroupStateHelper.hpp:185 GuideRate::RateVector getWellRateVector(const std::string &name) const int updateGroupControlledWells(const bool is_production_group, const Phase injection_phase, DeferredLogger &deferred_logger) Scalar sumSolventRates(const Group &group, const bool is_injector) const const Schedule & schedule() const Definition: GroupStateHelper.hpp:205 void updateGroupTargetReduction(const Group &group, const bool is_injector) std::optional< Scalar > getWellGroupTargetProducer(const std::string &name, const std::string &parent, const Group &group, const Scalar *rates, const Scalar efficiency_factor, const std::vector< Scalar > &resv_coeff, DeferredLogger &deferred_logger) const GuideRate::RateVector getProductionGroupRateVector(const std::string &group_name) const void updateGroupProductionRates(const Group &group) GroupStateHelper(WellState< Scalar, IndexTraits > &well_state, GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summary_state, const GuideRate &guide_rate, const PhaseUsageInfo< IndexTraits > &phase_usage_info) void updateGpMaintTargetForGroups(const Group &group, const RegionalValues ®ional_values, const double dt) Definition: GroupStateHelper.hpp:424 int phaseToActivePhaseIdx(const Phase phase) const Scalar sumWellSurfaceRates(const Group &group, const int phase_pos, const bool injector) const std::pair< std::optional< std::string >, Scalar > worstOffendingWell(const Group &group, const Group::ProductionCMode &offended_control, const Parallel::Communication &comm, DeferredLogger &deferred_logger) const Returns the name of the worst offending well and its fraction (i.e. violated_phase / preferred_phase) Scalar getGuideRate(const std::string &name, const GuideRateModel::Target target) const void setReportStep(int report_step) Definition: GroupStateHelper.hpp:251 void updateState(WellState< Scalar, IndexTraits > &well_state, GroupState< Scalar > &group_state) const ReservoirCoupling::Proxy< Scalar > & rescoup() const Definition: GroupStateHelper.hpp:225 bool isReservoirCouplingMaster() const Definition: GroupStateHelper.hpp:227 void updateNetworkLeafNodeProductionRates() WellStateGuard pushWellState(WellState< Scalar, IndexTraits > &well_state) Definition: GroupStateHelper.hpp:195 GroupStateGuard pushGroupState(GroupState< Scalar > &group_state) Definition: GroupStateHelper.hpp:190 ReservoirCouplingSlave< Scalar > & reservoirCouplingSlave() Definition: GroupStateHelper.hpp:231 std::optional< Scalar > getWellGroupTargetInjector(const std::string &name, const std::string &parent, const Group &group, const Scalar *rates, const Phase injection_phase, const Scalar efficiency_factor, const std::vector< Scalar > &resv_coeff, DeferredLogger &deferred_logger) const Scalar sumWellPhaseRates(bool res_rates, const Group &group, const int phase_pos, const bool injector, const bool network=false) const void updateREINForGroups(const Group &group, bool sum_rank) bool isReservoirCouplingSlave() const Definition: GroupStateHelper.hpp:228 std::pair< bool, Scalar > checkGroupConstraintsInj(const std::string &name, const std::string &parent, const Group &group, const Scalar *rates, const Phase injection_phase, const Scalar efficiency_factor, const std::vector< Scalar > &resv_coeff, const bool check_guide_rate, DeferredLogger &deferred_logger) const Scalar getProductionGroupTarget(const Group &group, DeferredLogger &deferred_logger) const void updateSurfaceRatesInjectionGroups(const Group &group) Definition: GroupState.hpp:41 Definition: GasLiftGroupInfo.hpp:37 Thin proxy for reservoir coupling master/slave pointers. Definition: RescoupProxy.hpp:53 Definition: ReservoirCouplingMaster.hpp:38 Definition: ReservoirCouplingSlave.hpp:40 Definition: WellState.hpp:66 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:141 Definition: blackoilbioeffectsmodules.hh:43 |