21#ifndef OPM_TARGETCALCULATOR_HEADER_INCLUDED
22#define OPM_TARGETCALCULATOR_HEADER_INCLUDED
24#include <opm/input/eclipse/Schedule/Group/Group.hpp>
25#include <opm/input/eclipse/Schedule/Group/GuideRate.hpp>
34template<
class Scalar>
class GroupState;
53 template <
typename RateType>
54 RateType calcModeRateFromRates(
const std::vector<RateType>& rates)
const
56 return calcModeRateFromRates(rates.data());
59 template <
typename RateType>
62 Scalar groupTarget(
const std::optional<Group::ProductionControls>&
ctrl,
65 GuideRateModel::Target guideTargetMode()
const;
68 Group::ProductionCMode cmode_;
70 const std::vector<Scalar>& resv_coeff_;
71 const Scalar group_grat_target_from_sales_;
72 const std::string& group_name_;
93 template <
typename RateVec>
94 auto calcModeRateFromRates(
const RateVec& rates)
const
99 Scalar groupTarget(
const std::optional<Group::InjectionControls>&
ctrl,
102 GuideRateModel::Target guideTargetMode()
const;
105 Group::InjectionCMode cmode_;
107 const std::vector<Scalar>& resv_coeff_;
108 const std::string& group_name_;
109 Scalar sales_target_;
113 GuideRateModel::Target target_;
Definition DeferredLogger.hpp:57
Definition GroupState.hpp:38
Based on a group control mode, extract or calculate rates, and provide other conveniences.
Definition TargetCalculator.hpp:81
Based on a group control mode, extract or calculate rates, and provide other conveniences.
Definition TargetCalculator.hpp:43
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition blackoilboundaryratevector.hh:37
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:242
Definition BlackoilPhases.hpp:46