The protocol for outputting an aquifer's active cell IDs to the
restart file requires that the cells be enumerated according to
their column. In particular, the aquifer's notion of a model's
active cells correspond to a cell ordering of the form
for (i = 0; i < Nx; ++i)
for (j = 0; j < Ny; ++j)
for (k = 0; k < Nz; ++k)
use(X(i, j, k))
instead of the common ordering, sometimes referred to as "natural
ordering"
for (k = 0; k < Nz; ++k)
for (j = 0; j < Ny; ++j)
for (i = 0; i < Nx; ++i)
use(X(i, j, k))
which is employed elsewhere.
This commit adds a special purpose mapping facility which will
translate active cell IDs from natural ordering to the columnar
enumeration. The facility is intentionally bare-bones because we
do not expect to use it outside of the restart writing code, and
only in a limited fashion within that context. We will however
consider adding more features if the need arises.