Loading...
Searching...
No Matches
Opm::WellInterfaceFluidSystem< FluidSystem > Class Template Reference
Inheritance diagram for Opm::WellInterfaceFluidSystem< FluidSystem >:

## Public Types

using | Scalar = typename FluidSystem::Scalar
using | IndexTraits = typename FluidSystem::IndexTraitsType
using | ModelParameters = typename WellInterfaceGeneric<Scalar, IndexTraits>::ModelParameters
Public Types inherited from Opm::WellInterfaceGeneric< FluidSystem::Scalar, FluidSystem::IndexTraitsType >
using | ModelParameters
using | WellStateType

## Public Member Functions

const RateConverterType & | rateConverter () const
Public Member Functions inherited from Opm::WellInterfaceGeneric< FluidSystem::Scalar, FluidSystem::IndexTraitsType >
| WellInterfaceGeneric (const Well &well, const ParallelWellInfo< Scalar > &parallel_well_info, const int time_step, const ModelParameters &param, const int pvtRegionIdx, const int num_conservation_quantities, const int num_phases, const int index_of_well, const PhaseUsageInfo< FluidSystem::IndexTraitsType > &phase_usage, const std::vector< PerforationData< Scalar > > &perf_data)
const std::vector< PerforationData< Scalar > > & | perforationData () const
| Get the perforations of the well.
const std::string & | name () const
| Well name.
bool | isInjector () const
| True if the well is an injector.
bool | isProducer () const
| True if the well is a producer.
const std::vector< int > & | cells () const
| Well cells.
int | indexOfWell () const
| Index of well in the wells struct and wellState.
void | adaptRatesForVFP (std::vector< Scalar > &rates) const
const Well & | wellEcl () const
const PhaseUsageInfo< FluidSystem::IndexTraitsType > & | phaseUsage () const
bool | underPredictionMode () const
| Returns true if the well is currently in prediction mode (i.e. not history mode).
bool | isOperableAndSolvable () const
bool | useVfpExplicit () const
bool | thpLimitViolatedButNotSwitched () const
void | initCompletions ()
void | closeCompletions (const WellTestState &wellTestState)
void | setVFPProperties (const VFPProperties< Scalar, FluidSystem::IndexTraitsType > *vfp_properties_arg)
void | setPrevSurfaceRates (WellStateType &well_state, const WellStateType &prev_well_state) const
void | setGuideRate (const GuideRate *guide_rate_arg)
void | setWellEfficiencyFactor (const Scalar efficiency_factor)
void | setRepRadiusPerfLength ()
void | setWsolvent (const Scalar wsolvent)
void | setDynamicThpLimit (const Scalar thp_limit)
std::optional< Scalar > | getDynamicThpLimit () const
void | updatePerforatedCell (std::vector< bool > &is_cell_perforated)
bool | wellHasTHPConstraints (const SummaryState &summaryState) const
| Returns true if the well has one or more THP limits/constraints.
void | stopWell ()
void | openWell ()
Well::Status | wellStatus ()
bool | wellIsStopped () const
int | currentStep () const
int | pvtRegionIdx () const
const GuideRate * | guideRate () const
int | numConservationQuantities () const
int | numPhases () const
int | numLocalPerfs () const
Scalar | refDepth () const
Scalar | gravity () const
const VFPProperties< Scalar, FluidSystem::IndexTraitsType > * | vfpProperties () const
const ParallelWellInfo< Scalar > & | parallelWellInfo () const
const std::vector< Scalar > & | perfDepth () const
const std::vector< Scalar > & | wellIndex () const
const std::map< int, std::vector< int > > & | getCompletions () const
Scalar | getTHPConstraint (const SummaryState &summaryState) const
Scalar | getALQ (const WellStateType &well_state) const
Scalar | wsolvent () const
Scalar | rsRvInj () const
void | initInjMult (const std::vector< Scalar > &max_inj_mult)
void | updateInjMult (std::vector< Scalar > &inj_multipliers, DeferredLogger &deferred_logger) const
Scalar | getInjMult (const int local_perf_index, const Scalar bhp, const Scalar perf_pres, DeferredLogger &dlogger) const
bool | isVFPActive (DeferredLogger &deferred_logger) const
void | reportWellSwitching (const SingleWellState< Scalar, FluidSystem::IndexTraitsType > &ws, DeferredLogger &deferred_logger) const
bool | changedToOpenThisStep () const
void | updateWellTestState (const SingleWellState< Scalar, FluidSystem::IndexTraitsType > &ws, const double &simulationTime, const bool &writeMessageToOPMLog, const bool zero_group_target, WellTestState &wellTestState, DeferredLogger &deferred_logger) const
bool | isPressureControlled (const WellStateType &well_state) const
Scalar | wellEfficiencyFactor () const
void | updateFilterCakeMultipliers (const std::vector< Scalar > &inj_fc_multiplier)
| Update filter cake multipliers.
void | resetWellOperability ()
virtual std::vector< Scalar > | getPrimaryVars () const
virtual int | setPrimaryVars (typename std::vector< Scalar >::const_iterator)
virtual Scalar | connectionDensity (const int globalConnIdx, const int openConnIdx) const=0
void | addPerforations (const std::vector< RuntimePerforation > &perfs)

## Static Public Attributes

static constexpr int | Water = IndexTraits::waterPhaseIdx
static constexpr int | Oil = IndexTraits::oilPhaseIdx
static constexpr int | Gas = IndexTraits::gasPhaseIdx

## Protected Types

using | RateConverterType

## Protected Member Functions

| WellInterfaceFluidSystem (const Well &well, const ParallelWellInfo< Scalar > &parallel_well_info, const int time_step, const ModelParameters &param, const RateConverterType &rate_converter, const int pvtRegionIdx, const int num_conservation_quantities, const int num_phases, const int index_of_well, const std::vector< PerforationData< Scalar > > &perf_data)
void | calculateReservoirRates (const bool co2store, SingleWellState< Scalar, IndexTraits > &ws) const
bool | checkIndividualConstraints (SingleWellState< Scalar, IndexTraits > &ws, const SummaryState &summaryState, DeferredLogger &deferred_logger, const std::optional< Well::InjectionControls > &inj_controls=std::nullopt, const std::optional< Well::ProductionControls > &prod_controls=std::nullopt) const
bool | checkGroupConstraints (WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const bool check_guide_rate, DeferredLogger &deferred_logger) const
bool | checkConstraints (WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, DeferredLogger &deferred_logger) const
std::optional< Scalar > | getGroupInjectionTargetRate (const Group &group, const WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, const InjectorType &injectorType, Scalar efficiencyFactor, DeferredLogger &deferred_logger) const
Scalar | getGroupProductionTargetRate (const Group &group, const WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, const Schedule &schedule, const SummaryState &summaryState, Scalar efficiencyFactor, DeferredLogger &deferred_logger) const
bool | zeroGroupRateTarget (const SummaryState &summary_state, const Schedule &schedule, const WellState< Scalar, IndexTraits > &well_state, const GroupState< Scalar > &group_state, DeferredLogger &deferredLogger) const
Protected Member Functions inherited from Opm::WellInterfaceGeneric< FluidSystem::Scalar, FluidSystem::IndexTraitsType >
bool | getAllowCrossFlow () const
Scalar | wmicrobes_ () const
Scalar | wfoam_ () const
Scalar | woxygen_ () const
Scalar | wpolymer_ () const
Scalar | wsalt_ () const
Scalar | wurea_ () const
int | polymerTable_ () const
int | polymerInjTable_ () const
int | polymerWaterTable_ () const
bool | wellUnderZeroRateTargetIndividual (const SummaryState &summary_state, const WellState< Scalar, FluidSystem::IndexTraitsType > &well_state) const
bool | wellUnderGroupControl (const SingleWellState< Scalar, FluidSystem::IndexTraitsType > &ws) const
std::pair< bool, bool > | computeWellPotentials (std::vector< Scalar > &well_potentials, const WellStateType &well_state)
void | checkNegativeWellPotentials (std::vector< Scalar > &well_potentials, const bool checkOperability, DeferredLogger &deferred_logger)
void | onlyKeepBHPandTHPcontrols (const SummaryState &summary_state, WellStateType &well_state, Well::InjectionControls &inj_controls, Well::ProductionControls &prod_controls) const
void | resetDampening ()

## Protected Attributes

const RateConverterType & | rateConverter_
Protected Attributes inherited from Opm::WellInterfaceGeneric< FluidSystem::Scalar, FluidSystem::IndexTraitsType >
OperabilityStatus | operability_status_
Well | well_ecl_
const ParallelWellInfo< Scalar > & | parallel_well_info_
const int | current_step_
const ModelParameters & | param_
const int | pvtRegionIdx_
const int | num_conservation_quantities_
int | number_of_phases_
int | index_of_well_
const PhaseUsageInfo< FluidSystem::IndexTraitsType > & | phase_usage_
const std::vector< PerforationData< Scalar > > * | perf_data_
std::vector< Scalar > | ipr_a_
std::vector< Scalar > | ipr_b_
std::vector< int > | well_cells_
std::vector< Scalar > | well_index_
int | number_of_local_perforations_
std::vector< Scalar > | perf_depth_
std::vector< Scalar > | perf_rep_radius_
std::vector< Scalar > | perf_length_
std::vector< Scalar > | bore_diameters_
std::map< int, std::vector< int > > | completions_
Scalar | ref_depth_
std::vector< int > | saturation_table_number_
Well::Status | wellStatus_
Scalar | gravity_
Scalar | wsolvent_
std::optional< Scalar > | dynamic_thp_limit_
std::vector< Scalar > | inj_multiplier_
std::vector< Scalar > | prev_inj_multiplier_
std::vector< Scalar > | inj_multiplier_previter_
std::vector< Scalar > | inj_multiplier_damp_factor_
std::vector< Scalar > | inj_fc_multiplier_
Scalar | well_efficiency_factor_
const VFPProperties< Scalar, FluidSystem::IndexTraitsType > * | vfp_properties_
const GuideRate * | guide_rate_
std::vector< std::string > | well_control_log_
bool | changed_to_open_this_step_

## Static Protected Attributes

static constexpr int | INVALIDCOMPLETION = std::numeric_limits<int>::max()

## Member Typedef Documentation

## RateConverterType

template<class FluidSystem>

using Opm::WellInterfaceFluidSystem< FluidSystem >::RateConverterType

protected

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

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

- opm/simulators/wells/StandardWellAssemble.hpp
- opm/simulators/wells/WellInterfaceFluidSystem.hpp
- opm/simulators/wells/WellInterfaceFluidSystem.cpp