WellInterfaceGeneric.hpp
Go to the documentation of this file.
162 // Note:: for multisegment wells, bhp is actually segment pressure in practice based on observation
164 Scalar getInjMult(const int local_perf_index, const Scalar bhp, const Scalar perf_pres, DeferredLogger& dlogger) const;
241 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:195 Definition: SingleWellState.hpp:42 Definition: VFPProperties.hpp:40 Definition: WellInterfaceGeneric.hpp:53 bool wellIsStopped() const Definition: WellInterfaceGeneric.hpp:120 int number_of_phases_ Definition: WellInterfaceGeneric.hpp:310 const PhaseUsage * phase_usage_ Definition: WellInterfaceGeneric.hpp:370 void updatePerforatedCell(std::vector< bool > &is_cell_perforated) void setGuideRate(const GuideRate *guide_rate_arg) std::vector< Scalar > inj_multiplier_ Definition: WellInterfaceGeneric.hpp:377 bool isOperableAndSolvable() const Well & wellEcl() Scalar wellEfficiencyFactor() const Definition: WellInterfaceGeneric.hpp:183 OperabilityStatus operability_status_ Definition: WellInterfaceGeneric.hpp:295 void updateInjMult(std::vector< Scalar > &inj_multipliers, DeferredLogger &deferred_logger) const Scalar getInjMult(const int local_perf_index, const Scalar bhp, const Scalar perf_pres, DeferredLogger &dlogger) const int currentStep() const Definition: WellInterfaceGeneric.hpp:122 void setPrevSurfaceRates(WellState< Scalar > &well_state, const WellState< Scalar > &prev_well_state) const bool changedToOpenThisStep() const Definition: WellInterfaceGeneric.hpp:172 const GuideRate * guideRate() const Definition: WellInterfaceGeneric.hpp:126 Scalar getALQ(const WellState< Scalar > &well_state) const std::vector< Scalar > bore_diameters_ Definition: WellInterfaceGeneric.hpp:343 int pvtRegionIdx() const Definition: WellInterfaceGeneric.hpp:124 const ParallelWellInfo< Scalar > & parallel_well_info_ Definition: WellInterfaceGeneric.hpp:299 void updateFilterCakeMultipliers(const std::vector< Scalar > &inj_fc_multiplier) Update filter cake multipliers. Definition: WellInterfaceGeneric.hpp:186 std::vector< Scalar > ipr_a_ Definition: WellInterfaceGeneric.hpp:321 const GuideRate * guide_rate_ Definition: WellInterfaceGeneric.hpp:393 Scalar wsolvent() const const Well & wellEcl() const void checkNegativeWellPotentials(std::vector< Scalar > &well_potentials, const bool checkOperability, DeferredLogger &deferred_logger) Well::Status wellStatus_ Definition: WellInterfaceGeneric.hpp:368 bool getAllowCrossFlow() const void prepareForPotentialCalculations(const SummaryState &summary_state, WellState< Scalar > &well_state, Well::InjectionControls &inj_controls, Well::ProductionControls &prod_controls) const const VFPProperties< Scalar > * vfpProperties() const Definition: WellInterfaceGeneric.hpp:138 Scalar woxygen_() const std::pair< bool, bool > computeWellPotentials(std::vector< Scalar > &well_potentials, const WellState< Scalar > &well_state) Scalar getTHPConstraint(const SummaryState &summaryState) const std::vector< Scalar > well_index_ Definition: WellInterfaceGeneric.hpp:328 std::map< int, std::vector< int > > completions_ Definition: WellInterfaceGeneric.hpp:360 const int num_components_ Definition: WellInterfaceGeneric.hpp:307 void setDynamicThpLimit(const std::optional< Scalar > thp_limit) const int pvtRegionIdx_ Definition: WellInterfaceGeneric.hpp:305 std::optional< Scalar > dynamic_thp_limit_ Definition: WellInterfaceGeneric.hpp:374 const VFPProperties< Scalar > * vfp_properties_ Definition: WellInterfaceGeneric.hpp:392 int number_of_local_perforations_ Definition: WellInterfaceGeneric.hpp:331 Scalar wfoam_() const void adaptRatesForVFP(std::vector< Scalar > &rates) const std::vector< Scalar > inj_multiplier_previter_ Definition: WellInterfaceGeneric.hpp:384 const std::vector< PerforationData< Scalar > > * perf_data_ Definition: WellInterfaceGeneric.hpp:315 std::vector< Scalar > perf_depth_ Definition: WellInterfaceGeneric.hpp:334 bool thpLimitViolatedButNotSwitched() const bool wellHasTHPConstraints(const SummaryState &summaryState) const Returns true if the well has one or more THP limits/constraints. Scalar wmicrobes_() const void setVFPProperties(const VFPProperties< Scalar > *vfp_properties_arg) void setDynamicThpLimit(const Scalar thp_limit) int polymerInjTable_() const int polymerTable_() const virtual std::vector< Scalar > getPrimaryVars() const Definition: WellInterfaceGeneric.hpp:193 void addPerforations(const std::vector< RuntimePerforation > &perfs) std::optional< Scalar > getDynamicThpLimit() const bool isVFPActive(DeferredLogger &deferred_logger) const Scalar well_efficiency_factor_ Definition: WellInterfaceGeneric.hpp:391 const PhaseUsage & phaseUsage() const const std::vector< int > & cells() const Well cells. Definition: WellInterfaceGeneric.hpp:80 void resetDampening() Definition: WellInterfaceGeneric.hpp:240 const ParallelWellInfo< Scalar > & parallelWellInfo() const Definition: WellInterfaceGeneric.hpp:140 std::vector< Scalar > inj_multiplier_damp_factor_ Definition: WellInterfaceGeneric.hpp:386 Scalar wsalt_() const std::vector< Scalar > perf_length_ Definition: WellInterfaceGeneric.hpp:340 int polymerWaterTable_() const std::vector< Scalar > & perfDepth() Definition: WellInterfaceGeneric.hpp:144 std::vector< int > well_cells_ Definition: WellInterfaceGeneric.hpp:325 std::vector< std::string > well_control_log_ Definition: WellInterfaceGeneric.hpp:395 void setRepRadiusPerfLength() void closeCompletions(const WellTestState &wellTestState) Scalar wpolymer_() const WellInterfaceGeneric(const Well &well, const ParallelWellInfo< Scalar > ¶llel_well_info, const int time_step, const ModelParameters ¶m, const int pvtRegionIdx, const int num_components, const int num_phases, const int index_of_well, const std::vector< PerforationData< Scalar > > &perf_data) bool useVfpExplicit() const std::vector< Scalar > inj_fc_multiplier_ Definition: WellInterfaceGeneric.hpp:389 virtual int setPrimaryVars(typename std::vector< Scalar >::const_iterator) Definition: WellInterfaceGeneric.hpp:198 Scalar rsRvInj() const const std::vector< Scalar > & perfDepth() const Definition: WellInterfaceGeneric.hpp:142 int numLocalPerfs() const Definition: WellInterfaceGeneric.hpp:132 void setWellEfficiencyFactor(const Scalar efficiency_factor) Scalar wurea_() const std::vector< Scalar > prev_inj_multiplier_ Definition: WellInterfaceGeneric.hpp:381 void reportWellSwitching(const SingleWellState< Scalar > &ws, DeferredLogger &deferred_logger) const bool wellUnderGroupControl(const SingleWellState< Scalar > &ws) const const std::vector< PerforationData< Scalar > > & perforationData() const Get the perforations of the well. void resetWellOperability() void setWsolvent(const Scalar wsolvent) const ModelParameters & param_ Definition: WellInterfaceGeneric.hpp:301 bool wellUnderZeroRateTargetIndividual(const SummaryState &summary_state, const WellState< Scalar > &well_state) const void initInjMult(const std::vector< Scalar > &max_inj_mult) int numComponents() const Definition: WellInterfaceGeneric.hpp:128 std::vector< Scalar > perf_rep_radius_ Definition: WellInterfaceGeneric.hpp:337 const std::vector< Scalar > & wellIndex() const Definition: WellInterfaceGeneric.hpp:146 int indexOfWell() const Index of well in the wells struct and wellState. bool changed_to_open_this_step_ Definition: WellInterfaceGeneric.hpp:397 virtual Scalar connectionDensity(const int globalConnIdx, const int openConnIdx) const =0 void updateWellTestState(const SingleWellState< Scalar > &ws, const double &simulationTime, const bool &writeMessageToOPMLog, const bool zero_group_target, WellTestState &wellTestState, DeferredLogger &deferred_logger) const bool underPredictionMode() const Returns true if the well is currently in prediction mode (i.e. not history mode). std::vector< Scalar > ipr_b_ Definition: WellInterfaceGeneric.hpp:322 const std::map< int, std::vector< int > > & getCompletions() const Definition: WellInterfaceGeneric.hpp:148 const int current_step_ Definition: WellInterfaceGeneric.hpp:300 void initCompletions() std::vector< int > saturation_table_number_ Definition: WellInterfaceGeneric.hpp:366 bool isPressureControlled(const WellState< Scalar > &well_state) const Definition: WellState.hpp:65 Definition: blackoilboundaryratevector.hh:39 Solver parameters for the BlackoilModel. Definition: BlackoilModelParameters.hpp:177 Static data associated with a well perforation. Definition: PerforationData.hpp:30 Definition: BlackoilPhases.hpp:46 Definition: WellInterfaceGeneric.hpp:246 bool obey_thp_limit_under_bhp_limit Definition: WellInterfaceGeneric.hpp:280 void resetOperability() Definition: WellInterfaceGeneric.hpp:266 bool obey_bhp_limit_with_thp_limit Definition: WellInterfaceGeneric.hpp:284 bool operable_under_only_bhp_limit Definition: WellInterfaceGeneric.hpp:277 bool use_vfpexplicit Definition: WellInterfaceGeneric.hpp:292 bool isOperableUnderTHPLimit() const Definition: WellInterfaceGeneric.hpp:261 bool isOperableUnderBHPLimit() const Definition: WellInterfaceGeneric.hpp:256 bool thp_limit_violated_but_not_switched Definition: WellInterfaceGeneric.hpp:290 bool has_negative_potentials Definition: WellInterfaceGeneric.hpp:288 bool isOperableAndSolvable() const Definition: WellInterfaceGeneric.hpp:247 bool can_obtain_bhp_with_thp_limit Definition: WellInterfaceGeneric.hpp:282 bool solvable Definition: WellInterfaceGeneric.hpp:286 |