My Project
|
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< Scalar > &)> |
Public Member Functions | |
WellGroupControls (const WellInterfaceGeneric< Scalar > &well) | |
Constructor sets reference to well. | |
template<class EvalWell > | |
void | getGroupInjectionControl (const Group &group, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const InjectorType &injectorType, const EvalWell &bhp, const EvalWell &injection_rate, const RateConvFunc &rateConverter, Scalar efficiencyFactor, EvalWell &control_eq, DeferredLogger &deferred_logger) const |
std::optional< Scalar > | getGroupInjectionTargetRate (const Group &group, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const InjectorType &injectorType, const RateConvFunc &rateConverter, Scalar efficiencyFactor, DeferredLogger &deferred_logger) const |
template<class EvalWell > | |
void | getGroupProductionControl (const Group &group, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const EvalWell &bhp, const std::vector< EvalWell > &rates, const RateConvFunc &rateConverter, Scalar efficiencyFactor, EvalWell &control_eq, DeferredLogger &deferred_logger) const |
Scalar | getGroupProductionTargetRate (const Group &group, const WellState< Scalar > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const RateConvFunc &rateConverter, Scalar efficiencyFactor, DeferredLogger &deferred_logger) const |
Class for computing well group controls.