#include <WellGroupHelpers.hpp>
|
static void | setCmodeGroup (const Group &group, const Schedule &schedule, const SummaryState &summaryState, const int reportStepIdx, GroupState< Scalar > &group_state) |
|
static void | accumulateGroupEfficiencyFactor (const Group &group, const Schedule &schedule, const int reportStepIdx, Scalar &factor) |
|
static Scalar | sumWellSurfaceRates (const Group &group, const Schedule &schedule, const WellState< Scalar > &wellState, const int reportStepIdx, const int phasePos, const bool injector) |
|
static std::pair< std::optional< std::string >, Scalar > | worstOffendingWell (const Group &group, const Schedule &schedule, const int reportStepIdx, const Group::ProductionCMode &offendedControl, const PhaseUsage &pu, const Parallel::Communication &comm, const WellState< Scalar > &wellState, DeferredLogger &deferred_logger) |
| Returns the name of the worst offending well and its fraction (i.e. violated_phase / preferred_phase) More...
|
|
static Scalar | sumWellResRates (const Group &group, const Schedule &schedule, const WellState< Scalar > &wellState, const int reportStepIdx, const int phasePos, const bool injector) |
|
static Scalar | sumSolventRates (const Group &group, const Schedule &schedule, const WellState< Scalar > &wellState, const int reportStepIdx, const bool injector) |
|
static void | updateGroupTargetReduction (const Group &group, const Schedule &schedule, const int reportStepIdx, const bool isInjector, const PhaseUsage &pu, const GuideRate &guide_rate, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state, std::vector< Scalar > &groupTargetReduction) |
|
static void | updateGuideRates (const Group &group, const Schedule &schedule, const SummaryState &summary_state, const PhaseUsage &pu, int report_step, double sim_time, WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const Parallel::Communication &comm, GuideRate *guide_rate, std::vector< Scalar > &pot, DeferredLogger &deferred_logger) |
|
static void | updateGuideRateForProductionGroups (const Group &group, const Schedule &schedule, const PhaseUsage &pu, const int reportStepIdx, const double &simTime, WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, const Parallel::Communication &comm, GuideRate *guideRate, std::vector< Scalar > &pot) |
|
static void | updateGuideRatesForWells (const Schedule &schedule, const PhaseUsage &pu, const int reportStepIdx, const double &simTime, const WellState< Scalar > &wellState, const Parallel::Communication &comm, GuideRate *guideRate) |
|
static void | updateGuideRatesForInjectionGroups (const Group &group, const Schedule &schedule, const SummaryState &summaryState, const PhaseUsage &pu, const int reportStepIdx, const WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, GuideRate *guideRate, DeferredLogger &deferred_logger) |
|
static void | updateVREPForGroups (const Group &group, const Schedule &schedule, const int reportStepIdx, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state) |
|
template<class RegionalValues > |
static void | updateGpMaintTargetForGroups (const Group &group, const Schedule &schedule, const RegionalValues ®ional_values, const int reportStepIdx, const double dt, const WellState< Scalar > &well_state, GroupState< Scalar > &group_state) |
|
static void | updateReservoirRatesInjectionGroups (const Group &group, const Schedule &schedule, const int reportStepIdx, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state) |
|
static void | updateSurfaceRatesInjectionGroups (const Group &group, const Schedule &schedule, const int reportStepIdx, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state) |
|
static void | updateWellRates (const Group &group, const Schedule &schedule, const int reportStepIdx, const WellState< Scalar > &wellStateNupcol, WellState< Scalar > &wellState) |
|
static void | updateGroupProductionRates (const Group &group, const Schedule &schedule, const int reportStepIdx, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state) |
|
static void | updateWellRatesFromGroupTargetScale (const Scalar scale, const Group &group, const Schedule &schedule, const int reportStepIdx, bool isInjector, const GroupState< Scalar > &group_state, WellState< Scalar > &wellState) |
|
static void | updateREINForGroups (const Group &group, const Schedule &schedule, const int reportStepIdx, const PhaseUsage &pu, const SummaryState &st, const WellState< Scalar > &wellState, GroupState< Scalar > &group_state, bool sum_rank) |
|
static std::map< std::string, Scalar > | computeNetworkPressures (const Network::ExtNetwork &network, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const VFPProdProperties< Scalar > &vfp_prod_props, const Schedule &schedule, const int report_time_step) |
|
static GuideRate::RateVector | getWellRateVector (const WellState< Scalar > &well_state, const PhaseUsage &pu, const std::string &name) |
|
static GuideRate::RateVector | getProductionGroupRateVector (const GroupState< Scalar > &group_state, const PhaseUsage &pu, const std::string &group_name) |
|
static Scalar | getGuideRate (const std::string &name, const Schedule &schedule, const WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, const int reportStepIdx, const GuideRate *guideRate, const GuideRateModel::Target target, const PhaseUsage &pu) |
|
static Scalar | getGuideRateInj (const std::string &name, const Schedule &schedule, const WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, const int reportStepIdx, const GuideRate *guideRate, const GuideRateModel::Target target, const Phase &injectionPhase, const PhaseUsage &pu) |
|
static int | groupControlledWells (const Schedule &schedule, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const int report_step, const std::string &group_name, const std::string &always_included_child, const bool is_production_group, const Phase injection_phase) |
|
static std::pair< bool, Scalar > | checkGroupConstraintsInj (const std::string &name, const std::string &parent, const Group &group, const WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, const int reportStepIdx, const GuideRate *guideRate, const Scalar *rates, Phase injectionPhase, const PhaseUsage &pu, const Scalar efficiencyFactor, const Schedule &schedule, const SummaryState &summaryState, const std::vector< Scalar > &resv_coeff, DeferredLogger &deferred_logger) |
|
static std::vector< std::string > | groupChainTopBot (const std::string &bottom, const std::string &top, const Schedule &schedule, const int report_step) |
|
static std::pair< bool, Scalar > | checkGroupConstraintsProd (const std::string &name, const std::string &parent, const Group &group, const WellState< Scalar > &wellState, const GroupState< Scalar > &group_state, const int reportStepIdx, const GuideRate *guideRate, const Scalar *rates, const PhaseUsage &pu, const Scalar efficiencyFactor, const Schedule &schedule, const SummaryState &summaryState, const std::vector< Scalar > &resv_coeff, DeferredLogger &deferred_logger) |
|
template<class AverageRegionalPressureType > |
static void | setRegionAveragePressureCalculator (const Group &group, const Schedule &schedule, const int reportStepIdx, const FieldPropsManager &fp, const PhaseUsage &pu, std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > ®ionalAveragePressureCalculator) |
|
◆ accumulateGroupEfficiencyFactor()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::accumulateGroupEfficiencyFactor |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
Scalar & |
factor |
|
) |
| |
|
static |
◆ checkGroupConstraintsInj()
template<class Scalar >
static std::pair< bool, Scalar > Opm::WellGroupHelpers< Scalar >::checkGroupConstraintsInj |
( |
const std::string & |
name, |
|
|
const std::string & |
parent, |
|
|
const Group & |
group, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const int |
reportStepIdx, |
|
|
const GuideRate * |
guideRate, |
|
|
const Scalar * |
rates, |
|
|
Phase |
injectionPhase, |
|
|
const PhaseUsage & |
pu, |
|
|
const Scalar |
efficiencyFactor, |
|
|
const Schedule & |
schedule, |
|
|
const SummaryState & |
summaryState, |
|
|
const std::vector< Scalar > & |
resv_coeff, |
|
|
DeferredLogger & |
deferred_logger |
|
) |
| |
|
static |
◆ checkGroupConstraintsProd()
template<class Scalar >
static std::pair< bool, Scalar > Opm::WellGroupHelpers< Scalar >::checkGroupConstraintsProd |
( |
const std::string & |
name, |
|
|
const std::string & |
parent, |
|
|
const Group & |
group, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const int |
reportStepIdx, |
|
|
const GuideRate * |
guideRate, |
|
|
const Scalar * |
rates, |
|
|
const PhaseUsage & |
pu, |
|
|
const Scalar |
efficiencyFactor, |
|
|
const Schedule & |
schedule, |
|
|
const SummaryState & |
summaryState, |
|
|
const std::vector< Scalar > & |
resv_coeff, |
|
|
DeferredLogger & |
deferred_logger |
|
) |
| |
|
static |
◆ computeNetworkPressures()
template<class Scalar >
static std::map< std::string, Scalar > Opm::WellGroupHelpers< Scalar >::computeNetworkPressures |
( |
const Network::ExtNetwork & |
network, |
|
|
const WellState< Scalar > & |
well_state, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const VFPProdProperties< Scalar > & |
vfp_prod_props, |
|
|
const Schedule & |
schedule, |
|
|
const int |
report_time_step |
|
) |
| |
|
static |
◆ getGuideRate()
template<class Scalar >
static Scalar Opm::WellGroupHelpers< Scalar >::getGuideRate |
( |
const std::string & |
name, |
|
|
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const int |
reportStepIdx, |
|
|
const GuideRate * |
guideRate, |
|
|
const GuideRateModel::Target |
target, |
|
|
const PhaseUsage & |
pu |
|
) |
| |
|
static |
◆ getGuideRateInj()
template<class Scalar >
static Scalar Opm::WellGroupHelpers< Scalar >::getGuideRateInj |
( |
const std::string & |
name, |
|
|
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const int |
reportStepIdx, |
|
|
const GuideRate * |
guideRate, |
|
|
const GuideRateModel::Target |
target, |
|
|
const Phase & |
injectionPhase, |
|
|
const PhaseUsage & |
pu |
|
) |
| |
|
static |
◆ getProductionGroupRateVector()
◆ getWellRateVector()
◆ groupChainTopBot()
template<class Scalar >
static std::vector< std::string > Opm::WellGroupHelpers< Scalar >::groupChainTopBot |
( |
const std::string & |
bottom, |
|
|
const std::string & |
top, |
|
|
const Schedule & |
schedule, |
|
|
const int |
report_step |
|
) |
| |
|
static |
◆ groupControlledWells()
template<class Scalar >
static int Opm::WellGroupHelpers< Scalar >::groupControlledWells |
( |
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
well_state, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const int |
report_step, |
|
|
const std::string & |
group_name, |
|
|
const std::string & |
always_included_child, |
|
|
const bool |
is_production_group, |
|
|
const Phase |
injection_phase |
|
) |
| |
|
static |
◆ setCmodeGroup()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::setCmodeGroup |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const SummaryState & |
summaryState, |
|
|
const int |
reportStepIdx, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ setRegionAveragePressureCalculator()
template<class Scalar >
template<class AverageRegionalPressureType >
static void Opm::WellGroupHelpers< Scalar >::setRegionAveragePressureCalculator |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const FieldPropsManager & |
fp, |
|
|
const PhaseUsage & |
pu, |
|
|
std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > & |
regionalAveragePressureCalculator |
|
) |
| |
|
static |
◆ sumSolventRates()
template<class Scalar >
static Scalar Opm::WellGroupHelpers< Scalar >::sumSolventRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const int |
reportStepIdx, |
|
|
const bool |
injector |
|
) |
| |
|
static |
◆ sumWellResRates()
template<class Scalar >
static Scalar Opm::WellGroupHelpers< Scalar >::sumWellResRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const int |
reportStepIdx, |
|
|
const int |
phasePos, |
|
|
const bool |
injector |
|
) |
| |
|
static |
◆ sumWellSurfaceRates()
template<class Scalar >
static Scalar Opm::WellGroupHelpers< Scalar >::sumWellSurfaceRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const int |
reportStepIdx, |
|
|
const int |
phasePos, |
|
|
const bool |
injector |
|
) |
| |
|
static |
◆ updateGpMaintTargetForGroups()
template<class Scalar >
template<class RegionalValues >
static void Opm::WellGroupHelpers< Scalar >::updateGpMaintTargetForGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const RegionalValues & |
regional_values, |
|
|
const int |
reportStepIdx, |
|
|
const double |
dt, |
|
|
const WellState< Scalar > & |
well_state, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ updateGroupProductionRates()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateGroupProductionRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ updateGroupTargetReduction()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateGroupTargetReduction |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const bool |
isInjector, |
|
|
const PhaseUsage & |
pu, |
|
|
const GuideRate & |
guide_rate, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state, |
|
|
std::vector< Scalar > & |
groupTargetReduction |
|
) |
| |
|
static |
◆ updateGuideRateForProductionGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateGuideRateForProductionGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const PhaseUsage & |
pu, |
|
|
const int |
reportStepIdx, |
|
|
const double & |
simTime, |
|
|
WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const Parallel::Communication & |
comm, |
|
|
GuideRate * |
guideRate, |
|
|
std::vector< Scalar > & |
pot |
|
) |
| |
|
static |
◆ updateGuideRates()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateGuideRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const SummaryState & |
summary_state, |
|
|
const PhaseUsage & |
pu, |
|
|
int |
report_step, |
|
|
double |
sim_time, |
|
|
WellState< Scalar > & |
well_state, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
const Parallel::Communication & |
comm, |
|
|
GuideRate * |
guide_rate, |
|
|
std::vector< Scalar > & |
pot, |
|
|
DeferredLogger & |
deferred_logger |
|
) |
| |
|
static |
◆ updateGuideRatesForInjectionGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateGuideRatesForInjectionGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const SummaryState & |
summaryState, |
|
|
const PhaseUsage & |
pu, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
GuideRate * |
guideRate, |
|
|
DeferredLogger & |
deferred_logger |
|
) |
| |
|
static |
◆ updateGuideRatesForWells()
◆ updateREINForGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateREINForGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const PhaseUsage & |
pu, |
|
|
const SummaryState & |
st, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state, |
|
|
bool |
sum_rank |
|
) |
| |
|
static |
◆ updateReservoirRatesInjectionGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateReservoirRatesInjectionGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ updateSurfaceRatesInjectionGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateSurfaceRatesInjectionGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ updateVREPForGroups()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateVREPForGroups |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellState, |
|
|
GroupState< Scalar > & |
group_state |
|
) |
| |
|
static |
◆ updateWellRates()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateWellRates |
( |
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
const WellState< Scalar > & |
wellStateNupcol, |
|
|
WellState< Scalar > & |
wellState |
|
) |
| |
|
static |
◆ updateWellRatesFromGroupTargetScale()
template<class Scalar >
static void Opm::WellGroupHelpers< Scalar >::updateWellRatesFromGroupTargetScale |
( |
const Scalar |
scale, |
|
|
const Group & |
group, |
|
|
const Schedule & |
schedule, |
|
|
const int |
reportStepIdx, |
|
|
bool |
isInjector, |
|
|
const GroupState< Scalar > & |
group_state, |
|
|
WellState< Scalar > & |
wellState |
|
) |
| |
|
static |
◆ worstOffendingWell()
Returns the name of the worst offending well and its fraction (i.e. violated_phase / preferred_phase)
The documentation for this class was generated from the following file:
|