NetCDF Unstrukturiertes Gitter mit SubGrid: Unterschied zwischen den Versionen
Aus BAWiki
imported>Lang Guenther (→Inhalt der Datei: zwei Zeilen Text gelöscht) |
imported>Lang Guenther (→Topologische Daten des Plot-Subgrid: Text für Topologische Daten mit Link auf unstrukturiertes Gitter ohne SubGrid ergänzt) |
||
Zeile 135: | Zeile 135: | ||
# Koordinaten der Knoten des Subpolygons entgegen dem Uhrzeigersinn angeben. | # Koordinaten der Knoten des Subpolygons entgegen dem Uhrzeigersinn angeben. | ||
# Es dürfen keine ungültigen Koordinaten vorhanden sein. | # Es dürfen keine ungültigen Koordinaten vorhanden sein. | ||
==Topologische Daten== | |||
Die Beschreibung der topologischen Daten des Berechnungsgitters stimmt mit derjenigen eines unstrukturierten Gitters ohne SubGrid überein. Siehe [[NetCDF Unstrukturiertes Gitter#Topologische Daten|NetCDF Unstrukturiertes Gitter unter "Topologische Daten"]]. | |||
==Topologische Daten des Plot-Subgrid== | ==Topologische Daten des Plot-Subgrid== |
Version vom 18. Mai 2011, 11:56 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
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
Die Beschreibung der lokalen Koordinaten des Berechnungsgitters stimmen mit derjenigen eines unstrukturierten Gitters ohne SubGrid überein. Siehe NetCDF Unstrukturiertes Gitter unter "Lokale Koordinaten".
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
Die Beschreibung der geografischen Koordinaten des Berechnungsgitters stimmen mit derjenigen eines unstrukturierten Gitters ohne SubGrid überein. Siehe NetCDF Unstrukturiertes Gitter unter "Geografische Koordinaten".
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
Die Beschreibung der topologischen Daten des Berechnungsgitters stimmt mit derjenigen eines unstrukturierten Gitters ohne SubGrid überein. Siehe NetCDF Unstrukturiertes Gitter unter "Topologische Daten".
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