Aktionen

NetCDF Synoptische Daten an Einzelpositionen: Unterschied zwischen den Versionen

Aus BAWiki

imported>Lang Guenther
Keine Bearbeitungszusammenfassung
(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>).)
 
(267 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
=Kurze Beschreibung=
=Kurze Beschreibung=


Synoptische Daten an Einzelpositionen.
Synoptische Daten an Einzelpositionen. Es werden einige Beispiele für typische, wichtige Variablen vorgestellt.


=Inhalt der Datei=
=Weitere Beschreibungen=
==An anderer Stelle beschriebene Inhalte==
 
* [[NetCDF Einzelpositionen]]: Koordinaten und Namensbezeichnungen sowie Koordinatentransformation;
* [[NetCDF Einzelpositionen]]: Koordinaten und Koordinatentransformation für Einzelpositionen.
* [[NetCDF Zeitkoordinate]]: Koordinatenvariable ''time'';
* [[NetCDF Zeitkoordinate]]: Koordinatenvariable ''time''.
* [[NetCDF Vertikalkoordinate]]: Vertikalkoordinate ''depth'' oder ''height''.
* [[NetCDF Vertikalkoordinate]]: zeit- und ortsvariable Vertikalkoordinate.
 
=Version ''Discrete Sampling Geometry'' '''timeSeriesProfile'''=
 
Zur Ablage von Daten an Einzelpositionen wird die in CF beschriebene ''Discrete Sampling Geometry'' mit '''featureType=timeSeriesProfile''' verwendet. Ein vereinfachtes Beispiel (NCDUMP) für Geometrie und synoptische Daten ist in [[Medium:L_synop_ncdump_2D.pdf|L_synop_ncdump_2D.pdf]] zu sehen.
 
 
==Daten ohne z-Abhängigkeit==
 
Die Lage des Wasserspiegels ist nur von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist nicht vorhanden. Daher dient der [[Wasserstand]] als Beispiel für eine geophysikalische Variable ohne z-Abhängigkeit.
 
float '''Mesh0_node_[[Wasserstand]]_2d'''(nMesh0_data_time, nMesh0_node) ;
: :long_name = "[[Wasserstand]] [ node ]" ;
: :units = "m" ;
: :name_id = 3 ;
: :_FillValue = 1.e+31f ;
: :ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
: :cell_measures = "area: Mesh0_node_Wasserflaeche_2d" ;
: :cell_methods = "nMesh0_data_time: point nMesh0_node: mean" ;
: :comment = "ancillary variables may be used ..." ;
: :coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_long_name" ;
: :grid_mapping = "Mesh0_crs" ;
: :standard_name = "sea_surface_height" ;
 
Anmerkungen:
# Es können ungültige Daten vorhanden sein (siehe ''_FillValue'').
# Die Hilfsvariable (siehe ''ancillary_variables'') '''Mesh0_node_Gesamtwassertiefe_2d''' kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
# Der [[Wasserstand]] ist ein (synoptischer) Augenblickswert und ein Flächen-Mittelwert (siehe ''cell_methods'').
# In der Variable '''Mesh0_node_Wasserflaeche_2d''' ist die für den räumlichen Mittelwert relevante Fläche enthalten.
# Die Label-Koordinatenvariable '''Mesh0_node_long_name''' kann zur Auswahl von Position(en) verwendet werden (siehe ''coordinates'').
 
==Daten mit z-Abhängigkeit==
 
Der über die [[Wassertiefe]] gemittelte Salzgehalt ist von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist hier vorhanden, da in unserem Fall die z-Koordinate den Schwerpunkt (des Wasserkörpers) beschreibt. Daher dient der Salzgehalt als Beispiel für eine geophysikalische Variable mit z-Abhängigkeit.
 
float Mesh0_node_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;
: :long_name = "Salzgehalt [ node ]" ;
: :units = "1e-3" ;
: :name_id = 5 ;
: :_FillValue = 1.e+31f ;
: :ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
: :cell_measures = "volume: Mesh0_node_Wasservolumen_2d area: Mesh0_node_Wasserflaeche_2d" ;
: :cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean nMesh0_node: mean" ;
: :comment = "ancillary variables may be used ..." ;
: :coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_z_node_2d Mesh0_node_long_name" ;
: :grid_mapping = "Mesh0_crs" ;
: :standard_name = "sea_water_salinity" ;
 
 
Anmerkungen:
# Es können ungültige Daten vorhanden sein (siehe ''_FillValue'').
# Die Hilfsvariable (siehe ''ancillary_variables'') '''Mesh0_node_Gesamtwassertiefe_2d''' kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
# Der Salzgehalt ist ein (synoptischer) Augenblickswert und ein Volumen-Mittelwert (siehe ''cell_methods'').
# In der Variable '''Mesh0_node_Wasservolumen_2d''' ist das für den Volumen-Mittelwert relevante Volumen enthalten.
# Mit zusätzlicher Hilfe von '''Mesh0_node_Wasserflaeche_2d''' kann in exakter Weise das Salzvolumen/Fläche ermittelt werden.
# Die Label-Koordinatenvariable '''Mesh0_node_long_name''' kann zur Auswahl von Position(en) verwendet werden (siehe ''coordinates'').
 
==Daten für mehrere Fraktionen==
 
Der über die [[Wassertiefe]] gemittelte Sschwebstoffgehalt ist von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist hier vorhanden, da in unserem Fall die z-Koordinate den Schwerpunkt des Wasserkörpers beschreibt. Zusätzlich kann der [[Schwebstoffgehalt]] für mehrere Schwebstoff-Fraktionen ''nMesh0_suspension_classes'' vorhanden sein. Daher dient der [[Schwebstoffgehalt]] als Beispiel für eine geophysikalische Variable mit mehreren Fraktionen.
 
float Mesh0_node_[[Schwebstoffgehalt]]_2d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_2d, nMesh0_node) ;
: :long_name = "[[Schwebstoffgehalt]] [ node ]" ;
: :units = "kg m-3" ;
: :name_id = 7 ;
: :_FillValue = 1.e+31f ;
: :ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
: :cell_measures = "volume: Mesh0_node_Wasservolumen_2d area: Mesh0_node_Wasserflaeche_2d" ;
: :cell_methods = "nMesh0_data_time: point nMesh0_suspension_classes: point nMesh0_layer_2d: mean nMesh0_node: mean" ;
: :comment = "ancillary variables may be used ..." ;
: :coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_z_node_2d Mesh0_node_long_name Mesh0_Schwebstoffklassen_2d" ;
: :grid_mapping = "Mesh0_crs" ;
: :standard_name = "concentration_of_suspended_matter_in_sea_water" ;
 
Anmerkungen:
# Es können ungültige Daten vorhanden sein (siehe ''_FillValue'').
# Die Hilfsvariable (siehe ''ancillary_variables'') '''Mesh0_node_Gesamtwassertiefe_2d''' kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
# Der [[Schwebstoffgehalt]] ist für jede Fraktion ein (synoptischer) Augenblickswert und ein Volumen-Mittelwert (siehe ''cell_methods'').
# In der Variable '''Mesh0_node_Wasservolumen_2d''' ist das für den Volumen-Mittelwert relevante Volumen enthalten.
# Mit zusätzlicher Hilfe von '''Mesh0_node_Wasserflaeche_2d''' kann in exakter Weise die Schwebstoffmasse/Fläche ermittelt werden.
# Die Label-Koordinatenvariable '''Mesh0_node_long_name''' kann zur Auswahl von Position(en) verwendet werden (siehe ''coordinates'').
# Die Label-Koordinatenvariable '''Mesh0_Schwebstoffklassen_2d''' kann zur Auswahl von Fraktionen verwendet werden (siehe ''coordinates'').
 
=Version [[DATACONVERT]]=


==Dimensionen==
==Dimensionen==


: dimensions:  
# '''nMesh0_node''' : Anzahl der Einzelpositionen.
:: node = ''number of locations'' ;
# '''nMesh0_strlen1''' : max. Anzahl der Zeichen für lange Namen.
:: time = ''number of time steps'' oder ''UNLIMITED'' ;
# '''nMesh0_strl'''en2 : max. Anzahl der Zeichen für Code-Bezeichnungen.
:: height = ''number of layers'' ;
# '''nMesh0_strlen3''' : max. Anzahl der Zeichen für Kurzbezeichnungen.
:: vedge = ''number of layer data" ; \\ active points for one-dimensional data array
# '''nMesh0_class_names_strlen''' : max. Anzahl der Zeichen in Schwebstoffklassennamen.
:: suspension_classes = ''number of suspended sediment classes'' ;
# '''nMesh0_time''' : Anzahl der Zeitpunkte (Gitterdatei).
:: strlen1 = ''maximum number of characters used in long names'' ;
# '''nMesh0_data_time''' : UNLIMITED-Dimension, Anzahl der synoptischen Datensätze.
:: strlen2 = ''maximum number of characters used in code names'' ;
# '''nMesh0_layer_2d''' : Anzahl der Schichten für tiefengemittelte Daten.
:: strlen3 = ''maximum number of characters used in short names'' ;
# '''nMesh0_layer_3d''' : Anzahl der Schichten für tiefenstrukturierte Daten.
# '''nMesh0_suspension_classes''' : Anzahl der Schwebstoffklassen, inklusive Summe aller Fraktionen.
# '''two''' : Konstante.


==Positionsbezeichnungen==
==Positionsbezeichnungen==


:: char node_long_name(node,strlen1) ;
===Langer Name===
::: node_long_name:long_name = "long name of location"
char Mesh0_node_long_name(nMesh0_node, nMesh0_strlen1) ;
::: node_long_name:coordinates = "node_lon node_lat"
: Mesh0_node_long_name:long_name = "Name Geoposition" ;
::: node_long_name:grid_mapping = "crs"
: Mesh0_node_long_name:name_id = 1395 ;
::char node_code_name(node,strlen2) ;
 
::: node_code_name:long_name = "code name of location"
Hinweise:
::: node_code_name:coordinates = "node_long_name node_lon node_lat"
# Variable wird als Label-Koordinate benutzt, daher werden die Attribute "coordinates" und "grid_mapping" hier nicht benutzt.
::: node_code_name:grid_mapping = "crs"
# Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-[[Kennung]] der Variablen.
:: char node_short_name(node,strlen3) ;
 
::: node_short_name:long_name = "short name of location"
===Code-Name===
::: node_short_name:coordinates = "node_long_name node_lon node_lat"
char Mesh0_node_code_name(nMesh0_node, nMesh0_strlen2) ;
::: node_short_name:grid_mapping = "crs"
: Mesh0_node_code_name:long_name = "[[Kennung]] der Geoposition" ;
: Mesh0_node_code_name:name_id = 1394 ;
: Mesh0_node_code_name:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_code_name:grid_mapping = "Mesh0_crs" ;
 
===Kurzer Name===
char Mesh0_node_short_name(nMesh0_node, nMesh0_strlen3) ;
: Mesh0_node_short_name:long_name = "Kuerzel Geoposition" ;
: Mesh0_node_short_name:name_id = 1396 ;
: Mesh0_node_short_name:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_short_name:grid_mapping = "Mesh0_crs" ;
 
==Positions-Farbcodes==
int Mesh0_node_colour(nMesh0_node) ;
: Mesh0_node_colour:long_name = "colour code of location" ;
: Mesh0_node_colour:valid_range = 0, 9999 ;
: Mesh0_node_colour:_FillValue = -999 ;
: Mesh0_node_colour:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_colour:grid_mapping = "Mesh0_crs" ;
 
Hinweise:
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.
 
==Positions-Identifikationsnummern==
int Mesh0_node_id(nMesh0_node) ;
: Mesh0_node_id:long_name = "identification number of location" ;
: Mesh0_node_id:valid_range = 0, 9999 ;
: Mesh0_node_id:_FillValue = -999 ;
: Mesh0_node_id:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_id:grid_mapping = "Mesh0_crs" ;
 
Hinweise:
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.


==Datenkompression==
==Datenkompression==
Siehe [[NetCDF Kompression von Daten durch Aufsammeln]].


==Gewichte==
==Gewichte==
Gewichte werden insbesondere im Postprocessing benötigt, um abgeleitete Daten korrekt berechnen zu können, falls die hierfür relevanten Gewichtsfaktoren, nicht in einfacher Weise aus den Koordinaten abgeleitet werden können.
===Längen===
====Durchflusshöhe an Positionen====
float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ;
Hinweise:
# Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt).
====Durchflusshöhe an Positionen, differenziert nach Schichten====
float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ;
Hinweise:
# Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt).
==Zeitkoordinaten==
===Gitter-Daten===
double nMesh0_time(nMesh0_time) ;
: nMesh0_time:long_name = "time" ;
: nMesh0_time:units = "seconds since 2005-07-01 00:00:00 01:00" ;
: nMesh0_time:name_id = 1640 ;
: nMesh0_time:axis = "T" ;
: nMesh0_time:bounds = "nMesh0_time_bnd" ;
: nMesh0_time:calendar = "gregorian" ;
: nMesh0_time:standard_name = "time" ;
double nMesh0_time_bnd(nMesh0_time, two) ;
Hinweise:
# Die Topografie des Gitters (der ursprünglichen Gitterdatei) gilt entweder für einen bestimmten Termin oder Zeitraum.
# Falls die topografischen Daten des Gitters für einen Zeitraum gültig sind, so ist die entsprechende Boundary-Variable ebenfalls vorhanden.
===Synoptische Daten===
double nMesh0_data_time(nMesh0_data_time) ;
: nMesh0_data_time:long_name = "time" ;
: nMesh0_data_time:units = "seconds since 2005-05-01 01:30:00 01:00" ;
: nMesh0_data_time:name_id = 1640 ;
: nMesh0_data_time:axis = "T" ;
: nMesh0_data_time:calendar = "gregorian" ;
: nMesh0_data_time:standard_name = "time" ;
Hinweise:
# Die synoptischen Daten gelten für bestimmte Termine. Daher ist keine ergänzende Boundary-Variable erforderlich.
==Vertikalkoordinaten==
===Tiefengemittelte Daten===
float Mesh0_node_z_2d(nMesh0_data_time, nMesh0_node) ;
: Mesh0_node_z_2d:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ;
: Mesh0_node_z_2d:units = "m" ;
: Mesh0_node_z_2d:positive = "down" ;
: Mesh0_node_z_2d:bounds = "Mesh0_node_z_2d_bnd" ;
: Mesh0_node_z_2d:standard_name = "depth" ;
float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ;
Hinweise:
# Über die [[Wassertiefe]] gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate.
# Der aktuelle Wert bezeichnet die Mitte zwischen aktueller Wasseroberfläche und [[Gewässersohle]].
# Aus der Boundary-Variablen ergibt sich die Höhe (Länge), über die gemittelt wurde.
# Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.
===Tiefenstrukturierte Daten===
float Mesh0_node_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
: Mesh0_node_z_3d:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ;
: Mesh0_node_z_3d:units = "m" ;
: Mesh0_node_z_3d:positive = "down" ;
: Mesh0_node_z_3d:bounds = "Mesh0_node_z_3d_bnd" ;
: Mesh0_node_z_3d:standard_name = "depth" ;
: float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ;
Hinweise:
# Tiefenstrukturierte, in z-Schichten gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate.
# Der aktuelle Wert bezeichnet die Mitte der jeweiligen z-Schicht.
# Aus der Boundary-Variablen ergibt sich die Höhe (Länge), über die gemittelt wurde.
# Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.


==Aktuelle (zeitvariable) Topografie==
==Aktuelle (zeitvariable) Topografie==
===Knoten===
====Konstant in Zeitraum====
double Mesh0_node_depth(nMesh0_time, nMesh0_node) ;
: Mesh0_node_depth:long_name = "Topographie" ;
: Mesh0_node_depth:units = "m" ;
: Mesh0_node_depth:name_id = 17 ;
: Mesh0_node_depth:valid_range = -2000., 2000. ;
: Mesh0_node_depth:_FillValue = 1.e+31 ;
: Mesh0_node_depth:cell_methods = "nMesh0_time: mean area: point" ;
: Mesh0_node_depth:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_depth:grid_mapping = "Mesh0_crs" ;
: Mesh0_node_depth:standard_name = "sea_floor_depth_below_geoid" ;
Hinweise:
# Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind.
====Zeitvariabel====
float Mesh0_zeitvariable_Topographie_2d(nMesh0_data_time, nMesh0_node) ;
: Mesh0_zeitvariable_Topographie_2d:long_name = "zeitvariable Topographie" ;
: Mesh0_zeitvariable_Topographie_2d:units = "m" ;
: Mesh0_zeitvariable_Topographie_2d:name_id = 617 ;
: Mesh0_zeitvariable_Topographie_2d:_FillValue = 1.e+31f ;
: Mesh0_zeitvariable_Topographie_2d:cell_methods = "nMesh0_data_time: point area: point" ;
: Mesh0_zeitvariable_Topographie_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_zeitvariable_Topographie_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_zeitvariable_Topographie_2d:standard_name = "sea_floor_depth_below_geoid" ;


==Maximale zulässige Tiefe==
==Maximale zulässige Tiefe==
double Mesh0_node_depth(nMesh0_time, nMesh0_node) ;
: Mesh0_node_depth:long_name = "Tiefe der unerodierbaren Schicht" ;
: Mesh0_node_depth:units = "m" ;
: Mesh0_node_depth:name_id = 1149 ;
: Mesh0_node_depth:valid_range = -2000., 2000. ;
: Mesh0_node_depth:_FillValue = 1.e+31 ;
: Mesh0_node_depth:cell_methods = "nMesh0_time: mean area: point" ;
: Mesh0_node_depth:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
: Mesh0_node_depth:grid_mapping = "Mesh0_crs" ;
: Mesh0_node_depth:standard_name = "depth" ;
Hinweise:
# Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind.
# Ggf. muss noch ein spezifischerer Standardname gefunden werden, z. B. "bedrock_altitude".


==Wasserstand==
==Wasserstand==


:: double node_water_level(time,node) ;
===Knoten===
::: node_water_level:standard_name = "'''sea_surface_height_above_geoid'''" ;   
float Mesh0_[[Wasserstand]]_2d(nMesh0_data_time, nMesh0_node) ;
::: node_water_level:long_name = "water level" ;  
: Mesh0_[[Wasserstand]]_2d:long_name = "[[Wasserstand]]" ;
::: node_water_level:units = "m" ;
: Mesh0_[[Wasserstand]]_2d:units = "m" ;
::: node_water_level:coordinates = "node_long_name node_lon node_lat"
: Mesh0_[[Wasserstand]]_2d:name_id = 3 ;
::: node_water_level:_FillValue = "''fillvalue''"
: Mesh0_[[Wasserstand]]_2d:_FillValue = 1.e+31f ;
::: node_water_level:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_[[Wasserstand]]_2d:cell_methods = "nMesh0_data_time: point area: point" ;
::: node_water_level:grid_mapping = "crs"
: Mesh0_[[Wasserstand]]_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
 
: Mesh0_[[Wasserstand]]_2d:grid_mapping = "Mesh0_crs" ;
==Zeitvariable Topografie==
: Mesh0_[[Wasserstand]]_2d:standard_name = "sea_surface_height" ;
 
:: double node_water_level(time,node) ;
::: node_depth:standard_name = "'''sea_floor_depth_below_geoid'''" ;  
::: node_depth:long_name = "sea floor depth" ;  
::: node_depth:units = "m" ;
::: node_depth:coordinates = "node_long_name node_lon node_lat"
::: node_depth:_FillValue = "''fillvalue''"
::: node_depth:valid_range = "''valid minimum'', ''valid maximum''"
::: node_depth:grid_mapping = "crs"


==Gesamtwassertiefe==
==Tiefengemittelter Salzgehalt==


:: double node_water_depth(time,node) ;
===Knoten===
::: node_water_depth:standard_name = "'''sea_floor_depth_below_sea_surface'''" ;  
float Mesh0_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;
::: node_water_depth:long_name = "total water depth" ;  
: Mesh0_Salzgehalt_2d:long_name = "Salzgehalt" ;
::: node_water_depth:units = "m" ;
: Mesh0_Salzgehalt_2d:units = "1e-3" ;
::: node_water_depth:coordinates = "node_long_name node_lon node_lat"
: Mesh0_Salzgehalt_2d:name_id = 5 ;
::: node_water_depth:_FillValue = "''fillvalue''"
: Mesh0_Salzgehalt_2d:_FillValue = 1.e+31f ;
::: node_water_depth:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_Salzgehalt_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
::: node_water_depth:grid_mapping = "crs"
: Mesh0_Salzgehalt_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
: Mesh0_Salzgehalt_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Salzgehalt_2d:standard_name = "sea_water_salinity" ;


==Tiefenstrukturierter Salzgehalt==
==Tiefenstrukturierter Salzgehalt==


:: double node_salinity(time,vedge) ;
===Knoten===
::: node_salinity:standard_name = "'''sea_water_salinity'''" ;  
float Mesh0_Salzgehalt_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
::: node_salinity:long_name = "salinity" ;  
: Mesh0_Salzgehalt_3d:long_name = "Salzgehalt" ;
::: node_salinity:units = "0.001" ;
: Mesh0_Salzgehalt_3d:units = "1e-3" ;
::: node_salinity:coordinates = "node_long_name node_lon node_lat"
: Mesh0_Salzgehalt_3d:name_id = 5 ;
::: node_salinity:_FillValue = "''fillvalue''"
: Mesh0_Salzgehalt_3d:_FillValue = 1.e+31f ;
::: node_salinity:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_Salzgehalt_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
::: node_salinity:cell_methods = "height: mean"
: Mesh0_Salzgehalt_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
::: node_salinity:grid_mapping = "crs"
: Mesh0_Salzgehalt_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Salzgehalt_3d:standard_name = "sea_water_salinity" ;


==Strömungsgeschwindigkeit, x-Komponente==
==Tiefengemittelte Strömungsgeschwindigkeit==


:: double node_velocity_x(time,vedge) ;
===Knoten===
::: node_velocity_x:standard_name = "'''sea_water_x_velocity'''" ; \\ or better '''eastward_sea_water_velocity'''
====x-Komponente====
::: node_velocity_x:long_name = "current velocity in x-direction" ;  
float Mesh0_Stroemungsgeschwindigkeit_x_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;
::: node_velocity_x:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_x_2d:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ;
::: node_velocity_x:coordinates = "node_long_name node_lon node_lat"
: Mesh0_Stroemungsgeschwindigkeit_x_2d:units = "m s-1" ;
::: node_velocity_x:_FillValue = "''fillvalue''"
: Mesh0_Stroemungsgeschwindigkeit_x_2d:name_id = 2 ;
::: node_velocity_x:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_Stroemungsgeschwindigkeit_x_2d:_FillValue = 1.e+31f ;
::: node_velocity_x:cell_methods = "height: mean"
: Mesh0_Stroemungsgeschwindigkeit_x_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
::: node_velocity_x:grid_mapping = "crs"
: Mesh0_Stroemungsgeschwindigkeit_x_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_x_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_x_2d:standard_name = "sea_water_x_velocity" ;


==Strömungsgeschwindigkeit, y-Komponente==
====y-Komponente====
float Mesh0_Stroemungsgeschwindigkeit_y_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:name_id = 2 ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:_FillValue = 1.e+31f ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_y_2d:standard_name = "sea_water_y_velocity" ;
====Betrag====
float Mesh0_Stroemungsgeschwindigkeit_m_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:long_name = "Stroemungsgeschwindigkeit (Betrag)" ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:name_id = 2 ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:_FillValue = 1.e+31f ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_m_2d:standard_name = "magnitude_of_sea_water_velocity" ;


:: double node_velocity_y(time,vedge) ;
==Tiefenstrukturierte Strömungsgeschwindigkeit==
::: node_velocity_y:standard_name = "'''sea_water_y_velocity'''" ; \\ or better '''northward_sea_water_velocity'''
::: ... ''weitere Attribute analog zur x-Komponente der Strömungsgeschwindigkeit''


==Strömungsgeschwindigkeit, z-Komponente==
===Knoten===
====x-Komponente====
float Mesh0_Stroemungsgeschwindigkeit_x_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:name_id = 2 ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:_FillValue = 1.e+31f ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_x_3d:standard_name = "sea_water_x_velocity" ;


:: double node_velocity_z(time,vedge) ;
====y-Komponente====
::: node_velocity_z:standard_name = "'''upward_sea_water_velocity'''" ;  
float Mesh0_Stroemungsgeschwindigkeit_y_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
::: ... ''weitere Attribute analog zur x-Komponente der Strömungsgeschwindigkeit''
: Mesh0_Stroemungsgeschwindigkeit_y_3d:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:name_id = 2 ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:_FillValue = 1.e+31f ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_y_3d:standard_name = "sea_water_y_velocity" ;


==Schwebstoffgehalt, Gesamtmenge==
====z-Komponente====
float Mesh0_Stroemungsgeschwindigkeit_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:long_name = "Stroemungsgeschwindigkeit (z-Komponente)" ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:units = "m s-1" ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:name_id = 2 ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:_FillValue = 1.e+31f ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_z_3d:standard_name = "upward_sea_water_velocity" ;


:: double node_suspended_matter(time,vedge) ;
====Betrag====
::: node_suspended_matter:standard_name = "'''mass_concentration_of_suspended_matter_in_sea_water'''" ;
float Mesh0_Stroemungsgeschwindigkeit_m_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;
::: node_suspended_matter:long_name = "mass concentration of suspended sediments" ;  
: Mesh0_Stroemungsgeschwindigkeit_m_3d:long_name = "Stroemungsgeschwindigkeit (Betrag)" ;
::: node_suspended_matter:units = "kg m-3" ;
: Mesh0_Stroemungsgeschwindigkeit_m_3d:units = "m s-1" ;
::: node_suspended_matter:coordinates = "node_long_name node_lon node_lat"
: Mesh0_Stroemungsgeschwindigkeit_m_3d:name_id = 2 ;
::: node_suspended_matter:_FillValue = "''fillvalue''"
: Mesh0_Stroemungsgeschwindigkeit_m_3d:_FillValue = 1.e+31f ;
::: node_suspended_matter:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_Stroemungsgeschwindigkeit_m_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
::: node_suspended_matter:cell_methods = "height: mean"
: Mesh0_Stroemungsgeschwindigkeit_m_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
::: node_suspended_matter:grid_mapping = "crs"
: Mesh0_Stroemungsgeschwindigkeit_m_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_Stroemungsgeschwindigkeit_m_3d:standard_name = "magnitude_of_sea_water_velocity" ;


==Schwebstoffgehalt, Fraktionen==
==Bezeichnung der Schwebstoffklassen==
char Mesh0_suspension_classes(nMesh0_suspension_classes, nMesh0_class_names_strlen) ;
: Mesh0_suspension_classes:long_name = "Klassenbezeichner" ;
: Mesh0_suspension_classes:name_id = 1655 ;


:: double node_suspended_matter_classes(suspension_classes,time,vedge) ;
==Tiefengemittelter Schwebstoffgehalt==
::: node_suspended_matter_classes:standard_name = "'''mass_concentration_of_suspended_matter_in_sea_water'''" ;
::: node_suspended_matter_classes:long_name = "mass concentration of suspended sediment fraction" ;   
::: node_suspended_matter_classes:units = "kg m-3" ;
::: node_suspended_matter_classes:coordinates = "node_long_name node_lon node_lat"
::: node_suspended_matter_classes:_FillValue = "''fillvalue''"
::: node_suspended_matter_classes:valid_range = "''valid minimum'', ''valid maximum''"
::: node_suspended_matter_classes:cell_methods = "height: mean"
::: node_suspended_matter_classes:grid_mapping = "crs"


===Knoten===
float Mesh0_[[Schwebstoffgehalt]]_2d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_2d, nMesh0_node) ;
: Mesh0_[[Schwebstoffgehalt]]_2d:long_name = "[[Schwebstoffgehalt]]" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:units = "kg m-3" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:name_id = 7 ;
: Mesh0_[[Schwebstoffgehalt]]_2d:_FillValue = 1.e+31f ;
: Mesh0_[[Schwebstoffgehalt]]_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name Mesh0_suspension_classes" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:grid_mapping = "Mesh0_crs" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:standard_name = "concentration_of_suspended_matter_in_sea_water" ;
: Mesh0_[[Schwebstoffgehalt]]_2d:comment = "class_names No  1 : Summe aller Fraktionen\\nclass_names No  2 : Schluff" ;


==Kompression von ''height'' und ''node''==
Hinweise:
# Sowohl die Summe aller Fraktionen als auch die einzelnen Fraktionen sind in einer Variablen abgelegt.
# Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben.


:: integer vedge(vedge) ;
==Tiefenstrukturierter Schwebstoffgehalt==
::: vedge:compress="height node"


==Bezeichnung der Schwebstoffklassen==
===Knoten===
float Mesh0_[[Schwebstoffgehalt]]_3d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_3d, nMesh0_node) ;
: Mesh0_[[Schwebstoffgehalt]]_3d:long_name = "[[Schwebstoffgehalt]]" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:units = "kg m-3" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:name_id = 7 ;
: Mesh0_[[Schwebstoffgehalt]]_3d:_FillValue = 1.e+31f ;
: Mesh0_[[Schwebstoffgehalt]]_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name Mesh0_suspension_classes" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:grid_mapping = "Mesh0_crs" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:standard_name = "concentration_of_suspended_matter_in_sea_water" ;
: Mesh0_[[Schwebstoffgehalt]]_3d:comment = "class_names No  1 : Summe aller Fraktionen\\nclass_names No  2 : Schluff" ;


:: char suspended_matter_classes_long_name(suspension_classes,strlen1) ;
Hinweise:
::: suspended_matter_classes_long_name:long_name = "long name of suspension class"
# Sowohl die Summe aller Fraktionen als auch die einzelnen Fraktionen sind in einer Variablen abgelegt.
# Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben.


=Anmerkungen, Fragen=
==Anmerkungen==
* Datei ist vollständig CF-konform - keine Erweiterungen erforderlich!
* Datei ist CF-konform gemäß [http://puma.nerc.ac.uk/cgi-bin/cf-checker.pl NCAS ''CF Compliance Checker''].
* Soll das BAW-Attribut ''name_id'' (für den Code) zusätzlich benutzt werden?
* Bislang fehlende CF konforme Standardnamen der physikalischen Größen sollten nur bei echtem Bedarf gemäß den dafür vorgesehenen Regeln ergänzt werden. Details siehe [http://cfconventions.org/Data/cf-standard-names/docs/guidelines.html ''Guidelines of Construction for CF Standard Names''].
* Können wir Tiefenmittelwerte, z. B. für den Salzgehalt, aus den Daten und Metadaten problemlos berechnen?
* Oder sollen die Tiefenmittelwerte zusätzlich abgelegt werden?
* Können wir Vektoren zwischen verschiedenen Koordinatensystemen transformieren, um z. B. aus der x- und der y-Komponente die Ostkomponente zu berechnen?
* Wie kann ein sicherer Zusammenhang zwischen den Daten für die Schwebstoffklassen und den Klassennamen hergestellt werden?
* Kann der "suspended_matter_class_long_name" in dem Attribut ''coordinates'' genutzt werden?
* Ist es besser, die Daten der Schwebstoffklassen in einzelnen Feldern zu speichern? Dies wäre in Einklang mit den [http://ferret.wrc.noaa.gov/noaa_coop/coop_cdf_profile.html COARDS Konventionen].
----
----
zurück zu [[NetCDF]]
zurück zu [[NetCDF]]
----
----
[[Strukturübersicht]]
[[Strukturübersicht]]

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

Kurze Beschreibung

Synoptische Daten an Einzelpositionen. Es werden einige Beispiele für typische, wichtige Variablen vorgestellt.

Weitere Beschreibungen

Version Discrete Sampling Geometry timeSeriesProfile

Zur Ablage von Daten an Einzelpositionen wird die in CF beschriebene Discrete Sampling Geometry mit featureType=timeSeriesProfile verwendet. Ein vereinfachtes Beispiel (NCDUMP) für Geometrie und synoptische Daten ist in L_synop_ncdump_2D.pdf zu sehen.


Daten ohne z-Abhängigkeit

Die Lage des Wasserspiegels ist nur von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist nicht vorhanden. Daher dient der Wasserstand als Beispiel für eine geophysikalische Variable ohne z-Abhängigkeit.

float Mesh0_node_Wasserstand_2d(nMesh0_data_time, nMesh0_node) ;

:long_name = "Wasserstand [ node ]" ;
:units = "m" ;
:name_id = 3 ;
:_FillValue = 1.e+31f ;
:ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
:cell_measures = "area: Mesh0_node_Wasserflaeche_2d" ;
:cell_methods = "nMesh0_data_time: point nMesh0_node: mean" ;
:comment = "ancillary variables may be used ..." ;
:coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_long_name" ;
:grid_mapping = "Mesh0_crs" ;
:standard_name = "sea_surface_height" ;

Anmerkungen:

  1. Es können ungültige Daten vorhanden sein (siehe _FillValue).
  2. Die Hilfsvariable (siehe ancillary_variables) Mesh0_node_Gesamtwassertiefe_2d kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
  3. Der Wasserstand ist ein (synoptischer) Augenblickswert und ein Flächen-Mittelwert (siehe cell_methods).
  4. In der Variable Mesh0_node_Wasserflaeche_2d ist die für den räumlichen Mittelwert relevante Fläche enthalten.
  5. Die Label-Koordinatenvariable Mesh0_node_long_name kann zur Auswahl von Position(en) verwendet werden (siehe coordinates).

Daten mit z-Abhängigkeit

Der über die Wassertiefe gemittelte Salzgehalt ist von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist hier vorhanden, da in unserem Fall die z-Koordinate den Schwerpunkt (des Wasserkörpers) beschreibt. Daher dient der Salzgehalt als Beispiel für eine geophysikalische Variable mit z-Abhängigkeit.

float Mesh0_node_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;

:long_name = "Salzgehalt [ node ]" ;
:units = "1e-3" ;
:name_id = 5 ;
:_FillValue = 1.e+31f ;
:ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
:cell_measures = "volume: Mesh0_node_Wasservolumen_2d area: Mesh0_node_Wasserflaeche_2d" ;
:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean nMesh0_node: mean" ;
:comment = "ancillary variables may be used ..." ;
:coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_z_node_2d Mesh0_node_long_name" ;
:grid_mapping = "Mesh0_crs" ;
:standard_name = "sea_water_salinity" ;


Anmerkungen:

  1. Es können ungültige Daten vorhanden sein (siehe _FillValue).
  2. Die Hilfsvariable (siehe ancillary_variables) Mesh0_node_Gesamtwassertiefe_2d kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
  3. Der Salzgehalt ist ein (synoptischer) Augenblickswert und ein Volumen-Mittelwert (siehe cell_methods).
  4. In der Variable Mesh0_node_Wasservolumen_2d ist das für den Volumen-Mittelwert relevante Volumen enthalten.
  5. Mit zusätzlicher Hilfe von Mesh0_node_Wasserflaeche_2d kann in exakter Weise das Salzvolumen/Fläche ermittelt werden.
  6. Die Label-Koordinatenvariable Mesh0_node_long_name kann zur Auswahl von Position(en) verwendet werden (siehe coordinates).

Daten für mehrere Fraktionen

Der über die Wassertiefe gemittelte Sschwebstoffgehalt ist von der Zeit und der Position abhängig. Eine Abhängigkeit von der z-Koordinate ist hier vorhanden, da in unserem Fall die z-Koordinate den Schwerpunkt des Wasserkörpers beschreibt. Zusätzlich kann der Schwebstoffgehalt für mehrere Schwebstoff-Fraktionen nMesh0_suspension_classes vorhanden sein. Daher dient der Schwebstoffgehalt als Beispiel für eine geophysikalische Variable mit mehreren Fraktionen.

float Mesh0_node_Schwebstoffgehalt_2d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_2d, nMesh0_node) ;

:long_name = "Schwebstoffgehalt [ node ]" ;
:units = "kg m-3" ;
:name_id = 7 ;
:_FillValue = 1.e+31f ;
:ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
:cell_measures = "volume: Mesh0_node_Wasservolumen_2d area: Mesh0_node_Wasserflaeche_2d" ;
:cell_methods = "nMesh0_data_time: point nMesh0_suspension_classes: point nMesh0_layer_2d: mean nMesh0_node: mean" ;
:comment = "ancillary variables may be used ..." ;
:coordinates = "Mesh0_node_lon Mesh0_node_lat Mesh0_node_x Mesh0_node_y Mesh0_node_z_node_2d Mesh0_node_long_name Mesh0_Schwebstoffklassen_2d" ;
:grid_mapping = "Mesh0_crs" ;
:standard_name = "concentration_of_suspended_matter_in_sea_water" ;

Anmerkungen:

  1. Es können ungültige Daten vorhanden sein (siehe _FillValue).
  2. Die Hilfsvariable (siehe ancillary_variables) Mesh0_node_Gesamtwassertiefe_2d kann bei der weiteren Verarbeitung (Analyse, Visualisierung) dazu verwendet werden, Orte mit sehr geringer Wasserbedeckung nicht auszuwerten.
  3. Der Schwebstoffgehalt ist für jede Fraktion ein (synoptischer) Augenblickswert und ein Volumen-Mittelwert (siehe cell_methods).
  4. In der Variable Mesh0_node_Wasservolumen_2d ist das für den Volumen-Mittelwert relevante Volumen enthalten.
  5. Mit zusätzlicher Hilfe von Mesh0_node_Wasserflaeche_2d kann in exakter Weise die Schwebstoffmasse/Fläche ermittelt werden.
  6. Die Label-Koordinatenvariable Mesh0_node_long_name kann zur Auswahl von Position(en) verwendet werden (siehe coordinates).
  7. Die Label-Koordinatenvariable Mesh0_Schwebstoffklassen_2d kann zur Auswahl von Fraktionen verwendet werden (siehe coordinates).

Version DATACONVERT

Dimensionen

  1. nMesh0_node : Anzahl der Einzelpositionen.
  2. nMesh0_strlen1 : max. Anzahl der Zeichen für lange Namen.
  3. nMesh0_strlen2 : max. Anzahl der Zeichen für Code-Bezeichnungen.
  4. nMesh0_strlen3 : max. Anzahl der Zeichen für Kurzbezeichnungen.
  5. nMesh0_class_names_strlen : max. Anzahl der Zeichen in Schwebstoffklassennamen.
  6. nMesh0_time : Anzahl der Zeitpunkte (Gitterdatei).
  7. nMesh0_data_time : UNLIMITED-Dimension, Anzahl der synoptischen Datensätze.
  8. nMesh0_layer_2d : Anzahl der Schichten für tiefengemittelte Daten.
  9. nMesh0_layer_3d : Anzahl der Schichten für tiefenstrukturierte Daten.
  10. nMesh0_suspension_classes : Anzahl der Schwebstoffklassen, inklusive Summe aller Fraktionen.
  11. two : Konstante.

Positionsbezeichnungen

Langer Name

char Mesh0_node_long_name(nMesh0_node, nMesh0_strlen1) ;

Mesh0_node_long_name:long_name = "Name Geoposition" ;
Mesh0_node_long_name:name_id = 1395 ;

Hinweise:

  1. Variable wird als Label-Koordinate benutzt, daher werden die Attribute "coordinates" und "grid_mapping" hier nicht benutzt.
  2. Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen.

Code-Name

char Mesh0_node_code_name(nMesh0_node, nMesh0_strlen2) ;

Mesh0_node_code_name:long_name = "Kennung der Geoposition" ;
Mesh0_node_code_name:name_id = 1394 ;
Mesh0_node_code_name:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_code_name:grid_mapping = "Mesh0_crs" ;

Kurzer Name

char Mesh0_node_short_name(nMesh0_node, nMesh0_strlen3) ;

Mesh0_node_short_name:long_name = "Kuerzel Geoposition" ;
Mesh0_node_short_name:name_id = 1396 ;
Mesh0_node_short_name:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_short_name:grid_mapping = "Mesh0_crs" ;

Positions-Farbcodes

int Mesh0_node_colour(nMesh0_node) ;

Mesh0_node_colour:long_name = "colour code of location" ;
Mesh0_node_colour:valid_range = 0, 9999 ;
Mesh0_node_colour:_FillValue = -999 ;
Mesh0_node_colour:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_colour:grid_mapping = "Mesh0_crs" ;

Hinweise:

  1. Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.

Positions-Identifikationsnummern

int Mesh0_node_id(nMesh0_node) ;

Mesh0_node_id:long_name = "identification number of location" ;
Mesh0_node_id:valid_range = 0, 9999 ;
Mesh0_node_id:_FillValue = -999 ;
Mesh0_node_id:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_id:grid_mapping = "Mesh0_crs" ;

Hinweise:

  1. Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.

Datenkompression

Siehe NetCDF Kompression von Daten durch Aufsammeln.

Gewichte

Gewichte werden insbesondere im Postprocessing benötigt, um abgeleitete Daten korrekt berechnen zu können, falls die hierfür relevanten Gewichtsfaktoren, nicht in einfacher Weise aus den Koordinaten abgeleitet werden können.

Längen

Durchflusshöhe an Positionen

float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ;

Hinweise:

  1. Weitere Informationen unter Vertikalkoordinaten (siehe nachfolgenden Abschnitt).

Durchflusshöhe an Positionen, differenziert nach Schichten

float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ;

Hinweise:

  1. Weitere Informationen unter Vertikalkoordinaten (siehe nachfolgenden Abschnitt).

Zeitkoordinaten

Gitter-Daten

double nMesh0_time(nMesh0_time) ;

nMesh0_time:long_name = "time" ;
nMesh0_time:units = "seconds since 2005-07-01 00:00:00 01:00" ;
nMesh0_time:name_id = 1640 ;
nMesh0_time:axis = "T" ;
nMesh0_time:bounds = "nMesh0_time_bnd" ;
nMesh0_time:calendar = "gregorian" ;
nMesh0_time:standard_name = "time" ;

double nMesh0_time_bnd(nMesh0_time, two) ;

Hinweise:

  1. Die Topografie des Gitters (der ursprünglichen Gitterdatei) gilt entweder für einen bestimmten Termin oder Zeitraum.
  2. Falls die topografischen Daten des Gitters für einen Zeitraum gültig sind, so ist die entsprechende Boundary-Variable ebenfalls vorhanden.

Synoptische Daten

double nMesh0_data_time(nMesh0_data_time) ;

nMesh0_data_time:long_name = "time" ;
nMesh0_data_time:units = "seconds since 2005-05-01 01:30:00 01:00" ;
nMesh0_data_time:name_id = 1640 ;
nMesh0_data_time:axis = "T" ;
nMesh0_data_time:calendar = "gregorian" ;
nMesh0_data_time:standard_name = "time" ;

Hinweise:

  1. Die synoptischen Daten gelten für bestimmte Termine. Daher ist keine ergänzende Boundary-Variable erforderlich.

Vertikalkoordinaten

Tiefengemittelte Daten

float Mesh0_node_z_2d(nMesh0_data_time, nMesh0_node) ;

Mesh0_node_z_2d:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ;
Mesh0_node_z_2d:units = "m" ;
Mesh0_node_z_2d:positive = "down" ;
Mesh0_node_z_2d:bounds = "Mesh0_node_z_2d_bnd" ;
Mesh0_node_z_2d:standard_name = "depth" ;

float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ;

Hinweise:

  1. Über die Wassertiefe gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate.
  2. Der aktuelle Wert bezeichnet die Mitte zwischen aktueller Wasseroberfläche und Gewässersohle.
  3. Aus der Boundary-Variablen ergibt sich die Höhe (Länge), über die gemittelt wurde.
  4. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Tiefenstrukturierte Daten

float Mesh0_node_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_node_z_3d:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ;
Mesh0_node_z_3d:units = "m" ;
Mesh0_node_z_3d:positive = "down" ;
Mesh0_node_z_3d:bounds = "Mesh0_node_z_3d_bnd" ;
Mesh0_node_z_3d:standard_name = "depth" ;
float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ;

Hinweise:

  1. Tiefenstrukturierte, in z-Schichten gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate.
  2. Der aktuelle Wert bezeichnet die Mitte der jeweiligen z-Schicht.
  3. Aus der Boundary-Variablen ergibt sich die Höhe (Länge), über die gemittelt wurde.
  4. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Aktuelle (zeitvariable) Topografie

Knoten

Konstant in Zeitraum

double Mesh0_node_depth(nMesh0_time, nMesh0_node) ;

Mesh0_node_depth:long_name = "Topographie" ;
Mesh0_node_depth:units = "m" ;
Mesh0_node_depth:name_id = 17 ;
Mesh0_node_depth:valid_range = -2000., 2000. ;
Mesh0_node_depth:_FillValue = 1.e+31 ;
Mesh0_node_depth:cell_methods = "nMesh0_time: mean area: point" ;
Mesh0_node_depth:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_depth:grid_mapping = "Mesh0_crs" ;
Mesh0_node_depth:standard_name = "sea_floor_depth_below_geoid" ;

Hinweise:

  1. Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind.

Zeitvariabel

float Mesh0_zeitvariable_Topographie_2d(nMesh0_data_time, nMesh0_node) ;

Mesh0_zeitvariable_Topographie_2d:long_name = "zeitvariable Topographie" ;
Mesh0_zeitvariable_Topographie_2d:units = "m" ;
Mesh0_zeitvariable_Topographie_2d:name_id = 617 ;
Mesh0_zeitvariable_Topographie_2d:_FillValue = 1.e+31f ;
Mesh0_zeitvariable_Topographie_2d:cell_methods = "nMesh0_data_time: point area: point" ;
Mesh0_zeitvariable_Topographie_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_zeitvariable_Topographie_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_zeitvariable_Topographie_2d:standard_name = "sea_floor_depth_below_geoid" ;

Maximale zulässige Tiefe

double Mesh0_node_depth(nMesh0_time, nMesh0_node) ;

Mesh0_node_depth:long_name = "Tiefe der unerodierbaren Schicht" ;
Mesh0_node_depth:units = "m" ;
Mesh0_node_depth:name_id = 1149 ;
Mesh0_node_depth:valid_range = -2000., 2000. ;
Mesh0_node_depth:_FillValue = 1.e+31 ;
Mesh0_node_depth:cell_methods = "nMesh0_time: mean area: point" ;
Mesh0_node_depth:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_node_depth:grid_mapping = "Mesh0_crs" ;
Mesh0_node_depth:standard_name = "depth" ;

Hinweise:

  1. Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind.
  2. Ggf. muss noch ein spezifischerer Standardname gefunden werden, z. B. "bedrock_altitude".

Wasserstand

Knoten

float Mesh0_Wasserstand_2d(nMesh0_data_time, nMesh0_node) ;

Mesh0_Wasserstand_2d:long_name = "Wasserstand" ;
Mesh0_Wasserstand_2d:units = "m" ;
Mesh0_Wasserstand_2d:name_id = 3 ;
Mesh0_Wasserstand_2d:_FillValue = 1.e+31f ;
Mesh0_Wasserstand_2d:cell_methods = "nMesh0_data_time: point area: point" ;
Mesh0_Wasserstand_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
Mesh0_Wasserstand_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Wasserstand_2d:standard_name = "sea_surface_height" ;

Tiefengemittelter Salzgehalt

Knoten

float Mesh0_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;

Mesh0_Salzgehalt_2d:long_name = "Salzgehalt" ;
Mesh0_Salzgehalt_2d:units = "1e-3" ;
Mesh0_Salzgehalt_2d:name_id = 5 ;
Mesh0_Salzgehalt_2d:_FillValue = 1.e+31f ;
Mesh0_Salzgehalt_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
Mesh0_Salzgehalt_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
Mesh0_Salzgehalt_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Salzgehalt_2d:standard_name = "sea_water_salinity" ;

Tiefenstrukturierter Salzgehalt

Knoten

float Mesh0_Salzgehalt_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Salzgehalt_3d:long_name = "Salzgehalt" ;
Mesh0_Salzgehalt_3d:units = "1e-3" ;
Mesh0_Salzgehalt_3d:name_id = 5 ;
Mesh0_Salzgehalt_3d:_FillValue = 1.e+31f ;
Mesh0_Salzgehalt_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Salzgehalt_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
Mesh0_Salzgehalt_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Salzgehalt_3d:standard_name = "sea_water_salinity" ;

Tiefengemittelte Strömungsgeschwindigkeit

Knoten

x-Komponente

float Mesh0_Stroemungsgeschwindigkeit_x_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_x_2d:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_x_2d:standard_name = "sea_water_x_velocity" ;

y-Komponente

float Mesh0_Stroemungsgeschwindigkeit_y_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_y_2d:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_y_2d:standard_name = "sea_water_y_velocity" ;

Betrag

float Mesh0_Stroemungsgeschwindigkeit_m_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_m_2d:long_name = "Stroemungsgeschwindigkeit (Betrag)" ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_m_2d:standard_name = "magnitude_of_sea_water_velocity" ;

Tiefenstrukturierte Strömungsgeschwindigkeit

Knoten

x-Komponente

float Mesh0_Stroemungsgeschwindigkeit_x_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_x_3d:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_x_3d:standard_name = "sea_water_x_velocity" ;

y-Komponente

float Mesh0_Stroemungsgeschwindigkeit_y_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_y_3d:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_y_3d:standard_name = "sea_water_y_velocity" ;

z-Komponente

float Mesh0_Stroemungsgeschwindigkeit_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_z_3d:long_name = "Stroemungsgeschwindigkeit (z-Komponente)" ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_z_3d:standard_name = "upward_sea_water_velocity" ;

Betrag

float Mesh0_Stroemungsgeschwindigkeit_m_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Stroemungsgeschwindigkeit_m_3d:long_name = "Stroemungsgeschwindigkeit (Betrag)" ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:units = "m s-1" ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:name_id = 2 ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:_FillValue = 1.e+31f ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name" ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Stroemungsgeschwindigkeit_m_3d:standard_name = "magnitude_of_sea_water_velocity" ;

Bezeichnung der Schwebstoffklassen

char Mesh0_suspension_classes(nMesh0_suspension_classes, nMesh0_class_names_strlen) ;

Mesh0_suspension_classes:long_name = "Klassenbezeichner" ;
Mesh0_suspension_classes:name_id = 1655 ;

Tiefengemittelter Schwebstoffgehalt

Knoten

float Mesh0_Schwebstoffgehalt_2d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_2d, nMesh0_node) ;

Mesh0_Schwebstoffgehalt_2d:long_name = "Schwebstoffgehalt" ;
Mesh0_Schwebstoffgehalt_2d:units = "kg m-3" ;
Mesh0_Schwebstoffgehalt_2d:name_id = 7 ;
Mesh0_Schwebstoffgehalt_2d:_FillValue = 1.e+31f ;
Mesh0_Schwebstoffgehalt_2d:cell_methods = "nMesh0_data_time: point nMesh0_layer_2d: mean area: point" ;
Mesh0_Schwebstoffgehalt_2d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_2d Mesh0_node_long_name Mesh0_suspension_classes" ;
Mesh0_Schwebstoffgehalt_2d:grid_mapping = "Mesh0_crs" ;
Mesh0_Schwebstoffgehalt_2d:standard_name = "concentration_of_suspended_matter_in_sea_water" ;
Mesh0_Schwebstoffgehalt_2d:comment = "class_names No 1 : Summe aller Fraktionen\\nclass_names No 2 : Schluff" ;

Hinweise:

  1. Sowohl die Summe aller Fraktionen als auch die einzelnen Fraktionen sind in einer Variablen abgelegt.
  2. Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben.

Tiefenstrukturierter Schwebstoffgehalt

Knoten

float Mesh0_Schwebstoffgehalt_3d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_3d, nMesh0_node) ;

Mesh0_Schwebstoffgehalt_3d:long_name = "Schwebstoffgehalt" ;
Mesh0_Schwebstoffgehalt_3d:units = "kg m-3" ;
Mesh0_Schwebstoffgehalt_3d:name_id = 7 ;
Mesh0_Schwebstoffgehalt_3d:_FillValue = 1.e+31f ;
Mesh0_Schwebstoffgehalt_3d:cell_methods = "nMesh0_data_time: point nMesh0_layer_3d: mean area: point" ;
Mesh0_Schwebstoffgehalt_3d:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_z_3d Mesh0_node_long_name Mesh0_suspension_classes" ;
Mesh0_Schwebstoffgehalt_3d:grid_mapping = "Mesh0_crs" ;
Mesh0_Schwebstoffgehalt_3d:standard_name = "concentration_of_suspended_matter_in_sea_water" ;
Mesh0_Schwebstoffgehalt_3d:comment = "class_names No 1 : Summe aller Fraktionen\\nclass_names No 2 : Schluff" ;

Hinweise:

  1. Sowohl die Summe aller Fraktionen als auch die einzelnen Fraktionen sind in einer Variablen abgelegt.
  2. Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben.

Anmerkungen


zurück zu NetCDF


Strukturübersicht