opm-simulators
Loading...
Searching...
No Matches
Opm::GasLiftStage2< Scalar, IndexTraits > Class Template Reference
Inheritance diagram for Opm::GasLiftStage2< Scalar, IndexTraits >:
Opm::GasLiftCommon< Scalar, IndexTraits >

Classes

struct  OptimizeState
struct  SurplusState

Public Member Functions

 GasLiftStage2 (const int report_step_idx, const Parallel::Communication &comm, const Schedule &schedule, const SummaryState &summary_state, DeferredLogger &deferred_logger, WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, GLiftProdWells &prod_wells, GLiftOptWells &glift_wells, GasLiftGroupInfo< Scalar, IndexTraits > &group_info, GLiftWellStateMap &state_map, bool glift_debug)
void runOptimize ()

Protected Member Functions

void addOrRemoveALQincrement_ (GradMap &grad_map, const std::string &well_name, bool add)
std::optional< GradInfo > calcIncOrDecGrad_ (const std::string name, const GasLiftSingleWell &gs_well, const std::string &gr_name_dont_limit, bool increase)
bool checkRateAlreadyLimited_ (const std::string &well_name, GasLiftWellState< Scalar > &state, bool increase)
GradInfo deleteDecGradItem_ (const std::string &name)
GradInfo deleteIncGradItem_ (const std::string &name)
GradInfo deleteGrad_ (const std::string &name, bool increase)
void displayDebugMessage_ (const std::string &msg) const override
void displayDebugMessage2B_ (const std::string &msg)
void displayDebugMessage_ (const std::string &msg, const std::string &group_name)
void displayWarning_ (const std::string &msg, const std::string &group_name)
void displayWarning_ (const std::string &msg)
std::tuple< Scalar, Scalar, Scalar, Scalar > getCurrentGroupRates_ (const Group &group)
std::optional< Scalar > getGroupMaxALQ_ (const Group &group)
std::optional< Scalar > getGroupMaxTotalGas_ (const Group &group)
std::vector< GasLiftSingleWell * > getGroupGliftWells_ (const Group &group)
void getGroupGliftWellsRecursive_ (const Group &group, std::vector< GasLiftSingleWell * > &wells)
void optimizeGroup_ (const Group &group)
void optimizeGroupsRecursive_ (const Group &group)
void recalculateGradientAndUpdateData_ (GradPairItr &grad_itr, const std::string &gr_name_dont_limit, bool increase, std::vector< GradPair > &grads, std::vector< GradPair > &other_grads)
void redistributeALQ_ (std::vector< GasLiftSingleWell * > &wells, const Group &group, std::vector< GradPair > &inc_grads, std::vector< GradPair > &dec_grads)
void removeSurplusALQ_ (const Group &group, std::vector< GradPair > &dec_grads)
void saveGrad_ (GradMap &map, const std::string &name, GradInfo &grad)
void saveDecGrad_ (const std::string &name, GradInfo &grad)
void saveIncGrad_ (const std::string &name, GradInfo &grad)
void sortGradients_ (std::vector< GradPair > &grads)
std::optional< GradInfo > updateGrad_ (const std::string &name, GradInfo &grad, bool increase)
void updateGradVector_ (const std::string &name, std::vector< GradPair > &grads, Scalar grad)
void mpiSyncGlobalGradVector_ (std::vector< GradPair > &grads_global) const
void mpiSyncLocalToGlobalGradVector_ (const std::vector< GradPair > &grads_local, std::vector< GradPair > &grads_global) const
std::array< Scalar, 4 > computeDelta (const std::string &name, bool add)
void updateGroupInfo (const std::string &name, bool add)
Protected Member Functions inherited from Opm::GasLiftCommon< Scalar, IndexTraits >
 GasLiftCommon (WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, DeferredLogger &deferred_logger, const Parallel::Communication &comm, bool glift_debug)
void displayDebugMessageOnRank0_ (const std::string &msg) const
void logMessage_ (const std::string &prefix, const std::string &msg, MessageType msg_type=MessageType::INFO) const

Protected Attributes

GLiftProdWells & prod_wells_
GLiftOptWells & stage1_wells_
GasLiftGroupInfo< Scalar, IndexTraits > & group_info_
GLiftWellStateMap & well_state_map_
int report_step_idx_
const SummaryState & summary_state_
const Schedule & schedule_
const GasLiftOpt & glo_
GradMap inc_grads_
GradMap dec_grads_
int max_iterations_ = 1000
Protected Attributes inherited from Opm::GasLiftCommon< Scalar, IndexTraits >
WellState< Scalar, IndexTraits > & well_state_
const GroupState< Scalar > & group_state_
DeferredLoggerdeferred_logger_
const Parallel::Communication & comm_
bool debug
bool debug_output_only_on_rank0 = false

Additional Inherited Members

Protected Types inherited from Opm::GasLiftCommon< Scalar, IndexTraits >
enum class  MessageType { INFO , WARNING }

Member Function Documentation

◆ displayDebugMessage_()

template<typename Scalar, typename IndexTraits>
void Opm::GasLiftStage2< Scalar, IndexTraits >::displayDebugMessage_ ( const std::string & msg) const
overrideprotectedvirtual

The documentation for this class was generated from the following files: