A grid is an object referring to some geometrical entity (for a specific instance in parameter space like time). A grid subgroup (contained within a slice group) contains all information related to this object. Evolution Information relative to the grid predeccessor and successor (in arbitrary parameterizations) may also be stored here.
A Grid contains a `Charts
' subgroup defining (time-)local chart properties (eg. time-dependent transformation coefficients) and various Topology subgroups. Four Topology subgroups are predefined and must not be used as user-defined Topology groups, these groups are:
Points
: All information related to the vertices Connectivity
: All information related to the cells of a grid Edges
: All information related to the edges (1D-connectivity among points) of a grid Faces
: All information related to the faces (2D-connectivity among points) of a grid Each of these subgroups is optional. Arbitrary other Topology subgroups may be defined, eg. for AMR purposes.
Grid "VolumeData" | |---> Charts/ | |---> Points/ | |---> Connectivity/ | |---> Faces/ | |---> Edges/ | [...]
This reserved group per Grid contains information which charts are defined on a grid and which transformation rules are allowed on this grid. It has an entry (a subgroup) for each defined chart. This chart subgroup contains a reference (symbolic link) to the corresponding global chart object which allows to identify and track compatible chart objects with their corresponding data representation over various grids. This symlink has to be named `GlobalChart'. Each chart subgroup then has a subgroup ("Transformation group") named by another chart object. This subgroup contains all the information which is required to perform coordinate transformations into this chart.
Charts/ | |--> "Standard Cartesian Chart 3D"/ | | | |----> /GlobalChart -> /Charts/Cartesian 3D/Standard Cartesian Chart 3D (symlink to global chart object) | | | \----> "Standard Polar Chart 3D"/ Group containing transformation data (Cartesian->Polar) | | \--> "Standard Polar Chart 3D"/ | |----> /GlobalChart -> /Charts/Polar 3D/Standard Polar Chart 3D (symlink to global chart object) | \----> "Standard Cartesian Chart 3D"/ Group containing transformation from Polar to Cartesian
The reserved groupnames in a Grid subgroup are Charts
, Points
, Connectivity
, Edges
and Faces
.
A chart must not be named "GlobalChart", as this is a reserved name for the reference for local chart objects to global chart objects.
If a dataset is found in the grid subgroup, it is treated as if it were part of the Points
Topology.
It the dataspace in the Points Topology (it has to be identical for all datasets, see Topology) is n-dimensional, then the Connectivity Topology is chosen to be a regular n-dimensional space. The additional explicit specification of a Connectivity Topology (eg. to specify additional attributes or mappings) must be consistent, otherwise it is ignored.
The formulation of reference from local chart objects to global chart objects is somewhat fragile. A revised formulation might make use of attributes to named data types to enable sharing information more elegant.
A chart group might also be a symlink to an existing chart group of another grid. In this case the these charts are not only treated to be compatible, but to be identical:
The generic specification of transformation rules is not yet defined. For now, the type of the global chart object is used to select among built-in transformation rules, like cartesian and polar coordinates.