22#ifndef OPM_MULTISEGMENTWELL_GENERIC_HEADER_INCLUDED
23#define OPM_MULTISEGMENTWELL_GENERIC_HEADER_INCLUDED
35class WellInterfaceGeneric;
36enum class WellSegmentCompPressureDrop;
40template <
typename Scalar>
45 const WellSegments& segmentSet()
const;
49 int segmentNumberToIndex(
const int segment_number)
const;
58 void scaleSegmentRatesWithWellRates(
const std::vector<std::vector<int>>& segment_inlets,
59 const std::vector<std::vector<int>>& segment_perforations,
61 void scaleSegmentPressuresWithBhp(
WellState& well_state)
const;
64 WellSegmentCompPressureDrop compPressureDrop()
const;
70 bool& stagnate)
const;
72 bool accelerationalPressureLossConsidered()
const;
73 bool frictionalPressureLossConsidered()
const;
75 double getSegmentDp(
const int seg,
77 const std::vector<double>& seg_dp)
const;
Definition: MultisegmentWellGeneric.hpp:42
int numberOfSegments() const
number of segments for this well
Definition: MultisegmentWellGeneric.cpp:119
void detectOscillations(const std::vector< double > &measure_history, const int it, bool &oscillate, bool &stagnate) const
Detect oscillation or stagnation based on the residual measure history.
Definition: MultisegmentWellGeneric.cpp:143
Definition: WellInterfaceGeneric.hpp:51
The state of a set of wells, tailored for use by the fully implicit blackoil simulator.
Definition: WellState.hpp:60
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: BlackoilPhases.hpp:27