Loading...
Searching...
No Matches
Opm::BlackoilWellModel< TypeTag > Class Template Reference

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

`#include <BlackoilWellModel.hpp>`

Inheritance diagram for Opm::BlackoilWellModel< TypeTag >:

## 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 | IndexTraits = typename FluidSystem::IndexTraitsType
using | VectorBlockType = Dune::FieldVector<Scalar, numEq>
using | BVector = Dune::BlockVector<VectorBlockType>
using | PolymerModule = BlackOilPolymerModule<TypeTag>
using | BioeffectsModule = BlackOilBioeffectsModule<TypeTag>
using | RateConverterType
using | AverageRegionalPressureType
using | WellGroupHelpersType = WellGroupHelpers<Scalar, IndexTraits>
using | WellInterfacePtr = std::shared_ptr<WellInterface<TypeTag> >
using | PressureMatrix = Dune::BCRSMatrix<Opm::MatrixBlock<Scalar, 1, 1>>
Public Types inherited from Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >
using | NeighborSet
using | Domain

## 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 checkWellGroupControlsAndNetwork=false) const
const SimulatorReportSingle & | lastReport () 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
| Calculating the explict quantities used in the well calculation.
void | prepareTimeStep (DeferredLogger &deferred_logger)
bool | updateWellControls (DeferredLogger &deferred_logger)
std::tuple< bool, Scalar > | updateNetworks (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.
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
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 Grid & | grid () const
const Simulator & | simulator () const
void | setNlddAdapter (BlackoilWellModelNldd< TypeTag > *mod)
Public Member Functions inherited from Opm::WellConnectionAuxiliaryModule< TypeTag, BlackoilWellModel< TypeTag > >
| WellConnectionAuxiliaryModule (BlackoilWellModel< TypeTag > &model, Parallel::Communication comm)
unsigned | numDofs () const override
| Returns the number of additional degrees of freedom required for the auxiliary module.
void | addNeighbors (std::vector< NeighborSet > &neighbors) const override
| Specify the additional neighboring correlations caused by the auxiliary module.
void | applyInitial () override
| Set the initial condition of the auxiliary module in the solution vector.
void | linearize (SparseMatrixAdapter &jacobian, GlobalEqVector &res) override
| Linearize the auxiliary equation.
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.
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.
Public Member Functions inherited from Opm::BaseAuxiliaryModule< TypeTag >
void | setDofOffset (int value)
| Set the offset in the global system of equations for the first degree of freedom of this auxiliary module.
int | dofOffset ()
| Return the offset in the global system of equations for the first degree of freedom of this auxiliary module.
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.
Public Member Functions inherited from Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType >
| BlackoilWellModelGeneric (Schedule &schedule, BlackoilWellModelGasLiftGeneric< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > &gaslift, const SummaryState &summaryState, const EclipseState &eclState, const PhaseUsageInfo< GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > &phase_usage, const Parallel::Communication &comm)
int | numLocalWells () const
int | numLocalWellsEnd () const
int | numLocalNonshutWells () const
int | numPhases () const
bool | wellsActive () const
| return true if wells are available in the reservoir
bool | hasLocalWell (const std::string &wname) const
| Returns true if well is defined and has connections on current rank.
bool | hasOpenLocalWell (const std::string &well_name) const
| Returns true if well is defined, open and has connections on current rank.
bool | networkActive () const
| return true if network is active (at least one network well in prediction mode)
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 PhaseUsageInfo< GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | phaseUsage () const
const GroupState< Scalar > & | groupState () const
std::vector< const WellInterfaceGeneric< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > * > | genericWells () const
const WellState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | wellState () const
const WellState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | nupcolWellState () const
WellTestState & | wellTestState ()
Scalar | wellPI (const int well_index) 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).
bool | needPreStepNetworkRebalance (const int report_step) const
| Checks if there are reasons to perform a pre-step network re-balance.
bool | forceShutWellByName (const std::string &wellname, const double simulation_time, const bool dont_shut_grup_wells)
| Shut down any single well Returns true if the well was actually found and shut.
const std::vector< PerforationData< Scalar > > & | perfData (const int well_idx) const
const Parallel::Communication & | comm () const
const EclipseState & | eclipseState () const
const SummaryState & | summaryState () const
const GuideRate & | guideRate () const
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< Scalar > & | parallelWellInfo (const std::size_t idx) const
bool | isOwner (const std::string &wname) const
bool | hasLocalCells (const std::string &wname) const
const ConnectionIndexMap & | connectionIndexMap (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_ = Indices::enableMICP

## 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 EquilGrid & | equilGrid () const
const EclipseState & | eclState () const
void | assemble (const int iterationIdx, const double dt)
std::tuple< bool, bool, Scalar > | updateWellControlsAndNetworkIteration (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)
| Update rank's notion of intersecting wells and their associate solution variables.
void | initializeGroupStructure (const int reportStepIdx)
| Initialize group control modes/constraints and group solution state.
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, IndexTraits > &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 | numConservationQuantities () 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)
| upate the wellTestState related to economic limits
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 ()
Protected Member Functions inherited from Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType >
const WellState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | prevWellState () const
const WGState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | prevWGState () const
void | resetWGState ()
void | updateNupcolWGState ()
void | reportGroupSwitching (DeferredLogger &local_deferredLogger) const
std::vector< std::reference_wrapper< ParallelWellInfo< Scalar > > > | createLocalParallelWellInfo (const std::vector< Well > &wells)
| Create the parallel well information.
void | initializeWellProdIndCalculators ()
void | initializeWellPerfData ()
Scalar | updateNetworkPressures (const int reportStepIdx, const Scalar damping_factor, const Scalar update_upper_bound)
void | updateWsolvent (const Group &group, const int reportStepIdx, const WellState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > &wellState)
void | setWsolvent (const Group &group, const int reportStepIdx, Scalar wsolvent)
virtual void | calcResvCoeff (const int fipnum, const int pvtreg, const std::vector< Scalar > &production_rates, std::vector< Scalar > &resv_coeff)=0
virtual void | calcInjResvCoeff (const int fipnum, const int pvtreg, std::vector< Scalar > &resv_coeff)=0
void | assignDynamicWellStatus (data::Wells &wsrpt) const
| Assign dynamic well status for each well owned by current rank.
void | assignShutConnections (data::Wells &wsrpt, const int reportStepIndex) const
| Assign basic result quantities for shut connections of wells owned by current rank.
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< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > &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, const bool update_group_switching_log)
void | updateAndCommunicateGroupData (const int reportStepIdx, const int iterationIdx, const Scalar tol_nupcol, const bool update_wellgrouptarget, DeferredLogger &deferred_logger)
void | inferLocalShutWells ()
void | setRepRadiusPerfLength ()
virtual void | computePotentials (const std::size_t widx, const WellState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > &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 Scalar gasDensity) const

## Protected Attributes

Simulator & | simulator_
std::vector< WellInterfacePtr > | well_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< Scalar > | depth_ {}
bool | alternative_well_rate_init_ {}
std::map< std::string, Scalar > | well_group_thp_calc_
std::unique_ptr< RateConverterType > | rateConverter_ {}
std::map< std::string, std::unique_ptr< AverageRegionalPressureType > > | regionalAveragePressureCalculator_ {}
SimulatorReportSingle | last_report_ {}
GuideRateHandler< Scalar, IndexTraits > | guide_rate_handler_ {}
bool | network_needs_more_balancing_force_another_newton_iteration_ {false}
std::vector< Scalar > | B_avg_ {}
Protected Attributes inherited from Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType >
Schedule & | schedule_
const SummaryState & | summaryState_
const EclipseState & | eclState_
const Parallel::Communication & | comm_
BlackoilWellModelGasLiftGeneric< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | gen_gaslift_
BlackoilWellModelWBP< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > | wbp_
const PhaseUsageInfo< GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > & | phase_usage_info_
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< Scalar > > > | well_perf_data_
std::map< std::string, double > | well_open_times_
std::map< std::string, double > | well_close_times_
std::vector< ConnectionIndexMap > | conn_idx_map_
std::function< bool(const std::string &)> | not_on_process_
std::vector< WellInterfaceGeneric< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > * > | well_container_generic_
std::vector< int > | local_shut_wells_
std::vector< ParallelWellInfo< Scalar > > | parallel_well_info_
std::vector< std::reference_wrapper< ParallelWellInfo< Scalar > > > | local_parallel_well_info_
std::vector< WellProdIndexCalculator< Scalar > > | prod_index_calc_
std::vector< int > | pvt_region_idx_
std::unordered_set< std::string > | closed_this_step_
GuideRate | guideRate_
std::unique_ptr< VFPProperties< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > > | vfp_properties_
std::map< std::string, Scalar > | node_pressures_
std::map< std::string, Scalar > | last_valid_node_pressures_
std::unordered_map< std::string, std::vector< Scalar > > | prev_inj_multipliers_
std::unordered_map< std::string, WellFilterCake< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > > | filter_cake_
WGState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > | active_wgstate_
WGState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > | last_valid_wgstate_
WGState< Scalar, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType > | nupcol_wgstate_
WellGroupEvents | report_step_start_events_
| Well group events at start of report step.
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_

## Additional Inherited Members

Protected Types inherited from Opm::BaseAuxiliaryModule< TypeTag >
using | NeighborSet = std::set<unsigned>
Protected Types inherited from Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType >
using | WellTracerRates
using | MswTracerRates

## 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

Initial value:
RegionAverageCalculator::
AverageRegionalPressure<FluidSystem, std::vector<int> >

## RateConverterType

template<typename TypeTag>

using Opm::BlackoilWellModel< TypeTag >::RateConverterType

Initial value:
RateConverter::
SurfaceToReservoirVoidage<FluidSystem, std::vector<int> >

## Member Function Documentation

## 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

## calculateProductivityIndexValues()

template<typename TypeTag>

void Opm::BlackoilWellModel< TypeTag >::calculateProductivityIndexValues | ( | DeferredLogger & | deferred_logger | ) |

override protected virtual

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

## calculateProductivityIndexValuesShutWells()

template<typename TypeTag>

void Opm::BlackoilWellModel< TypeTag >::calculateProductivityIndexValuesShutWells | ( | const int | reportStepIdx,
|  | DeferredLogger & | deferred_logger )

override protected virtual

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

## compressedIndexForInterior()

template<typename TypeTag>

int Opm::BlackoilWellModel< TypeTag >::compressedIndexForInterior | ( | int | cartesian_cell_idx | ) | const

inline override virtual

get compressed index for interior cells (-1, otherwise

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

## compressedIndexForInteriorLGR()

template<typename TypeTag>

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

inline override virtual

Reimplemented from Opm::BlackoilWellModelGeneric< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::FluidSystem >::IndexTraitsType >.

## createWellContainer()

template<typename TypeTag>

void Opm::BlackoilWellModel< TypeTag >::createWellContainer | ( | const int | report_step | ) |

override protected virtual

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

## initializeGroupStructure()

template<typename TypeTag>

void Opm::BlackoilWellModel< TypeTag >::initializeGroupStructure | ( | const int | reportStepIdx | ) |

protected

Initialize group control modes/constraints and group solution state.

Parameters

  [in] | reportStepIdx | Report step.

## 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] | reportStepIdx | Report step.
  [in] | enableWellPIScaling | Whether or not to enable WELPI scaling. Typically enabled (i.e., true) only at the start of a report step.

## initWellContainer()

template<typename TypeTag>

void Opm::BlackoilWellModel< TypeTag >::initWellContainer | ( | const int | reportStepIdx | ) |

override virtual

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

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

- opm/simulators/flow/BlackoilModelProperties.hpp
- opm/simulators/wells/BlackoilWellModel.hpp
- opm/simulators/wells/BlackoilWellModel_impl.hpp