NetCDF Unstrukturiertes Gitter mit SubGrid: Unterschied zwischen den Versionen
Aus BAWiki
imported>Lang Guenther (→Geografische Koordinaten des Plot-Subgrid: Topologische Daten des Plot-Subgrid ergänzt) |
imported>Lang Guenther (→Topologische Daten des Plot-Subgrid: Topologievariable ergänzt) |
||
Zeile 153: | Zeile 153: | ||
# Ein Standardname sollte gelegentlich ergänzt werden. | # Ein Standardname sollte gelegentlich ergänzt werden. | ||
# Indizes starten mit Null! | # Indizes starten mit Null! | ||
==Topologievariable== | |||
int Mesh2 ; | |||
: Mesh2:long_name = "UnTRIM Gitternetz, Drei- und Vierecke gemischt, mit SubGrid" ; | |||
: Mesh2:dimensionality = 2 ; | |||
: Mesh2:locations = "node edge <font color=darkorange>poly</font> <font color=darkorange>subedge</font> <font color=darkorange>subpoly</font>" ; | |||
: Mesh2:node_coordinates = "Mesh2_node_x Mesh2_node_y Mesh2_node_lon Mesh2_node_lat" ; | |||
: Mesh2:edge_coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ; | |||
: Mesh2:poly_coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_center_x Mesh2_poly_center_y Mesh2_poly_center_lon Mesh2_poly_center_lat" ; | |||
: Mesh2:<font color=darkorange>subedge</font>_coordinates = "Mesh2_plot_subedge_x Mesh2_plot_subedge_y Mesh2_plot_subedge_lon Mesh2_plot_subedge_lat" ; | |||
: Mesh2:<font color=darkorange>subpoly</font>_coordinates = "Mesh2_plot_subpoly_x Mesh2_plot_subpoly_y Mesh2_plot_subpoly_lon Mesh2_plot_subpoly_lat" ; | |||
: Mesh2:<font color=darkorange>poly</font>_node_connectivity = "Mesh2_poly_nodes" ; | |||
: Mesh2:<font color=darkorange>poly</font>_edge_connectivity = "Mesh2_poly_edges" ; | |||
: Mesh2:edge_node_connectivity = "Mesh2_edge_nodes" ; | |||
: Mesh2:edge_<font color=darkorange>poly</font>_connectivity = "Mesh2_edge_polys" ; | |||
: Mesh2:poly_<font color=darkorange>subpoly</font>_connectivity = "Mesh2_poly_plot_subpolys" ; | |||
: Mesh2:edge_<font color=darkorange>subedge</font>_connectivity = "Mesh2_edge_plot_subedges" ; | |||
Hinweise: | |||
# Ein Standardname sollte gelegentlich ergänzt werden. | |||
# Mit dem Attribut "locations" werden die für das Gitter relevanten Positionen registriert. | |||
# In der Praxis müssen nicht alle Verknüpfungslisten (''connectivity'') angegeben werden, da manche Informationen redundant sind. Sie sollten aber angegeben werden können. | |||
# Die <font color=darkorange>orange</font> markierten Bezeichnungen stellen Abweichungen bzw. Ergänzungen zu den [http://public.deltares.nl/display/NETCDF/netCDF Deltares-CF-Erweiterungen] dar. | |||
=Anmerkungen= | =Anmerkungen= |
Version vom 4. Mai 2011, 12:29 Uhr
Kurze Beschreibung
Ein aus beliebigen Polygonen (Dreiecke und Vierecke) aufgebautes Gitter wird beschrieben. Zusätzlich sind typische Daten des SubGrid vorhanden. Die Dateitypen hierfür sind utrsub_grid.dat (Berechnungsgitter mit SubGrid-Tiefenklassen) und pltsub_grid.upi (Hilfsgitter für Postprocessoren, Plot-SubGrid). Die Speicherung von Daten auf diesem Gitter, z. B. der Tiefe (Bathymetrie), wird an anderer Stelle beschrieben (siehe NetCDF Synoptische Daten im unstrukturierten Gitter mit SubGrid). Ebenso werden hier keine Informationen über offene und geschlossene Kanten oder Positionen zum Einsteuern von Randwerten aufgeführt. Es wird ausschließlich die Struktur (Topologie) des Gitters beschrieben.
Die Beschreibung wurde vollständig für die staggered data Positionen node, edge und poly gestaltet.
Inhalt der Datei
- Siehe NetCDF Unstrukturiertes Gitter.
- Die Beschreibung des Berechnungsgitters stimmt mit der des unstrukturierten Gitters ohne SubGrid überein.
Dimensionen
- nMesh2_node : Anzahl der Knoten.
- nMesh2_edge : Anzahl der Kanten.
- nMesh2_poly : Anzahl der Polygone.
- nMesh2_plot_subedges : Anzahl der Plot-Subkanten.
- nMesh2_plot_subpolys : Anzahl der Plot-Subpolygone.
- nMaxMesh2_poly_nodes : maximale Anzahl der Knoten/Kanten in einem Polygon.
- nMaxMesh2_plot_subedges : maximale Anzahl der Plot-Subkanten einer Kante.
- nMaxMesh2_plot_subpolys : maximale Anzahl der Plot-Subpolygone eines Polygons.
- nMaxMesh2_subpoly_subnodes : maximale Anzahl der Plot-Subknoten eines Plot-Subpolygons.
- two : Konstante ( = 2 ).
Hinweise:
- Plot-Subkanten und Plot-Subpolygone werden nur für die Visualisierung benötigt.
- Das Simulationsprogramm verwendet ausschließlich die korrespondierenden Tiefenklassen.
- Die Anzahl der Plot-Subkanten bzw. -Subpolygone kann größer oder gleich die Anzahl der entsprechenden Tiefenklassen sein.
Lokale Koordinaten des Plot-Subgrid
Kanten
double Mesh2_plot_subedge_x(nMesh2_plot_subedges) ;
- Mesh2_plot_subedge_x:long_name = "x-Koordinate der Plot-SubKanten eines 2D-Gitters, Kantenmitte" ;
- Mesh2_plot_subedge_x:units = "m" ;
- Mesh2_plot_subedge_x:name_id = 1650 ;
- Mesh2_plot_subedge_x:bounds = "Mesh2_plot_subedge_x_bnd" ;
- Mesh2_plot_subedge_x:standard_name = "projection_x_coordinate" ;
double Mesh2_plot_subedge_y(nMesh2_plot_subedges) ;
- Mesh2_plot_subedge_y:long_name = "y-Koordinate der Plot-SubKanten eines 2D-Gitters, Kantenmitte" ;
- Mesh2_plot_subedge_y:units = "m" ;
- Mesh2_plot_subedge_y:name_id = 1651 ;
- Mesh2_plot_subedge_y:bounds = "Mesh2_plot_subedge_y_bnd" ;
- Mesh2_plot_subedge_y:standard_name = "projection_y_coordinate" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
- Das Attribut "bounds" verweist auf die Variable mit Anfangs- und Endkoordinaten aller Subkanten.
Polygone
double Mesh2_plot_subpoly_x(nMesh2_plot_subpolys) ;
- Mesh2_plot_subpoly_x:long_name = "x-Koordinate der Plot-SubPolygone eines 2D-Gitters, irgendwo im Plot-SubPolygon" ;
- Mesh2_plot_subpoly_x:units = "m" ;
- Mesh2_plot_subpoly_x:name_id = 1650 ;
- Mesh2_plot_subpoly_x:bounds = "Mesh2_plot_subpoly_x_bnd" ;
- Mesh2_plot_subpoly_x:standard_name = "projection_x_coordinate" ;
double Mesh2_plot_subpoly_y(nMesh2_plot_subpolys) ;
- Mesh2_plot_subpoly_y:long_name = "y-Koordinate der Plot-SubPolygone eines 2D-Gitters, irgendwo im Plot-SubPolygon" ;
- Mesh2_plot_subpoly_y:units = "m" ;
- Mesh2_plot_subpoly_y:name_id = 1651 ;
- Mesh2_plot_subpoly_y:bounds = "Mesh2_plot_subpoly_y_bnd" ;
- Mesh2_plot_subpoly_y:standard_name = "projection_y_coordinate" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
- Es kann ein beliebiger, innerhalb des Polygons liegender Punkt gewählt werden.
(optional) Begrenzung für Kanten
double Mesh2_plot_subedge_x_bnd(nMesh2_plot_subedges, two) ;
double Mesh2_plot_subedge_y_bnd(nMesh2_plot_subedges, two) ;
(optional) Begrenzung für Polygone
double Mesh2_plot_subpoly_x_bnd(nMesh2_plot_subpolys, nMaxMesh2_subpoly_subnodes) ;
double Mesh2_plot_subpoly_y_bnd(nMesh2_plot_subpolys, nMaxMesh2_subpoly_subnodes) ;
Hinweise:
- Koordinaten der Knoten des Subpolygons entgegen dem Uhrzeigersinn angeben.
- Es dürfen keine ungültigen Koordinaten vorhanden sein.
Geografische Koordinaten des Plot-Subgrid
Kanten
double Mesh2_plot_subedge_lon(nMesh2_plot_subedges) ;
- Mesh2_plot_subedge_lon:long_name = "geografische Laenge der Plot_SubKanten eines 2D-Gitters, Kantenmitte" ;
- Mesh2_plot_subedge_lon:units = "degrees_east" ;
- Mesh2_plot_subedge_lon:name_id = 1653 ;
- Mesh2_plot_subedge_lon:bounds = "Mesh2_plot_subedge_lon_bnd" ;
- Mesh2_plot_subedge_lon:standard_name = "longitude" ;
double Mesh2_plot_subedge_lat(nMesh2_plot_subedges) ;
- Mesh2_plot_subedge_lat:long_name = "geografische Breite der Plot-SubKanten eines 2D-Gitters, Kantenmitte" ;
- Mesh2_plot_subedge_lat:units = "degrees_north" ;
- Mesh2_plot_subedge_lat:name_id = 1652 ;
- Mesh2_plot_subedge_lat:bounds = "Mesh2_plot_subedge_lat_bnd" ;
- Mesh2_plot_subedge_lat:standard_name = "latitude" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
- Das Attribut "bounds" verweist auf die Variable mit Anfangs- und Endkoordinaten aller Subkanten.
Polygone
double Mesh2_plot_subpoly_lon(nMesh2_plot_subpolys) ;
- Mesh2_plot_subpoly_lon:long_name = "geografische Laenge der Plot-SubPolygone eines 2D-Gitters, irgendwo im Plot-SubPolygon" ;
- Mesh2_plot_subpoly_lon:units = "degrees_east" ;
- Mesh2_plot_subpoly_lon:name_id = 1653 ;
- Mesh2_plot_subpoly_lon:bounds = "Mesh2_plot_subpoly_lon_bnd" ;
- Mesh2_plot_subpoly_lon:standard_name = "longitude" ;
double Mesh2_plot_subpoly_lat(nMesh2_plot_subpolys) ;
- Mesh2_plot_subpoly_lat:long_name = "geografische Breite der Plot-SubPolygone eines 2D-Gitters, irgendwo im Plot-SubPolygon" ;
- Mesh2_plot_subpoly_lat:units = "degrees_north" ;
- Mesh2_plot_subpoly_lat:name_id = 1652 ;
- Mesh2_plot_subpoly_lat:bounds = "Mesh2_plot_subpoly_lat_bnd" ;
- Mesh2_plot_subpoly_lat:standard_name = "latitude" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
- Es kann ein beliebiger, innerhalb des Polygons liegender Punkt gewählt werden.
(optional) Begrenzung für Kanten
double Mesh2_plot_subedge_lon_bnd(nMesh2_plot_subedges, two) ;
double Mesh2_plot_subedge_lat_bnd(nMesh2_plot_subedges, two) ;
(optional) Begrenzung für Polygone
double Mesh2_plot_subpoly_lon_bnd(nMesh2_plot_subpolys, nMaxMesh2_subpoly_subnodes) ;
double Mesh2_plot_subpoly_lat_bnd(nMesh2_plot_subpolys, nMaxMesh2_subpoly_subnodes) ;
Hinweise:
- Koordinaten der Knoten des Subpolygons entgegen dem Uhrzeigersinn angeben.
- Es dürfen keine ungültigen Koordinaten vorhanden sein.
Topologische Daten des Plot-Subgrid
Plot-Subkantenverzeichnis der Kanten
int Mesh2_edge_plot_subedges(nMesh2_edge, nMaxMesh2_plot_subedges) ;
- Mesh2_edge_plot_subedges:long_name = "Plot-Subkantenverzeichnis der Kanten" ;
- Mesh2_edge_plot_subedges:_FillValue = -999 ;
Hinweise:
- Ein Standardname sollte gelegentlich ergänzt werden.
- Indizes starten mit Null!
Plot-Subpolygonverzeichnis der Polygone
int Mesh2_poly_plot_subpolys(nMesh2_poly, nMaxMesh2_plot_subpolys) ;
- Mesh2_poly_plot_subpolys:long_name = "Plot-Subpolygonverzeichnis der Polygone" ;
- Mesh2_poly_plot_subpolys:_FillValue = -999 ;
Hinweise:
- Ein Standardname sollte gelegentlich ergänzt werden.
- Indizes starten mit Null!
Topologievariable
int Mesh2 ;
- Mesh2:long_name = "UnTRIM Gitternetz, Drei- und Vierecke gemischt, mit SubGrid" ;
- Mesh2:dimensionality = 2 ;
- Mesh2:locations = "node edge poly subedge subpoly" ;
- Mesh2:node_coordinates = "Mesh2_node_x Mesh2_node_y Mesh2_node_lon Mesh2_node_lat" ;
- Mesh2:edge_coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ;
- Mesh2:poly_coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_center_x Mesh2_poly_center_y Mesh2_poly_center_lon Mesh2_poly_center_lat" ;
- Mesh2:subedge_coordinates = "Mesh2_plot_subedge_x Mesh2_plot_subedge_y Mesh2_plot_subedge_lon Mesh2_plot_subedge_lat" ;
- Mesh2:subpoly_coordinates = "Mesh2_plot_subpoly_x Mesh2_plot_subpoly_y Mesh2_plot_subpoly_lon Mesh2_plot_subpoly_lat" ;
- Mesh2:poly_node_connectivity = "Mesh2_poly_nodes" ;
- Mesh2:poly_edge_connectivity = "Mesh2_poly_edges" ;
- Mesh2:edge_node_connectivity = "Mesh2_edge_nodes" ;
- Mesh2:edge_poly_connectivity = "Mesh2_edge_polys" ;
- Mesh2:poly_subpoly_connectivity = "Mesh2_poly_plot_subpolys" ;
- Mesh2:edge_subedge_connectivity = "Mesh2_edge_plot_subedges" ;
Hinweise:
- Ein Standardname sollte gelegentlich ergänzt werden.
- Mit dem Attribut "locations" werden die für das Gitter relevanten Positionen registriert.
- In der Praxis müssen nicht alle Verknüpfungslisten (connectivity) angegeben werden, da manche Informationen redundant sind. Sie sollten aber angegeben werden können.
- Die orange markierten Bezeichnungen stellen Abweichungen bzw. Ergänzungen zu den Deltares-CF-Erweiterungen dar.
Anmerkungen
zurück zu NetCDF