53 using RateConvFunc = std::function<void(
const RegionId,
const int,
54 const std::optional<std::string>&, std::vector<Scalar>&)>;
56 template<
class EvalWell>
57 void getGroupInjectionControl(
const Group& group,
60 const Schedule& schedule,
61 const SummaryState& summaryState,
62 const InjectorType& injectorType,
64 const EvalWell& injection_rate,
65 const RateConvFunc& rateConverter,
66 Scalar efficiencyFactor,
71 getGroupInjectionTargetRate(
const Group& group,
74 const Schedule& schedule,
75 const SummaryState& summaryState,
76 const InjectorType& injectorType,
77 const RateConvFunc& rateConverter,
78 Scalar efficiencyFactor,
81 template<
class EvalWell>
82 void getGroupProductionControl(
const Group& group,
85 const Schedule& schedule,
86 const SummaryState& summaryState,
88 const std::vector<EvalWell>& rates,
89 const RateConvFunc& rateConverter,
90 Scalar efficiencyFactor,
94 Scalar getGroupProductionTargetRate(
const Group& group,
97 const Schedule& schedule,
98 const SummaryState& summaryState,
99 const RateConvFunc& rateConverter,
100 Scalar efficiencyFactor,
103 static std::pair<Scalar, Group::ProductionCMode> getAutoChokeGroupProductionTargetRate(
const std::string& name,
107 const Schedule& schedule,
108 const SummaryState& summaryState,
109 const std::vector<Scalar>& resv_coeff,
110 Scalar efficiencyFactor,
111 const int reportStepIdx,
112 const GuideRate* guideRate,
WellGroupControls(const WellInterfaceGeneric< Scalar, IndexTraits > &well)
Constructor sets reference to well.
Definition WellGroupControls.hpp:51