23 #ifndef OPM_BLACKOILWELLMODEL_GUIDE_RATES_HEADER_INCLUDED 24 #define OPM_BLACKOILWELLMODEL_GUIDE_RATES_HEADER_INCLUDED 26 #include <opm/input/eclipse/Schedule/Group/GuideRate.hpp> 29 #include <unordered_map> 33 template<
typename Scalar,
typename IndexTraits>
class GroupStateHelper;
34 template<
typename Scalar,
typename IndexTraits>
class BlackoilWellModelGeneric;
37 struct GroupGuideRates;
45 template<
typename Scalar,
typename IndexTraits>
53 : wellModel_(wellModel)
57 std::unordered_map<std::string, data::GuideRateValue>
62 const int reportStepIdx)
const;
65 std::unordered_map<std::string, data::GroupGuideRates>
70 const std::unordered_map<std::string, data::GroupGuideRates>& groupGuideRates,
71 data::GroupData& gdata)
const;
76 const GroupStateHelperType& groupStateHelper()
const {
return wellModel_.groupStateHelper(); }
80 void getGuideRateValues(
const GuideRate::RateVector& qs,
82 const std::string& wgname,
83 data::GuideRateValue& grval)
const;
86 data::GuideRateValue getGuideRateValues(
const Well& well)
const;
89 data::GuideRateValue getGuideRateValues(
const Group& group)
const;
92 data::GuideRateValue getGuideRateInjectionGroupValues(
const Group& group)
const;
94 const BlackoilWellModelGeneric<Scalar, IndexTraits>& wellModel_;
Class for handling the blackoil well model.
Definition: ActionHandler.hpp:39
BlackoilWellModelGuideRates(const BlackoilWellModelGeneric< Scalar, IndexTraits > &wellModel)
Constructor initializes reference to the well model.
Definition: BlackoilWellModelGuideRates.hpp:52
bool guideRateUpdateIsNeeded(const int reportStepIdx) const
Check if a guide rate update is needed.
Definition: BlackoilWellModelGuideRates.cpp:588
void assignWellGuideRates(data::Wells &wsrpt, const int reportStepIdx) const
Assign well guide rates.
Definition: BlackoilWellModelGuideRates.cpp:478
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: blackoilbioeffectsmodules.hh:45
Definition: BlackoilWellModelConstraints.hpp:37
Class for handling the guide rates in the blackoil well model.
Definition: BlackoilWellModelGuideRates.hpp:46
std::unordered_map< std::string, data::GroupGuideRates > calculateAllGroupGuideRates(const int reportStepIdx) const
Calculates guide rate for all groups.
Definition: BlackoilWellModelGuideRates.cpp:500
std::unordered_map< std::string, data::GuideRateValue > calculateWellGuideRates(const int reportStepIdx) const
Calculate guide rate values for all wells.
Definition: BlackoilWellModelGuideRates.cpp:393
void assignGroupGuideRates(const Group &group, const std::unordered_map< std::string, data::GroupGuideRates > &groupGuideRates, data::GroupData &gdata) const
Assign group guide rates.
Definition: BlackoilWellModelGuideRates.cpp:560