| 
        
#include <WellGroupHelper.hpp>
 
|  |  |  | WellGroupHelper (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 | accumulateGroupEfficiencyFactor (const Group &group, Scalar &factor) const |  |  |  | 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 |  |  |  | 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 |  |  |  | std::map< std::string, Scalar > | computeNetworkPressures (const Network::ExtNetwork &network, const VFPProdProperties< Scalar > &vfp_prod_props, const Parallel::Communication &comm) const |  |  |  | Scalar | getGuideRate (const std::string &name, const GuideRateModel::Target target) const |  |  |  | GuideRate::RateVector | getProductionGroupRateVector (const std::string &group_name) const |  |  |  | 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 | 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 | getWellRateVector (const std::string &name) const |  |  |  | std::vector< std::string > | groupChainTopBot (const std::string &bottom, const std::string &top) 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 GroupState< Scalar > & | groupState () const |  |  |  | const PhaseUsageInfo< IndexTraits > & | phaseUsageInfo () const |  |  |  | GroupStateGuard | pushGroupState (GroupState< Scalar > &group_state) |  |  |  | WellStateGuard | pushWellState (WellState< Scalar, IndexTraits > &well_state) |  |  |  | void | setCmodeGroup (const Group &group, GroupState< Scalar > &group_state) const |  |  |  | template<class AverageRegionalPressureType > |  | void | setRegionAveragePressureCalculator (const Group &group, const FieldPropsManager &fp, std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > ®ional_average_pressure_calculator) const |  |  |  | void | setReportStep (int report_step) |  |  |  | Scalar | sumSolventRates (const Group &group, const bool is_injector) const |  |  |  | Scalar | sumWellResRates (const Group &group, const int phase_pos, const bool injector) const |  |  |  | Scalar | sumWellSurfaceRates (const Group &group, const int phase_pos, const bool injector) const |  |  |  | Scalar | sumWellPhaseRates (bool res_rates, const Group &group, const int phase_pos, const bool injector, const bool network=false) const |  |  |  | template<class RegionalValues > |  | void | updateGpMaintTargetForGroups (const Group &group, const RegionalValues ®ional_values, const double dt, GroupState< Scalar > &group_state) const |  |  |  | int | updateGroupControlledWells (const bool is_production_group, const Phase injection_phase, GroupState< Scalar > &group_state, DeferredLogger &deferred_logger) const |  |  |  | void | updateGroupProductionRates (const Group &group, GroupState< Scalar > &group_state) const |  |  |  | void | updateGroupTargetReduction (const Group &group, const bool is_injector, GroupState< Scalar > &group_state) const |  |  |  | void | updateNetworkLeafNodeProductionRates (GroupState< Scalar > &group_state) const |  |  |  | void | updateREINForGroups (const Group &group, bool sum_rank, GroupState< Scalar > &group_state) const |  |  |  | void | updateReservoirRatesInjectionGroups (const Group &group, GroupState< Scalar > &group_state) const |  |  |  | void | updateVREPForGroups (const Group &group, GroupState< Scalar > &group_state) const |  |  |  | void | updateState (WellState< Scalar, IndexTraits > &well_state, GroupState< Scalar > &group_state) |  |  |  | void | updateSurfaceRatesInjectionGroups (const Group &group, GroupState< Scalar > &group_state) const |  |  |  | void | updateWellRates (const Group &group, const WellState< Scalar, IndexTraits > &well_state_nupcol, WellState< Scalar, IndexTraits > &well_state) const |  |  |  | const WellState< Scalar, IndexTraits > & | wellState () const |  |  |  | void | updateWellRatesFromGroupTargetScale (const Scalar scale, const Group &group, bool is_injector, WellState< Scalar, IndexTraits > &well_state) 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)  More... 
 |  |  |  ◆ WellGroupHelper()
template<typename Scalar , typename IndexTraits >  
        
          | Opm::WellGroupHelper< Scalar, IndexTraits >::WellGroupHelper | ( | 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 |  
          |  | ) |  |  |  
 ◆ accumulateGroupEfficiencyFactor()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::accumulateGroupEfficiencyFactor | ( | const Group & | group, |  
          |  |  | Scalar & | factor |  
          |  | ) |  | const |  
 ◆ checkGroupConstraintsInj()
template<typename Scalar , typename IndexTraits >  
        
          | std::pair< bool, Scalar > Opm::WellGroupHelper< Scalar, IndexTraits >::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 |  
 ◆ checkGroupConstraintsProd()
template<typename Scalar , typename IndexTraits >  
        
          | std::pair< bool, Scalar > Opm::WellGroupHelper< Scalar, IndexTraits >::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 |  
 ◆ computeNetworkPressures()
template<typename Scalar , typename IndexTraits >  
 ◆ getGuideRate()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::getGuideRate | ( | const std::string & | name, |  
          |  |  | const GuideRateModel::Target | target |  
          |  | ) |  | const |  
 ◆ getProductionGroupRateVector()
template<typename Scalar , typename IndexTraits >  
        
          | GuideRate::RateVector Opm::WellGroupHelper< Scalar, IndexTraits >::getProductionGroupRateVector | ( | const std::string & | group_name | ) | const |  
 ◆ getWellGroupTargetInjector()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::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 |  
 ◆ getWellGroupTargetProducer()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::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 |  
 ◆ getWellRateVector()
template<typename Scalar , typename IndexTraits >  
        
          | GuideRate::RateVector Opm::WellGroupHelper< Scalar, IndexTraits >::getWellRateVector | ( | const std::string & | name | ) | const |  
 ◆ groupChainTopBot()
template<typename Scalar , typename IndexTraits >  
        
          | std::vector< std::string > Opm::WellGroupHelper< Scalar, IndexTraits >::groupChainTopBot | ( | const std::string & | bottom, |  
          |  |  | const std::string & | top |  
          |  | ) |  | const |  
 ◆ groupControlledWells()
template<typename Scalar , typename IndexTraits >  
        
          | int Opm::WellGroupHelper< Scalar, IndexTraits >::groupControlledWells | ( | const std::string & | group_name, |  
          |  |  | const std::string & | always_included_child, |  
          |  |  | const bool | is_production_group, |  
          |  |  | const Phase | injection_phase |  
          |  | ) |  | const |  
returns the number of wells that are actively under group control for a given group with name given by group_name  ◆ groupState()
template<typename Scalar , typename IndexTraits >  ◆ phaseUsageInfo()
template<typename Scalar , typename IndexTraits >  
 ◆ pushGroupState()
template<typename Scalar , typename IndexTraits >  ◆ pushWellState()
template<typename Scalar , typename IndexTraits >  ◆ setCmodeGroup()
template<typename Scalar , typename IndexTraits >  
 ◆ setRegionAveragePressureCalculator()
template<typename Scalar , typename IndexTraits >  
template<class AverageRegionalPressureType >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::setRegionAveragePressureCalculator | ( | const Group & | group, |  
          |  |  | const FieldPropsManager & | fp, |  
          |  |  | std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > & | regional_average_pressure_calculator |  
          |  | ) |  | const |  
 ◆ setReportStep()
template<typename Scalar , typename IndexTraits >  
 ◆ sumSolventRates()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::sumSolventRates | ( | const Group & | group, |  
          |  |  | const bool | is_injector |  
          |  | ) |  | const |  
 ◆ sumWellPhaseRates()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::sumWellPhaseRates | ( | bool | res_rates, |  
          |  |  | const Group & | group, |  
          |  |  | const int | phase_pos, |  
          |  |  | const bool | injector, |  
          |  |  | const bool | network = false |  
          |  | ) |  | const |  
 ◆ sumWellResRates()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::sumWellResRates | ( | const Group & | group, |  
          |  |  | const int | phase_pos, |  
          |  |  | const bool | injector |  
          |  | ) |  | const |  
 ◆ sumWellSurfaceRates()
template<typename Scalar , typename IndexTraits >  
        
          | Scalar Opm::WellGroupHelper< Scalar, IndexTraits >::sumWellSurfaceRates | ( | const Group & | group, |  
          |  |  | const int | phase_pos, |  
          |  |  | const bool | injector |  
          |  | ) |  | const |  
 ◆ updateGpMaintTargetForGroups()
template<typename Scalar , typename IndexTraits >  
template<class RegionalValues >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateGpMaintTargetForGroups | ( | const Group & | group, |  
          |  |  | const RegionalValues & | regional_values, |  
          |  |  | const double | dt, |  
          |  |  | GroupState< Scalar > & | group_state |  
          |  | ) |  | const |  ◆ updateGroupControlledWells()
template<typename Scalar , typename IndexTraits >  
update the number of wells that are actively under group control for a given group with name given by group_name its main usage is to detect cases where there is no wells under group control  ◆ updateGroupProductionRates()
template<typename Scalar , typename IndexTraits >  
 ◆ updateGroupTargetReduction()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateGroupTargetReduction | ( | const Group & | group, |  
          |  |  | const bool | is_injector, |  
          |  |  | GroupState< Scalar > & | group_state |  
          |  | ) |  | const |  
 ◆ updateNetworkLeafNodeProductionRates()
template<typename Scalar , typename IndexTraits >  
 ◆ updateREINForGroups()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateREINForGroups | ( | const Group & | group, |  
          |  |  | bool | sum_rank, |  
          |  |  | GroupState< Scalar > & | group_state |  
          |  | ) |  | const |  
 ◆ updateReservoirRatesInjectionGroups()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateReservoirRatesInjectionGroups | ( | const Group & | group, |  
          |  |  | GroupState< Scalar > & | group_state |  
          |  | ) |  | const |  
 ◆ updateState()
template<typename Scalar , typename IndexTraits >  ◆ updateSurfaceRatesInjectionGroups()
template<typename Scalar , typename IndexTraits >  
 ◆ updateVREPForGroups()
template<typename Scalar , typename IndexTraits >  
 ◆ updateWellRates()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateWellRates | ( | const Group & | group, |  
          |  |  | const WellState< Scalar, IndexTraits > & | well_state_nupcol, |  
          |  |  | WellState< Scalar, IndexTraits > & | well_state |  
          |  | ) |  | const |  
 ◆ updateWellRatesFromGroupTargetScale()
template<typename Scalar , typename IndexTraits >  
        
          | void Opm::WellGroupHelper< Scalar, IndexTraits >::updateWellRatesFromGroupTargetScale | ( | const Scalar | scale, |  
          |  |  | const Group & | group, |  
          |  |  | bool | is_injector, |  
          |  |  | WellState< Scalar, IndexTraits > & | well_state |  
          |  | ) |  | const |  
 ◆ wellState()
template<typename Scalar , typename IndexTraits >  ◆ worstOffendingWell()
template<typename Scalar , typename IndexTraits >  
Returns the name of the worst offending well and its fraction (i.e. violated_phase / preferred_phase)  
 The documentation for this class was generated from the following files:   |