NetCDF Synoptische Daten an Einzelpositionen: Unterschied zwischen den Versionen
Aus BAWiki
imported>Lang Guenther (→Längen: Definition der Vertikalkoordinaten gelöscht, Hinweis auf Folgekapitel als Link ausgeführt) |
(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>).) |
||
(12 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt) | |||
Zeile 10: | Zeile 10: | ||
* [[NetCDF Vertikalkoordinate]]: zeit- und ortsvariable Vertikalkoordinate. | * [[NetCDF Vertikalkoordinate]]: zeit- und ortsvariable Vertikalkoordinate. | ||
=Dimensionen= | =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== | |||
# '''nMesh0_node''' : Anzahl der Einzelpositionen. | # '''nMesh0_node''' : Anzahl der Einzelpositionen. | ||
Zeile 24: | Zeile 107: | ||
# '''two''' : Konstante. | # '''two''' : Konstante. | ||
=Positionsbezeichnungen= | ==Positionsbezeichnungen== | ||
==Langer Name== | ===Langer Name=== | ||
char Mesh0_node_long_name(nMesh0_node, nMesh0_strlen1) ; | char Mesh0_node_long_name(nMesh0_node, nMesh0_strlen1) ; | ||
: Mesh0_node_long_name:long_name = "Name Geoposition" ; | : Mesh0_node_long_name:long_name = "Name Geoposition" ; | ||
Zeile 33: | Zeile 116: | ||
Hinweise: | Hinweise: | ||
# Variable wird als Label-Koordinate benutzt, daher werden die Attribute "coordinates" und "grid_mapping" hier nicht benutzt. | # Variable wird als Label-Koordinate benutzt, daher werden die Attribute "coordinates" und "grid_mapping" hier nicht benutzt. | ||
# Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-Kennung der Variablen. | # Das Attribut "name_id" entspricht der (BAW) PHYDEF-Code-[[Kennung]] der Variablen. | ||
==Code-Name== | ===Code-Name=== | ||
char Mesh0_node_code_name(nMesh0_node, nMesh0_strlen2) ; | char Mesh0_node_code_name(nMesh0_node, nMesh0_strlen2) ; | ||
: Mesh0_node_code_name:long_name = "Kennung der Geoposition" ; | : Mesh0_node_code_name:long_name = "[[Kennung]] der Geoposition" ; | ||
: Mesh0_node_code_name:name_id = 1394 ; | : 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: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" ; | : Mesh0_node_code_name:grid_mapping = "Mesh0_crs" ; | ||
==Kurzer Name== | ===Kurzer Name=== | ||
char Mesh0_node_short_name(nMesh0_node, nMesh0_strlen3) ; | char Mesh0_node_short_name(nMesh0_node, nMesh0_strlen3) ; | ||
: Mesh0_node_short_name:long_name = "Kuerzel Geoposition" ; | : Mesh0_node_short_name:long_name = "Kuerzel Geoposition" ; | ||
Zeile 49: | Zeile 132: | ||
: Mesh0_node_short_name:grid_mapping = "Mesh0_crs" ; | : Mesh0_node_short_name:grid_mapping = "Mesh0_crs" ; | ||
=Positions-Farbcodes= | ==Positions-Farbcodes== | ||
int Mesh0_node_colour(nMesh0_node) ; | int Mesh0_node_colour(nMesh0_node) ; | ||
: Mesh0_node_colour:long_name = "colour code of location" ; | : Mesh0_node_colour:long_name = "colour code of location" ; | ||
Zeile 60: | Zeile 143: | ||
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden. | # Dimensionslose Variable, daher ist kein "units" Attribut vorhanden. | ||
=Positions-Identifikationsnummern= | ==Positions-Identifikationsnummern== | ||
int Mesh0_node_id(nMesh0_node) ; | int Mesh0_node_id(nMesh0_node) ; | ||
: Mesh0_node_id:long_name = "identification number of location" ; | : Mesh0_node_id:long_name = "identification number of location" ; | ||
Zeile 71: | Zeile 154: | ||
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden. | # Dimensionslose Variable, daher ist kein "units" Attribut vorhanden. | ||
=Datenkompression= | ==Datenkompression== | ||
Siehe [[NetCDF Kompression von Daten durch Aufsammeln]]. | 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. | 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== | ===Längen=== | ||
===Durchflusshöhe an Positionen=== | ====Durchflusshöhe an Positionen==== | ||
float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ; | float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ; | ||
Zeile 87: | Zeile 170: | ||
# Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt). | # Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt). | ||
===Durchflusshöhe an Positionen, differenziert nach Schichten=== | ====Durchflusshöhe an Positionen, differenziert nach Schichten==== | ||
float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ; | float Mesh0_node_z_3d_bnd(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node, two) ; | ||
Zeile 93: | Zeile 176: | ||
# Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt). | # Weitere Informationen unter [[#Vertikalkoordinaten|Vertikalkoordinaten]] (siehe nachfolgenden Abschnitt). | ||
=Zeitkoordinaten= | ==Zeitkoordinaten== | ||
==Gitter-Daten== | ===Gitter-Daten=== | ||
double nMesh0_time(nMesh0_time) ; | double nMesh0_time(nMesh0_time) ; | ||
: nMesh0_time:long_name = "time" ; | : nMesh0_time:long_name = "time" ; | ||
Zeile 111: | Zeile 194: | ||
# Falls die topografischen Daten des Gitters für einen Zeitraum gültig sind, so ist die entsprechende Boundary-Variable ebenfalls vorhanden. | # Falls die topografischen Daten des Gitters für einen Zeitraum gültig sind, so ist die entsprechende Boundary-Variable ebenfalls vorhanden. | ||
==Synoptische Daten== | ===Synoptische Daten=== | ||
double nMesh0_data_time(nMesh0_data_time) ; | double nMesh0_data_time(nMesh0_data_time) ; | ||
: nMesh0_data_time:long_name = "time" ; | : nMesh0_data_time:long_name = "time" ; | ||
Zeile 123: | Zeile 206: | ||
# Die synoptischen Daten gelten für bestimmte Termine. Daher ist keine ergänzende Boundary-Variable erforderlich. | # Die synoptischen Daten gelten für bestimmte Termine. Daher ist keine ergänzende Boundary-Variable erforderlich. | ||
=Vertikalkoordinaten= | ==Vertikalkoordinaten== | ||
==Tiefengemittelte Daten== | ===Tiefengemittelte Daten=== | ||
float Mesh0_node_z_2d(nMesh0_data_time, nMesh0_node) ; | 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:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ; | ||
Zeile 136: | Zeile 219: | ||
Hinweise: | Hinweise: | ||
# Über die Wassertiefe gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate. | # Über die [[Wassertiefe]] gemittelte Daten benutzen diese zeitvariable Vertikalkoordinate. | ||
# Der aktuelle Wert bezeichnet die Mitte zwischen aktueller Wasseroberfläche und Gewässersohle. | # 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. | # 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. | # Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt. | ||
==Tiefenstrukturierte Daten== | ===Tiefenstrukturierte Daten=== | ||
float Mesh0_node_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | 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:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ; | ||
Zeile 157: | Zeile 240: | ||
# Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt. | # Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt. | ||
=Aktuelle (zeitvariable) Topografie= | ==Aktuelle (zeitvariable) Topografie== | ||
==Knoten== | ===Knoten=== | ||
===Konstant in Zeitraum=== | ====Konstant in Zeitraum==== | ||
double Mesh0_node_depth(nMesh0_time, nMesh0_node) ; | double Mesh0_node_depth(nMesh0_time, nMesh0_node) ; | ||
: Mesh0_node_depth:long_name = "Topographie" ; | : Mesh0_node_depth:long_name = "Topographie" ; | ||
Zeile 174: | Zeile 257: | ||
# Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind. | # Das Attribut "cell_methods" beschreibt hier u. a., dass die Tiefen Mittelwerte für einen Zeitraum sind. | ||
===Zeitvariabel=== | ====Zeitvariabel==== | ||
float Mesh0_zeitvariable_Topographie_2d(nMesh0_data_time, nMesh0_node) ; | float Mesh0_zeitvariable_Topographie_2d(nMesh0_data_time, nMesh0_node) ; | ||
: Mesh0_zeitvariable_Topographie_2d:long_name = "zeitvariable Topographie" ; | : Mesh0_zeitvariable_Topographie_2d:long_name = "zeitvariable Topographie" ; | ||
Zeile 185: | Zeile 268: | ||
: Mesh0_zeitvariable_Topographie_2d:standard_name = "sea_floor_depth_below_geoid" ; | : 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) ; | double Mesh0_node_depth(nMesh0_time, nMesh0_node) ; | ||
: Mesh0_node_depth:long_name = "Tiefe der unerodierbaren Schicht" ; | : Mesh0_node_depth:long_name = "Tiefe der unerodierbaren Schicht" ; | ||
Zeile 201: | Zeile 284: | ||
# Ggf. muss noch ein spezifischerer Standardname gefunden werden, z. B. "bedrock_altitude". | # Ggf. muss noch ein spezifischerer Standardname gefunden werden, z. B. "bedrock_altitude". | ||
=Wasserstand= | ==Wasserstand== | ||
==Knoten== | ===Knoten=== | ||
float | 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= | ==Tiefengemittelter Salzgehalt== | ||
==Knoten== | ===Knoten=== | ||
float Mesh0_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ; | float Mesh0_Salzgehalt_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ; | ||
: Mesh0_Salzgehalt_2d:long_name = "Salzgehalt" ; | : Mesh0_Salzgehalt_2d:long_name = "Salzgehalt" ; | ||
Zeile 227: | Zeile 310: | ||
: Mesh0_Salzgehalt_2d:standard_name = "sea_water_salinity" ; | : Mesh0_Salzgehalt_2d:standard_name = "sea_water_salinity" ; | ||
=Tiefenstrukturierter Salzgehalt= | ==Tiefenstrukturierter Salzgehalt== | ||
==Knoten== | ===Knoten=== | ||
float Mesh0_Salzgehalt_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | float Mesh0_Salzgehalt_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | ||
: Mesh0_Salzgehalt_3d:long_name = "Salzgehalt" ; | : Mesh0_Salzgehalt_3d:long_name = "Salzgehalt" ; | ||
Zeile 240: | Zeile 323: | ||
: Mesh0_Salzgehalt_3d:standard_name = "sea_water_salinity" ; | : Mesh0_Salzgehalt_3d:standard_name = "sea_water_salinity" ; | ||
=Tiefengemittelte Strömungsgeschwindigkeit= | ==Tiefengemittelte Strömungsgeschwindigkeit== | ||
==Knoten== | ===Knoten=== | ||
===x-Komponente=== | ====x-Komponente==== | ||
float Mesh0_Stroemungsgeschwindigkeit_x_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ; | ||
Zeile 254: | Zeile 337: | ||
: Mesh0_Stroemungsgeschwindigkeit_x_2d:standard_name = "sea_water_x_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_x_2d:standard_name = "sea_water_x_velocity" ; | ||
===y-Komponente=== | ====y-Komponente==== | ||
float Mesh0_Stroemungsgeschwindigkeit_y_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ; | ||
Zeile 265: | Zeile 348: | ||
: Mesh0_Stroemungsgeschwindigkeit_y_2d:standard_name = "sea_water_y_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_y_2d:standard_name = "sea_water_y_velocity" ; | ||
===Betrag=== | ====Betrag==== | ||
float Mesh0_Stroemungsgeschwindigkeit_m_2d(nMesh0_data_time, nMesh0_layer_2d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (Betrag)" ; | ||
Zeile 276: | Zeile 359: | ||
: Mesh0_Stroemungsgeschwindigkeit_m_2d:standard_name = "magnitude_of_sea_water_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_m_2d:standard_name = "magnitude_of_sea_water_velocity" ; | ||
=Tiefenstrukturierte Strömungsgeschwindigkeit= | ==Tiefenstrukturierte Strömungsgeschwindigkeit== | ||
==Knoten== | ===Knoten=== | ||
===x-Komponente=== | ====x-Komponente==== | ||
float Mesh0_Stroemungsgeschwindigkeit_x_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (x-Komponente)" ; | ||
Zeile 290: | Zeile 373: | ||
: Mesh0_Stroemungsgeschwindigkeit_x_3d:standard_name = "sea_water_x_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_x_3d:standard_name = "sea_water_x_velocity" ; | ||
===y-Komponente=== | ====y-Komponente==== | ||
float Mesh0_Stroemungsgeschwindigkeit_y_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (y-Komponente)" ; | ||
Zeile 301: | Zeile 384: | ||
: Mesh0_Stroemungsgeschwindigkeit_y_3d:standard_name = "sea_water_y_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_y_3d:standard_name = "sea_water_y_velocity" ; | ||
===z-Komponente=== | ====z-Komponente==== | ||
float Mesh0_Stroemungsgeschwindigkeit_z_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (z-Komponente)" ; | ||
Zeile 312: | Zeile 395: | ||
: Mesh0_Stroemungsgeschwindigkeit_z_3d:standard_name = "upward_sea_water_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_z_3d:standard_name = "upward_sea_water_velocity" ; | ||
===Betrag=== | ====Betrag==== | ||
float Mesh0_Stroemungsgeschwindigkeit_m_3d(nMesh0_data_time, nMesh0_layer_3d, nMesh0_node) ; | 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:long_name = "Stroemungsgeschwindigkeit (Betrag)" ; | ||
Zeile 323: | Zeile 406: | ||
: Mesh0_Stroemungsgeschwindigkeit_m_3d:standard_name = "magnitude_of_sea_water_velocity" ; | : Mesh0_Stroemungsgeschwindigkeit_m_3d:standard_name = "magnitude_of_sea_water_velocity" ; | ||
=Bezeichnung der Schwebstoffklassen= | ==Bezeichnung der Schwebstoffklassen== | ||
char Mesh0_suspension_classes(nMesh0_suspension_classes, nMesh0_class_names_strlen) ; | char Mesh0_suspension_classes(nMesh0_suspension_classes, nMesh0_class_names_strlen) ; | ||
: Mesh0_suspension_classes:long_name = "Klassenbezeichner" ; | : Mesh0_suspension_classes:long_name = "Klassenbezeichner" ; | ||
: Mesh0_suspension_classes:name_id = 1655 ; | : Mesh0_suspension_classes:name_id = 1655 ; | ||
=Tiefengemittelter Schwebstoffgehalt= | ==Tiefengemittelter Schwebstoffgehalt== | ||
==Knoten== | ===Knoten=== | ||
float | 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: | Hinweise: | ||
Zeile 346: | Zeile 429: | ||
# Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben. | # Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben. | ||
=Tiefenstrukturierter Schwebstoffgehalt= | ==Tiefenstrukturierter Schwebstoffgehalt== | ||
==Knoten== | ===Knoten=== | ||
float | 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: | Hinweise: | ||
Zeile 364: | Zeile 447: | ||
# Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben. | # Unter dem Attribut "comment" sind auch noch ein Mal die Definitionen der einzelnen Klassen angegeben. | ||
=Anmerkungen= | ==Anmerkungen== | ||
* Datei ist CF-konform gemäß [http://puma.nerc.ac.uk/cgi-bin/cf-checker.pl NCAS ''CF Compliance Checker'']. | * Datei ist CF-konform gemäß [http://puma.nerc.ac.uk/cgi-bin/cf-checker.pl NCAS ''CF Compliance Checker'']. | ||
* 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:// | * 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'']. | ||
---- | ---- | ||
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
- NetCDF Einzelpositionen: Koordinaten und Koordinatentransformation für Einzelpositionen.
- NetCDF Zeitkoordinate: Koordinatenvariable time.
- 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 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
- nMesh0_node : Anzahl der Einzelpositionen.
- nMesh0_strlen1 : max. Anzahl der Zeichen für lange Namen.
- nMesh0_strlen2 : max. Anzahl der Zeichen für Code-Bezeichnungen.
- nMesh0_strlen3 : max. Anzahl der Zeichen für Kurzbezeichnungen.
- nMesh0_class_names_strlen : max. Anzahl der Zeichen in Schwebstoffklassennamen.
- nMesh0_time : Anzahl der Zeitpunkte (Gitterdatei).
- nMesh0_data_time : UNLIMITED-Dimension, Anzahl der synoptischen Datensätze.
- nMesh0_layer_2d : Anzahl der Schichten für tiefengemittelte Daten.
- nMesh0_layer_3d : Anzahl der Schichten für tiefenstrukturierte Daten.
- nMesh0_suspension_classes : Anzahl der Schwebstoffklassen, inklusive Summe aller Fraktionen.
- 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:
- Variable wird als Label-Koordinate benutzt, daher werden die Attribute "coordinates" und "grid_mapping" hier nicht benutzt.
- 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:
- 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
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:
- 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:
- 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:
- 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
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
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
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:
- 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.
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:
- 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
- Datei ist CF-konform gemäß NCAS CF Compliance Checker.
- 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 Guidelines of Construction for CF Standard Names.
zurück zu NetCDF