Aktionen

NetCDF Profile: Unterschied zwischen den Versionen

Aus BAWiki

imported>Lang Guenther
(Die LinkTitles-Erweiterung hat automatisch Links zu anderen Seiten hinzugefügt (<a target="_blank" rel="nofollow noreferrer noopener" class="external free" href="https://github.com/bovender/LinkTitles">https://github.com/bovender/LinkTitles</a>).)
 
(50 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
=Kurze Beschreibung=
=Kurze Beschreibung=


Es wird die Lage mehrerer Profile beschrieben.
Es wird die Lage mehrerer (Längs- und Quer-) Profile beschrieben.  


<font color=red>'''Bei Übergang zu Daten mit SubGrid könnten für die Kanten weitere SubGrid-Informationen erforderlich werden. Dieser Aspekt wurde in dem vorliegenden Entwurf bislang vernachlässigt.'''</font>
=Version ''Discrete Sampling Geometry'' '''trajectoryProfile'''=
 
Zur Ablage von Daten auf einem oder mehreren Profilen wird die in CF beschriebene ''Discrete Sampling Geometry'' mit '''featureType=trajectoryProfile''' verwendet. Ein Beispiel (NCDUMP) für Geometrie und Daten ist in  [[Medium:P_synop_ncdump_2D.pdf|P_synop_ncdump_2D.pdf]] zu sehen.
 
Kurze Aufzählung und Beschreibung der darin enthaltenen wichtigsten Variablen für Profile:
* '''Mesh0_node_x'''(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): x-Koordinate;
* '''Mesh0_node_y'''(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): y-Koordinate;
* '''Mesh0_node_lon'''(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): geografische Länge;
* '''Mesh0_node_lat'''(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): geografische Breite;
* '''Mesh0_trajectory_node_distance'''(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): Profilmeter;
* '''Mesh0_trajectory_long_name'''(nMesh0_trajectory,nMesh0_strlen1): Langbezeichnung;
* '''Mesh0_trajectory_code_name'''(nMesh0_trajectory,nMesh0_strlen2): [[Kennung]];
* '''Mesh0_trajectory_short_name'''(nMesh0_trajectory,nMesh0_strlen3): Kürzel;
* '''Mesh0_trajectory_id'''(nMesh0_trajectory): Identifikationsnummer, z. B. mit ''cf_role'' passend zum ''featureType'';
* '''Mesh0_crs''': skalare Container-Variable mit Informationen (Inhalt der Attribute) zur Koordinatentransformation (Zusammenhang zwischen lokalen Koordinaten und geografischen Koordinaten).
 
Anmerkungen:
# Alle zwei-dimensionalen Koordinatenvariablen können ungültige Werte (''_FillValue'') enthalten. Dies ist immer dann der Fall, falls einzelne Profile (1 bis ''nMesh0_trajectory'') unterschiedlich viele Profilpositionen (1 bis ''nMaxMesh0_trajectory_nodes'') enthalten.
# Variable '''Mesh0_trajectory_node_distance''' kann als Hilfs-Koordinatenvariable in geophysikalischen Variablen verwendet werden. Erleichtert z. B. die Darstellung einer Variable in Abhängigkeit von der Koordinate Profilmeter.
 
=Version [[DATACONVERT]]=
 
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=
==Dimensionen==
==Dimensionen==
 
   
: dimensions:  
# '''nMesh1_node''' : Anzahl der Profilknoten.
:: nMesh1_node = ''number of nodes'' ;
# '''nMesh1_edge''' : Anzahl der Profilkanten.
:: nMesh1_edge = ''number of edges'' ;
# '''nMesh1_prof''' : Anzahl der Profile (Längs- und Querprofile).
:: nMesh1_prof = ''number of profiles'' ;
# '''nMaxMesh1_prof_edges''' : maximale Anzahl der Kanten in einem Profil.
:: nMaxMesh1_prof_edges = ''maximum number of edges along a profile'' ;
# '''nMaxMesh1_prof_nodes''' : maximale Anzahl der Knoten auf einem Profil.
:: Two = 2 ; \\ constant dimension
# '''Two''' : konstante Dimension ( = 2 ).


==Lokale Koordinaten==
==Lokale Koordinaten==


===Knoten===
===Knoten===
:: double Mesh1_node_x(nMesh1_node) ;  
double Mesh1_node_x(nMesh1_node) ;
::: Mesh1_node_x:standard_name = "'''projection_x_coordinate'''" ;  
: Mesh1_node_x:long_name = "x-Koordinate der Profilpunkte" ;
::: Mesh1_node_x:long_name = "x-coordinate of 1D network node" ;  
: Mesh1_node_x:units = "m" ;
::: Mesh1_node_x:units = "m" ;
: Mesh1_node_x:name_id = 1650 ;
:: double Mesh1_node_y(nMesh1_node) ;  
: Mesh1_node_x:standard_name = "projection_x_coordinate" ;
::: Mesh1_node_y:standard_name = "'''projection_y_coordinate'''" ;  
double Mesh1_node_y(nMesh1_node) ;
::: Mesh1_node_y:long_name = "y-coordinate of 1D network node" ;  
: Mesh1_node_y:long_name = "y-Koordinate der Profilpunkte" ;
::: Mesh1_node_y:units = "m" ;
: 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===
===Kanten===
:: double Mesh1_edge_x(nMesh1_edge) ;  
double Mesh1_edge_x(nMesh1_edge) ;
::: Mesh1_edge_x:standard_name = "'''projection_x_coordinate'''" ;  
: Mesh1_edge_x:long_name = "x-Koordinate der Profilkanten, Kantenmitte" ;
::: Mesh1_edge_x:long_name = "x-coordinate of 1D network edge, e.g. center of egde" ;  
: Mesh1_edge_x:units = "m" ;
::: Mesh1_edge_x:units = "m" ;
: Mesh1_edge_x:name_id = 1650 ;
:: double Mesh1_edge_y(nMesh0_edge) ;  
: Mesh1_edge_x:bounds = "Mesh1_edge_x_bnd" ;
::: Mesh1_edge_y:standard_name = "'''projection_y_coordinate'''" ;  
: Mesh1_edge_x:standard_name = "projection_x_coordinate" ;
::: Mesh1_edge_y:long_name = "y-coordinate of 1D network edge, e.g. center of edge" ;  
double Mesh1_edge_y(nMesh1_edge) ;
::: Mesh1_edge_y:units = "m" ;
: 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===
===(optional) Begrenzung für Kanten===
:: double Mesh1_edge_x_bnd(nMesh1_edge,Two) ; \\ no metadata required
double Mesh1_edge_x_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
:: double Mesh1_edge_y_bnd(nMesh1_edge,Two) ; \\ no metadata required
 
double Mesh1_edge_y_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich


==Geografische Koordinaten==
==Geografische Koordinaten===


===Knoten===
===Knoten===
:: double Mesh1_node_lon(nMesh1_node) ;  
double Mesh1_node_lon(nMesh1_node) ;
::: Mesh1_node_lon:standard_name = "'''longitude'''" ;  
: Mesh1_node_lon:long_name = "geografische Laenge der Profilpunkte" ;
::: Mesh1_node_lon:long_name = "longitude of 1D network node" ;  
: Mesh1_node_lon:units = "degrees_east" ;
::: Mesh1_node_lon:units = "degrees_east" ;    
: Mesh1_node_lon:name_id = 1653 ;
:: double Mesh1_node_lat(nMesh1_node) ;
: Mesh1_node_lon:standard_name = "longitude" ;
::: Mesh1_node_lat:standard_name = "'''latitude'''" ;  
double Mesh1_node_lat(nMesh1_node) ;
::: Mesh1_node_lat:long_name = "latitude of 1D network node" ;  
: Mesh1_node_lat:long_name = "geografische Breite der Profilpunkte" ;
::: Mesh1_node_lat:units = "degrees_north" ;
: 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===
===Kanten===
:: double Mesh1_edge_lon(nMesh1_edge) ;  
double Mesh1_edge_lon(nMesh1_edge) ;
::: Mesh1_edge_lon:standard_name = "'''longitude'''" ;  
: Mesh1_edge_lon:long_name = "geografische Laenge der Profilkanten, Kantenmitte" ;
::: Mesh1_edge_lon:long_name = "longitude of 1D network edge, e.g. center of edge" ;  
: Mesh1_edge_lon:units = "degrees_east" ;
::: Mesh1_edge_lon:units = "degrees_east" ;    
: Mesh1_edge_lon:name_id = 1653 ;
:: double Mesh1_edge_lat(nMesh1_edge) ;
: Mesh1_edge_lon:bounds = "Mesh1_edge_lon_bnd" ;
::: Mesh1_edge_lat:standard_name = "'''latitude'''" ;  
: Mesh1_edge_lon:standard_name = "longitude" ;
::: Mesh1_edge_lat:long_name = "latitude of 1D network edge, e.g. center of edge" ;  
double Mesh1_edge_lat(nMesh1_edge) ;
::: Mesh1_edge_lat:units = "degrees_north" ;
: 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===
===(optional) Begrenzung für Kanten===
:: double Mesh1_edge_lon_bnd(nMesh1_edge,Two) ; \\ no metadata required
double Mesh1_edge_lon_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich
:: double Mesh1_edge_lat_bnd(nMesh1_edge,Two) ; \\ no metadata required
 
double Mesh1_edge_lat_bnd(nMesh1_edge,Two) ; \\ keine weiteren Metadaten erforderlich


==Topologische Daten==
==Topologische Daten==


===Knotenverzeichnis der Kanten===
===Knotenverzeichnis der Kanten===
:: integer Mesh1_edge_nodes(nMesh1_edge,Two) ;
int Mesh1_edge_nodes(nMesh1_edge, two) ;
::: Mesh1_edge_nodes:standard_name = "'''???'''" ; \\ yet to be determined
: Mesh1_edge_nodes:long_name = "Knotenverzeichnis der Profilkanten, Anfangs- und Endpunkt" ;
::: Mesh1_edge_nodes:long_name = "list of nodes for all edges, start node - end node" ;
: Mesh1_edge_nodes:cf_role = "edge_node_connectivity" ;
:: ''Bemerkung: Indizes starten mit Null!''
: 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===
===Kantenverzeichnis der Profile===
:: integer Mesh1_prof_edges(nMesh1_prof,nMaxMesh1_prof_edges) ;
int Mesh1_prof_edges(nMesh1_prof, nMaxMesh1_prof_edges) ;
::: Mesh1_prof_edges:standard_name = "'''???'''" ; \\ yet to be determined
: Mesh1_prof_edges:long_name = "Kantenverzeichnis der Profile, vom Anfang zum Ende sortiert" ;
::: Mesh1_prof_edges:long_name = "list of edges for all profiles" ;
: Mesh1_prof_edges:cf_role = "<font color=darkorange>prof_edge_connectivity</font>" ;
::: Mesh1_prof_edges:_FillValue = ''fillvalue'' ; \\ indicates missing edges
: Mesh1_prof_edges:_FillValue = -999 ;
:: ''Bemerkung: Indizes starten mit Null!''
: Mesh1_prof_edges: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.
::# Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen.
# Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen.
::# Bei stark unterschiedlichen Profillängen ggf. [[NetCDF Kompression von Daten durch Aufsammeln]] nutzen.
# 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 = "<font color=darkorange>prof_node_connectivity</font>" ;
: 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==
==Topologievariable==


:: integer Mesh1 ;
int Mesh1 ;
::: Mesh1:standard_name = "'''???'''" ; \\ yet to be determined
: Mesh1:long_name = "Profil-Gitternetz, kein SubGrid" ;
::: Mesh1:long_name = "name of (profile) grid can be stored here" ;
: Mesh1:topology_dimension = 1 ;
::: Mesh1:dimensionality = 1 ; \\ network
: Mesh1:cf_role = "mesh_topology" ;
::: Mesh1:locations = "node edge <font color=darkorange>prof</font>" ; \\ profile is an additional location
: Mesh1:node_coordinates = "Mesh1_node_x Mesh1_node_y Mesh1_node_lon Mesh1_node_lat" ;
::: Mesh1:node_coordinates = "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_lon Mesh1_node_lat" ;
: Mesh1:<font color=darkorange>prof_coordinates</font> = "Mesh1_prof_long_name" ;
::: Mesh1:<font color=darkorange>prof</font>_coordinates = "" ; \\ should be available for optional use only
: Mesh1:<font color=darkorange>prof_node_connectivity</font> = "Mesh1_prof_nodes" ;
::: Mesh1:edge_node_connectivity = "Mesh1_edge_nodes" ;
: Mesh1:<font color=darkorange>prof_edge_connectivity</font> = "Mesh1_prof_edges" ;
::: Mesh1:<font color=darkorange>prof_edge_connectivity</font> = "Mesh1_prof_edges" ;
: Mesh1:edge_node_connectivity = "Mesh1_edge_nodes" ;
:: ''Hinweise'':
::# 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.
::# Profil ''<font color=darkorange>prof</font>'' als zusätzliche Lokation erforderlich, um die Konnektivitätsliste für die verschiedenen Profile in der bestehenden Systematik für die Namensgebung der Attribute ausdrücken zu können.
::# ''<font color=darkorange>prof</font>_coordinates'' wird in vielen Fällen leer bleiben.


==Koordinatentransformation==
==Koordinatentransformation==
Zeile 103: Zeile 166:
Siehe unter [[NetCDF Grid Mapping Variable]].
Siehe unter [[NetCDF Grid Mapping Variable]].


=Anmerkungen, Fragen=
* Datei nutzt [http://public.deltares.nl/display/NETCDF/netCDF Deltares-CF-Erweiterungen] sowie ''<font color=darkorange>orange</font>'' markierte Abweichungen in der Topologievariablen.
----
----
zurück zu [[NetCDF]]
zurück zu [[NetCDF]]
----
----
[[Strukturübersicht]]
[[Strukturübersicht]]

Aktuelle Version vom 21. Oktober 2022, 09:04 Uhr

Kurze Beschreibung

Es wird die Lage mehrerer (Längs- und Quer-) Profile beschrieben.

Version Discrete Sampling Geometry trajectoryProfile

Zur Ablage von Daten auf einem oder mehreren Profilen wird die in CF beschriebene Discrete Sampling Geometry mit featureType=trajectoryProfile verwendet. Ein Beispiel (NCDUMP) für Geometrie und Daten ist in P_synop_ncdump_2D.pdf zu sehen.

Kurze Aufzählung und Beschreibung der darin enthaltenen wichtigsten Variablen für Profile:

  • Mesh0_node_x(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): x-Koordinate;
  • Mesh0_node_y(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): y-Koordinate;
  • Mesh0_node_lon(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): geografische Länge;
  • Mesh0_node_lat(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): geografische Breite;
  • Mesh0_trajectory_node_distance(nMesh0_trajectory,nMaxMesh0_trajectory_nodes): Profilmeter;
  • Mesh0_trajectory_long_name(nMesh0_trajectory,nMesh0_strlen1): Langbezeichnung;
  • Mesh0_trajectory_code_name(nMesh0_trajectory,nMesh0_strlen2): Kennung;
  • Mesh0_trajectory_short_name(nMesh0_trajectory,nMesh0_strlen3): Kürzel;
  • Mesh0_trajectory_id(nMesh0_trajectory): Identifikationsnummer, z. B. mit cf_role passend zum featureType;
  • Mesh0_crs: skalare Container-Variable mit Informationen (Inhalt der Attribute) zur Koordinatentransformation (Zusammenhang zwischen lokalen Koordinaten und geografischen Koordinaten).

Anmerkungen:

  1. Alle zwei-dimensionalen Koordinatenvariablen können ungültige Werte (_FillValue) enthalten. Dies ist immer dann der Fall, falls einzelne Profile (1 bis nMesh0_trajectory) unterschiedlich viele Profilpositionen (1 bis nMaxMesh0_trajectory_nodes) enthalten.
  2. Variable Mesh0_trajectory_node_distance kann als Hilfs-Koordinatenvariable in geophysikalischen Variablen verwendet werden. Erleichtert z. B. die Darstellung einer Variable in Abhängigkeit von der Koordinate Profilmeter.

Version DATACONVERT

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.

Dimensionen

  1. nMesh1_node : Anzahl der Profilknoten.
  2. nMesh1_edge : Anzahl der Profilkanten.
  3. nMesh1_prof : Anzahl der Profile (Längs- und Querprofile).
  4. nMaxMesh1_prof_edges : maximale Anzahl der Kanten in einem Profil.
  5. nMaxMesh1_prof_nodes : maximale Anzahl der Knoten auf einem Profil.
  6. 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:

  1. 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:

  1. 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:

  1. 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:

  1. 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:

  1. 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:

  1. Steht als label coordinate variable für den Zugriff auf die einzelnen Profile zur Verfügung.
  2. 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:

  1. Kann dazu genutzt werden, mehrere zusammenhängende Profile, z. B. Längs- und Querprofile, zu deklarieren.
  2. Einzelne Kanten dürfen mehrfach in (verschiedenen) Listen auftauchen.
  3. 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:

  1. 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


Strukturübersicht