24#ifndef OPM_WELL_GROUP_CONTROLS_HEADER_INCLUDED
25#define OPM_WELL_GROUP_CONTROLS_HEADER_INCLUDED
27#include <opm/input/eclipse/Schedule/Group/GuideRate.hpp>
38template<
class Scalar>
class GroupState;
44template<
class Scalar>
class WellInterfaceGeneric;
45template<
class Scalar>
class WellState;
54 using RateConvFunc = std::function<
void(
const RegionId,
const int,
55 const std::optional<std::string>&, std::vector<Scalar>&)>;
57 template<
class EvalWell>
58 void getGroupInjectionControl(
const Group& group,
66 const RateConvFunc& rateConverter,
72 getGroupInjectionTargetRate(
const Group& group,
78 const RateConvFunc& rateConverter,
82 template<
class EvalWell>
83 void getGroupProductionControl(
const Group& group,
89 const std::vector<EvalWell>& rates,
90 const RateConvFunc& rateConverter,
95 Scalar getGroupProductionTargetRate(
const Group& group,
100 const RateConvFunc& rateConverter,
104 static std::pair<Scalar, Group::ProductionCMode> getAutoChokeGroupProductionTargetRate(
const std::string& name,
Definition DeferredLogger.hpp:57
Definition GroupState.hpp:43
Class for computing well group controls.
Definition WellGroupControls.hpp:49
WellGroupControls(const WellInterfaceGeneric< Scalar > &well)
Constructor sets reference to well.
Definition WellGroupControls.hpp:52
Definition WellInterfaceGeneric.hpp:53
The state of a set of wells, tailored for use by the fully implicit blackoil simulator.
Definition WellState.hpp:66
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