126.96.36.199 Alternate Indexing Use Case
|For Standard||RESQML v2.0.1|
The unstructured grid representation is the only RESQML representation that allows an alternate cell indexing to the standard 0-based contiguous RESQML cell indexing. If used, this alternate cell indexing must be the only one considered for any related grid cell objects, such as grid connection set, subrepresentation, grid parentage, etc.
NOTE: Because this alternate indexing requires a lot of extra work for software readers to process, its use is strongly discouraged except if no other solution is acceptable.
RESQML has only one use case that requires use of alternate cell indexing. Assume you have a huge grid where only a tiny part is geometrically defined. In this situation, a likely approach might be to define the huge grid without any geometry and, for the tiny grid with geometry, define a subrepresentation. However, RESQML does not allow definition of geometry on a subrepresentation. The recommended solution is to create the tiny part of the grid as a RESQML unstructured grid, and use alternate cell indexing to describe the indices of the corresponding cells in the huge grid that has no geometry.
How to do this alternate indexing use case in an unstructured grid representation:
- For each supporting grid, add one extrametadata element with the key “OriginalCellIndex/ OriginalGrids.” (The order in which these are defined matters.)
- Add a discrete property value named "AlternateCellIndex" with discrete kind "index" where you will store each alternate cell index of your unstructured grid cells.
- Reference this discrete property using a UUID in an extrametadata element with the key "OriginalCellIndex/CellIndex" and the value being the UUID of the property value.
- Add a discrete property value named "AlternateGridIndex" with discrete kind "index" where you will store the supporting grid index of each alternate cell index.
- Reference this discrete property using a UUID in an extrametadata element with the key "OriginalCellIndex/GridIndex" and the value being the UUID of the property value.