Aktionen

NetCDF Synoptische Daten an Einzelpositionen: Unterschied zwischen den Versionen

Aus BAWiki

imported>Lang Guenther
(→‎Datenkompression: Textergänzung)
(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>).)
 
(262 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.


=Weitere Beschreibungen=
=Weitere Beschreibungen=
* [[NetCDF Einzelpositionen]]: Koordinaten und Namensbezeichnungen sowie Koordinatentransformation;
* [[NetCDF Zeitkoordinate]]: Koordinatenvariable ''time'';
* [[NetCDF Vertikalkoordinate]]: Vertikalkoordinate ''depth'' oder ''height'':
*# ''node_depth_3d'' : Vertikalkoordinate für tiefenstrukturierte Daten an Knoten.


=Dimensionen=
* [[NetCDF Einzelpositionen]]: Koordinaten und Koordinatentransformation für Einzelpositionen.
* [[NetCDF Zeitkoordinate]]: Koordinatenvariable ''time''.
* [[NetCDF Vertikalkoordinate]]: zeit- und ortsvariable Vertikalkoordinate.


Soweit nicht schon oben festgelegt, kommen noch folgende Dimensionen hinzu:
=Version ''Discrete Sampling Geometry'' '''timeSeriesProfile'''=
: dimensions:
:: nMesh0_vedge = ''total number of computational data above nodes'' ;
:: nMesh0_susp_classes = ''number of suspended sediment classes'' ;
:: nMesh0_strlen1 = ''maximum number of characters used in long names'' ;
:: nMesh0_strlen2 = ''maximum number of characters used in code names'' ;
:: nMesh0_strlen3 = ''maximum number of characters used in short names'' ;


=Positionsbezeichnungen=
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.


==Langbezeichnung==
:: char Mesh0_node_long_name(nMesh0_node,nMesh0_strlen1) ;
::: Mesh0_node_long_name:standard_name = "'''???'''" ; \\ no standard name available
::: Mesh0_node_long_name:long_name = "long name of location"
::: Mesh0_node_long_name:coordinates = "Mesh0_node_lon Mesh0_node_lat"
::: Mesh0_node_long_name:grid_mapping = "crs"
==Codekennung==
::char Mesh0_node_code_name(nMesh0_node,nMesh0_strlen2) ;
::: Mesh0_node_code_name:standard_name = "'''???'''" ; \\ no standard name available
::: Mesh0_node_code_name:long_name = "code name of location"
::: Mesh0_node_code_name:coordinates = "nMesh0_node_long_name Mesh0_node_lon Mesh0_node_lat"
::: Mesh0_node_code_name:grid_mapping = "crs"
==Kurzbezeichnung==
:: char Mesh0_node_short_name(nMesh0_node,nMesh0_strlen3) ;
::: Mesh0_node_short_name:standard_name = "'''???'''" ; \\ no standard name available
::: Mesh0_node_short_name:long_name = "short name of location"
::: Mesh0_node_short_name:coordinates = "nMesh0_node_long_name Mesh0_node_lon Mesh0_node_lat"
::: Mesh0_node_short_name:grid_mapping = "crs"


=Datenkompression=
==Daten ohne z-Abhängigkeit==


Auf Grund der Verwendung von z-Schichten sind über jeder Position in Abhängigkeit von der Wassertiefe unterschiedlich viele (aktive) Berechnungszellen vorhanden. Zur Reduktion der Größe der Ergebnisdatensätze werden verschiedene Dimensionen in einer komprimierten Dimension zusammengefasst. Dauerhaft fehlende Daten werden daher erst gar nicht in der Datei abgespeichert. Dies reduziert bei drei-dimensionalen Simulationen mit z-Schichten den Speicheraufwand typischer Weise um 60 bis 80 Prozent.  
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.


==Komprimierte Daten an Knoten==
float '''Mesh0_node_[[Wasserstand]]_2d'''(nMesh0_data_time, nMesh0_node) ;
:: integer nMesh0_vedge(nMesh0_vedge) ;
: :long_name = "[[Wasserstand]] [ node ]" ;
::: nMesh0_vedge:compress = "node_depth_3d nMesh0_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" ;


=Gewichte=
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'').


=Aktuelle (zeitvariable) Topografie=
==Daten mit z-Abhängigkeit==


=Maximale zulässige Tiefe=
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.


=Wasserstand=
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" ;


:: double node_water_level(time,node) ;
::: node_water_level:standard_name = "'''sea_surface_height_above_geoid'''" ;   
::: node_water_level:long_name = "water level" ;   
::: node_water_level:units = "m" ;
::: node_water_level:coordinates = "node_long_name node_lon node_lat"
::: node_water_level:_FillValue = "''fillvalue''"
::: node_water_level:valid_range = "''valid minimum'', ''valid maximum''"
::: node_water_level:grid_mapping = "crs"


=Zeitvariable Topografie=
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'').


:: double node_water_level(time,node) ;
==Daten für mehrere Fraktionen==
::: 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=
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.


:: double node_water_depth(time,node) ;
float Mesh0_node_[[Schwebstoffgehalt]]_2d(nMesh0_data_time, nMesh0_suspension_classes, nMesh0_layer_2d, nMesh0_node) ;
::: node_water_depth:standard_name = "'''sea_floor_depth_below_sea_surface'''" ;  
: :long_name = "[[Schwebstoffgehalt]] [ node ]" ;
::: node_water_depth:long_name = "total water depth" ;  
: :units = "kg m-3" ;
::: node_water_depth:units = "m" ;
: :name_id = 7 ;
::: node_water_depth:coordinates = "node_long_name node_lon node_lat"
: :_FillValue = 1.e+31f ;
::: node_water_depth:_FillValue = "''fillvalue''"
: :ancillary_variables = "Mesh0_node_Gesamtwassertiefe_2d" ;
::: node_water_depth:valid_range = "''valid minimum'', ''valid maximum''"
: :cell_measures = "volume: Mesh0_node_Wasservolumen_2d area: Mesh0_node_Wasserflaeche_2d" ;
::: node_water_depth:grid_mapping = "crs"
: :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" ;


=Tiefenstrukturierter Salzgehalt=
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'').


:: double node_salinity(time,vedge) ;
=Version [[DATACONVERT]]=
::: node_salinity:standard_name = "'''sea_water_salinity'''" ;   
::: node_salinity:long_name = "salinity" ;   
::: node_salinity:units = "0.001" ;
::: node_salinity:coordinates = "node_long_name node_lon node_lat"
::: node_salinity:_FillValue = "''fillvalue''"
::: node_salinity:valid_range = "''valid minimum'', ''valid maximum''"
::: node_salinity:cell_methods = "height: mean"
::: node_salinity:grid_mapping = "crs"


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


:: double node_velocity_x(time,vedge) ;
# '''nMesh0_node''' : Anzahl der Einzelpositionen.
::: node_velocity_x:standard_name = "'''sea_water_x_velocity'''" ; \\ or better '''eastward_sea_water_velocity'''
# '''nMesh0_strlen1''' : max. Anzahl der Zeichen für lange Namen.
::: node_velocity_x:long_name = "current velocity in x-direction" ;   
# '''nMesh0_strl'''en2 : max. Anzahl der Zeichen für Code-Bezeichnungen.
::: node_velocity_x:units = "m s-1" ;
# '''nMesh0_strlen3''' : max. Anzahl der Zeichen für Kurzbezeichnungen.
::: node_velocity_x:coordinates = "node_long_name node_lon node_lat"
# '''nMesh0_class_names_strlen''' : max. Anzahl der Zeichen in Schwebstoffklassennamen.
::: node_velocity_x:_FillValue = "''fillvalue''"
# '''nMesh0_time''' : Anzahl der Zeitpunkte (Gitterdatei).
::: node_velocity_x:valid_range = "''valid minimum'', ''valid maximum''"
# '''nMesh0_data_time''' : UNLIMITED-Dimension, Anzahl der synoptischen Datensätze.
::: node_velocity_x:cell_methods = "height: mean"
# '''nMesh0_layer_2d''' : Anzahl der Schichten für tiefengemittelte Daten.
::: node_velocity_x:grid_mapping = "crs"
# '''nMesh0_layer_3d''' : Anzahl der Schichten für tiefenstrukturierte Daten.
# '''nMesh0_suspension_classes''' : Anzahl der Schwebstoffklassen, inklusive Summe aller Fraktionen.
# '''two''' : Konstante.


=Strömungsgeschwindigkeit, y-Komponente=
==Positionsbezeichnungen==


:: double node_velocity_y(time,vedge) ;
===Langer Name===
::: node_velocity_y:standard_name = "'''sea_water_y_velocity'''" ; \\ or better '''northward_sea_water_velocity'''
char Mesh0_node_long_name(nMesh0_node, nMesh0_strlen1) ;
::: ... ''weitere Attribute analog zur x-Komponente der Strömungsgeschwindigkeit''
: Mesh0_node_long_name:long_name = "Name Geoposition" ;
: Mesh0_node_long_name:name_id = 1395 ;


=Strömungsgeschwindigkeit, z-Komponente=
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.


:: double node_velocity_z(time,vedge) ;
===Code-Name===
::: node_velocity_z:standard_name = "'''upward_sea_water_velocity'''" ;  
char Mesh0_node_code_name(nMesh0_node, nMesh0_strlen2) ;
::: ... ''weitere Attribute analog zur x-Komponente der Strömungsgeschwindigkeit''
: 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" ;


=Schwebstoffgehalt, Gesamtmenge=
===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" ;


:: double node_suspended_matter(time,vedge) ;
==Positions-Farbcodes==
::: node_suspended_matter:standard_name = "'''mass_concentration_of_suspended_matter_in_sea_water'''" ;
int Mesh0_node_colour(nMesh0_node) ;
::: node_suspended_matter:long_name = "mass concentration of suspended sediments" ;  
: Mesh0_node_colour:long_name = "colour code of location" ;
::: node_suspended_matter:units = "kg m-3" ;
: Mesh0_node_colour:valid_range = 0, 9999 ;
::: node_suspended_matter:coordinates = "node_long_name node_lon node_lat"
: Mesh0_node_colour:_FillValue = -999 ;
::: node_suspended_matter:_FillValue = "''fillvalue''"
: Mesh0_node_colour:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
::: node_suspended_matter:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_node_colour:grid_mapping = "Mesh0_crs" ;
::: node_suspended_matter:cell_methods = "height: mean"
::: node_suspended_matter:grid_mapping = "crs"


=Schwebstoffgehalt, Fraktionen=
Hinweise:
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.


:: double node_suspended_matter_classes(suspension_classes,time,vedge) ;
==Positions-Identifikationsnummern==
::: node_suspended_matter_classes:standard_name = "'''mass_concentration_of_suspended_matter_in_sea_water'''" ;
int Mesh0_node_id(nMesh0_node) ;
::: node_suspended_matter_classes:long_name = "mass concentration of suspended sediment fraction" ;  
: Mesh0_node_id:long_name = "identification number of location" ;
::: node_suspended_matter_classes:units = "kg m-3" ;
: Mesh0_node_id:valid_range = 0, 9999 ;
::: node_suspended_matter_classes:coordinates = "node_long_name node_lon node_lat"
: Mesh0_node_id:_FillValue = -999 ;
::: node_suspended_matter_classes:_FillValue = "''fillvalue''"
: Mesh0_node_id:coordinates = "Mesh0_node_x Mesh0_node_y Mesh0_node_lon Mesh0_node_lat Mesh0_node_long_name" ;
::: node_suspended_matter_classes:valid_range = "''valid minimum'', ''valid maximum''"
: Mesh0_node_id:grid_mapping = "Mesh0_crs" ;
::: node_suspended_matter_classes:cell_methods = "height: mean"
::: node_suspended_matter_classes:grid_mapping = "crs"


Hinweise:
# Dimensionslose Variable, daher ist kein "units" Attribut vorhanden.


=Kompression von ''height'' und ''node''=
==Datenkompression==


:: integer vedge(vedge) ;
Siehe [[NetCDF Kompression von Daten durch Aufsammeln]].
::: vedge:compress="height node"


=Bezeichnung der Schwebstoffklassen=
==Gewichte==


:: char suspended_matter_classes_long_name(suspension_classes,strlen1) ;
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.
::: suspended_matter_classes_long_name:long_name = "long name of suspension class"


=Anmerkungen, Fragen=
===Längen===
* Datei ist vollständig CF-konform - keine Erweiterungen erforderlich!
* Soll das BAW-Attribut ''name_id'' (für den Code) zusätzlich benutzt werden?
* 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].


* Datei ist vollständig CF-konform - keine Erweiterungen erforderlich!
====Durchflusshöhe an Positionen====
* Wie unterscheiden wir ''aktuelle Tiefe'' und ''nicht weiter erodierbare Tiefe''? Neuer ''standard_name'' erforderlich?
float Mesh0_node_z_2d_bnd(nMesh0_data_time, nMesh0_node, two) ;
* Sind "coordinates" und "grid_mapping" für die Namensbezeichnungen erforderlich/sinnvoll?
* Auf die Daten einer Position kann auch über die Namensbezeichnungen zugegriffen werden, daher erscheint der Wert "node_long_name" in dem Attribut ''coordinates''. Dies entspricht der Empfehlung in Abschnitt 6.1 der [http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.4/cf-conventions.pdf CF-Metadaten Konvention].
* Benötigen wir ID und COLOR noch (in dieser Datei)? (sind oben vernachlässigt)
* Die Beschreibung der Koordinatentransformation ist für UTM- und Gauß-Krüger-Koordinaten geeignet.


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==
===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äß [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://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

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