29 #include <opm/input/eclipse/Schedule/Well/PAvg.hpp>
30 #include <opm/input/eclipse/Schedule/Well/Connection.hpp>
34 class WellConnections;
51 Neighbour(
double porv_arg, std::size_t index_arg) :
53 global_index(index_arg)
57 std::size_t global_index;
62 Connection(
double porv_arg,
double cf, ::Opm::Connection::Direction dir_arg, std::size_t index_arg) :
66 global_index(index_arg)
72 ::Opm::Connection::Direction dir;
73 std::size_t global_index;
74 std::vector<Neighbour> rect_neighbours;
75 std::vector<Neighbour> diag_neighbours;
79 const std::string& wname()
const;
84 double wbp(WBPMode mode)
const;
85 bool add_pressure(std::size_t global_index,
double pressure);
87 const std::vector< std::size_t >& index_list()
const;
88 std::pair< std::reference_wrapper<const std::vector<double>>, std::reference_wrapper<const std::vector<bool>> > data()
const;
92 void update(
const std::vector<double>& p,
const std::vector<char>& m);
94 void add_neighbour(std::size_t global_index, std::optional<PAvgCalculator::Neighbour> neighbour,
bool rect_neighbour);
95 double get_pressure(std::size_t global_index)
const;
96 double cf_avg(
const std::vector<std::optional<double>>& block_pressure)
const;
97 std::pair<double,double> porv_pressure(std::size_t global_index)
const;
98 std::vector<std::optional<double>> block_pressures(PAvgCalculator::WBPMode mode)
const;
100 std::string well_name;
102 std::vector<Connection> m_connections;
103 std::map<std::size_t, std::size_t> m_index_map;
104 std::vector<std::size_t> m_index_list;
105 std::vector<double> pressure;
106 std::vector<char> valid_pressure;
About cell information and dimension: The actual grid information is held in a pointer to an ERT ecl_...
Definition: EclipseGrid.hpp:54
Definition: PAvgCalculator.hpp:37
Definition: Serializer.hpp:38
Definition: WellConnections.hpp:40
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29
Definition: PAvgCalculator.hpp:61
Definition: PAvgCalculator.hpp:50