23#ifndef OPM_BLACKOILWELLMODEL_CONSTRAINTS_HEADER_INCLUDED
24#define OPM_BLACKOILWELLMODEL_CONSTRAINTS_HEADER_INCLUDED
26#include <opm/input/eclipse/Schedule/Group/Group.hpp>
32class BlackoilWellModelGeneric;
44 : wellModel_(wellModel)
52 const int reportStepIdx,
57 const Group::InjectionCMode& newControl,
58 const Phase& controlPhase,
64 const int reportStepIdx,
65 const Group::GroupLimitAction group_limit_action,
66 const Group::ProductionCMode& newControl,
68 std::optional<std::string>& worst_offending_well,
74 const int reportStepIdx,
75 std::map<std::pair<std::string,Opm::Phase>,std::string>& switched_inj,
76 std::map<std::string, std::string>& switched_prod,
77 std::map<std::string, std::pair<std::string, std::string>>& closed_offending_wells,
84 std::pair<Group::InjectionCMode, double>
85 checkGroupInjectionConstraints(
const Group& group,
86 const int reportStepIdx,
87 const Phase& phase)
const;
90 std::pair<Group::ProductionCMode, double>
91 checkGroupProductionConstraints(
const Group& group,
92 const int reportStepIdx,
Class for handling constraints for the blackoil well model.
Definition BlackoilWellModelConstraints.hpp:40
void actionOnBrokenConstraints(const Group &group, const Group::InjectionCMode &newControl, const Phase &controlPhase, GroupState &group_state, DeferredLogger &deferred_logger) const
Execute action for broken constraint for an injection well group.
Definition BlackoilWellModelConstraints.cpp:382
BlackoilWellModelConstraints(const BlackoilWellModelGeneric &wellModel)
Constructor initializes reference to the well model.
Definition BlackoilWellModelConstraints.hpp:43
bool checkGroupConstraints(const Group &group, const int reportStepIdx, DeferredLogger &deferred_logger) const
Check the constraints of a well group.
Definition BlackoilWellModelConstraints.cpp:345
bool updateGroupIndividualControl(const Group &group, const int reportStepIdx, std::map< std::pair< std::string, Opm::Phase >, std::string > &switched_inj, std::map< std::string, std::string > &switched_prod, std::map< std::string, std::pair< std::string, std::string > > &closed_offending_wells, GroupState &group_state, WellState &well_state, DeferredLogger &deferred_logger) const
Update the individual controls for wells in a group. Return true if a group control is changed.
Definition BlackoilWellModelConstraints.cpp:497
bool hasTHPConstraints() const
Return true if any well has a THP constraint.
Definition BlackoilWellModelConstraints.cpp:41
Class for handling the blackoil well model.
Definition BlackoilWellModelGeneric.hpp:83
Definition DeferredLogger.hpp:57
Definition GroupState.hpp:34
The state of a set of wells, tailored for use by the fully implicit blackoil simulator.
Definition WellState.hpp:61
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition BlackoilPhases.hpp:27