BlackoilWellModelGeneric.hpp
Go to the documentation of this file.
448 const bool update_wellgrouptarget, // we only want to update the wellgrouptarget after the groups have found their controls
559 // Valid network pressures for output and initialization for safe restart after failed iterations
562 // previous injection multiplier, it is used in the injection multiplier calculation for WINJMULT keyword
Definition: BlackoilWellModelGasLift.hpp:41 Class for handling the blackoil well model. Definition: BlackoilWellModelGeneric.hpp:94 std::unordered_map< std::string, WellFilterCake< Scalar > > filter_cake_ Definition: BlackoilWellModelGeneric.hpp:566 int numLocalWells() const void updateNetworkActiveState(const int report_step) Checks if network is active (at least one network well on prediction). void updateNupcolWGState() Definition: BlackoilWellModelGeneric.hpp:359 bool initial_step_ Definition: BlackoilWellModelGeneric.hpp:523 const Well & getWellEcl(const std::string &well_name) const void assignNodeValues(std::map< std::string, data::NodeData > &nodevalues, const int reportStepIdx) const const EclipseState & eclipseState() const Definition: BlackoilWellModelGeneric.hpp:228 bool checkGroupHigherConstraints(const Group &group, DeferredLogger &deferred_logger, const int reportStepIdx, const int max_number_of_group_switch) GuideRate guideRate_ Definition: BlackoilWellModelGeneric.hpp:554 const SummaryState & summaryState_ Definition: BlackoilWellModelGeneric.hpp:512 const GuideRate & guideRate() const Definition: BlackoilWellModelGeneric.hpp:232 BlackoilWellModelGeneric(Schedule &schedule, BlackoilWellModelGasLiftGeneric< Scalar > &gaslift, const SummaryState &summaryState, const EclipseState &eclState, const PhaseUsage &phase_usage, const Parallel::Communication &comm) bool reportStepStarts() const Definition: BlackoilWellModelGeneric.hpp:241 virtual void calculateProductivityIndexValuesShutWells(const int reportStepIdx, DeferredLogger &deferred_logger)=0 void checkGconsaleLimits(const Group &group, WellState< Scalar > &well_state, const int reportStepIdx, DeferredLogger &deferred_logger) bool hasLocalWell(const std::string &wname) const Returns true if well is defined and has connections on current rank. bool wellsActive() const return true if wells are available in the reservoir std::map< std::string, double > well_close_times_ Definition: BlackoilWellModelGeneric.hpp:535 void reportGroupSwitching(DeferredLogger &local_deferredLogger) const bool report_step_starts_ Definition: BlackoilWellModelGeneric.hpp:524 bool hasOpenLocalWell(const std::string &well_name) const Returns true if well is defined, open and has connections on current rank. virtual void calcInjResvCoeff(const int fipnum, const int pvtreg, std::vector< Scalar > &resv_coeff)=0 GroupState< Scalar > & groupState() Definition: BlackoilWellModelGeneric.hpp:171 std::unordered_map< int, std::vector< MSWellTracerRate< Scalar > > > MswTracerRates Definition: BlackoilWellModelGeneric.hpp:502 virtual int compressedIndexForInteriorLGR(const std::string &lgr_tag, const Connection &conn) const Definition: BlackoilWellModelGeneric.hpp:104 int numLocalWellsEnd() const std::vector< std::vector< int > > getMaxWellConnections() const bool wellStructureChangedDynamically_ Definition: BlackoilWellModelGeneric.hpp:579 void initInjMult() bool networkActive() const return true if network is active (at least one network well in prediction mode) const Schedule & schedule() const Definition: BlackoilWellModelGeneric.hpp:138 const WellGroupEvents & reportStepStartEvents() const Definition: BlackoilWellModelGeneric.hpp:237 Schedule & schedule_ Definition: BlackoilWellModelGeneric.hpp:510 std::vector< std::reference_wrapper< ParallelWellInfo< Scalar > > > local_parallel_well_info_ Definition: BlackoilWellModelGeneric.hpp:546 std::map< std::string, Scalar > last_valid_node_pressures_ Definition: BlackoilWellModelGeneric.hpp:560 bool forceShutWellByName(const std::string &wellname, const double simulation_time, const bool dont_shut_grup_wells) std::vector< Well > wells_ecl_ Definition: BlackoilWellModelGeneric.hpp:528 std::vector< ParallelWellInfo< Scalar > > parallel_well_info_ Definition: BlackoilWellModelGeneric.hpp:545 BlackoilWellModelWBP< Scalar > wbp_ Definition: BlackoilWellModelGeneric.hpp:516 void updateWellPotentials(const int reportStepIdx, const bool onlyAfterEvent, const SummaryConfig &summaryConfig, DeferredLogger &deferred_logger) virtual void calcResvCoeff(const int fipnum, const int pvtreg, const std::vector< Scalar > &production_rates, std::vector< Scalar > &resv_coeff)=0 std::vector< WellInterfaceGeneric< Scalar > * > genericWells() Definition: BlackoilWellModelGeneric.hpp:144 std::map< std::string, Scalar > node_pressures_ Definition: BlackoilWellModelGeneric.hpp:558 void setRepRadiusPerfLength() WellGroupEvents report_step_start_events_ Well group events at start of report step. Definition: BlackoilWellModelGeneric.hpp:577 void assignDynamicWellStatus(data::Wells &wsrpt, const int reportStepIdx) const void assignShutConnections(data::Wells &wsrpt, const int reportStepIndex) const const WellTestState & wellTestState() const Definition: BlackoilWellModelGeneric.hpp:175 void updateClosedWellsThisStep(const std::string &well_name) const Definition: BlackoilWellModelGeneric.hpp:246 void assignGroupControl(const Group &group, data::GroupData &gdata) const void assignInjectionWellTargets(const Well &well, data::WellControlLimits &limits) const void prepareDeserialize(int report_step, const std::size_t numCells, bool handle_ms_well, bool enable_distributed_wells) std::vector< WellProdIndexCalculator< Scalar > > prod_index_calc_ Definition: BlackoilWellModelGeneric.hpp:548 const ConnectionIndexMap & connectionIndexMap(const std::size_t idx) Definition: BlackoilWellModelGeneric.hpp:292 void updateFiltrationModelsPostStep(const double dt, const std::size_t water_index, DeferredLogger &deferred_logger) std::vector< int > local_shut_wells_ Definition: BlackoilWellModelGeneric.hpp:543 std::vector< int > pvt_region_idx_ Definition: BlackoilWellModelGeneric.hpp:550 void updateInjFCMult(DeferredLogger &deferred_logger) virtual void createWellContainer(const int time_step)=0 void setWsolvent(const Group &group, const int reportStepIdx, Scalar wsolvent) void assignWellTracerRates(data::Wells &wsrpt, const WellTracerRates &wellTracerRates, const unsigned reportStep) const void updateEclWells(const int timeStepIdx, const SimulatorUpdate &sim_update, const SummaryState &st) const WGState< Scalar > & prevWGState() const Definition: BlackoilWellModelGeneric.hpp:328 std::vector< Well > getLocalWells(const int timeStepIdx) const const std::vector< PerforationData< Scalar > > & perfData(const int well_idx) const Definition: BlackoilWellModelGeneric.hpp:223 bool terminalOutput() const Definition: BlackoilWellModelGeneric.hpp:133 std::unordered_set< std::string > closed_this_step_ Definition: BlackoilWellModelGeneric.hpp:552 bool anyMSWellOpenLocal() const data::GroupAndNetworkValues groupAndNetworkData(const int reportStepIdx) const void initializeWellProdIndCalculators() void initFromRestartFile(const RestartValue &restartValues, std::unique_ptr< WellTestState > wtestState, const std::size_t numCells, bool handle_ms_well, bool enable_distributed_wells) virtual void initWellContainer(const int reportStepIdx)=0 void logPrimaryVars() const bool wells_active_ Definition: BlackoilWellModelGeneric.hpp:521 bool shouldBalanceNetwork(const int reportStepIndex, const int iterationIdx) const const WellState< Scalar > & wellState() const Definition: BlackoilWellModelGeneric.hpp:150 std::map< std::string, std::pair< std::string, std::string > > closed_offending_wells_ Definition: BlackoilWellModelGeneric.hpp:585 void commitWGState(WGState< Scalar > wgstate) Definition: BlackoilWellModelGeneric.hpp:338 void assignMswTracerRates(data::Wells &wsrpt, const MswTracerRates &mswTracerRates, const unsigned reportStep) const void assignProductionWellTargets(const Well &well, data::WellControlLimits &limits) const void commitWGState() Definition: BlackoilWellModelGeneric.hpp:201 std::vector< std::reference_wrapper< ParallelWellInfo< Scalar > > > createLocalParallelWellInfo(const std::vector< Well > &wells) Create the parallel well information. std::vector< WellInterfaceGeneric< Scalar > * > well_container_generic_ Definition: BlackoilWellModelGeneric.hpp:541 bool needPreStepNetworkRebalance(const int report_step) const void assignGroupValues(const int reportStepIdx, std::map< std::string, data::GroupData > &gvalues) const void initializeWellPerfData() std::optional< int > last_run_wellpi_ Definition: BlackoilWellModelGeneric.hpp:526 bool network_active_ Definition: BlackoilWellModelGeneric.hpp:522 const Parallel::Communication & comm() const Definition: BlackoilWellModelGeneric.hpp:226 const WellState< Scalar > & prevWellState() const Definition: BlackoilWellModelGeneric.hpp:323 const Parallel::Communication & comm_ Definition: BlackoilWellModelGeneric.hpp:514 WGState< Scalar > last_valid_wgstate_ Definition: BlackoilWellModelGeneric.hpp:575 bool wasDynamicallyShutThisTimeStep(const std::string &well_name) const std::map< std::string, std::array< std::vector< Group::InjectionCMode >, 3 > > switched_inj_groups_ Definition: BlackoilWellModelGeneric.hpp:583 bool isOwner(const std::string &wname) const Definition: BlackoilWellModelGeneric.hpp:281 std::map< std::string, double > well_open_times_ Definition: BlackoilWellModelGeneric.hpp:532 bool terminal_output_ Definition: BlackoilWellModelGeneric.hpp:520 WGState< Scalar > nupcol_wgstate_ Definition: BlackoilWellModelGeneric.hpp:576 std::vector< ConnectionIndexMap > conn_idx_map_ Definition: BlackoilWellModelGeneric.hpp:537 const GroupState< Scalar > & groupState() const Definition: BlackoilWellModelGeneric.hpp:140 virtual void calculateProductivityIndexValues(DeferredLogger &deferred_logger)=0 std::vector< std::vector< PerforationData< Scalar > > > well_perf_data_ Definition: BlackoilWellModelGeneric.hpp:529 std::unordered_map< int, std::vector< WellTracerRate< Scalar > > > WellTracerRates Definition: BlackoilWellModelGeneric.hpp:497 void updateFiltrationModelsPreStep(DeferredLogger &deferred_logger) int numLocalNonshutWells() const std::map< std::string, std::vector< Group::ProductionCMode > > switched_prod_groups_ Definition: BlackoilWellModelGeneric.hpp:582 void updateAndCommunicateGroupData(const int reportStepIdx, const int iterationIdx, const Scalar tol_nupcol, const bool update_wellgrouptarget, DeferredLogger &deferred_logger) BlackoilWellModelGasLiftGeneric< Scalar > & gen_gaslift_ Definition: BlackoilWellModelGeneric.hpp:515 bool operator==(const BlackoilWellModelGeneric &rhs) const WGState< Scalar > active_wgstate_ Definition: BlackoilWellModelGeneric.hpp:574 const std::map< std::string, double > & wellCloseTimes() const Definition: BlackoilWellModelGeneric.hpp:236 WellState< Scalar > & wellState() Definition: BlackoilWellModelGeneric.hpp:158 WellTestState & wellTestState() Definition: BlackoilWellModelGeneric.hpp:173 std::vector< int > getCellsForConnections(const Well &well) const const PhaseUsage & phaseUsage() const Definition: BlackoilWellModelGeneric.hpp:139 void updateWsolvent(const Group &group, const int reportStepIdx, const WellState< Scalar > &wellState) const ParallelWellInfo< Scalar > & parallelWellInfo(const std::size_t idx) const Definition: BlackoilWellModelGeneric.hpp:278 GuideRate & guideRate() Definition: BlackoilWellModelGeneric.hpp:233 virtual ~BlackoilWellModelGeneric()=default void calculateEfficiencyFactors(const int reportStepIdx) const std::vector< Well > & eclWells() const Definition: BlackoilWellModelGeneric.hpp:130 virtual void computePotentials(const std::size_t widx, const WellState< Scalar > &well_state_copy, std::string &exc_msg, ExceptionType::ExcEnum &exc_type, DeferredLogger &deferred_logger)=0 void inferLocalShutWells() const SummaryState & summaryState() const Definition: BlackoilWellModelGeneric.hpp:230 void assignMassGasRate(data::Wells &wsrpt, const Scalar gasDensity) const std::function< bool(const std::string &)> not_on_process_ Definition: BlackoilWellModelGeneric.hpp:538 Scalar wellPI(const std::string &well_name) const std::unique_ptr< VFPProperties< Scalar > > vfp_properties_ Definition: BlackoilWellModelGeneric.hpp:555 std::unordered_map< std::string, std::vector< Scalar > > prev_inj_multipliers_ Definition: BlackoilWellModelGeneric.hpp:563 void serializeOp(Serializer &serializer) Definition: BlackoilWellModelGeneric.hpp:255 Scalar updateNetworkPressures(const int reportStepIdx, const Scalar damping_factor, const Scalar update_upper_bound) const EclipseState & eclState_ Definition: BlackoilWellModelGeneric.hpp:513 std::vector< const WellInterfaceGeneric< Scalar > * > genericWells() const Definition: BlackoilWellModelGeneric.hpp:141 bool wasDynamicallyShutThisTimeStep(const int well_index) const void assignWellTargets(data::Wells &wsrpt) const void checkGEconLimits(const Group &group, const double simulation_time, const int report_step_idx, DeferredLogger &deferred_logger) void runWellPIScaling(const int reportStepIdx, DeferredLogger &local_deferredLogger) void resetWGState() Definition: BlackoilWellModelGeneric.hpp:348 Scalar wellPI(const int well_index) const PhaseUsage phase_usage_ Definition: BlackoilWellModelGeneric.hpp:519 const WellState< Scalar > & nupcolWellState() const Definition: BlackoilWellModelGeneric.hpp:167 const std::map< std::string, double > & wellOpenTimes() const Definition: BlackoilWellModelGeneric.hpp:235 int numPhases() const void updateInjMult(DeferredLogger &deferred_logger) std::vector< std::string > getWellsForTesting(const int timeStepIdx, const double simulationTime) virtual int compressedIndexForInterior(int cartesian_cell_idx) const =0 get compressed index for interior cells (-1, otherwise Class for handling the blackoil well model. Definition: BlackoilWellModelWBP.hpp:42 Definition: DeferredLogger.hpp:57 Definition: GroupState.hpp:43 Class encapsulating some information about parallel wells. Definition: ParallelWellInfo.hpp:195 Definition: WellInterfaceGeneric.hpp:53 Definition: WellState.hpp:65 Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 Definition: blackoilnewtonmethodparams.hpp:31 Definition: blackoilboundaryratevector.hh:39 Definition: BlackoilWellModelGeneric.hpp:85 static constexpr bool value Definition: BlackoilWellModelGeneric.hpp:85 Definition: BlackoilPhases.hpp:46 Definition: WGState.hpp:41 |