My Project
Loading...
Searching...
No Matches
Opm::ActiveIndexByColumns Class Reference

Special purpose mapping facility to handle the output code's need to enumerate the active cells by columns (layer ID (K) cycling fastest, followed by J, followed by I) for aquifer connections. More...

#include <ActiveIndexByColumns.hpp>

Public Member Functions

bool operator== (const ActiveIndexByColumns &rhs) const
 
 ActiveIndexByColumns (const std::size_t numActive, const std::array< int, 3 > &cartDims, const std::function< std::array< int, 3 >(const std::size_t)> &getIJK)
 Create natural->columnar active cell index mapping.
 
int getColumnarActiveIndex (const std::size_t naturalActiveIndex) const
 Map active index in natural order to active index in columnar order.
 

Detailed Description

Special purpose mapping facility to handle the output code's need to enumerate the active cells by columns (layer ID (K) cycling fastest, followed by J, followed by I) for aquifer connections.

Constructor & Destructor Documentation

◆ ActiveIndexByColumns()

Opm::ActiveIndexByColumns::ActiveIndexByColumns ( const std::size_t  numActive,
const std::array< int, 3 > &  cartDims,
const std::function< std::array< int, 3 >(const std::size_t)> &  getIJK 
)
explicit

Create natural->columnar active cell index mapping.

Parameters
[in]numActiveNumber of active cells in model.
[in]cartDimsModel's Cartesian dimensions.
[in]getIJKCall-back routine for retrieving the Cartesian (I,J,K) tuple of an active cell index.

Member Function Documentation

◆ getColumnarActiveIndex()

int Opm::ActiveIndexByColumns::getColumnarActiveIndex ( const std::size_t  naturalActiveIndex) const
inline

Map active index in natural order to active index in columnar order.

The output code needs return type int here, so use that instead of

std::size_t

.


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