Class for handling the blackoil well model. More...

#include <BlackoilWellModel.hpp>

Inheritance diagram for Opm::BlackoilWellModel< TypeTag >:
Inheritance graph

Public Types

using Grid = GetPropType< TypeTag, Properties::Grid >
 
using EquilGrid = GetPropType< TypeTag, Properties::EquilGrid >
 
using FluidSystem = GetPropType< TypeTag, Properties::FluidSystem >
 
using ElementContext = GetPropType< TypeTag, Properties::ElementContext >
 
using Indices = GetPropType< TypeTag, Properties::Indices >
 
using Simulator = GetPropType< TypeTag, Properties::Simulator >
 
using Scalar = GetPropType< TypeTag, Properties::Scalar >
 
using RateVector = GetPropType< TypeTag, Properties::RateVector >
 
using GlobalEqVector = GetPropType< TypeTag, Properties::GlobalEqVector >
 
using SparseMatrixAdapter = GetPropType< TypeTag, Properties::SparseMatrixAdapter >
 
using ModelParameters = BlackoilModelParameters< Scalar >
 
using WellConnectionModule = WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >
 
using VectorBlockType = Dune::FieldVector< Scalar, numEq >
 
using BVector = Dune::BlockVector< VectorBlockType >
 
using PolymerModule = BlackOilPolymerModule< TypeTag >
 
using MICPModule = BlackOilMICPModule< TypeTag >
 
using RateConverterType = RateConverter::SurfaceToReservoirVoidage< FluidSystem, std::vector< int > >
 
using AverageRegionalPressureType = RegionAverageCalculator::AverageRegionalPressure< FluidSystem, std::vector< int > >
 
using WellInterfacePtr = std::shared_ptr< WellInterface< TypeTag > >
 
using PressureMatrix = Dune::BCRSMatrix< Opm::MatrixBlock< Scalar, 1, 1 > >
 
using NeighborSet = typename ::Opm::BaseAuxiliaryModule< TypeTag >::NeighborSet
 
using Domain = SubDomain< Grid >
 

Public Member Functions

 BlackoilWellModel (Simulator &simulator)
 
void init ()
 
void initWellContainer (const int reportStepIdx) override
 
void beginEpisode ()
 
void beginTimeStep ()
 
void beginIteration ()
 
void endIteration ()
 
void endTimeStep ()
 
void endEpisode ()
 
void computeTotalRatesForDof (RateVector &rate, unsigned globalIdx) const
 
template<class Context >
void computeTotalRatesForDof (RateVector &rate, const Context &context, unsigned spaceIdx, unsigned timeIdx) const
 
void initFromRestartFile (const RestartValue &restartValues)
 
void prepareDeserialize (const int report_step)
 
data::Wells wellData () const
 
data::WellBlockAveragePressures wellBlockAveragePressures () const
 
ConvergenceReport getWellConvergence (const std::vector< Scalar > &B_avg, const bool checkWellGroupControls=false) const
 
const SimulatorReportSinglelastReport () const
 
void addWellContributions (SparseMatrixAdapter &jacobian) const
 
void addReservoirSourceTerms (GlobalEqVector &residual, const std::vector< typename SparseMatrixAdapter::MatrixBlock * > &diagMatAddress) const
 
void beginReportStep (const int time_step)
 
void calculateExplicitQuantities (DeferredLogger &deferred_logger) const
 
void prepareTimeStep (DeferredLogger &deferred_logger)
 
bool updateWellControls (DeferredLogger &deferred_logger)
 
std::tuple< bool, ScalarupdateNetworks (const bool mandatory_network_balance, DeferredLogger &deferred_logger, const bool relax_network_tolerance=false)
 
void updateAndCommunicate (const int reportStepIdx, const int iterationIdx, DeferredLogger &deferred_logger)
 
bool updateGroupControls (const Group &group, DeferredLogger &deferred_logger, const int reportStepIdx, const int iterationIdx)
 
WellInterfacePtr getWell (const std::string &well_name) const
 
void addWellPressureEquations (PressureMatrix &jacobian, const BVector &weights, const bool use_well_weights) const
 
void addWellPressureEquationsStruct (PressureMatrix &jacobian) const
 
void addWellPressureEquationsDomain (PressureMatrix &jacobian, const BVector &weights, const bool use_well_weights, const int domainIndex) const
 
const std::vector< WellInterfacePtr > & localNonshutWells () const
 Get list of local nonshut wells. More...
 
const SparseTable< int > & well_local_cells () const
 
const std::map< std::string, int > & well_domain () const
 
auto begin () const
 
auto end () const
 
bool empty () const
 
bool addMatrixContributions () const
 
int numStrictIterations () const
 
int compressedIndexForInterior (int cartesian_cell_idx) const override
 get compressed index for interior cells (-1, otherwise More...
 
int compressedIndexForInteriorLGR (const std::string &lgr_tag, const Connection &conn) const override
 
void recoverWellSolutionAndUpdateWellState (const BVector &x)
 
void recoverWellSolutionAndUpdateWellStateDomain (const BVector &x, const int domainIdx)
 
const Gridgrid () const
 
const Simulatorsimulator () const
 
void setNlddAdapter (BlackoilWellModelNldd< TypeTag > *mod)
 
ReservoirCouplingMasterreservoirCouplingMaster ()
 
ReservoirCouplingSlavereservoirCouplingSlave ()
 
bool isReservoirCouplingMaster () const
 
bool isReservoirCouplingSlave () const
 
void setReservoirCouplingMaster (ReservoirCouplingMaster *master)
 
void setReservoirCouplingSlave (ReservoirCouplingSlave *slave)
 
unsigned numDofs () const override
 Returns the number of additional degrees of freedom required for the auxiliary module. More...
 
void addNeighbors (std::vector< NeighborSet > &neighbors) const override
 Specify the additional neighboring correlations caused by the auxiliary module. More...
 
void applyInitial () override
 Set the initial condition of the auxiliary module in the solution vector. More...
 
void linearize (SparseMatrixAdapter &jacobian, GlobalEqVector &res) override
 Linearize the auxiliary equation. More...
 
void postSolve (GlobalEqVector &deltaX) override
 This method is called after the linear solver has been called but before the solution is updated for the next iteration. More...
 
void linearizeDomain (const Domain &domain, SparseMatrixAdapter &jacobian, GlobalEqVector &res)
 
void postSolveDomain (const GlobalEqVector &deltaX, const Domain &domain)
 
void deserialize (Restarter &)
 
void serialize (Restarter &)
 This method writes the complete state of the well to the harddisk. More...
 
void setDofOffset (int value)
 Set the offset in the global system of equations for the first degree of freedom of this auxiliary module. More...
 
int dofOffset ()
 Return the offset in the global system of equations for the first degree of freedom of this auxiliary module. More...
 
int localToGlobalDof (unsigned localDofIdx) const
 Given a degree of freedom relative to the current auxiliary equation, return the corresponding index in the global system of equations. More...
 
int numLocalWells () const
 
int numLocalWellsEnd () const
 
int numLocalNonshutWells () const
 
int numPhases () const
 
bool wellsActive () const
 return true if wells are available in the reservoir More...
 
bool hasLocalWell (const std::string &wname) const
 Returns true if well is defined and has connections on current rank. More...
 
bool hasOpenLocalWell (const std::string &well_name) const
 Returns true if well is defined, open and has connections on current rank. More...
 
bool networkActive () const
 return true if network is active (at least one network well in prediction mode) More...
 
bool anyMSWellOpenLocal () const
 
const std::vector< Well > & eclWells () const
 
bool terminalOutput () const
 
const Well & getWellEcl (const std::string &well_name) const
 
std::vector< Well > getLocalWells (const int timeStepIdx) const
 
const Schedule & schedule () const
 
const PhaseUsagephaseUsage () const
 
const GroupState< GetPropType< TypeTag, Properties::Scalar > > & groupState () const
 
GroupState< GetPropType< TypeTag, Properties::Scalar > > & groupState ()
 
std::vector< const WellInterfaceGeneric< GetPropType< TypeTag, Properties::Scalar > > * > genericWells () const
 
std::vector< WellInterfaceGeneric< GetPropType< TypeTag, Properties::Scalar > > * > genericWells ()
 
const WellState< GetPropType< TypeTag, Properties::Scalar > > & wellState () const
 
WellState< GetPropType< TypeTag, Properties::Scalar > > & wellState ()
 
const WellState< GetPropType< TypeTag, Properties::Scalar > > & nupcolWellState () const
 
WellTestState & wellTestState ()
 
const WellTestState & wellTestState () const
 
GetPropType< TypeTag, Properties::ScalarwellPI (const int well_index) const
 
GetPropType< TypeTag, Properties::ScalarwellPI (const std::string &well_name) const
 
void updateEclWells (const int timeStepIdx, const SimulatorUpdate &sim_update, const SummaryState &st)
 
void initFromRestartFile (const RestartValue &restartValues, std::unique_ptr< WellTestState > wtestState, const std::size_t numCells, bool handle_ms_well, bool enable_distributed_wells)
 
void prepareDeserialize (int report_step, const std::size_t numCells, bool handle_ms_well, bool enable_distributed_wells)
 
void commitWGState ()
 
data::GroupAndNetworkValues groupAndNetworkData (const int reportStepIdx) const
 
void updateNetworkActiveState (const int report_step)
 Checks if network is active (at least one network well on prediction). More...
 
bool needPreStepNetworkRebalance (const int report_step) const
 
bool forceShutWellByName (const std::string &wellname, const double simulation_time, const bool dont_shut_grup_wells)
 
const std::vector< PerforationData< GetPropType< TypeTag, Properties::Scalar > > > & perfData (const int well_idx) const
 
const Parallel::Communicationcomm () const
 
const EclipseState & eclipseState () const
 
const SummaryState & summaryState () const
 
const GuideRate & guideRate () const
 
GuideRate & guideRate ()
 
const std::map< std::string, double > & wellOpenTimes () const
 
const std::map< std::string, double > & wellCloseTimes () const
 
const WellGroupEvents & reportStepStartEvents () const
 
std::vector< int > getCellsForConnections (const Well &well) const
 
bool reportStepStarts () const
 
bool shouldBalanceNetwork (const int reportStepIndex, const int iterationIdx) const
 
void updateClosedWellsThisStep (const std::string &well_name) const
 
bool wasDynamicallyShutThisTimeStep (const std::string &well_name) const
 
void logPrimaryVars () const
 
void serializeOp (Serializer &serializer)
 
bool operator== (const BlackoilWellModelGeneric &rhs) const
 
const ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > & parallelWellInfo (const std::size_t idx) const
 
bool isOwner (const std::string &wname) const
 
const ConnectionIndexMapconnectionIndexMap (const std::size_t idx)
 

Static Public Attributes

static constexpr std::size_t pressureVarIndex = GetPropType<TypeTag, Properties::Indices>::pressureSwitchIdx
 
static const int numEq = Indices::numEq
 
static const int solventSaturationIdx = Indices::solventSaturationIdx
 
static constexpr bool has_solvent_ = getPropValue<TypeTag, Properties::EnableSolvent>()
 
static constexpr bool has_polymer_ = getPropValue<TypeTag, Properties::EnablePolymer>()
 
static constexpr bool has_energy_ = getPropValue<TypeTag, Properties::EnableEnergy>()
 
static constexpr bool has_micp_ = getPropValue<TypeTag, Properties::EnableMICP>()
 

Protected Types

using WellTracerRates = std::unordered_map< int, std::vector< WellTracerRate< GetPropType< TypeTag, Properties::Scalar > > > >
 
using MswTracerRates = std::unordered_map< int, std::vector< MSWellTracerRate< GetPropType< TypeTag, Properties::Scalar > > > >
 

Protected Member Functions

void initializeWellState (const int timeStepIdx)
 
void createWellContainer (const int report_step) override
 
WellInterfacePtr createWellPointer (const int wellID, const int report_step) const
 
template<typename WellType >
std::unique_ptr< WellType > createTypedWellPointer (const int wellID, const int time_step) const
 
WellInterfacePtr createWellForWellTest (const std::string &well_name, const int report_step, DeferredLogger &deferred_logger) const
 
void doPreStepNetworkRebalance (DeferredLogger &deferred_logger)
 
const EquilGridequilGrid () const
 
const EclipseState & eclState () const
 
void assemble (const int iterationIdx, const double dt)
 
std::tuple< bool, bool, ScalarupdateWellControlsAndNetworkIteration (const bool mandatory_network_balance, const bool relax_network_tolerance, const bool optimize_gas_lift, const double dt, DeferredLogger &local_deferredLogger)
 
bool updateWellControlsAndNetwork (const bool mandatory_network_balance, const double dt, DeferredLogger &local_deferredLogger)
 
bool computeWellGroupThp (const double dt, DeferredLogger &local_deferredLogger)
 
void initializeLocalWellStructure (const int reportStepIdx, const bool enableWellPIScaling)
 
void initializeGroupStructure (const int reportStepIdx)
 
void timeStepSucceeded (const double simulationTime, const double dt)
 
void endReportStep ()
 
void updatePrimaryVariables (DeferredLogger &deferred_logger)
 
void updateAverageFormationFactor ()
 
void computePotentials (const std::size_t widx, const WellState< Scalar > &well_state_copy, std::string &exc_msg, ExceptionType::ExcEnum &exc_type, DeferredLogger &deferred_logger) override
 
const std::vector< Scalar > & wellPerfEfficiencyFactors () const
 
void calculateProductivityIndexValuesShutWells (const int reportStepIdx, DeferredLogger &deferred_logger) override
 
void calculateProductivityIndexValues (DeferredLogger &deferred_logger) override
 
void calculateProductivityIndexValues (const WellInterface< TypeTag > *wellPtr, DeferredLogger &deferred_logger)
 
int numComponents () const
 
int reportStepIndex () const
 
void assembleWellEq (const double dt, DeferredLogger &deferred_logger)
 
void prepareWellsBeforeAssembling (const double dt, DeferredLogger &deferred_logger)
 
void assembleWellEqWithoutIteration (const double dt, DeferredLogger &deferred_logger)
 
void extractLegacyCellPvtRegionIndex_ ()
 
void extractLegacyDepth_ ()
 
void updateWellTestState (const double &simulationTime, WellTestState &wellTestState) const
 upate the wellTestState related to economic limits More...
 
void wellTesting (const int timeStepIdx, const double simulationTime, DeferredLogger &deferred_logger)
 
void calcResvCoeff (const int fipnum, const int pvtreg, const std::vector< Scalar > &production_rates, std::vector< Scalar > &resv_coeff) override
 
void calcInjResvCoeff (const int fipnum, const int pvtreg, std::vector< Scalar > &resv_coeff) override
 
void computeWellTemperature ()
 
void commitWGState (WGState< GetPropType< TypeTag, Properties::Scalar > > wgstate)
 
bool wasDynamicallyShutThisTimeStep (const int well_index) const
 
const WellState< GetPropType< TypeTag, Properties::Scalar > > & prevWellState () const
 
const WGState< GetPropType< TypeTag, Properties::Scalar > > & prevWGState () const
 
void resetWGState ()
 
void updateNupcolWGState ()
 
void reportGroupSwitching (DeferredLogger &local_deferredLogger) const
 
std::vector< std::reference_wrapper< ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > > > createLocalParallelWellInfo (const std::vector< Well > &wells)
 Create the parallel well information. More...
 
void initializeWellProdIndCalculators ()
 
void initializeWellPerfData ()
 
GetPropType< TypeTag, Properties::ScalarupdateNetworkPressures (const int reportStepIdx, const GetPropType< TypeTag, Properties::Scalar > damping_factor, const GetPropType< TypeTag, Properties::Scalar > update_upper_bound)
 
void updateWsolvent (const Group &group, const int reportStepIdx, const WellState< GetPropType< TypeTag, Properties::Scalar > > &wellState)
 
void setWsolvent (const Group &group, const int reportStepIdx, GetPropType< TypeTag, Properties::Scalar > wsolvent)
 
virtual void calcResvCoeff (const int fipnum, const int pvtreg, const std::vector< GetPropType< TypeTag, Properties::Scalar > > &production_rates, std::vector< GetPropType< TypeTag, Properties::Scalar > > &resv_coeff)=0
 
virtual void calcInjResvCoeff (const int fipnum, const int pvtreg, std::vector< GetPropType< TypeTag, Properties::Scalar > > &resv_coeff)=0
 
void assignDynamicWellStatus (data::Wells &wsrpt, const int reportStepIdx) const
 
void assignShutConnections (data::Wells &wsrpt, const int reportStepIndex) const
 
void assignWellTargets (data::Wells &wsrpt) const
 
void assignProductionWellTargets (const Well &well, data::WellControlLimits &limits) const
 
void assignInjectionWellTargets (const Well &well, data::WellControlLimits &limits) const
 
void assignGroupControl (const Group &group, data::GroupData &gdata) const
 
void assignGroupValues (const int reportStepIdx, std::map< std::string, data::GroupData > &gvalues) const
 
void assignNodeValues (std::map< std::string, data::NodeData > &nodevalues, const int reportStepIdx) const
 
void calculateEfficiencyFactors (const int reportStepIdx)
 
void checkGconsaleLimits (const Group &group, WellState< GetPropType< TypeTag, Properties::Scalar > > &well_state, const int reportStepIdx, DeferredLogger &deferred_logger)
 
void checkGEconLimits (const Group &group, const double simulation_time, const int report_step_idx, DeferredLogger &deferred_logger)
 
bool checkGroupHigherConstraints (const Group &group, DeferredLogger &deferred_logger, const int reportStepIdx, const int max_number_of_group_switch)
 
void updateAndCommunicateGroupData (const int reportStepIdx, const int iterationIdx, const GetPropType< TypeTag, Properties::Scalar > tol_nupcol, const bool update_wellgrouptarget, DeferredLogger &deferred_logger)
 
void inferLocalShutWells ()
 
void setRepRadiusPerfLength ()
 
virtual void computePotentials (const std::size_t widx, const WellState< GetPropType< TypeTag, Properties::Scalar > > &well_state_copy, std::string &exc_msg, ExceptionType::ExcEnum &exc_type, DeferredLogger &deferred_logger)=0
 
void updateWellPotentials (const int reportStepIdx, const bool onlyAfterEvent, const SummaryConfig &summaryConfig, DeferredLogger &deferred_logger)
 
void initInjMult ()
 
void updateInjMult (DeferredLogger &deferred_logger)
 
void updateInjFCMult (DeferredLogger &deferred_logger)
 
void updateFiltrationModelsPostStep (const double dt, const std::size_t water_index, DeferredLogger &deferred_logger)
 
void updateFiltrationModelsPreStep (DeferredLogger &deferred_logger)
 
void runWellPIScaling (const int reportStepIdx, DeferredLogger &local_deferredLogger)
 
std::vector< std::vector< int > > getMaxWellConnections () const
 
std::vector< std::string > getWellsForTesting (const int timeStepIdx, const double simulationTime)
 
void assignWellTracerRates (data::Wells &wsrpt, const WellTracerRates &wellTracerRates, const unsigned reportStep) const
 
void assignMswTracerRates (data::Wells &wsrpt, const MswTracerRates &mswTracerRates, const unsigned reportStep) const
 
void assignMassGasRate (data::Wells &wsrpt, const GetPropType< TypeTag, Properties::Scalar > gasDensity) const
 

Protected Attributes

Simulatorsimulator_
 
std::vector< WellInterfacePtrwell_container_ {}
 
std::vector< bool > is_cell_perforated_ {}
 
const ModelParameters param_
 
std::size_t global_num_cells_ {}
 
std::size_t local_num_cells_ {}
 
Scalar gravity_ {}
 
std::vector< Scalardepth_ {}
 
bool alternative_well_rate_init_ {}
 
std::map< std::string, Scalarwell_group_thp_calc_
 
std::unique_ptr< RateConverterTyperateConverter_ {}
 
std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > regionalAveragePressureCalculator_ {}
 
SimulatorReportSingle last_report_ {}
 
GuideRateHandler< Scalarguide_rate_handler_ {}
 
std::vector< ScalarB_avg_ {}
 
Schedule & schedule_
 
const SummaryState & summaryState_
 
const EclipseState & eclState_
 
const Parallel::Communicationcomm_
 
BlackoilWellModelGasLiftGeneric< GetPropType< TypeTag, Properties::Scalar > > & gen_gaslift_
 
BlackoilWellModelWBP< GetPropType< TypeTag, Properties::Scalar > > wbp_
 
PhaseUsage phase_usage_
 
bool terminal_output_
 
bool wells_active_
 
bool network_active_
 
bool initial_step_
 
bool report_step_starts_
 
std::optional< int > last_run_wellpi_
 
std::vector< Well > wells_ecl_
 
std::vector< std::vector< PerforationData< GetPropType< TypeTag, Properties::Scalar > > > > well_perf_data_
 
std::map< std::string, double > well_open_times_
 
std::map< std::string, double > well_close_times_
 
std::vector< ConnectionIndexMapconn_idx_map_
 
std::function< bool(const std::string &)> not_on_process_
 
std::vector< WellInterfaceGeneric< GetPropType< TypeTag, Properties::Scalar > > * > well_container_generic_
 
std::vector< int > local_shut_wells_
 
std::vector< ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > > parallel_well_info_
 
std::vector< std::reference_wrapper< ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > > > local_parallel_well_info_
 
std::vector< WellProdIndexCalculator< GetPropType< TypeTag, Properties::Scalar > > > prod_index_calc_
 
std::vector< int > pvt_region_idx_
 
std::unordered_set< std::string > closed_this_step_
 
GuideRate guideRate_
 
std::unique_ptr< VFPProperties< GetPropType< TypeTag, Properties::Scalar > > > vfp_properties_
 
std::map< std::string, GetPropType< TypeTag, Properties::Scalar > > node_pressures_
 
std::map< std::string, GetPropType< TypeTag, Properties::Scalar > > last_valid_node_pressures_
 
std::unordered_map< std::string, std::vector< GetPropType< TypeTag, Properties::Scalar > > > prev_inj_multipliers_
 
std::unordered_map< std::string, WellFilterCake< GetPropType< TypeTag, Properties::Scalar > > > filter_cake_
 
WGState< GetPropType< TypeTag, Properties::Scalar > > active_wgstate_
 
WGState< GetPropType< TypeTag, Properties::Scalar > > last_valid_wgstate_
 
WGState< GetPropType< TypeTag, Properties::Scalar > > nupcol_wgstate_
 
WellGroupEvents report_step_start_events_
 Well group events at start of report step. More...
 
bool wellStructureChangedDynamically_
 
std::map< std::string, std::vector< Group::ProductionCMode > > switched_prod_groups_
 
std::map< std::string, std::array< std::vector< Group::InjectionCMode >, 3 > > switched_inj_groups_
 
std::map< std::string, std::pair< std::string, std::string > > closed_offending_wells_
 

Detailed Description

template<typename TypeTag>
class Opm::BlackoilWellModel< TypeTag >

Class for handling the blackoil well model.

Member Typedef Documentation

◆ AverageRegionalPressureType

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::AverageRegionalPressureType = RegionAverageCalculator:: AverageRegionalPressure<FluidSystem, std::vector<int> >

◆ BVector

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::BVector = Dune::BlockVector<VectorBlockType>

◆ Domain

using Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::Domain = SubDomain<Grid>
inherited

◆ ElementContext

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::ElementContext = GetPropType<TypeTag, Properties::ElementContext>

◆ EquilGrid

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::EquilGrid = GetPropType<TypeTag, Properties::EquilGrid>

◆ FluidSystem

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>

◆ GlobalEqVector

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::GlobalEqVector = GetPropType<TypeTag, Properties::GlobalEqVector>

◆ Grid

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::Grid = GetPropType<TypeTag, Properties::Grid>

◆ Indices

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::Indices = GetPropType<TypeTag, Properties::Indices>

◆ MICPModule

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::MICPModule = BlackOilMICPModule<TypeTag>

◆ ModelParameters

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::ModelParameters = BlackoilModelParameters<Scalar>

◆ MswTracerRates

using Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::MswTracerRates = std::unordered_map<int, std::vector<MSWellTracerRate<GetPropType< TypeTag, Properties::Scalar > > >>
protectedinherited

◆ NeighborSet

using Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::NeighborSet = typename ::Opm::BaseAuxiliaryModule<TypeTag>::NeighborSet
inherited

◆ PolymerModule

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::PolymerModule = BlackOilPolymerModule<TypeTag>

◆ PressureMatrix

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::PressureMatrix = Dune::BCRSMatrix<Opm::MatrixBlock<Scalar, 1, 1> >

◆ RateConverterType

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::RateConverterType = RateConverter:: SurfaceToReservoirVoidage<FluidSystem, std::vector<int> >

◆ RateVector

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::RateVector = GetPropType<TypeTag, Properties::RateVector>

◆ Scalar

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::Scalar = GetPropType<TypeTag, Properties::Scalar>

◆ Simulator

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::Simulator = GetPropType<TypeTag, Properties::Simulator>

◆ SparseMatrixAdapter

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::SparseMatrixAdapter = GetPropType<TypeTag, Properties::SparseMatrixAdapter>

◆ VectorBlockType

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::VectorBlockType = Dune::FieldVector<Scalar, numEq>

◆ WellConnectionModule

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::WellConnectionModule = WellConnectionAuxiliaryModule<TypeTag, BlackoilWellModel<TypeTag> >

◆ WellInterfacePtr

template<typename TypeTag >
using Opm::BlackoilWellModel< TypeTag >::WellInterfacePtr = std::shared_ptr<WellInterface<TypeTag> >

◆ WellTracerRates

using Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::WellTracerRates = std::unordered_map<int, std::vector<WellTracerRate<GetPropType< TypeTag, Properties::Scalar > > >>
protectedinherited

Constructor & Destructor Documentation

◆ BlackoilWellModel()

template<typename TypeTag >
Opm::BlackoilWellModel< TypeTag >::BlackoilWellModel ( Simulator simulator)
explicit

Member Function Documentation

◆ addMatrixContributions()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::addMatrixContributions ( ) const
inline

◆ addNeighbors()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::addNeighbors ( std::vector< NeighborSet > &  neighbors) const
inlineoverridevirtualinherited

Specify the additional neighboring correlations caused by the auxiliary module.

Implements Opm::BaseAuxiliaryModule< TypeTag >.

◆ addReservoirSourceTerms()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::addReservoirSourceTerms ( GlobalEqVector residual,
const std::vector< typename SparseMatrixAdapter::MatrixBlock * > &  diagMatAddress 
) const

◆ addWellContributions()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::addWellContributions ( SparseMatrixAdapter jacobian) const

◆ addWellPressureEquations()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::addWellPressureEquations ( PressureMatrix jacobian,
const BVector weights,
const bool  use_well_weights 
) const

◆ addWellPressureEquationsDomain()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::addWellPressureEquationsDomain ( PressureMatrix jacobian,
const BVector weights,
const bool  use_well_weights,
const int  domainIndex 
) const
inline

◆ addWellPressureEquationsStruct()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::addWellPressureEquationsStruct ( PressureMatrix jacobian) const

◆ anyMSWellOpenLocal()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::anyMSWellOpenLocal ( ) const
inherited

◆ applyInitial()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::applyInitial ( )
inlineoverridevirtualinherited

Set the initial condition of the auxiliary module in the solution vector.

Implements Opm::BaseAuxiliaryModule< TypeTag >.

◆ assemble()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::assemble ( const int  iterationIdx,
const double  dt 
)
protected

◆ assembleWellEq()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::assembleWellEq ( const double  dt,
DeferredLogger deferred_logger 
)
protected

◆ assembleWellEqWithoutIteration()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::assembleWellEqWithoutIteration ( const double  dt,
DeferredLogger deferred_logger 
)
protected

◆ assignDynamicWellStatus()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignDynamicWellStatus ( data::Wells &  wsrpt,
const int  reportStepIdx 
) const
protectedinherited

Assign dynamic well status for each well owned by current rank

Parameters
[in,out]wsrptWell solution object. On exit, holds current values for
data::Well::dynamicStatus
.
[in]reportStepIdxZero-based index of current report step.

◆ assignGroupControl()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignGroupControl ( const Group &  group,
data::GroupData &  gdata 
) const
protectedinherited

◆ assignGroupValues()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignGroupValues ( const int  reportStepIdx,
std::map< std::string, data::GroupData > &  gvalues 
) const
protectedinherited

◆ assignInjectionWellTargets()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignInjectionWellTargets ( const Well &  well,
data::WellControlLimits &  limits 
) const
protectedinherited

◆ assignMassGasRate()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignMassGasRate ( data::Wells &  wsrpt,
const GetPropType< TypeTag, Properties::Scalar gasDensity 
) const
protectedinherited

◆ assignMswTracerRates()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignMswTracerRates ( data::Wells &  wsrpt,
const MswTracerRates mswTracerRates,
const unsigned  reportStep 
) const
protectedinherited

◆ assignNodeValues()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignNodeValues ( std::map< std::string, data::NodeData > &  nodevalues,
const int  reportStepIdx 
) const
protectedinherited

◆ assignProductionWellTargets()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignProductionWellTargets ( const Well &  well,
data::WellControlLimits &  limits 
) const
protectedinherited

◆ assignShutConnections()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignShutConnections ( data::Wells &  wsrpt,
const int  reportStepIndex 
) const
protectedinherited

Assign basic result quantities for shut connections of wells owned by current rank.

Mostly provided for summary file output purposes. Applies to fully shut/stopped wells and shut connections of open/flowing wells.

Parameters
[in,out]wsrptWell solution object. On exit, also contains a few quantities, like the D factor, the Kh product and the CTF, for shut connections.
[in]reportStepIdxZero-based index of current report step.

◆ assignWellTargets()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignWellTargets ( data::Wells &  wsrpt) const
protectedinherited

◆ assignWellTracerRates()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::assignWellTracerRates ( data::Wells &  wsrpt,
const WellTracerRates wellTracerRates,
const unsigned  reportStep 
) const
protectedinherited

◆ begin()

template<typename TypeTag >
auto Opm::BlackoilWellModel< TypeTag >::begin ( ) const
inline

◆ beginEpisode()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::beginEpisode ( )
inline

◆ beginIteration()

◆ beginReportStep()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::beginReportStep ( const int  time_step)

◆ beginTimeStep()

◆ calcInjResvCoeff() [1/2]

virtual void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::calcInjResvCoeff ( const int  fipnum,
const int  pvtreg,
std::vector< GetPropType< TypeTag, Properties::Scalar > > &  resv_coeff 
)
protectedpure virtualinherited

◆ calcInjResvCoeff() [2/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calcInjResvCoeff ( const int  fipnum,
const int  pvtreg,
std::vector< Scalar > &  resv_coeff 
)
overrideprotected

◆ calcResvCoeff() [1/2]

virtual void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::calcResvCoeff ( const int  fipnum,
const int  pvtreg,
const std::vector< GetPropType< TypeTag, Properties::Scalar > > &  production_rates,
std::vector< GetPropType< TypeTag, Properties::Scalar > > &  resv_coeff 
)
protectedpure virtualinherited

◆ calcResvCoeff() [2/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calcResvCoeff ( const int  fipnum,
const int  pvtreg,
const std::vector< Scalar > &  production_rates,
std::vector< Scalar > &  resv_coeff 
)
overrideprotected

◆ calculateEfficiencyFactors()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::calculateEfficiencyFactors ( const int  reportStepIdx)
protectedinherited

◆ calculateExplicitQuantities()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calculateExplicitQuantities ( DeferredLogger deferred_logger) const

Calculating the explict quantities used in the well calculation. By explicit, we mean they are cacluated at the beginning of the time step and no derivatives are included in these quantities

References Opm::BlackoilWellModel< TypeTag >::calculateExplicitQuantities().

Referenced by Opm::BlackoilWellModel< TypeTag >::calculateExplicitQuantities().

◆ calculateProductivityIndexValues() [1/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calculateProductivityIndexValues ( const WellInterface< TypeTag > *  wellPtr,
DeferredLogger deferred_logger 
)
protected

◆ calculateProductivityIndexValues() [2/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calculateProductivityIndexValues ( DeferredLogger deferred_logger)
overrideprotectedvirtual

◆ calculateProductivityIndexValuesShutWells()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::calculateProductivityIndexValuesShutWells ( const int  reportStepIdx,
DeferredLogger deferred_logger 
)
overrideprotectedvirtual

◆ checkGconsaleLimits()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGconsaleLimits ( const Group &  group,
WellState< GetPropType< TypeTag, Properties::Scalar > > &  well_state,
const int  reportStepIdx,
DeferredLogger deferred_logger 
)
protectedinherited

◆ checkGEconLimits()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGEconLimits ( const Group &  group,
const double  simulation_time,
const int  report_step_idx,
DeferredLogger deferred_logger 
)
protectedinherited

◆ checkGroupHigherConstraints()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::checkGroupHigherConstraints ( const Group &  group,
DeferredLogger deferred_logger,
const int  reportStepIdx,
const int  max_number_of_group_switch 
)
protectedinherited

◆ comm()

const Parallel::Communication & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::comm ( ) const
inlineinherited

◆ commitWGState() [1/2]

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::commitWGState ( )
inlineinherited

◆ commitWGState() [2/2]

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::commitWGState ( WGState< GetPropType< TypeTag, Properties::Scalar > >  wgstate)
inlineprotectedinherited

◆ compressedIndexForInterior()

template<typename TypeTag >
int Opm::BlackoilWellModel< TypeTag >::compressedIndexForInterior ( int  cartesian_cell_idx) const
inlineoverridevirtual

get compressed index for interior cells (-1, otherwise

Implements Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >.

References Opm::BlackoilWellModel< TypeTag >::simulator_.

◆ compressedIndexForInteriorLGR()

template<typename TypeTag >
int Opm::BlackoilWellModel< TypeTag >::compressedIndexForInteriorLGR ( const std::string &  lgr_tag,
const Connection &  conn 
) const
inlineoverridevirtual

◆ computePotentials() [1/2]

virtual void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::computePotentials ( const std::size_t  widx,
const WellState< GetPropType< TypeTag, Properties::Scalar > > &  well_state_copy,
std::string &  exc_msg,
ExceptionType::ExcEnum exc_type,
DeferredLogger deferred_logger 
)
protectedpure virtualinherited

◆ computePotentials() [2/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::computePotentials ( const std::size_t  widx,
const WellState< Scalar > &  well_state_copy,
std::string &  exc_msg,
ExceptionType::ExcEnum exc_type,
DeferredLogger deferred_logger 
)
overrideprotected

◆ computeTotalRatesForDof() [1/2]

template<typename TypeTag >
template<class Context >
void Opm::BlackoilWellModel< TypeTag >::computeTotalRatesForDof ( RateVector rate,
const Context &  context,
unsigned  spaceIdx,
unsigned  timeIdx 
) const

◆ computeTotalRatesForDof() [2/2]

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::computeTotalRatesForDof ( RateVector rate,
unsigned  globalIdx 
) const

◆ computeWellGroupThp()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::computeWellGroupThp ( const double  dt,
DeferredLogger local_deferredLogger 
)
protected

◆ computeWellTemperature()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::computeWellTemperature
protected

◆ connectionIndexMap()

const ConnectionIndexMap & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::connectionIndexMap ( const std::size_t  idx)
inlineinherited

◆ createLocalParallelWellInfo()

std::vector< std::reference_wrapper< ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::createLocalParallelWellInfo ( const std::vector< Well > &  wells)
protectedinherited

Create the parallel well information.

Parameters
localWellsThe local wells from ECL schedule

◆ createTypedWellPointer()

template<typename TypeTag >
template<typename WellType >
std::unique_ptr< WellType > Opm::BlackoilWellModel< TypeTag >::createTypedWellPointer ( const int  wellID,
const int  time_step 
) const
protected

◆ createWellContainer()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::createWellContainer ( const int  report_step)
overrideprotectedvirtual

◆ createWellForWellTest()

template<typename TypeTag >
BlackoilWellModel< TypeTag >::WellInterfacePtr Opm::BlackoilWellModel< TypeTag >::createWellForWellTest ( const std::string &  well_name,
const int  report_step,
DeferredLogger deferred_logger 
) const
protected

References OPM_DEFLOG_THROW.

◆ createWellPointer()

template<typename TypeTag >
BlackoilWellModel< TypeTag >::WellInterfacePtr Opm::BlackoilWellModel< TypeTag >::createWellPointer ( const int  wellID,
const int  report_step 
) const
protected

◆ deserialize()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::deserialize ( Restarter &  )
inlineinherited

◆ dofOffset()

template<class TypeTag >
int Opm::BaseAuxiliaryModule< TypeTag >::dofOffset ( )
inlineinherited

Return the offset in the global system of equations for the first degree of freedom of this auxiliary module.

◆ doPreStepNetworkRebalance()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::doPreStepNetworkRebalance ( DeferredLogger deferred_logger)
protected

◆ eclipseState()

const EclipseState & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::eclipseState ( ) const
inlineinherited

◆ eclState()

template<typename TypeTag >
const EclipseState & Opm::BlackoilWellModel< TypeTag >::eclState ( ) const
inlineprotected

◆ eclWells()

const std::vector< Well > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::eclWells ( ) const
inlineinherited

◆ empty()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::empty ( ) const
inline

◆ end()

template<typename TypeTag >
auto Opm::BlackoilWellModel< TypeTag >::end ( ) const
inline

◆ endEpisode()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::endEpisode ( )
inline

◆ endIteration()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::endIteration ( )
inline

◆ endReportStep()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::endReportStep
protected

◆ endTimeStep()

◆ equilGrid()

template<typename TypeTag >
const EquilGrid & Opm::BlackoilWellModel< TypeTag >::equilGrid ( ) const
inlineprotected

◆ extractLegacyCellPvtRegionIndex_()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::extractLegacyCellPvtRegionIndex_
protected

◆ extractLegacyDepth_()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::extractLegacyDepth_
protected

◆ forceShutWellByName()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::forceShutWellByName ( const std::string &  wellname,
const double  simulation_time,
const bool  dont_shut_grup_wells 
)
inherited

Shut down any single well Returns true if the well was actually found and shut.

◆ genericWells() [1/2]

std::vector< WellInterfaceGeneric< GetPropType< TypeTag, Properties::Scalar > > * > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::genericWells ( )
inlineinherited

◆ genericWells() [2/2]

std::vector< const WellInterfaceGeneric< GetPropType< TypeTag, Properties::Scalar > > * > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::genericWells ( ) const
inlineinherited

◆ getCellsForConnections()

std::vector< int > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::getCellsForConnections ( const Well &  well) const
inherited

◆ getLocalWells()

std::vector< Well > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::getLocalWells ( const int  timeStepIdx) const
inherited

◆ getMaxWellConnections()

std::vector< std::vector< int > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::getMaxWellConnections ( ) const
protectedinherited

◆ getWell()

template<typename TypeTag >
BlackoilWellModel< TypeTag >::WellInterfacePtr Opm::BlackoilWellModel< TypeTag >::getWell ( const std::string &  well_name) const

◆ getWellConvergence()

◆ getWellEcl()

const Well & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWellEcl ( const std::string &  well_name) const
inherited

◆ getWellsForTesting()

std::vector< std::string > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::getWellsForTesting ( const int  timeStepIdx,
const double  simulationTime 
)
protectedinherited

◆ grid()

◆ groupAndNetworkData()

data::GroupAndNetworkValues Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::groupAndNetworkData ( const int  reportStepIdx) const
inherited

◆ groupState() [1/2]

GroupState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::groupState ( )
inlineinherited

◆ groupState() [2/2]

const GroupState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::groupState ( ) const
inlineinherited

◆ guideRate() [1/2]

GuideRate & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::guideRate ( )
inlineinherited

◆ guideRate() [2/2]

const GuideRate & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::guideRate ( ) const
inlineinherited

◆ hasLocalWell()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::hasLocalWell ( const std::string &  wname) const
inherited

Returns true if well is defined and has connections on current rank.

◆ hasOpenLocalWell()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::hasOpenLocalWell ( const std::string &  well_name) const
inherited

Returns true if well is defined, open and has connections on current rank.

◆ inferLocalShutWells()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::inferLocalShutWells ( )
protectedinherited

◆ init()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::init

◆ initFromRestartFile() [1/2]

◆ initFromRestartFile() [2/2]

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::initFromRestartFile ( const RestartValue &  restartValues,
std::unique_ptr< WellTestState >  wtestState,
const std::size_t  numCells,
bool  handle_ms_well,
bool  enable_distributed_wells 
)
inherited

◆ initializeGroupStructure()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::initializeGroupStructure ( const int  reportStepIdx)
protected

Initialize group control modes/constraints and group solution state.

Parameters
[in]reportStepIdxReport step.

References OPM_BEGIN_PARALLEL_TRY_CATCH, OPM_END_PARALLEL_TRY_CATCH_LOG, Opm::WellGroupHelpers< Scalar >::setCmodeGroup(), and Opm::WellGroupHelpers< Scalar >::setRegionAveragePressureCalculator().

◆ initializeLocalWellStructure()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::initializeLocalWellStructure ( const int  reportStepIdx,
const bool  enableWellPIScaling 
)
protected

Update rank's notion of intersecting wells and their associate solution variables.

Parameters
[in]reportStepIdxReport step.
[in]enableWellPIScalingWhether or not to enable WELPI scaling. Typically enabled (i.e., true) only at the start of a report step.

References OPM_BEGIN_PARALLEL_TRY_CATCH, and OPM_END_PARALLEL_TRY_CATCH_LOG.

◆ initializeWellPerfData()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::initializeWellPerfData ( )
protectedinherited

◆ initializeWellProdIndCalculators()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::initializeWellProdIndCalculators ( )
protectedinherited

◆ initializeWellState()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::initializeWellState ( const int  timeStepIdx)
protected

◆ initInjMult()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::initInjMult ( )
protectedinherited

◆ initWellContainer()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::initWellContainer ( const int  reportStepIdx)
overridevirtual

◆ isOwner()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::isOwner ( const std::string &  wname) const
inlineinherited

◆ isReservoirCouplingMaster()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::isReservoirCouplingMaster ( ) const
inline

◆ isReservoirCouplingSlave()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::isReservoirCouplingSlave ( ) const
inline

◆ lastReport()

template<typename TypeTag >
const SimulatorReportSingle & Opm::BlackoilWellModel< TypeTag >::lastReport

◆ linearize()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::linearize ( SparseMatrixAdapter &  jacobian,
GlobalEqVector &  res 
)
inlineoverridevirtualinherited

Linearize the auxiliary equation.

Implements Opm::BaseAuxiliaryModule< TypeTag >.

◆ linearizeDomain()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::linearizeDomain ( const Domain domain,
SparseMatrixAdapter &  jacobian,
GlobalEqVector &  res 
)
inlineinherited

◆ localNonshutWells()

template<typename TypeTag >
const std::vector< WellInterfacePtr > & Opm::BlackoilWellModel< TypeTag >::localNonshutWells ( ) const
inline

Get list of local nonshut wells.

References Opm::BlackoilWellModel< TypeTag >::well_container_.

◆ localToGlobalDof()

template<class TypeTag >
int Opm::BaseAuxiliaryModule< TypeTag >::localToGlobalDof ( unsigned  localDofIdx) const
inlineinherited

Given a degree of freedom relative to the current auxiliary equation, return the corresponding index in the global system of equations.

References Opm::BaseAuxiliaryModule< TypeTag >::numDofs().

◆ logPrimaryVars()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::logPrimaryVars ( ) const
inherited

◆ needPreStepNetworkRebalance()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::needPreStepNetworkRebalance ( const int  report_step) const
inherited

Checks if there are reasons to perform a pre-step network re-balance. (Currently, the only reasons are network well status changes.) (TODO: Consider if adding network change events would be helpful.)

◆ networkActive()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::networkActive ( ) const
inherited

return true if network is active (at least one network well in prediction mode)

◆ numComponents()

template<typename TypeTag >
int Opm::BlackoilWellModel< TypeTag >::numComponents
protected

◆ numDofs()

unsigned Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::numDofs ( ) const
inlineoverridevirtualinherited

Returns the number of additional degrees of freedom required for the auxiliary module.

Implements Opm::BaseAuxiliaryModule< TypeTag >.

◆ numLocalNonshutWells()

int Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::numLocalNonshutWells ( ) const
inherited

◆ numLocalWells()

int Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::numLocalWells ( ) const
inherited

◆ numLocalWellsEnd()

int Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::numLocalWellsEnd ( ) const
inherited

◆ numPhases()

int Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::numPhases ( ) const
inherited

◆ numStrictIterations()

template<typename TypeTag >
int Opm::BlackoilWellModel< TypeTag >::numStrictIterations ( ) const
inline

◆ nupcolWellState()

const WellState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::nupcolWellState ( ) const
inlineinherited

◆ operator==()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::operator== ( const BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > > &  rhs) const
inherited

◆ parallelWellInfo()

const ParallelWellInfo< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::parallelWellInfo ( const std::size_t  idx) const
inlineinherited

◆ perfData()

const std::vector< PerforationData< GetPropType< TypeTag, Properties::Scalar > > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::perfData ( const int  well_idx) const
inlineinherited

◆ phaseUsage()

const PhaseUsage & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::phaseUsage ( ) const
inlineinherited

◆ postSolve()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::postSolve ( GlobalEqVector &  deltaX)
inlineoverridevirtualinherited

This method is called after the linear solver has been called but before the solution is updated for the next iteration.

It is intended to implement stuff like Schur complements.

Reimplemented from Opm::BaseAuxiliaryModule< TypeTag >.

◆ postSolveDomain()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::postSolveDomain ( const GlobalEqVector &  deltaX,
const Domain domain 
)
inlineinherited

◆ prepareDeserialize() [1/2]

◆ prepareDeserialize() [2/2]

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::prepareDeserialize ( int  report_step,
const std::size_t  numCells,
bool  handle_ms_well,
bool  enable_distributed_wells 
)
inherited

◆ prepareTimeStep()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::prepareTimeStep ( DeferredLogger deferred_logger)

◆ prepareWellsBeforeAssembling()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::prepareWellsBeforeAssembling ( const double  dt,
DeferredLogger deferred_logger 
)
protected

◆ prevWellState()

const WellState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::prevWellState ( ) const
inlineprotectedinherited

◆ prevWGState()

const WGState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::prevWGState ( ) const
inlineprotectedinherited

◆ recoverWellSolutionAndUpdateWellState()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::recoverWellSolutionAndUpdateWellState ( const BVector x)

◆ recoverWellSolutionAndUpdateWellStateDomain()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::recoverWellSolutionAndUpdateWellStateDomain ( const BVector x,
const int  domainIdx 
)

◆ reportGroupSwitching()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::reportGroupSwitching ( DeferredLogger local_deferredLogger) const
protectedinherited

◆ reportStepIndex()

template<typename TypeTag >
int Opm::BlackoilWellModel< TypeTag >::reportStepIndex
protected

◆ reportStepStartEvents()

const WellGroupEvents & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::reportStepStartEvents ( ) const
inlineinherited

◆ reportStepStarts()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::reportStepStarts ( ) const
inlineinherited

◆ reservoirCouplingMaster()

template<typename TypeTag >
ReservoirCouplingMaster & Opm::BlackoilWellModel< TypeTag >::reservoirCouplingMaster ( )
inline

◆ reservoirCouplingSlave()

template<typename TypeTag >
ReservoirCouplingSlave & Opm::BlackoilWellModel< TypeTag >::reservoirCouplingSlave ( )
inline

◆ resetWGState()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::resetWGState ( )
inlineprotectedinherited

◆ runWellPIScaling()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::runWellPIScaling ( const int  reportStepIdx,
DeferredLogger local_deferredLogger 
)
protectedinherited

◆ schedule()

const Schedule & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::schedule ( ) const
inlineinherited

◆ serialize()

void Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >::serialize ( Restarter &  )
inlineinherited

This method writes the complete state of the well to the harddisk.

◆ serializeOp()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::serializeOp ( Serializer &  serializer)
inlineinherited

◆ setDofOffset()

template<class TypeTag >
void Opm::BaseAuxiliaryModule< TypeTag >::setDofOffset ( int  value)
inlineinherited

Set the offset in the global system of equations for the first degree of freedom of this auxiliary module.

Referenced by Opm::FvBaseDiscretization< TypeTag >::addAuxiliaryModule().

◆ setNlddAdapter()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::setNlddAdapter ( BlackoilWellModelNldd< TypeTag > *  mod)
inline

◆ setRepRadiusPerfLength()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::setRepRadiusPerfLength ( )
protectedinherited

◆ setReservoirCouplingMaster()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::setReservoirCouplingMaster ( ReservoirCouplingMaster master)
inline

◆ setReservoirCouplingSlave()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::setReservoirCouplingSlave ( ReservoirCouplingSlave slave)
inline

◆ setWsolvent()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::setWsolvent ( const Group &  group,
const int  reportStepIdx,
GetPropType< TypeTag, Properties::Scalar wsolvent 
)
protectedinherited

◆ shouldBalanceNetwork()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::shouldBalanceNetwork ( const int  reportStepIndex,
const int  iterationIdx 
) const
inherited

◆ simulator()

template<typename TypeTag >
const Simulator & Opm::BlackoilWellModel< TypeTag >::simulator ( ) const
inline

◆ summaryState()

const SummaryState & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::summaryState ( ) const
inlineinherited

◆ terminalOutput()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::terminalOutput ( ) const
inlineinherited

◆ timeStepSucceeded()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::timeStepSucceeded ( const double  simulationTime,
const double  dt 
)
protected

◆ updateAndCommunicate()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::updateAndCommunicate ( const int  reportStepIdx,
const int  iterationIdx,
DeferredLogger deferred_logger 
)

◆ updateAndCommunicateGroupData()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateAndCommunicateGroupData ( const int  reportStepIdx,
const int  iterationIdx,
const GetPropType< TypeTag, Properties::Scalar tol_nupcol,
const bool  update_wellgrouptarget,
DeferredLogger deferred_logger 
)
protectedinherited

◆ updateAverageFormationFactor()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::updateAverageFormationFactor
protected

◆ updateClosedWellsThisStep()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateClosedWellsThisStep ( const std::string &  well_name) const
inlineinherited

◆ updateEclWells()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateEclWells ( const int  timeStepIdx,
const SimulatorUpdate &  sim_update,
const SummaryState &  st 
)
inherited

◆ updateFiltrationModelsPostStep()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateFiltrationModelsPostStep ( const double  dt,
const std::size_t  water_index,
DeferredLogger deferred_logger 
)
protectedinherited

◆ updateFiltrationModelsPreStep()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateFiltrationModelsPreStep ( DeferredLogger deferred_logger)
protectedinherited

◆ updateGroupControls()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::updateGroupControls ( const Group &  group,
DeferredLogger deferred_logger,
const int  reportStepIdx,
const int  iterationIdx 
)

◆ updateInjFCMult()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateInjFCMult ( DeferredLogger deferred_logger)
protectedinherited

◆ updateInjMult()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateInjMult ( DeferredLogger deferred_logger)
protectedinherited

◆ updateNetworkActiveState()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateNetworkActiveState ( const int  report_step)
inherited

Checks if network is active (at least one network well on prediction).

◆ updateNetworkPressures()

GetPropType< TypeTag, Properties::Scalar > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateNetworkPressures ( const int  reportStepIdx,
const GetPropType< TypeTag, Properties::Scalar damping_factor,
const GetPropType< TypeTag, Properties::Scalar update_upper_bound 
)
protectedinherited

◆ updateNetworks()

template<typename TypeTag >
std::tuple< bool, typename BlackoilWellModel< TypeTag >::Scalar > Opm::BlackoilWellModel< TypeTag >::updateNetworks ( const bool  mandatory_network_balance,
DeferredLogger deferred_logger,
const bool  relax_network_tolerance = false 
)

◆ updateNupcolWGState()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateNupcolWGState ( )
inlineprotectedinherited

◆ updatePrimaryVariables()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::updatePrimaryVariables ( DeferredLogger deferred_logger)
protected

◆ updateWellControls()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::updateWellControls ( DeferredLogger deferred_logger)

◆ updateWellControlsAndNetwork()

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::updateWellControlsAndNetwork ( const bool  mandatory_network_balance,
const double  dt,
DeferredLogger local_deferredLogger 
)
protected

◆ updateWellControlsAndNetworkIteration()

template<typename TypeTag >
std::tuple< bool, bool, typename BlackoilWellModel< TypeTag >::Scalar > Opm::BlackoilWellModel< TypeTag >::updateWellControlsAndNetworkIteration ( const bool  mandatory_network_balance,
const bool  relax_network_tolerance,
const bool  optimize_gas_lift,
const double  dt,
DeferredLogger local_deferredLogger 
)
protected

◆ updateWellPotentials()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateWellPotentials ( const int  reportStepIdx,
const bool  onlyAfterEvent,
const SummaryConfig &  summaryConfig,
DeferredLogger deferred_logger 
)
protectedinherited

◆ updateWellTestState()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::updateWellTestState ( const double &  simulationTime,
WellTestState &  wellTestState 
) const
protected

upate the wellTestState related to economic limits

References Opm::gatherDeferredLogger(), Opm::DeferredLogger::info(), and Opm::DeferredLogger::logMessages().

◆ updateWsolvent()

void Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::updateWsolvent ( const Group &  group,
const int  reportStepIdx,
const WellState< GetPropType< TypeTag, Properties::Scalar > > &  wellState 
)
protectedinherited

◆ wasDynamicallyShutThisTimeStep() [1/2]

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wasDynamicallyShutThisTimeStep ( const int  well_index) const
protectedinherited

◆ wasDynamicallyShutThisTimeStep() [2/2]

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wasDynamicallyShutThisTimeStep ( const std::string &  well_name) const
inherited

◆ well_domain()

template<typename TypeTag >
const std::map< std::string, int > & Opm::BlackoilWellModel< TypeTag >::well_domain ( ) const
inline

◆ well_local_cells()

template<typename TypeTag >
const SparseTable< int > & Opm::BlackoilWellModel< TypeTag >::well_local_cells ( ) const
inline

◆ wellBlockAveragePressures()

◆ wellCloseTimes()

const std::map< std::string, double > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellCloseTimes ( ) const
inlineinherited

◆ wellData()

◆ wellOpenTimes()

const std::map< std::string, double > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellOpenTimes ( ) const
inlineinherited

◆ wellPerfEfficiencyFactors()

template<typename TypeTag >
const std::vector< Scalar > & Opm::BlackoilWellModel< TypeTag >::wellPerfEfficiencyFactors ( ) const
protected

◆ wellPI() [1/2]

GetPropType< TypeTag, Properties::Scalar > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellPI ( const int  well_index) const
inherited

◆ wellPI() [2/2]

GetPropType< TypeTag, Properties::Scalar > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellPI ( const std::string &  well_name) const
inherited

◆ wellsActive()

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellsActive ( ) const
inherited

return true if wells are available in the reservoir

◆ wellState() [1/2]

WellState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellState ( )
inlineinherited

◆ wellState() [2/2]

const WellState< GetPropType< TypeTag, Properties::Scalar > > & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellState ( ) const
inlineinherited

◆ wellTesting()

template<typename TypeTag >
void Opm::BlackoilWellModel< TypeTag >::wellTesting ( const int  timeStepIdx,
const double  simulationTime,
DeferredLogger deferred_logger 
)
protected

◆ wellTestState() [1/2]

WellTestState & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellTestState ( )
inlineinherited

◆ wellTestState() [2/2]

const WellTestState & Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellTestState ( ) const
inlineinherited

Member Data Documentation

◆ active_wgstate_

WGState<GetPropType< TypeTag, Properties::Scalar > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::active_wgstate_
protectedinherited

◆ alternative_well_rate_init_

template<typename TypeTag >
bool Opm::BlackoilWellModel< TypeTag >::alternative_well_rate_init_ {}
protected

◆ B_avg_

template<typename TypeTag >
std::vector<Scalar> Opm::BlackoilWellModel< TypeTag >::B_avg_ {}
protected

◆ closed_offending_wells_

std::map<std::string, std::pair<std::string, std::string> > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::closed_offending_wells_
protectedinherited

◆ closed_this_step_

std::unordered_set<std::string> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::closed_this_step_
mutableprotectedinherited

◆ comm_

◆ conn_idx_map_

std::vector<ConnectionIndexMap> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::conn_idx_map_
protectedinherited

◆ depth_

template<typename TypeTag >
std::vector<Scalar> Opm::BlackoilWellModel< TypeTag >::depth_ {}
protected

◆ eclState_

const EclipseState& Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::eclState_
protectedinherited

◆ filter_cake_

std::unordered_map<std::string, WellFilterCake<GetPropType< TypeTag, Properties::Scalar > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::filter_cake_
protectedinherited

◆ gen_gaslift_

◆ global_num_cells_

template<typename TypeTag >
std::size_t Opm::BlackoilWellModel< TypeTag >::global_num_cells_ {}
protected

◆ gravity_

template<typename TypeTag >
Scalar Opm::BlackoilWellModel< TypeTag >::gravity_ {}
protected

◆ guide_rate_handler_

◆ guideRate_

GuideRate Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::guideRate_
protectedinherited

◆ has_energy_

template<typename TypeTag >
constexpr bool Opm::BlackoilWellModel< TypeTag >::has_energy_ = getPropValue<TypeTag, Properties::EnableEnergy>()
staticconstexpr

◆ has_micp_

template<typename TypeTag >
constexpr bool Opm::BlackoilWellModel< TypeTag >::has_micp_ = getPropValue<TypeTag, Properties::EnableMICP>()
staticconstexpr

◆ has_polymer_

template<typename TypeTag >
constexpr bool Opm::BlackoilWellModel< TypeTag >::has_polymer_ = getPropValue<TypeTag, Properties::EnablePolymer>()
staticconstexpr

◆ has_solvent_

template<typename TypeTag >
constexpr bool Opm::BlackoilWellModel< TypeTag >::has_solvent_ = getPropValue<TypeTag, Properties::EnableSolvent>()
staticconstexpr

◆ initial_step_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::initial_step_
protectedinherited

◆ is_cell_perforated_

template<typename TypeTag >
std::vector<bool> Opm::BlackoilWellModel< TypeTag >::is_cell_perforated_ {}
protected

◆ last_report_

template<typename TypeTag >
SimulatorReportSingle Opm::BlackoilWellModel< TypeTag >::last_report_ {}
protected

◆ last_run_wellpi_

std::optional<int> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::last_run_wellpi_
protectedinherited

◆ last_valid_node_pressures_

std::map<std::string, GetPropType< TypeTag, Properties::Scalar > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::last_valid_node_pressures_
protectedinherited

◆ last_valid_wgstate_

WGState<GetPropType< TypeTag, Properties::Scalar > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::last_valid_wgstate_
protectedinherited

◆ local_num_cells_

template<typename TypeTag >
std::size_t Opm::BlackoilWellModel< TypeTag >::local_num_cells_ {}
protected

◆ local_parallel_well_info_

std::vector<std::reference_wrapper<ParallelWellInfo<GetPropType< TypeTag, Properties::Scalar > > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::local_parallel_well_info_
protectedinherited

◆ local_shut_wells_

std::vector<int> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::local_shut_wells_
protectedinherited

◆ network_active_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::network_active_
protectedinherited

◆ node_pressures_

std::map<std::string, GetPropType< TypeTag, Properties::Scalar > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::node_pressures_
protectedinherited

◆ not_on_process_

std::function<bool(const std::string&)> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::not_on_process_
protectedinherited

◆ numEq

template<typename TypeTag >
const int Opm::BlackoilWellModel< TypeTag >::numEq = Indices::numEq
static

◆ nupcol_wgstate_

WGState<GetPropType< TypeTag, Properties::Scalar > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::nupcol_wgstate_
protectedinherited

◆ parallel_well_info_

std::vector<ParallelWellInfo<GetPropType< TypeTag, Properties::Scalar > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::parallel_well_info_
protectedinherited

◆ param_

◆ phase_usage_

PhaseUsage Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::phase_usage_
protectedinherited

◆ pressureVarIndex

template<typename TypeTag >
constexpr std::size_t Opm::BlackoilWellModel< TypeTag >::pressureVarIndex = GetPropType<TypeTag, Properties::Indices>::pressureSwitchIdx
staticconstexpr

◆ prev_inj_multipliers_

std::unordered_map<std::string, std::vector<GetPropType< TypeTag, Properties::Scalar > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::prev_inj_multipliers_
protectedinherited

◆ prod_index_calc_

std::vector<WellProdIndexCalculator<GetPropType< TypeTag, Properties::Scalar > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::prod_index_calc_
protectedinherited

◆ pvt_region_idx_

std::vector<int> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::pvt_region_idx_
protectedinherited

◆ rateConverter_

template<typename TypeTag >
std::unique_ptr<RateConverterType> Opm::BlackoilWellModel< TypeTag >::rateConverter_ {}
protected

◆ regionalAveragePressureCalculator_

template<typename TypeTag >
std::map<std::string, std::unique_ptr<AverageRegionalPressureType> > Opm::BlackoilWellModel< TypeTag >::regionalAveragePressureCalculator_ {}
protected

◆ report_step_start_events_

WellGroupEvents Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::report_step_start_events_
protectedinherited

Well group events at start of report step.

◆ report_step_starts_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::report_step_starts_
protectedinherited

◆ schedule_

Schedule& Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::schedule_
protectedinherited

◆ simulator_

◆ solventSaturationIdx

template<typename TypeTag >
const int Opm::BlackoilWellModel< TypeTag >::solventSaturationIdx = Indices::solventSaturationIdx
static

◆ summaryState_

const SummaryState& Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::summaryState_
protectedinherited

◆ switched_inj_groups_

std::map<std::string, std::array<std::vector<Group::InjectionCMode>, 3> > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::switched_inj_groups_
protectedinherited

◆ switched_prod_groups_

std::map<std::string, std::vector<Group::ProductionCMode> > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::switched_prod_groups_
protectedinherited

◆ terminal_output_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::terminal_output_
protectedinherited

◆ vfp_properties_

std::unique_ptr<VFPProperties<GetPropType< TypeTag, Properties::Scalar > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::vfp_properties_
protectedinherited

◆ wbp_

◆ well_close_times_

std::map<std::string, double> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::well_close_times_
protectedinherited

◆ well_container_

◆ well_container_generic_

std::vector<WellInterfaceGeneric<GetPropType< TypeTag, Properties::Scalar > >*> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::well_container_generic_
protectedinherited

◆ well_group_thp_calc_

template<typename TypeTag >
std::map<std::string, Scalar> Opm::BlackoilWellModel< TypeTag >::well_group_thp_calc_
protected

◆ well_open_times_

std::map<std::string, double> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::well_open_times_
protectedinherited

◆ well_perf_data_

std::vector<std::vector<PerforationData<GetPropType< TypeTag, Properties::Scalar > > > > Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::well_perf_data_
protectedinherited

◆ wells_active_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wells_active_
protectedinherited

◆ wells_ecl_

std::vector<Well> Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wells_ecl_
protectedinherited

◆ wellStructureChangedDynamically_

bool Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar > >::wellStructureChangedDynamically_
protectedinherited

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