Trip Report: Unstructured Grid Workshop

October 16 and 17, Boulder, CO

Materials
Take Away Messages
Action Items

My Position

The set of operations on unstructured grids we wish to support should drive the representation, rather than the other way around.

Structured grids are easy: the data model (Cartesian products of coordinate variables) immediately implies a representation (multidimensional arrays), an API (reading and writing subslabs), and an efficient implementation of the API (iterate over dimensions of the array).

Unstructured grids are more difficult: An appropriate characterization of the data model itself is not universally accepted; a general (and hopefully non-controversial) characterization is a collection of cells linked by an incidence relationship. There are many possible representations for this model:

  1. a multidimensional array, potentially with missing values, as found in current netCDF representations of unstructured grids
  2. an array of lists of nodes
  3. a list of polygons (or polyhedra), perhaps as OGC features.
  4. The quad-edge structure, and its variants
  5. cell tuples
  6. Generalized combinatorial maps

Each of these representations support different operations. The correct choice of representation should be informed by the operations one wishes to support. For example, a Mx3 array representing triangles can efficiently support extraction of the 100th to the 150th triangles. However, since the order in computational coordinates does not correspond to any physical ordering, it is not llikely that this kind of query is very useful.

I propose that the ability to derive a self-consistent subgrid using a geometric bounding box is the "killer app" for any unstructured grid representation, and is the closest analog to subslab operations on structured grids. Other important operations include aggregation over time and depth, vector calculus, and regridding. Any representation should efficiently support subsetting, and should not confound future efforts on aggregation, vector calculus and regridding.

To implement subsetting efficiently, an index is required. At the workshop, there were some very elegant ad hoc solutions presented (links to come). More traditional data structures such as quad-trees, k-d-trees, and R-trees are also relevant. We should not bind ourselves to flat array-based representations just because they are simple.

The bigger picture is this: The file-oriented model of scientific data exchange does not scale. As datasets grow, downloading a file for local analysis becomes infeasible. We will eventually be forced to move the computation to the data, rather than move the data to the computation. This tendency is well-documented in High-Energy Physics, Biology, and Astronomy; Oceanography is on the brink (witness 200 million surface nodes in QUODDY grids). I believe the appropriate first step is to allow server-side subsetting of data.

[1] Pascal Lienhardt: N-Dimensional Generalized Combinatorial Maps and Cellular Quasi-Manifolds. Int. J. Comput. Geometry Appl. 4(3): 275-324 (1994)

Materials

Workshop Wiki

Workshop website

Take-Away Messages

  • Server-side subsetting received strong support as the "killer requirement."
  • Balaji's GridSpec has momentum within the community. Tiling schemes (mosaics) are the focus; I didn't see much evidence that the ideas have been applied to our hybrid, 3D grids. No implementation.
  • There are existing, popular standards that overlap significantly with the goals of this workshop: CGNS and XMDF

Action Items

  • Provide examples of ELCIRC and SELFE output in a "best-effort" netCDF representation.
  • Investigate the use of CGNS and XMDF as alternatives.
  • Participate in community discussions, specifcially with respect to indexing for server-side subsetting.

Events

« July 2009 »
SuMTuWThFSa
1234
567891011
12131415161718
19202122232425
262728293031

User login

Search CMOP

Research Feature

CMOP researchers have developed a new remote sensing device to better understand and predict salinity intrusions in estuaries. Learn More

Profile

Joe Cho, a physical oceanographer, joins the CMOP modeling team. Read More

Outreach

Undergraduate Internship 2009
Meet this years interns and learn about their projects. Read More

Director's Welcome

CMOP is an outstanding opportunity to address regional and national priorities in ocean policy, and beyond.
More ...