WellInterfaceGeneric.hpp
Go to the documentation of this file.
166 // Note:: for multisegment wells, bhp is actually segment pressure in practice based on observation
168 Scalar getInjMult(const int local_perf_index, const Scalar bhp, const Scalar perf_pres, DeferredLogger& dlogger) const;
246 std::fill(this->inj_multiplier_damp_factor_.begin(), this->inj_multiplier_damp_factor_.end(), 1.0);
Definition: DeferredLogger.hpp:57 Class encapsulating some information about parallel wells. Definition: ParallelWellInfo.hpp:198 Definition: GasLiftGroupInfo.hpp:37 Definition: SingleWellState.hpp:43 Definition: VFPProperties.hpp:40 Definition: WellInterfaceGeneric.hpp:53 Scalar wfoam_() const int pvtRegionIdx() const Definition: WellInterfaceGeneric.hpp:128 WellInterfaceGeneric(const Well &well, const ParallelWellInfo< Scalar > ¶llel_well_info, const int time_step, const ModelParameters ¶m, const int pvtRegionIdx, const int num_conservation_quantities, const int num_phases, const int index_of_well, const PhaseUsageInfo< IndexTraits > &phase_usage, const std::vector< PerforationData< Scalar > > &perf_data) const std::map< int, std::vector< int > > & getCompletions() const Definition: WellInterfaceGeneric.hpp:152 const int num_conservation_quantities_ Definition: WellInterfaceGeneric.hpp:312 bool isVFPActive(DeferredLogger &deferred_logger) const void initCompletions() bool useVfpExplicit() const std::vector< int > saturation_table_number_ Definition: WellInterfaceGeneric.hpp:373 bool isOperableAndSolvable() const std::vector< int > well_cells_ Definition: WellInterfaceGeneric.hpp:332 void updatePerforatedCell(std::vector< bool > &is_cell_perforated) std::optional< Scalar > dynamic_thp_limit_ Definition: WellInterfaceGeneric.hpp:379 std::vector< Scalar > perf_depth_ Definition: WellInterfaceGeneric.hpp:341 const GuideRate * guideRate() const Definition: WellInterfaceGeneric.hpp:130 std::vector< Scalar > prev_inj_multiplier_ Definition: WellInterfaceGeneric.hpp:386 Well::Status wellStatus() Definition: WellInterfaceGeneric.hpp:122 int polymerWaterTable_() const Scalar wsolvent() const int number_of_phases_ Definition: WellInterfaceGeneric.hpp:315 void setWsolvent(const Scalar wsolvent) std::vector< Scalar > & perfDepth() Definition: WellInterfaceGeneric.hpp:148 const PhaseUsageInfo< IndexTraits > & phase_usage_ Definition: WellInterfaceGeneric.hpp:320 Scalar wpolymer_() const const int current_step_ Definition: WellInterfaceGeneric.hpp:305 std::vector< Scalar > ipr_a_ Definition: WellInterfaceGeneric.hpp:328 const std::vector< Scalar > & perfDepth() const Definition: WellInterfaceGeneric.hpp:146 bool wellUnderGroupControl(const SingleWellState< Scalar, IndexTraits > &ws) const const Well & wellEcl() const const ParallelWellInfo< Scalar > & parallel_well_info_ Definition: WellInterfaceGeneric.hpp:304 Scalar wmicrobes_() const const PhaseUsageInfo< IndexTraits > & phaseUsage() const int polymerInjTable_() const std::vector< Scalar > ipr_b_ Definition: WellInterfaceGeneric.hpp:329 const int pvtRegionIdx_ Definition: WellInterfaceGeneric.hpp:310 std::vector< Scalar > inj_multiplier_damp_factor_ Definition: WellInterfaceGeneric.hpp:391 bool underPredictionMode() const Returns true if the well is currently in prediction mode (i.e. not history mode). const GuideRate * guide_rate_ Definition: WellInterfaceGeneric.hpp:398 OperabilityStatus operability_status_ Definition: WellInterfaceGeneric.hpp:300 void resetWellOperability() bool wellUnderZeroRateTargetIndividual(const SummaryState &summary_state, const WellState< Scalar, IndexTraits > &well_state) const Well::Status wellStatus_ Definition: WellInterfaceGeneric.hpp:375 int numLocalPerfs() const Definition: WellInterfaceGeneric.hpp:136 Scalar getTHPConstraint(const SummaryState &summaryState) const bool isPressureControlled(const WellStateType &well_state) const void setDynamicThpLimit(const Scalar thp_limit) void updateInjMult(std::vector< Scalar > &inj_multipliers, DeferredLogger &deferred_logger) const void updateFilterCakeMultipliers(const std::vector< Scalar > &inj_fc_multiplier) Update filter cake multipliers. Definition: WellInterfaceGeneric.hpp:190 Scalar well_efficiency_factor_ Definition: WellInterfaceGeneric.hpp:396 void closeCompletions(const WellTestState &wellTestState) void checkNegativeWellPotentials(std::vector< Scalar > &well_potentials, const bool checkOperability, DeferredLogger &deferred_logger) void setPrevSurfaceRates(WellStateType &well_state, const WellStateType &prev_well_state) const void addPerforations(const std::vector< RuntimePerforation > &perfs) std::vector< Scalar > inj_multiplier_previter_ Definition: WellInterfaceGeneric.hpp:389 std::vector< Scalar > inj_fc_multiplier_ Definition: WellInterfaceGeneric.hpp:394 virtual Scalar connectionDensity(const int globalConnIdx, const int openConnIdx) const =0 Scalar getInjMult(const int local_perf_index, const Scalar bhp, const Scalar perf_pres, DeferredLogger &dlogger) const void adaptRatesForVFP(std::vector< Scalar > &rates) const void onlyKeepBHPandTHPcontrols(const SummaryState &summary_state, WellStateType &well_state, Well::InjectionControls &inj_controls, Well::ProductionControls &prod_controls) const bool changedToOpenThisStep() const Definition: WellInterfaceGeneric.hpp:176 Scalar rsRvInj() const void setGuideRate(const GuideRate *guide_rate_arg) const std::vector< PerforationData< Scalar > > * perf_data_ Definition: WellInterfaceGeneric.hpp:322 int numConservationQuantities() const Definition: WellInterfaceGeneric.hpp:132 const VFPProperties< Scalar, IndexTraits > * vfpProperties() const Definition: WellInterfaceGeneric.hpp:142 Scalar getALQ(const WellStateType &well_state) const Scalar wellEfficiencyFactor() const Definition: WellInterfaceGeneric.hpp:187 int polymerTable_() const std::vector< std::string > well_control_log_ Definition: WellInterfaceGeneric.hpp:400 void resetDampening() Definition: WellInterfaceGeneric.hpp:245 int indexOfWell() const Index of well in the wells struct and wellState. virtual std::vector< Scalar > getPrimaryVars() const Definition: WellInterfaceGeneric.hpp:197 const std::vector< PerforationData< Scalar > > & perforationData() const Get the perforations of the well. std::vector< Scalar > perf_length_ Definition: WellInterfaceGeneric.hpp:347 const std::vector< int > & cells() const Well cells. Definition: WellInterfaceGeneric.hpp:83 Scalar woxygen_() const int number_of_local_perforations_ Definition: WellInterfaceGeneric.hpp:338 std::vector< Scalar > well_index_ Definition: WellInterfaceGeneric.hpp:335 virtual int setPrimaryVars(typename std::vector< Scalar >::const_iterator) Definition: WellInterfaceGeneric.hpp:202 void updateWellTestState(const SingleWellState< Scalar, IndexTraits > &ws, const double &simulationTime, const bool &writeMessageToOPMLog, const bool zero_group_target, WellTestState &wellTestState, DeferredLogger &deferred_logger) const void setVFPProperties(const VFPProperties< Scalar, IndexTraits > *vfp_properties_arg) const ModelParameters & param_ Definition: WellInterfaceGeneric.hpp:306 std::pair< bool, bool > computeWellPotentials(std::vector< Scalar > &well_potentials, const WellStateType &well_state) bool changed_to_open_this_step_ Definition: WellInterfaceGeneric.hpp:402 void setWellEfficiencyFactor(const Scalar efficiency_factor) const VFPProperties< Scalar, IndexTraits > * vfp_properties_ Definition: WellInterfaceGeneric.hpp:397 void initInjMult(const std::vector< Scalar > &max_inj_mult) Scalar wurea_() const std::map< int, std::vector< int > > completions_ Definition: WellInterfaceGeneric.hpp:367 void setDynamicThpLimit(const std::optional< Scalar > thp_limit) void setRepRadiusPerfLength() std::vector< Scalar > perf_rep_radius_ Definition: WellInterfaceGeneric.hpp:344 void reportWellSwitching(const SingleWellState< Scalar, IndexTraits > &ws, DeferredLogger &deferred_logger) const std::optional< Scalar > getDynamicThpLimit() const const std::vector< Scalar > & wellIndex() const Definition: WellInterfaceGeneric.hpp:150 bool wellHasTHPConstraints(const SummaryState &summaryState) const Returns true if the well has one or more THP limits/constraints. std::vector< Scalar > bore_diameters_ Definition: WellInterfaceGeneric.hpp:350 bool wellIsStopped() const Definition: WellInterfaceGeneric.hpp:124 Scalar wsalt_() const bool thpLimitViolatedButNotSwitched() const Well & wellEcl() bool getAllowCrossFlow() const std::vector< Scalar > inj_multiplier_ Definition: WellInterfaceGeneric.hpp:382 int currentStep() const Definition: WellInterfaceGeneric.hpp:126 const ParallelWellInfo< Scalar > & parallelWellInfo() const Definition: WellInterfaceGeneric.hpp:144 Definition: WellState.hpp:66 Definition: blackoilbioeffectsmodules.hh:43 Solver parameters for the BlackoilModel. Definition: BlackoilModelParameters.hpp:180 Static data associated with a well perforation. Definition: PerforationData.hpp:30 Definition: WellInterfaceGeneric.hpp:251 void resetOperability() Definition: WellInterfaceGeneric.hpp:271 bool thp_limit_violated_but_not_switched Definition: WellInterfaceGeneric.hpp:295 bool can_obtain_bhp_with_thp_limit Definition: WellInterfaceGeneric.hpp:287 bool has_negative_potentials Definition: WellInterfaceGeneric.hpp:293 bool isOperableUnderTHPLimit() const Definition: WellInterfaceGeneric.hpp:266 bool obey_bhp_limit_with_thp_limit Definition: WellInterfaceGeneric.hpp:289 bool solvable Definition: WellInterfaceGeneric.hpp:291 bool operable_under_only_bhp_limit Definition: WellInterfaceGeneric.hpp:282 bool use_vfpexplicit Definition: WellInterfaceGeneric.hpp:297 bool isOperableUnderBHPLimit() const Definition: WellInterfaceGeneric.hpp:261 bool obey_thp_limit_under_bhp_limit Definition: WellInterfaceGeneric.hpp:285 bool isOperableAndSolvable() const Definition: WellInterfaceGeneric.hpp:252 |