#include <GasLiftSingleWell.hpp>

Inheritance diagram for Opm::GasLiftSingleWell< TypeTag >:
Inheritance graph

Public Types

using Rate = typename GasLiftGroupInfo< GetPropType< TypeTag, Properties::Scalar > >::Rate
 
using MessageType = typename GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::MessageType
 

Public Member Functions

 GasLiftSingleWell (const WellInterface< TypeTag > &well, const Simulator &simulator, const SummaryState &summary_state, DeferredLogger &deferred_logger, WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, GasLiftGroupInfo< Scalar > &group_info, GLiftSyncGroups &sync_groups, const Parallel::Communication &comm, bool glift_debug)
 
const WellInterfaceGeneric< Scalar > & getWell () const override
 
const std::string & name () const
 
std::optional< GradInfo > calcIncOrDecGradient (GetPropType< TypeTag, Properties::Scalar > oil_rate, GetPropType< TypeTag, Properties::Scalar > gas_rate, GetPropType< TypeTag, Properties::Scalar > water_rate, GetPropType< TypeTag, Properties::Scalar > alq, const std::string &gr_name_dont_limit, bool increase, bool debug_output=true) const
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > runOptimize (const int iteration_idx)
 

Protected Member Functions

bool checkGroupALQrateExceeded (GetPropType< TypeTag, Properties::Scalar > delta_alq, const std::string &gr_name_dont_limit="") const
 
bool checkGroupTotalRateExceeded (GetPropType< TypeTag, Properties::Scalar > delta_alq, GetPropType< TypeTag, Properties::Scalar > delta_gas_rate) const
 
std::pair< std::optional< GetPropType< TypeTag, Properties::Scalar > >, bool > addOrSubtractAlqIncrement_ (GetPropType< TypeTag, Properties::Scalar > alq, bool increase) const
 
GetPropType< TypeTag, Properties::ScalarcalcEcoGradient_ (GetPropType< TypeTag, Properties::Scalar > oil_rate, GetPropType< TypeTag, Properties::Scalar > new_oil_rate, GetPropType< TypeTag, Properties::Scalar > gas_rate, GetPropType< TypeTag, Properties::Scalar > new_gas_rate, bool increase) const
 
bool checkALQequal_ (GetPropType< TypeTag, Properties::Scalar > alq1, GetPropType< TypeTag, Properties::Scalar > alq2) const
 
bool checkGroupTargetsViolated (const BasicRates &rates, const BasicRates &new_rates) const
 
bool checkInitialALQmodified_ (GetPropType< TypeTag, Properties::Scalar > alq, GetPropType< TypeTag, Properties::Scalar > initial_alq) const
 
virtual std::optional< GetPropType< TypeTag, Properties::Scalar > > computeBhpAtThpLimit_ (GetPropType< TypeTag, Properties::Scalar > alq, bool debug_output=true) const=0
 
std::pair< std::optional< GetPropType< TypeTag, Properties::Scalar > >, GetPropType< TypeTag, Properties::Scalar > > computeConvergedBhpAtThpLimitByMaybeIncreasingALQ_ () const
 
std::pair< std::optional< BasicRates >, GetPropType< TypeTag, Properties::Scalar > > computeInitialWellRates_ () const
 
std::optional< LimitedRates > computeLimitedWellRatesWithALQ_ (GetPropType< TypeTag, Properties::Scalar > alq) const
 
virtual BasicRates computeWellRates_ (GetPropType< TypeTag, Properties::Scalar > bhp, bool bhp_is_limited, bool debug_output=true) const=0
 
std::optional< BasicRates > computeWellRatesWithALQ_ (GetPropType< TypeTag, Properties::Scalar > alq) const
 
void debugCheckNegativeGradient_ (GetPropType< TypeTag, Properties::Scalar > grad, GetPropType< TypeTag, Properties::Scalar > alq, GetPropType< TypeTag, Properties::Scalar > new_alq, GetPropType< TypeTag, Properties::Scalar > oil_rate, GetPropType< TypeTag, Properties::Scalar > new_oil_rate, GetPropType< TypeTag, Properties::Scalar > gas_rate, GetPropType< TypeTag, Properties::Scalar > new_gas_rate, bool increase) const
 
void debugPrintWellStateRates () const
 
void debugShowAlqIncreaseDecreaseCounts_ ()
 
void debugShowBhpAlqTable_ ()
 
void debugShowLimitingTargets_ (const LimitedRates &rates) const
 
void debugShowProducerControlMode () const
 
void debugShowStartIteration_ (GetPropType< TypeTag, Properties::Scalar > alq, bool increase, GetPropType< TypeTag, Properties::Scalar > oil_rate)
 
void debugShowTargets_ ()
 
void displayDebugMessage_ (const std::string &msg) const override
 
void displayWarning_ (const std::string &warning)
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getBhpWithLimit_ (GetPropType< TypeTag, Properties::Scalar > bhp) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getGasRateWithLimit_ (const BasicRates &rates) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getGasRateWithGroupLimit_ (GetPropType< TypeTag, Properties::Scalar > new_gas_rate, GetPropType< TypeTag, Properties::Scalar > gas_rate, const std::string &gr_name_dont_limit) const
 
std::pair< std::optional< LimitedRates >, GetPropType< TypeTag, Properties::Scalar > > getInitialRatesWithLimit_ () const
 
LimitedRates getLimitedRatesFromRates_ (const BasicRates &rates) const
 
std::tuple< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::Scalar >, bool, bool > getLiquidRateWithGroupLimit_ (const GetPropType< TypeTag, Properties::Scalar > new_oil_rate, const GetPropType< TypeTag, Properties::Scalar > oil_rate, const GetPropType< TypeTag, Properties::Scalar > new_water_rate, const GetPropType< TypeTag, Properties::Scalar > water_rate, const std::string &gr_name_dont_limit) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getOilRateWithGroupLimit_ (GetPropType< TypeTag, Properties::Scalar > new_oil_rate, GetPropType< TypeTag, Properties::Scalar > oil_rate, const std::string &gr_name_dont_limit) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getOilRateWithLimit_ (const BasicRates &rates) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, std::optional< Rate > > getOilRateWithLimit2_ (const BasicRates &rates) const
 
GetPropType< TypeTag, Properties::ScalargetProductionTarget_ (Rate rate) const
 
GetPropType< TypeTag, Properties::ScalargetRate_ (Rate rate_type, const BasicRates &rates) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, std::optional< Rate > > getRateWithLimit_ (Rate rate_type, const BasicRates &rates) const
 
std::tuple< GetPropType< TypeTag, Properties::Scalar >, const std::string *, GetPropType< TypeTag, Properties::Scalar > > getRateWithGroupLimit_ (Rate rate_type, const GetPropType< TypeTag, Properties::Scalar > new_rate, const GetPropType< TypeTag, Properties::Scalar > old_rate, const std::string &gr_name_dont_limit) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getWaterRateWithGroupLimit_ (GetPropType< TypeTag, Properties::Scalar > new_water_rate, GetPropType< TypeTag, Properties::Scalar > water_rate, const std::string &gr_name_dont_limit) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, bool > getWaterRateWithLimit_ (const BasicRates &rates) const
 
std::pair< GetPropType< TypeTag, Properties::Scalar >, std::optional< Rate > > getWaterRateWithLimit2_ (const BasicRates &rates) const
 
BasicRates getWellStateRates_ () const
 
bool hasProductionControl_ (Rate rate) const
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > increaseALQtoPositiveOilRate_ (GetPropType< TypeTag, Properties::Scalar > alq, const LimitedRates &orig_rates) const
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > increaseALQtoMinALQ_ (GetPropType< TypeTag, Properties::Scalar > alq, const LimitedRates &orig_rates) const
 
void logSuccess_ (GetPropType< TypeTag, Properties::Scalar > alq, const int iteration_idx)
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > maybeAdjustALQbeforeOptimizeLoop_ (const LimitedRates &rates, GetPropType< TypeTag, Properties::Scalar > alq, bool increase) const
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > reduceALQtoGroupAlqLimits_ (GetPropType< TypeTag, Properties::Scalar > alq, const LimitedRates &rates) const
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > reduceALQtoGroupTarget (GetPropType< TypeTag, Properties::Scalar > alq, const LimitedRates &rates) const
 
std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > reduceALQtoWellTarget_ (GetPropType< TypeTag, Properties::Scalar > alq, const LimitedRates &rates) const
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > runOptimize1_ ()
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > runOptimize2_ ()
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > runOptimizeLoop_ (bool increase)
 
void setAlqMinRate_ (const GasLiftWell &well)
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > tryIncreaseLiftGas_ ()
 
std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > tryDecreaseLiftGas_ ()
 
void updateGroupRates_ (const LimitedRates &rates, const LimitedRates &new_rates, GetPropType< TypeTag, Properties::Scalar > delta_alq) const
 
LimitedRates updateRatesToGroupLimits_ (const BasicRates &rates, const LimitedRates &new_rates, const std::string &gr_name="") const
 
void updateWellStateAlqFixedValue_ (const GasLiftWell &well)
 
bool useFixedAlq_ (const GasLiftWell &well)
 
void debugInfoGroupRatesExceedTarget (Rate rate_type, const std::string &gr_name, GetPropType< TypeTag, Properties::Scalar > rate, GetPropType< TypeTag, Properties::Scalar > target) const
 
void warnMaxIterationsExceeded_ ()
 
int debugUpdateGlobalCounter_ () const
 
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

const Well & ecl_well_
 
const SummaryState & summary_state_
 
GasLiftGroupInfo< GetPropType< TypeTag, Properties::Scalar > > & group_info_
 
const PhaseUsagephase_usage_
 
GLiftSyncGroups & sync_groups_
 
const WellProductionControls controls_
 
GetPropType< TypeTag, Properties::Scalarincrement_
 
GetPropType< TypeTag, Properties::Scalarmax_alq_
 
GetPropType< TypeTag, Properties::Scalarmin_alq_
 
GetPropType< TypeTag, Properties::Scalarorig_alq_
 
GetPropType< TypeTag, Properties::Scalaralpha_w_
 
GetPropType< TypeTag, Properties::Scalaralpha_g_
 
GetPropType< TypeTag, Properties::Scalareco_grad_
 
int gas_pos_
 
int oil_pos_
 
int water_pos_
 
int max_iterations_
 
std::string well_name_
 
const GasLiftWell * gl_well_
 
bool optimize_
 
bool debug_limit_increase_decrease_
 
bool debug_abort_if_decrease_and_oil_is_limited_
 
bool debug_abort_if_increase_and_gas_is_limited_
 
WellState< GetPropType< TypeTag, Properties::Scalar > > & well_state_
 
const GroupState< GetPropType< TypeTag, Properties::Scalar > > & group_state_
 
DeferredLoggerdeferred_logger_
 
const Parallel::Communicationcomm_
 
bool debug
 
bool debug_output_only_on_rank0
 

Static Protected Attributes

static constexpr int Water
 
static constexpr int Oil
 
static constexpr int Gas
 
static constexpr int NUM_PHASES
 
static constexpr GetPropType< TypeTag, Properties::ScalarALQ_EPSILON
 

Member Typedef Documentation

◆ MessageType

using Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::MessageType = typename GasLiftCommon<GetPropType< TypeTag, Properties::Scalar > >::MessageType
inherited

◆ Rate

using Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::Rate = typename GasLiftGroupInfo<GetPropType< TypeTag, Properties::Scalar > >::Rate
inherited

Constructor & Destructor Documentation

◆ GasLiftSingleWell()

template<typename TypeTag >
Opm::GasLiftSingleWell< TypeTag >::GasLiftSingleWell ( const WellInterface< TypeTag > &  well,
const Simulator &  simulator,
const SummaryState &  summary_state,
DeferredLogger deferred_logger,
WellState< Scalar > &  well_state,
const GroupState< Scalar > &  group_state,
GasLiftGroupInfo< Scalar > &  group_info,
GLiftSyncGroups &  sync_groups,
const Parallel::Communication comm,
bool  glift_debug 
)

Member Function Documentation

◆ addOrSubtractAlqIncrement_()

std::pair< std::optional< GetPropType< TypeTag, Properties::Scalar > >, bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::addOrSubtractAlqIncrement_ ( GetPropType< TypeTag, Properties::Scalar alq,
bool  increase 
) const
protectedinherited

◆ calcEcoGradient_()

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::calcEcoGradient_ ( GetPropType< TypeTag, Properties::Scalar oil_rate,
GetPropType< TypeTag, Properties::Scalar new_oil_rate,
GetPropType< TypeTag, Properties::Scalar gas_rate,
GetPropType< TypeTag, Properties::Scalar new_gas_rate,
bool  increase 
) const
protectedinherited

◆ calcIncOrDecGradient()

std::optional< GradInfo > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::calcIncOrDecGradient ( GetPropType< TypeTag, Properties::Scalar oil_rate,
GetPropType< TypeTag, Properties::Scalar gas_rate,
GetPropType< TypeTag, Properties::Scalar water_rate,
GetPropType< TypeTag, Properties::Scalar alq,
const std::string &  gr_name_dont_limit,
bool  increase,
bool  debug_output = true 
) const
inherited

◆ checkALQequal_()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkALQequal_ ( GetPropType< TypeTag, Properties::Scalar alq1,
GetPropType< TypeTag, Properties::Scalar alq2 
) const
protectedinherited

◆ checkGroupALQrateExceeded()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGroupALQrateExceeded ( GetPropType< TypeTag, Properties::Scalar delta_alq,
const std::string &  gr_name_dont_limit = "" 
) const
protectedinherited

◆ checkGroupTargetsViolated()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGroupTargetsViolated ( const BasicRates &  rates,
const BasicRates &  new_rates 
) const
protectedinherited

◆ checkGroupTotalRateExceeded()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGroupTotalRateExceeded ( GetPropType< TypeTag, Properties::Scalar delta_alq,
GetPropType< TypeTag, Properties::Scalar delta_gas_rate 
) const
protectedinherited

◆ checkInitialALQmodified_()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkInitialALQmodified_ ( GetPropType< TypeTag, Properties::Scalar alq,
GetPropType< TypeTag, Properties::Scalar initial_alq 
) const
protectedinherited

◆ computeBhpAtThpLimit_()

virtual std::optional< GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeBhpAtThpLimit_ ( GetPropType< TypeTag, Properties::Scalar alq,
bool  debug_output = true 
) const
protectedpure virtualinherited

◆ computeConvergedBhpAtThpLimitByMaybeIncreasingALQ_()

std::pair< std::optional< GetPropType< TypeTag, Properties::Scalar > >, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeConvergedBhpAtThpLimitByMaybeIncreasingALQ_ ( ) const
protectedinherited

◆ computeInitialWellRates_()

std::pair< std::optional< BasicRates >, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeInitialWellRates_ ( ) const
protectedinherited

◆ computeLimitedWellRatesWithALQ_()

std::optional< LimitedRates > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeLimitedWellRatesWithALQ_ ( GetPropType< TypeTag, Properties::Scalar alq) const
protectedinherited

◆ computeWellRates_()

virtual BasicRates Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeWellRates_ ( GetPropType< TypeTag, Properties::Scalar bhp,
bool  bhp_is_limited,
bool  debug_output = true 
) const
protectedpure virtualinherited

◆ computeWellRatesWithALQ_()

std::optional< BasicRates > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::computeWellRatesWithALQ_ ( GetPropType< TypeTag, Properties::Scalar alq) const
protectedinherited

◆ debugCheckNegativeGradient_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugCheckNegativeGradient_ ( GetPropType< TypeTag, Properties::Scalar grad,
GetPropType< TypeTag, Properties::Scalar alq,
GetPropType< TypeTag, Properties::Scalar new_alq,
GetPropType< TypeTag, Properties::Scalar oil_rate,
GetPropType< TypeTag, Properties::Scalar new_oil_rate,
GetPropType< TypeTag, Properties::Scalar gas_rate,
GetPropType< TypeTag, Properties::Scalar new_gas_rate,
bool  increase 
) const
protectedinherited

◆ debugInfoGroupRatesExceedTarget()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugInfoGroupRatesExceedTarget ( Rate  rate_type,
const std::string &  gr_name,
GetPropType< TypeTag, Properties::Scalar rate,
GetPropType< TypeTag, Properties::Scalar target 
) const
protectedinherited

◆ debugPrintWellStateRates()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugPrintWellStateRates ( ) const
protectedinherited

◆ debugShowAlqIncreaseDecreaseCounts_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowAlqIncreaseDecreaseCounts_ ( )
protectedinherited

◆ debugShowBhpAlqTable_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowBhpAlqTable_ ( )
protectedinherited

◆ debugShowLimitingTargets_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowLimitingTargets_ ( const LimitedRates &  rates) const
protectedinherited

◆ debugShowProducerControlMode()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowProducerControlMode ( ) const
protectedinherited

◆ debugShowStartIteration_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowStartIteration_ ( GetPropType< TypeTag, Properties::Scalar alq,
bool  increase,
GetPropType< TypeTag, Properties::Scalar oil_rate 
)
protectedinherited

◆ debugShowTargets_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debugShowTargets_ ( )
protectedinherited

◆ debugUpdateGlobalCounter_()

int Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::debugUpdateGlobalCounter_ ( ) const
protectedinherited

◆ displayDebugMessage_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::displayDebugMessage_ ( const std::string &  msg) const
overrideprotectedvirtualinherited

◆ displayDebugMessageOnRank0_()

void Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::displayDebugMessageOnRank0_ ( const std::string &  msg) const
protectedinherited

◆ displayWarning_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::displayWarning_ ( const std::string &  warning)
protectedinherited

◆ getBhpWithLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getBhpWithLimit_ ( GetPropType< TypeTag, Properties::Scalar bhp) const
protectedinherited

◆ getGasRateWithGroupLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getGasRateWithGroupLimit_ ( GetPropType< TypeTag, Properties::Scalar new_gas_rate,
GetPropType< TypeTag, Properties::Scalar gas_rate,
const std::string &  gr_name_dont_limit 
) const
protectedinherited

◆ getGasRateWithLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getGasRateWithLimit_ ( const BasicRates &  rates) const
protectedinherited

◆ getInitialRatesWithLimit_()

std::pair< std::optional< LimitedRates >, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getInitialRatesWithLimit_ ( ) const
protectedinherited

◆ getLimitedRatesFromRates_()

LimitedRates Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getLimitedRatesFromRates_ ( const BasicRates &  rates) const
protectedinherited

◆ getLiquidRateWithGroupLimit_()

std::tuple< GetPropType< TypeTag, Properties::Scalar > , GetPropType< TypeTag, Properties::Scalar > , bool, bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getLiquidRateWithGroupLimit_ ( const GetPropType< TypeTag, Properties::Scalar new_oil_rate,
const GetPropType< TypeTag, Properties::Scalar oil_rate,
const GetPropType< TypeTag, Properties::Scalar new_water_rate,
const GetPropType< TypeTag, Properties::Scalar water_rate,
const std::string &  gr_name_dont_limit 
) const
protectedinherited

◆ getOilRateWithGroupLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getOilRateWithGroupLimit_ ( GetPropType< TypeTag, Properties::Scalar new_oil_rate,
GetPropType< TypeTag, Properties::Scalar oil_rate,
const std::string &  gr_name_dont_limit 
) const
protectedinherited

◆ getOilRateWithLimit2_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , std::optional< Rate > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getOilRateWithLimit2_ ( const BasicRates &  rates) const
protectedinherited

◆ getOilRateWithLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getOilRateWithLimit_ ( const BasicRates &  rates) const
protectedinherited

◆ getProductionTarget_()

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getProductionTarget_ ( Rate  rate) const
protectedinherited

◆ getRate_()

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getRate_ ( Rate  rate_type,
const BasicRates &  rates 
) const
protectedinherited

◆ getRateWithGroupLimit_()

std::tuple< GetPropType< TypeTag, Properties::Scalar > , const std::string *, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getRateWithGroupLimit_ ( Rate  rate_type,
const GetPropType< TypeTag, Properties::Scalar new_rate,
const GetPropType< TypeTag, Properties::Scalar old_rate,
const std::string &  gr_name_dont_limit 
) const
protectedinherited

◆ getRateWithLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , std::optional< Rate > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getRateWithLimit_ ( Rate  rate_type,
const BasicRates &  rates 
) const
protectedinherited

◆ getWaterRateWithGroupLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWaterRateWithGroupLimit_ ( GetPropType< TypeTag, Properties::Scalar new_water_rate,
GetPropType< TypeTag, Properties::Scalar water_rate,
const std::string &  gr_name_dont_limit 
) const
protectedinherited

◆ getWaterRateWithLimit2_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , std::optional< Rate > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWaterRateWithLimit2_ ( const BasicRates &  rates) const
protectedinherited

◆ getWaterRateWithLimit_()

std::pair< GetPropType< TypeTag, Properties::Scalar > , bool > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWaterRateWithLimit_ ( const BasicRates &  rates) const
protectedinherited

◆ getWell()

template<class TypeTag >
const WellInterfaceGeneric< Scalar > & Opm::GasLiftSingleWell< TypeTag >::getWell ( ) const
inlineoverridevirtual

◆ getWellStateRates_()

BasicRates Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWellStateRates_ ( ) const
protectedinherited

◆ hasProductionControl_()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::hasProductionControl_ ( Rate  rate) const
protectedinherited

◆ increaseALQtoMinALQ_()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::increaseALQtoMinALQ_ ( GetPropType< TypeTag, Properties::Scalar alq,
const LimitedRates &  orig_rates 
) const
protectedinherited

◆ increaseALQtoPositiveOilRate_()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::increaseALQtoPositiveOilRate_ ( GetPropType< TypeTag, Properties::Scalar alq,
const LimitedRates &  orig_rates 
) const
protectedinherited

◆ logMessage_()

void Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::logMessage_ ( const std::string &  prefix,
const std::string &  msg,
MessageType  msg_type = MessageType::INFO 
) const
protectedinherited

◆ logSuccess_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::logSuccess_ ( GetPropType< TypeTag, Properties::Scalar alq,
const int  iteration_idx 
)
protectedinherited

◆ maybeAdjustALQbeforeOptimizeLoop_()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::maybeAdjustALQbeforeOptimizeLoop_ ( const LimitedRates &  rates,
GetPropType< TypeTag, Properties::Scalar alq,
bool  increase 
) const
protectedinherited

◆ name()

const std::string & Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::name ( ) const
inlineinherited

◆ reduceALQtoGroupAlqLimits_()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::reduceALQtoGroupAlqLimits_ ( GetPropType< TypeTag, Properties::Scalar alq,
const LimitedRates &  rates 
) const
protectedinherited

◆ reduceALQtoGroupTarget()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::reduceALQtoGroupTarget ( GetPropType< TypeTag, Properties::Scalar alq,
const LimitedRates &  rates 
) const
protectedinherited

◆ reduceALQtoWellTarget_()

std::pair< LimitedRates, GetPropType< TypeTag, Properties::Scalar > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::reduceALQtoWellTarget_ ( GetPropType< TypeTag, Properties::Scalar alq,
const LimitedRates &  rates 
) const
protectedinherited

◆ runOptimize()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::runOptimize ( const int  iteration_idx)
inherited

◆ runOptimize1_()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::runOptimize1_ ( )
protectedinherited

◆ runOptimize2_()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::runOptimize2_ ( )
protectedinherited

◆ runOptimizeLoop_()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::runOptimizeLoop_ ( bool  increase)
protectedinherited

◆ setAlqMinRate_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::setAlqMinRate_ ( const GasLiftWell &  well)
protectedinherited

◆ tryDecreaseLiftGas_()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::tryDecreaseLiftGas_ ( )
protectedinherited

◆ tryIncreaseLiftGas_()

std::unique_ptr< GasLiftWellState< GetPropType< TypeTag, Properties::Scalar > > > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::tryIncreaseLiftGas_ ( )
protectedinherited

◆ updateGroupRates_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateGroupRates_ ( const LimitedRates &  rates,
const LimitedRates &  new_rates,
GetPropType< TypeTag, Properties::Scalar delta_alq 
) const
protectedinherited

◆ updateRatesToGroupLimits_()

LimitedRates Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateRatesToGroupLimits_ ( const BasicRates &  rates,
const LimitedRates &  new_rates,
const std::string &  gr_name = "" 
) const
protectedinherited

◆ updateWellStateAlqFixedValue_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateWellStateAlqFixedValue_ ( const GasLiftWell &  well)
protectedinherited

◆ useFixedAlq_()

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::useFixedAlq_ ( const GasLiftWell &  well)
protectedinherited

◆ warnMaxIterationsExceeded_()

void Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::warnMaxIterationsExceeded_ ( )
protectedinherited

Member Data Documentation

◆ alpha_g_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::alpha_g_
protectedinherited

◆ alpha_w_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::alpha_w_
protectedinherited

◆ ALQ_EPSILON

constexpr GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::ALQ_EPSILON
staticconstexprprotectedinherited

◆ comm_

const Parallel::Communication& Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::comm_
protectedinherited

◆ controls_

const WellProductionControls Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::controls_
protectedinherited

◆ debug

bool Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::debug
protectedinherited

◆ debug_abort_if_decrease_and_oil_is_limited_

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debug_abort_if_decrease_and_oil_is_limited_
protectedinherited

◆ debug_abort_if_increase_and_gas_is_limited_

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debug_abort_if_increase_and_gas_is_limited_
protectedinherited

◆ debug_limit_increase_decrease_

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::debug_limit_increase_decrease_
protectedinherited

◆ debug_output_only_on_rank0

bool Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::debug_output_only_on_rank0
protectedinherited

◆ deferred_logger_

DeferredLogger& Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::deferred_logger_
protectedinherited

◆ ecl_well_

const Well& Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::ecl_well_
protectedinherited

◆ eco_grad_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::eco_grad_
protectedinherited

◆ Gas

constexpr int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::Gas
staticconstexprprotectedinherited

◆ gas_pos_

int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::gas_pos_
protectedinherited

◆ gl_well_

const GasLiftWell* Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::gl_well_
protectedinherited

◆ group_info_

GasLiftGroupInfo<GetPropType< TypeTag, Properties::Scalar > >& Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::group_info_
protectedinherited

◆ group_state_

const GroupState<GetPropType< TypeTag, Properties::Scalar > >& Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::group_state_
protectedinherited

◆ increment_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::increment_
protectedinherited

◆ max_alq_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::max_alq_
protectedinherited

◆ max_iterations_

int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::max_iterations_
protectedinherited

◆ min_alq_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::min_alq_
protectedinherited

◆ NUM_PHASES

constexpr int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::NUM_PHASES
staticconstexprprotectedinherited

◆ Oil

constexpr int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::Oil
staticconstexprprotectedinherited

◆ oil_pos_

int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::oil_pos_
protectedinherited

◆ optimize_

bool Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::optimize_
protectedinherited

◆ orig_alq_

GetPropType< TypeTag, Properties::Scalar > Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::orig_alq_
protectedinherited

◆ phase_usage_

const PhaseUsage& Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::phase_usage_
protectedinherited

◆ summary_state_

const SummaryState& Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::summary_state_
protectedinherited

◆ sync_groups_

GLiftSyncGroups& Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::sync_groups_
protectedinherited

◆ Water

constexpr int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::Water
staticconstexprprotectedinherited

◆ water_pos_

int Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::water_pos_
protectedinherited

◆ well_name_

std::string Opm::GasLiftSingleWellGeneric< GetPropType< TypeTag, Properties::Scalar > >::well_name_
protectedinherited

◆ well_state_

WellState<GetPropType< TypeTag, Properties::Scalar > >& Opm::GasLiftCommon< GetPropType< TypeTag, Properties::Scalar > >::well_state_
protectedinherited

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