NetCDF Profile: Unterschied zwischen den Versionen
Aus BAWiki
imported>Lang Guenther (→Kurze Beschreibung: Hinweis zu Mesh1 ergänzt) |
imported>Lang Guenther (Text wurde aktualisiert) |
||
Zeile 2: | Zeile 2: | ||
=Kurze Beschreibung= | =Kurze Beschreibung= | ||
Es wird die Lage mehrerer (Längs- und Quer-) Profile beschrieben. | Es wird die Lage mehrerer (Längs- und Quer-) Profile beschrieben. Die Konzeption ist eng mit der | ||
[http://ugrid-conventions.github.io/ugrid-conventions/#1d-network-topology ''1D network topolgy''] | |||
der [http://ugrid-conventions.github.io/ugrid-conventions ''UGRID Conventions''] verknüpft. | |||
Darüber hinaus wird das nicht von den ''UGRID Conventions'' abgedeckte Objekt | |||
''<font color=darkorange>Profil</font>'' verwendet. Alle Abweichungen/Erweiterungen von den ''UGRID Conventions'' | |||
sind nachfolgend in der Farbe <font color=darkorange>''darkorange''</font> farblich hervorgehoben. | |||
=Inhalt der Datei= | =Inhalt der Datei= | ||
Zeile 70: | Zeile 70: | ||
: Mesh1_node_lat:name_id = 1652 ; | : Mesh1_node_lat:name_id = 1652 ; | ||
: Mesh1_node_lat:standard_name = "latitude" ; | : Mesh1_node_lat:standard_name = "latitude" ; | ||
Hinweise: | Hinweise: | ||
# Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen. | |||
===Kanten=== | ===Kanten=== | ||
Zeile 85: | Zeile 86: | ||
: Mesh1_edge_lat:bounds = "Mesh1_edge_lat_bnd" ; | : Mesh1_edge_lat:bounds = "Mesh1_edge_lat_bnd" ; | ||
: Mesh1_edge_lat:standard_name = "latitude" ; | : Mesh1_edge_lat:standard_name = "latitude" ; | ||
Hinweise: | Hinweise: | ||
# Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen. | |||
===(optional) Begrenzung für Kanten=== | ===(optional) Begrenzung für Kanten=== | ||
Zeile 106: | Zeile 108: | ||
: Mesh1_prof_long_name:long_name = "Name des Profils" ; | : Mesh1_prof_long_name:long_name = "Name des Profils" ; | ||
Hinweise: | Hinweise: | ||
# Steht als | # Steht als ''label coordinate variable'' für den Zugriff auf die einzelnen Profile zur Verfügung. | ||
# Ist Teil der Struktur "geo_profile" in Paket P_GRID. | # Ist Teil der Struktur "geo_profile" in Paket P_GRID. | ||
Zeile 112: | Zeile 114: | ||
int Mesh1_prof_edges(nMesh1_prof, nMaxMesh1_prof_edges) ; | int Mesh1_prof_edges(nMesh1_prof, nMaxMesh1_prof_edges) ; | ||
: Mesh1_prof_edges:long_name = "Kantenverzeichnis der Profile, vom Anfang zum Ende sortiert" ; | : Mesh1_prof_edges:long_name = "Kantenverzeichnis der Profile, vom Anfang zum Ende sortiert" ; | ||
: Mesh1_prof_edges:cf_role = "prof_edge_connectivity" ; | : Mesh1_prof_edges:cf_role = "<font color=darkorange>prof_edge_connectivity</font>" ; | ||
: Mesh1_prof_edges:_FillValue = -999 ; | : Mesh1_prof_edges:_FillValue = -999 ; | ||
: Mesh1_prof_edges:start_index = 0 ; | : Mesh1_prof_edges:start_index = 0 ; | ||
Zeile 118: | Zeile 120: | ||
# Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren. | # Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren. | ||
# Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen. | # Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen. | ||
# Ist Teil der Struktur "geo_profile_segment" in Paket P_GRID. Die laufende Nummer des Segments, wie auch die Verweise auf die benachbarten Segmente werden nicht nach NetCDF geschrieben. Diese Informationen müssen nach dem Lesen dynamisch ermittelt werden. | # Ist Teil der Struktur "geo_profile_segment" in Paket P_GRID. Die laufende Nummer des Segments, wie auch die Verweise auf die benachbarten Segmente werden nicht nach NetCDF geschrieben. Diese Informationen müssen nach dem Lesen dynamisch ermittelt werden. | ||
Zeile 124: | Zeile 125: | ||
int Mesh1_prof_nodes(nMesh1_prof, nMaxMesh1_prof_nodes) ; | int Mesh1_prof_nodes(nMesh1_prof, nMaxMesh1_prof_nodes) ; | ||
: Mesh1_prof_nodes:long_name = "Knotenverzeichnis der Profile, vom Anfang zum Ende sortiert" ; | : Mesh1_prof_nodes:long_name = "Knotenverzeichnis der Profile, vom Anfang zum Ende sortiert" ; | ||
: Mesh1_prof_nodes:cf_role = "prof_node_connectivity" ; | : Mesh1_prof_nodes:cf_role = "<font color=darkorange>prof_node_connectivity</font>" ; | ||
: Mesh1_prof_nodes:_FillValue = -999 ; | : Mesh1_prof_nodes:_FillValue = -999 ; | ||
: Mesh1_prof_nodes:start_index = 0 ; | : Mesh1_prof_nodes:start_index = 0 ; | ||
Hinweise: | Hinweise: | ||
# Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren. | # Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren. | ||
==Topologievariable== | ==Topologievariable== | ||
Zeile 135: | Zeile 135: | ||
int Mesh1 ; | int Mesh1 ; | ||
: Mesh1:long_name = "Profil-Gitternetz, kein SubGrid" ; | : Mesh1:long_name = "Profil-Gitternetz, kein SubGrid" ; | ||
: Mesh1: | : Mesh1:topology_dimension = 1 ; | ||
: Mesh1:cf_role = "mesh_topology" ; | : Mesh1:cf_role = "mesh_topology" ; | ||
: Mesh1:node_coordinates = "Mesh1_node_x Mesh1_node_y Mesh1_node_lon Mesh1_node_lat" ; | : Mesh1:node_coordinates = "Mesh1_node_x Mesh1_node_y Mesh1_node_lon Mesh1_node_lat" ; | ||
: Mesh1:edge_coordinates = "Mesh1_edge_x Mesh1_edge_y Mesh1_edge_lon Mesh1_edge_lat" ; | : Mesh1:edge_coordinates = "Mesh1_edge_x Mesh1_edge_y Mesh1_edge_lon Mesh1_edge_lat" ; | ||
: Mesh1:prof_coordinates = "Mesh1_prof_long_name" ; | : Mesh1:<font color=darkorange>prof_coordinates</font> = "Mesh1_prof_long_name" ; | ||
: Mesh1:<font color=darkorange> | : Mesh1:<font color=darkorange>prof_node_connectivity</font> = "Mesh1_prof_nodes" ; | ||
: Mesh1:<font color=darkorange> | : Mesh1:<font color=darkorange>prof_edge_connectivity</font> = "Mesh1_prof_edges" ; | ||
: Mesh1:edge_node_connectivity = "Mesh1_edge_nodes" ; | : Mesh1:edge_node_connectivity = "Mesh1_edge_nodes" ; | ||
==Koordinatentransformation== | ==Koordinatentransformation== | ||
Siehe unter [[NetCDF Grid Mapping Variable]]. | Siehe unter [[NetCDF Grid Mapping Variable]]. | ||
---- | ---- |
Version vom 14. April 2016, 12:53 Uhr
Kurze Beschreibung
Es wird die Lage mehrerer (Längs- und Quer-) Profile beschrieben. Die Konzeption ist eng mit der 1D network topolgy der UGRID Conventions verknüpft. Darüber hinaus wird das nicht von den UGRID Conventions abgedeckte Objekt Profil verwendet. Alle Abweichungen/Erweiterungen von den UGRID Conventions sind nachfolgend in der Farbe darkorange farblich hervorgehoben.
Inhalt der Datei
Dimensionen
- nMesh1_node : Anzahl der Profilknoten.
- nMesh1_edge : Anzahl der Profilkanten.
- nMesh1_prof : Anzahl der Profile (Längs- und Querprofile).
- nMaxMesh1_prof_edges : maximale Anzahl der Kanten in einem Profil.
- nMaxMesh1_prof_nodes : maximale Anzahl der Knoten auf einem Profil.
- Two : konstante Dimension ( = 2 ).
Lokale Koordinaten
Knoten
double Mesh1_node_x(nMesh1_node) ;
- Mesh1_node_x:long_name = "x-Koordinate der Profilpunkte" ;
- Mesh1_node_x:units = "m" ;
- Mesh1_node_x:name_id = 1650 ;
- Mesh1_node_x:standard_name = "projection_x_coordinate" ;
double Mesh1_node_y(nMesh1_node) ;
- Mesh1_node_y:long_name = "y-Koordinate der Profilpunkte" ;
- Mesh1_node_y:units = "m" ;
- Mesh1_node_y:name_id = 1651 ;
- Mesh1_node_y:standard_name = "projection_y_coordinate" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
Kanten
double Mesh1_edge_x(nMesh1_edge) ;
- Mesh1_edge_x:long_name = "x-Koordinate der Profilkanten, Kantenmitte" ;
- Mesh1_edge_x:units = "m" ;
- Mesh1_edge_x:name_id = 1650 ;
- Mesh1_edge_x:bounds = "Mesh1_edge_x_bnd" ;
- Mesh1_edge_x:standard_name = "projection_x_coordinate" ;
double Mesh1_edge_y(nMesh1_edge) ;
- Mesh1_edge_y:long_name = "y-Koordinate der Profilkanten, Kantenmitte" ;
- Mesh1_edge_y:units = "m" ;
- Mesh1_edge_y:name_id = 1651 ;
- Mesh1_edge_y:bounds = "Mesh1_edge_y_bnd" ;
- Mesh1_edge_y:standard_name = "projection_y_coordinate" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
(optional) Begrenzung für Kanten
double Mesh1_edge_x_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
double Mesh1_edge_y_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
Geografische Koordinaten
Knoten
double Mesh1_node_lon(nMesh1_node) ;
- Mesh1_node_lon:long_name = "geografische Laenge der Profilpunkte" ;
- Mesh1_node_lon:units = "degrees_east" ;
- Mesh1_node_lon:name_id = 1653 ;
- Mesh1_node_lon:standard_name = "longitude" ;
double Mesh1_node_lat(nMesh1_node) ;
- Mesh1_node_lat:long_name = "geografische Breite der Profilpunkte" ;
- Mesh1_node_lat:units = "degrees_north" ;
- Mesh1_node_lat:name_id = 1652 ;
- Mesh1_node_lat:standard_name = "latitude" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
Kanten
double Mesh1_edge_lon(nMesh1_edge) ;
- Mesh1_edge_lon:long_name = "geografische Laenge der Profilkanten, Kantenmitte" ;
- Mesh1_edge_lon:units = "degrees_east" ;
- Mesh1_edge_lon:name_id = 1653 ;
- Mesh1_edge_lon:bounds = "Mesh1_edge_lon_bnd" ;
- Mesh1_edge_lon:standard_name = "longitude" ;
double Mesh1_edge_lat(nMesh1_edge) ;
- Mesh1_edge_lat:long_name = "geografische Breite der Profilkanten, Kantenmitte" ;
- Mesh1_edge_lat:units = "degrees_north" ;
- Mesh1_edge_lat:name_id = 1652 ;
- Mesh1_edge_lat:bounds = "Mesh1_edge_lat_bnd" ;
- Mesh1_edge_lat:standard_name = "latitude" ;
Hinweise:
- Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.
(optional) Begrenzung für Kanten
double Mesh1_edge_lon_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
double Mesh1_edge_lat_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
Topologische Daten
Knotenverzeichnis der Kanten
int Mesh1_edge_nodes(nMesh1_edge, two) ;
- Mesh1_edge_nodes:long_name = "Knotenverzeichnis der Profilkanten, Anfangs- und Endpunkt" ;
- Mesh1_edge_nodes:cf_role = "edge_node_connectivity" ;
- Mesh1_edge_nodes:start_index = 0 ;
Hinweise:
- Ist Teil der Struktur "geo_profile_segment" in Paket P_GRID.
Namensverzeichnis der Profile
char Mesh1_prof_long_name(nMesh1_prof, nMesh1_strlen1) ;
- Mesh1_prof_long_name:long_name = "Name des Profils" ;
Hinweise:
- Steht als label coordinate variable für den Zugriff auf die einzelnen Profile zur Verfügung.
- Ist Teil der Struktur "geo_profile" in Paket P_GRID.
Kantenverzeichnis der Profile
int Mesh1_prof_edges(nMesh1_prof, nMaxMesh1_prof_edges) ;
- Mesh1_prof_edges:long_name = "Kantenverzeichnis der Profile, vom Anfang zum Ende sortiert" ;
- Mesh1_prof_edges:cf_role = "prof_edge_connectivity" ;
- Mesh1_prof_edges:_FillValue = -999 ;
- Mesh1_prof_edges:start_index = 0 ;
Hinweise:
- Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren.
- Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen.
- Ist Teil der Struktur "geo_profile_segment" in Paket P_GRID. Die laufende Nummer des Segments, wie auch die Verweise auf die benachbarten Segmente werden nicht nach NetCDF geschrieben. Diese Informationen müssen nach dem Lesen dynamisch ermittelt werden.
Knotenverzeichnis der Profile
int Mesh1_prof_nodes(nMesh1_prof, nMaxMesh1_prof_nodes) ;
- Mesh1_prof_nodes:long_name = "Knotenverzeichnis der Profile, vom Anfang zum Ende sortiert" ;
- Mesh1_prof_nodes:cf_role = "prof_node_connectivity" ;
- Mesh1_prof_nodes:_FillValue = -999 ;
- Mesh1_prof_nodes:start_index = 0 ;
Hinweise:
- Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren.
Topologievariable
int Mesh1 ;
- Mesh1:long_name = "Profil-Gitternetz, kein SubGrid" ;
- Mesh1:topology_dimension = 1 ;
- Mesh1:cf_role = "mesh_topology" ;
- Mesh1:node_coordinates = "Mesh1_node_x Mesh1_node_y Mesh1_node_lon Mesh1_node_lat" ;
- Mesh1:edge_coordinates = "Mesh1_edge_x Mesh1_edge_y Mesh1_edge_lon Mesh1_edge_lat" ;
- Mesh1:prof_coordinates = "Mesh1_prof_long_name" ;
- Mesh1:prof_node_connectivity = "Mesh1_prof_nodes" ;
- Mesh1:prof_edge_connectivity = "Mesh1_prof_edges" ;
- Mesh1:edge_node_connectivity = "Mesh1_edge_nodes" ;
Koordinatentransformation
Siehe unter NetCDF Grid Mapping Variable.
zurück zu NetCDF