Opm::WellGroupControls Class Reference

Class for computing well group controls. More...

#include <WellGroupControls.hpp>

Public Types

using RateConvFunc = std::function< void(const RegionId, const int, const std::optional< std::string > &, std::vector< double > &)>
 

Public Member Functions

 WellGroupControls (const WellInterfaceGeneric &well)
 Constructor sets reference to well. More...
 
template<class EvalWell >
void getGroupInjectionControl (const Group &group, const WellState< double > &well_state, const GroupState< double > &group_state, const Schedule &schedule, const SummaryState &summaryState, const InjectorType &injectorType, const EvalWell &bhp, const EvalWell &injection_rate, const RateConvFunc &rateConverter, double efficiencyFactor, EvalWell &control_eq, DeferredLogger &deferred_logger) const
 
std::optional< double > getGroupInjectionTargetRate (const Group &group, const WellState< double > &well_state, const GroupState< double > &group_state, const Schedule &schedule, const SummaryState &summaryState, const InjectorType &injectorType, const RateConvFunc &rateConverter, double efficiencyFactor, DeferredLogger &deferred_logger) const
 
template<class EvalWell >
void getGroupProductionControl (const Group &group, const WellState< double > &well_state, const GroupState< double > &group_state, const Schedule &schedule, const SummaryState &summaryState, const EvalWell &bhp, const std::vector< EvalWell > &rates, const RateConvFunc &rateConverter, double efficiencyFactor, EvalWell &control_eq, DeferredLogger &deferred_logger) const
 
double getGroupProductionTargetRate (const Group &group, const WellState< double > &well_state, const GroupState< double > &group_state, const Schedule &schedule, const SummaryState &summaryState, const RateConvFunc &rateConverter, double efficiencyFactor, DeferredLogger &deferred_logger) const
 

Detailed Description

Class for computing well group controls.

Member Typedef Documentation

◆ RateConvFunc

using Opm::WellGroupControls::RateConvFunc = std::function<void(const RegionId, const int, const std::optional<std::string>&, std::vector<double>&)>

Constructor & Destructor Documentation

◆ WellGroupControls()

Opm::WellGroupControls::WellGroupControls ( const WellInterfaceGeneric well)
inline

Constructor sets reference to well.

Member Function Documentation

◆ getGroupInjectionControl()

template<class EvalWell >
void Opm::WellGroupControls::getGroupInjectionControl ( const Group &  group,
const WellState< double > &  well_state,
const GroupState< double > &  group_state,
const Schedule &  schedule,
const SummaryState &  summaryState,
const InjectorType &  injectorType,
const EvalWell &  bhp,
const EvalWell &  injection_rate,
const RateConvFunc rateConverter,
double  efficiencyFactor,
EvalWell &  control_eq,
DeferredLogger deferred_logger 
) const

◆ getGroupInjectionTargetRate()

std::optional< double > Opm::WellGroupControls::getGroupInjectionTargetRate ( const Group &  group,
const WellState< double > &  well_state,
const GroupState< double > &  group_state,
const Schedule &  schedule,
const SummaryState &  summaryState,
const InjectorType &  injectorType,
const RateConvFunc rateConverter,
double  efficiencyFactor,
DeferredLogger deferred_logger 
) const

◆ getGroupProductionControl()

template<class EvalWell >
void Opm::WellGroupControls::getGroupProductionControl ( const Group &  group,
const WellState< double > &  well_state,
const GroupState< double > &  group_state,
const Schedule &  schedule,
const SummaryState &  summaryState,
const EvalWell &  bhp,
const std::vector< EvalWell > &  rates,
const RateConvFunc rateConverter,
double  efficiencyFactor,
EvalWell &  control_eq,
DeferredLogger deferred_logger 
) const

◆ getGroupProductionTargetRate()

double Opm::WellGroupControls::getGroupProductionTargetRate ( const Group &  group,
const WellState< double > &  well_state,
const GroupState< double > &  group_state,
const Schedule &  schedule,
const SummaryState &  summaryState,
const RateConvFunc rateConverter,
double  efficiencyFactor,
DeferredLogger deferred_logger 
) const

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