|
| GasLiftSingleWellGeneric (DeferredLogger &deferred_logger, WellState &well_state, const GroupState &group_state, const Well &ecl_well, const SummaryState &summary_state, GasLiftGroupInfo &group_info, const PhaseUsage &phase_usage, const Schedule &schedule, const int report_step_idx, GLiftSyncGroups &sync_groups, const Parallel::Communication &comm, bool glift_debug) |
|
bool | checkGroupALQrateExceeded (double delta_alq) const |
|
bool | checkGroupTotalRateExceeded (double delta_alq, double delta_gas_rate) const |
|
std::pair< std::optional< double >, bool > | addOrSubtractAlqIncrement_ (double alq, bool increase) const |
|
double | calcEcoGradient_ (double oil_rate, double new_oil_rate, double gas_rate, double new_gas_rate, bool increase) const |
|
bool | checkALQequal_ (double alq1, double alq2) const |
|
bool | checkGroupTargetsViolated (const BasicRates &rates, const BasicRates &new_rates) const |
|
bool | checkInitialALQmodified_ (double alq, double initial_alq) const |
|
virtual bool | checkThpControl_ () const =0 |
|
virtual std::optional< double > | computeBhpAtThpLimit_ (double alq) const =0 |
|
std::pair< std::optional< double >, double > | computeConvergedBhpAtThpLimitByMaybeIncreasingALQ_ () const |
|
std::pair< std::optional< BasicRates >, double > | computeInitialWellRates_ () const |
|
std::optional< LimitedRates > | computeLimitedWellRatesWithALQ_ (double alq) const |
|
virtual BasicRates | computeWellRates_ (double bhp, bool bhp_is_limited, bool debug_output=true) const =0 |
|
std::optional< BasicRates > | computeWellRatesWithALQ_ (double alq) const |
|
void | debugCheckNegativeGradient_ (double grad, double alq, double new_alq, double oil_rate, double new_oil_rate, double gas_rate, double new_gas_rate, bool increase) const |
|
void | debugPrintWellStateRates () const |
|
void | debugShowAlqIncreaseDecreaseCounts_ () |
|
void | debugShowBhpAlqTable_ () |
|
void | debugShowLimitingTargets_ (const LimitedRates &rates) const |
|
void | debugShowProducerControlMode () const |
|
void | debugShowStartIteration_ (double alq, bool increase, double oil_rate) |
|
void | debugShowTargets_ () |
|
void | displayDebugMessage_ (const std::string &msg) const override |
|
void | displayWarning_ (const std::string &warning) |
|
std::pair< double, bool > | getBhpWithLimit_ (double bhp) const |
|
std::pair< double, bool > | getGasRateWithLimit_ (const BasicRates &rates) const |
|
std::pair< double, bool > | getGasRateWithGroupLimit_ (double new_gas_rate, double gas_rate) const |
|
std::pair< std::optional< LimitedRates >, double > | getInitialRatesWithLimit_ () const |
|
LimitedRates | getLimitedRatesFromRates_ (const BasicRates &rates) const |
|
std::tuple< double, double, bool, bool > | getLiquidRateWithGroupLimit_ (const double new_oil_rate, const double oil_rate, const double new_water_rate, const double water_rate) const |
|
std::pair< double, bool > | getOilRateWithGroupLimit_ (double new_oil_rate, double oil_rate) const |
|
std::pair< double, bool > | getOilRateWithLimit_ (const BasicRates &rates) const |
|
std::pair< double, std::optional< Rate > > | getOilRateWithLimit2_ (const BasicRates &rates) const |
|
double | getProductionTarget_ (Rate rate) const |
|
double | getRate_ (Rate rate_type, const BasicRates &rates) const |
|
std::pair< double, std::optional< Rate > > | getRateWithLimit_ (Rate rate_type, const BasicRates &rates) const |
|
std::tuple< double, const std::string *, double > | getRateWithGroupLimit_ (Rate rate_type, const double new_rate, const double old_rate) const |
|
std::pair< double, bool > | getWaterRateWithGroupLimit_ (double new_water_rate, double water_rate) const |
|
std::pair< double, bool > | getWaterRateWithLimit_ (const BasicRates &rates) const |
|
std::pair< double, std::optional< Rate > > | getWaterRateWithLimit2_ (const BasicRates &rates) const |
|
BasicRates | getWellStateRates_ () const |
|
bool | hasProductionControl_ (Rate rate) const |
|
std::pair< LimitedRates, double > | increaseALQtoPositiveOilRate_ (double alq, const LimitedRates &orig_rates) const |
|
std::pair< LimitedRates, double > | increaseALQtoMinALQ_ (double alq, const LimitedRates &orig_rates) const |
|
void | logSuccess_ (double alq, const int iteration_idx) |
|
std::pair< LimitedRates, double > | maybeAdjustALQbeforeOptimizeLoop_ (const LimitedRates &rates, double alq, bool increase) const |
|
std::pair< LimitedRates, double > | reduceALQtoGroupAlqLimits_ (double alq, const LimitedRates &rates) const |
|
std::pair< LimitedRates, double > | reduceALQtoGroupTarget (double alq, const LimitedRates &rates) const |
|
std::pair< LimitedRates, double > | reduceALQtoWellTarget_ (double alq, const LimitedRates &rates) const |
|
std::unique_ptr< GasLiftWellState > | runOptimize1_ () |
|
std::unique_ptr< GasLiftWellState > | runOptimize2_ () |
|
std::unique_ptr< GasLiftWellState > | runOptimizeLoop_ (bool increase) |
|
void | setAlqMinRate_ (const GasLiftOpt::Well &well) |
|
std::unique_ptr< GasLiftWellState > | tryIncreaseLiftGas_ () |
|
std::unique_ptr< GasLiftWellState > | tryDecreaseLiftGas_ () |
|
void | updateGroupRates_ (const LimitedRates &rates, const LimitedRates &new_rates, double delta_alq) const |
|
LimitedRates | updateRatesToGroupLimits_ (const BasicRates &rates, const LimitedRates &new_rates) const |
|
void | updateWellStateAlqFixedValue_ (const GasLiftOpt::Well &well) |
|
bool | useFixedAlq_ (const GasLiftOpt::Well &well) |
|
void | debugInfoGroupRatesExceedTarget (Rate rate_type, const std::string &gr_name, double rate, double target) const |
|
void | warnMaxIterationsExceeded_ () |
|
| GasLiftCommon (WellState &well_state, DeferredLogger &deferred_logger, const Parallel::Communication &comm, bool debug) |
|
int | debugUpdateGlobalCounter_ () const |
|
virtual void | displayDebugMessage_ (const std::string &msg) const =0 |
|
void | displayDebugMessageOnRank0_ (const std::string &msg) const |
|
void | logMessage_ (const std::string &prefix, const std::string &msg, MessageType msg_type=MessageType::INFO) const |
|