23#ifndef OPM_STANDARDWELL_CONNECTIONS_HEADER_INCLUDED
24#define OPM_STANDARDWELL_CONNECTIONS_HEADER_INCLUDED
33template<
class Flu
idSystem,
class Indices,
class Scalar>
class WellInterfaceIndices;
36template<
class Flu
idSystem,
class Indices,
class Scalar>
42 void computePropertiesForPressures(
const WellState& well_state,
43 const std::function<Scalar(
int,
int)>& getTemperature,
44 const std::function<Scalar(
int)>& getSaltConcentration,
45 const std::function<
int(
int)>& pvtRegionIdx,
46 const std::function<Scalar(
int)>& solventInverseFormationVolumeFactor,
47 const std::function<Scalar(
int)>& solventRefDensity,
48 std::vector<Scalar>& b_perf,
49 std::vector<Scalar>& rsmax_perf,
50 std::vector<Scalar>& rvmax_perf,
51 std::vector<Scalar>& rvwmax_perf,
52 std::vector<Scalar>& rswmax_perf,
53 std::vector<Scalar>& surf_dens_perf)
const;
57 const std::function<Scalar(
int,
int)>& invB,
58 const std::function<Scalar(
int,
int)>& mobility,
59 const std::function<Scalar(
int)>& solventInverseFormationVolumeFactor,
60 const std::function<Scalar(
int)>& solventMobility,
61 const std::vector<Scalar>& b_perf,
62 const std::vector<Scalar>& rsmax_perf,
63 const std::vector<Scalar>& rvmax_perf,
64 const std::vector<Scalar>& rvwmax_perf,
65 const std::vector<Scalar>& rswmax_perf,
66 const std::vector<Scalar>& surf_dens_perf,
72 return this->perf_densities_.empty() ? 0.0 : perf_densities_[0];
77 {
return perf_pressure_diffs_[perf]; }
80 void computePressureDelta();
84 void computeDensities(
const std::vector<Scalar>& perfComponentRates,
85 const std::vector<Scalar>& b_perf,
86 const std::vector<Scalar>& rsmax_perf,
87 const std::vector<Scalar>& rvmax_perf,
88 const std::vector<Scalar>& rvwmax_perf,
89 const std::vector<Scalar>& rswmax_perf,
90 const std::vector<Scalar>& surf_dens_perf,
95 std::vector<Scalar> perf_densities_;
96 std::vector<Scalar> perf_pressure_diffs_;
Definition: DeferredLogger.hpp:57
Definition: StandardWellConnections.hpp:38
Scalar rho() const
Returns density for first perforation.
Definition: StandardWellConnections.hpp:70
Scalar pressure_diff(const unsigned perf) const
Returns pressure drop for a given perforation.
Definition: StandardWellConnections.hpp:76
void computeProperties(const WellState &well_state, const std::function< Scalar(int, int)> &invB, const std::function< Scalar(int, int)> &mobility, const std::function< Scalar(int)> &solventInverseFormationVolumeFactor, const std::function< Scalar(int)> &solventMobility, const std::vector< Scalar > &b_perf, const std::vector< Scalar > &rsmax_perf, const std::vector< Scalar > &rvmax_perf, const std::vector< Scalar > &rvwmax_perf, const std::vector< Scalar > &rswmax_perf, const std::vector< Scalar > &surf_dens_perf, DeferredLogger &deferred_logger)
Compute connection properties (densities, pressure drop, ...)
Definition: StandardWellConnections.cpp:477
Definition: WellInterfaceIndices.hpp:33
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