Changes in WellConnection ordering

1. If the well is MSW the connections in the WellConnection class is sorted in
   output order in the ::order() method, and retained that way.

2. Add method WellConnection::output() which return a vector of connection
   pointers sorted in output order.
This commit is contained in:
Joakim Hove
2020-03-19 10:42:06 +01:00
parent 03efd5e589
commit c7d3603184
5 changed files with 54 additions and 33 deletions

View File

@@ -84,12 +84,13 @@ namespace Opm {
/// \param[in] well_i logical cartesian i-coordinate of well head
/// \param[in] well_j logical cartesian j-coordinate of well head
/// \param[in] grid EclipseGrid object, used for cell depths
void order(size_t well_i, size_t well_j);
void order();
bool operator==( const WellConnections& ) const;
bool operator!=( const WellConnections& ) const;
Connection::Order ordering() const { return this->m_ordering; }
std::vector<const Connection *> output(const EclipseGrid& grid) const;
template<class Serializer>
void serializeOp(Serializer& serializer)
@@ -128,6 +129,8 @@ namespace Opm {
const std::vector<double>& ntg);
size_t findClosestConnection(int oi, int oj, double oz, size_t start_pos);
void orderTRACK();
void orderMSW();
Connection::Order m_ordering = Connection::Order::TRACK;
int headI, headJ;