Skip to content

Latest commit

 

History

History
196 lines (161 loc) · 5.29 KB

File metadata and controls

196 lines (161 loc) · 5.29 KB
.. currentmodule:: uxarray

Conventions

UGRID Conventions

The UGRID conventions provide a standard for storing unstructured grid model data in the form of a NetCDF file. UXarray uses the UGRID conventions as a foundation for representing unstructured grids.

More Info

For further information about the UGRID conventions, please refer to the official documentation

Elements & Dimensions

An unstructured grid is composed of nodes, edges, and faces which either fully or partially cover some surface. In the context of climate modelling, this surface is the surface of the Earth, typically represented as a sphere.

For example, output from a global atmospheric model covers the entire sphere, while a global ocean model would not have any elements over land.

Nodes

An unstructured grid contains n_node corner nodes, which define the corners of each face. It may also contain n_face centroid nodes, which represent the center of each face, and n_edge edge nodes, which represent the center of each edge.

Edges

An unstructured grid contains n_edge edges, which each connect two corner nodes to form an arc.

Faces

An unstructured grid contains n_face faces.

UXarray is built to support 2D flexible grids, meaning that each face can have a variable number of nodes surrounding it.

Each face can have an independent number of nodes that surround it, which is represented through the descriptor variable n_nodes_per_face, which itself has a dimension of n_face The minimum number of nodes per face is 3 (a triangle), with the maximum number being represented by the dimension n_max_face_nodes

Coordinates

Definitions

Spherical Coordinates

Coordinate Grid Attribute Dimensions Summary
Node Longitude Grid.node_lon (n_node,) Longitude of each corner node
Node Latitude Grid.node_lat (n_node,) Latitude of each corner node in degrees
Edge Longitude Grid.edge_lon (n_edge,) Longitude of the center of each edge
Edge Latitude Grid.edge_lat (n_edge,) Latitude of the center of each edge
Face Longitude Grid.face_lon (n_face,) Longitude of the center of each face
Face Latitude Grid.face_lat (n_face,) Latitude of the center of each face

Note

All spherical coordinates are represented in degrees, with longitudes between (-180°, 180°) and latitudes between (-90°, 90°).

Cartesian Coordinates

Coordinate Grid Attribute Dimensions Summary
Node X Grid.node_x (n_node,) X location of each corner node
Node Y Grid.node_y (n_node,) Y location of each corner node
Node Z Grid.node_z (n_node,) Z location of each corner node
Edge X Grid.edge_x (n_edge,) X location of the center of each edge
Edge Y Grid.edge_y (n_edge,) Y location of the center of each edge
Edge Z Grid.edge_z (n_edge,) Z location of the center of each edge
Face X Grid.face_x (n_face,) X location of the center of each face
Face Y Grid.face_y (n_face,) Y location of the center of each face
Face Z Grid.face_z (n_face,) Z location of the center of each face

Note

All Cartesian coordinates are represented in meters.

Connectivity

UXarray relies on connectivity variables to describe how various elements (i.e nodes, edges, faces) can be connected.

Connectivity Grid Attribute Dimensions Summary
Face Node Grid.face_node_connectivity (n_face, n_max_face_nodes) Indices of the nodes that make up each face
Face Edge Grid.face_edge_connectivity (n_face, n_max_face_edges) Indices of the edges that surround each face
Face Face Grid.face_face_connectivity (n_face, n_max_face_faces) Indices of the faces that surround each face
Edge Node Grid.edge_node_connectivity (n_edge, 2) Indices of the two nodes that make up each edge
Edge Edge Grid.edge_edge_connectivity (n_edge, n_max_edge_edges) Indices of the edges that surround each edge
Edge Face Grid.edge_face_connectivity (n_edge, n_max_edge_faces) Indices of the faces that saddle each edge
Node Edge Grid.node_edge_connectivity (n_node, n_max_node_edges) Indices of the edges that surround each node
Node Face Grid.node_face_connectivity (n_node, n_max_node_faces) Indices of the faces that surround each node