Version 1 (modified by dstuebe, 13 years ago) (diff)


Mesh MetaData

Where should the Mesh MetaData Reside?

The connectivity variable of each mesh could contain the mesh meta data for each mesh in the file. If a file has three meshs (for instance: Bathymetry, Sea Surface Height, and Data) then there would probably need to be three connectivity variables anyway to describe them. The one-to-one nature makes this variable an obvious choice. The names of all the meshes in a file should be specified in GlobalAttributes. These names should corrispond to the name of the connectivity variables.

What should be included in the Mesh MetaData?

  • Spatial Dimension and Topology
  • names of coordinate variables
  • name of coordinate type
  • Cell type (types)


Spatial Dimension and Topology

Spatial Dimension ::

The spatial dimension attribute corresponds to how many dimensions are needed to specify the coordinates for the points that make up your mesh. If your mesh exists in a 2D plane then choose 2, otherwise choose 3. Quote: LLNL's VisIt

Topological Dimension ::

The Topological dimension attribute describes the number of logical dimensions used by your mesh, regardless of the dimension of the space that it sits in. For example you may have a planar suface of triangles sitting in 3D space. Such a mesh would be topologiacally 2D even though it sits in 3D space. The rule of thump that Visit follows is that if your mesh's cells are points then you have a mesh that is topologically 0D, lines are 1D, surfaces are 2D volumes are 3D. Quote: LLNL's VisIt

Name of Coordinate Variables

The name of the coordinate variables used define to location of points in a mesh should be specified in the mesh meta data. This will prevent confusion in the case that there is more than one set of coordinate locations in a file to support more than one mesh.

Name of Coordinate Type

There are a number of different coordinate types in use. Which type the mesh uses should be specified in the meta data. Some examples include:

  • z-coordinates vs sigma-coordinates
  • lat/lon vs projection

The types should be enumerated and standardized as part of the Unstructured Grid convention?

Cell Type

see CellType?

Example CDL for the connectivity variable

Two dimensional triangular Mesh

int	MESH A(nConnect_A, nCells);
	MESH A:Standard_Name      = "Connectivity"
	MESH A:Spatial Dimension  = "3"
	MESH A:Topological Dimension = "2"
	MESH A:X nodal coordinate = "x_A"
	MESH A:Y nodal Coordinate = "y_A" 
	MESH A:Z nodal Coordinate = "Z_A"
	MESH A:Cell Type       = "NC_TRI"

Extruded two dimensional triangular mesh

int	MESH B(nConnect_B, nCells) ;
	MESH B:Standard_Name      = "Connectivity"
	MESH B:Spatial Dimension = "3"
	MESH B:Topological Dimension = "3"
	MESH B:X nodal coordinate = "x_B"
	MESH B:Y nodal Coordinate = "y_B" 
	MESH B:Sigma_Coordintes   = "Sigma"        ! Name of sigma coordinate variable
	MESH B:Sigma_surface      = "Surface"	   ! Name of surface height variable
	MESH B:Sigma_bottom       = "Bottom"       ! Name of sigma bottom depth variable
	MESH B:Sigma_equation     = "Your equation here"
	MESH B:Cell Type       = NC_tri

Mixed three dimensional cell mesh

int	MESH C(nConnect_C, nCells) ;          
	MESH C:Standard_Name      = "Connectivity"
	MESH C:Spatial Dimension = "3"
	MESH C:Topological Dimension = "3"	
	MESH C:X nodal coordinate = "x_C"    
	MESH C:Y nodal Coordinate = "y_C" 
	MESH C:Z nodal Coordinate = "Z_C"
	MESH C:Cell Type       = "NC_UNSTRUCT"
	MESH C:Mixed Cell List = "Mesh C Types"  

Go Back to CdlDiscussion Table of Contents