Aktionen

NetCDF Synoptische Daten im unstrukturierten Gitter mit SubGrid

Aus BAWiki

Version vom 4. Mai 2011, 15:31 Uhr von imported>Lang Guenther (→‎Informationen für das HN-Verfahren: Masken ergänzt)

Kurze Beschreibung

Synoptische Daten für alle Berechnungspositionen eines unstrukturierten Gitters mit SubGrid.

Weitere Beschreibungen

Dimensionen

  1. nMesh2_node : Anzahl der Knoten.
  2. nMesh2_edge : Anzahl der Kanten.
  3. nMesh2_poly : Anzahl der Polygone (hier Dreiecke und Vierecke).
  4. nMesh2_subedgeclass : Anzahl der Subkanten-Tiefenklassen im Modellgebiet.
  5. nMesh2_subpolyclass : Anzahl der Subpolygon-Tiefenklassen im Modellgebiet.
  6. nMesh2_plot_subedges : Anzahl der Plot-Subkanten.
  7. nMesh2_plot_subpolys : Anzahl der Plot-Subpolygone.
  8. nMesh2_class_names_strlen : max. Anzahl der Zeichen in Schwebstoffklassennamen.
  9. nMesh2_time : Anzahl der Zeitpunkte (Gitterdatei).
  10. nMesh2_data_time : UNLIMITED-Dimension, Anzahl der synoptischen Datensätze.
  11. nMesh2_layer_2d : Anzahl der Schichten für tiefengemittelte Daten.
  12. nMesh2_layer_3d : Anzahl der Schichten für tiefenstrukturierte Daten.
  13. nMesh2_suspension_classes : Anzahl der Schwebstoffklassen, inklusive Summe aller Fraktionen.
  14. nMaxMesh2_poly_nodes : maximale Anzahl der Knoten/Kanten in einem Polygon.
  15. nMaxMesh2_subedgeclass : maximale Anzahl der Subkanten-Tiefenklassen für eine Kante.
  16. nMaxMesh2_subpolyclass : maximale Anzahl der Subpolygon-Tiefenklassen für ein Polygon.
  17. nMaxMesh2_plot_subedges : maximale Anzahl der Plot-Subkanten einer Kante.
  18. nMaxMesh2_plot_subpolys : maximale Anzahl der Plot-Subpolygone eines Polygons.
  19. nMaxMesh2_subpoly_subnodes : maximale Anzahl der Plot-Subknoten eines Plot-Subpolygons.
  20. two : Konstante ( = 2 ).

Datenkompression

Siehe NetCDF Kompression von Daten durch Aufsammeln.

Gewichte

Maximale Fläche der Polygone

double Mesh2_poly_cell_area(nMesh2_poly) ;

Mesh2_poly_cell_area:long_name = "Flaeche des Polygons, Modellflaeche" ;
Mesh2_poly_cell_area:units = "m2" ;
Mesh2_poly_cell_area:name_id = -999 ;
Mesh2_poly_cell_area:valid_range = 0., 1000000. ;
Mesh2_poly_cell_area:_FillValue = 1.e+31 ;
Mesh2_poly_cell_area:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_poly_cell_area:grid_mapping = "Mesh2_crs" ;
Mesh2_poly_cell_area:standard_name = "cell_area" ;
Mesh2_poly_cell_area:mesh = "Mesh2" ;
Mesh2_poly_cell_area:location = "poly" ;

Hinweise:

  1. Fläche entspricht der maximalen Wasserfläche (nutzbare Fläche) in einem Berechnungspolygon.
  2. Diese Fläche ist immer kleiner oder gleich der aus den Koordinaten des Polygons abgeleiteten Fläche.

Wasserbedeckte Fläche der Polygone

double Mesh2_poly_wet_area(nMesh2_data_time, nMesh2_poly) ;

Mesh2_poly_wet_area:long_name = "wasserbedeckte Flaeche des Polygons" ;
Mesh2_poly_wet_area:units = "m2" ;
Mesh2_poly_wet_area:name_id = -999 ;
Mesh2_poly_wet_area:valid_range = 0., 1000000. ;
Mesh2_poly_wet_area:_FillValue = 1.e+31 ;
Mesh2_poly_wet_area:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_poly_wet_area:grid_mapping = "Mesh2_crs" ;
Mesh2_poly_wet_area:standard_name = "sea_area" ;
Mesh2_poly_wet_area:mesh = "Mesh2" ;
Mesh2_poly_wet_area:location = "poly" ;

Hinweise:

  1. Fläche entspricht der aktuellen Wasserfläche in einem Berechnungspolygon.
  2. Diese Fläche ist immer kleiner oder gleich der maximal nutzbaren Fläche "Mesh2_poly_cell_area".

Durchströmte Fläche über Kanten

double Mesh2_edge_flow_area(nMesh2_data_time, nMesh2_layer_2d, nMesh2_edge) ;

Mesh2_edge_flow_area:long_name = "Durchflussflaeche, Kante" ;
Mesh2_edge_flow_area:units = "m2" ;
Mesh2_edge_flow_area:name_id = -999 ;
Mesh2_edge_flow_area:valid_range = 0., 10000. ;
Mesh2_edge_flow_area:_FillValue = 1.e+31 ;
Mesh2_edge_flow_area:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_2d" ;
Mesh2_edge_flow_area:grid_mapping = "Mesh2_crs" ;
Mesh2_edge_flow_area:mesh = "Mesh2" ;
Mesh2_edge_flow_area:location = "edge" ;
Mesh2_edge_flow_area:comment = "kein CF Standardname verfuegbar" ;

Hinweise:

  1. Entspricht der gesamten durchströmten Fläche über einer Kante.

Durchströmte Fläche der Zellenseiten

double Mesh2_face_flow_area(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

Mesh2_face_flow_area:long_name = "Durchflussflaeche, Zellenseitenflaechen" ;
Mesh2_face_flow_area:units = "m2" ;
Mesh2_face_flow_area:name_id = -999 ;
Mesh2_face_flow_area:valid_range = 0., 10000. ;
Mesh2_face_flow_area:_FillValue = 1.e+31 ;
Mesh2_face_flow_area:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_face_flow_area:grid_mapping = "Mesh2_crs" ;
Mesh2_face_flow_area:mesh = "Mesh2" ;
Mesh2_face_flow_area:location = "edge" ;
Mesh2_face_flow_area:comment = "kein CF Standardname verfuegbar" ;

Hinweise:

  1. Entspricht jeweils der durchströmten Fläche in einer Tiefenschicht über einer Kante.

Wasservolumen über Polygonen

double Mesh2_poly_water_volume(nMesh2_data_time, nMesh2_layer_2d, nMesh2_poly) ;

Mesh2_poly_water_volume:long_name = "Wasservolumen, Polygon" ;
Mesh2_poly_water_volume:units = "m3" ;
Mesh2_poly_water_volume:name_id = -999 ;
Mesh2_poly_water_volume:valid_range = 0., 1000000. ;
Mesh2_poly_water_volume:_FillValue = 1.e+31 ;
Mesh2_poly_water_volume:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_z_2d" ;
Mesh2_poly_water_volume:grid_mapping = "Mesh2_crs" ;
Mesh2_poly_water_volume:standard_name = "sea_water_volume" ;
Mesh2_poly_water_volume:mesh = "Mesh2" ;
Mesh2_poly_water_volume:location = "poly" ;

Hinweise:

  1. Entspricht dem gesamten Wasservolumen über einem Polygon.

Wasservolumen in Zellen

double Mesh2_cell_water_volume(nMesh2_data_time, nMesh2_layer_3d, nMesh2_poly) ;

Mesh2_cell_water_volume:long_name = "Wasservolumen, Zelle" ;
Mesh2_cell_water_volume:units = "m3" ;
Mesh2_cell_water_volume:name_id = -999 ;
Mesh2_cell_water_volume:valid_range = 0., 1000000. ;
Mesh2_cell_water_volume:_FillValue = 1.e+31 ;
Mesh2_cell_water_volume:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_z_3d" ;
Mesh2_cell_water_volume:grid_mapping = "Mesh2_crs" ;
Mesh2_cell_water_volume:standard_name = "sea_water_volume" ;
Mesh2_cell_water_volume:mesh = "Mesh2" ;
Mesh2_cell_water_volume:location = "poly" ;

Hinweise:

  1. Entspricht jeweils dem Wasservolumen in einer Tiefenschicht über einem Polygon.

Länge der Subkanten-Tiefenklassen

double Mesh2_subedgeclass_length(nMesh2_edge, nMaxMesh2_subedgeclass) ;

Mesh2_subedgeclass_length:long_name = "SubKanten Laengenklassen fuer alle Kanten" ;
Mesh2_subedgeclass_length:units = "m" ;
Mesh2_subedgeclass_length:name_id = -999 ;
Mesh2_subedgeclass_length:valid_range = 0., 10000. ;
Mesh2_subedgeclass_length:_FillValue = 1.e+31 ;
Mesh2_subedgeclass_length:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ;
Mesh2_subedgeclass_length:grid_mapping = "Mesh2_crs" ;
Mesh2_subedgeclass_length:mesh = "Mesh2" ;
Mesh2_subedgeclass_length:location = "edge" ;

Hinweise:

  1. Länge ist ggf. aggregierte Länge aus mehreren Abschnitten mit identischer Tiefe.

Fläche der Subpolygon-Tiefenklassen

double Mesh2_subpolyclass_area(nMesh2_poly, nMaxMesh2_subpolyclass) ;

Mesh2_subpolyclass_area:long_name = "SubKanten Laengenklassen fuer alle Kanten" ;
Mesh2_subpolyclass_area:units = "m2" ;
Mesh2_subpolyclass_area:name_id = -999 ;
Mesh2_subpolyclass_area:valid_range = 0., 1000000. ;
Mesh2_subpolyclass_area:_FillValue = 1.e+31 ;
Mesh2_subpolyclass_area:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_subpolyclass_area:grid_mapping = "Mesh2_crs" ;
Mesh2_subpolyclass_area:standard_name = "cell_area" ;
Mesh2_subpolyclass_area:mesh = "Mesh2" ;
Mesh2_subpolyclass_area:location = "poly" ;

Hinweise:

  1. Fläche ist ggf. aggregierte Fläche aus mehreren Teilflächen mit identischer Tiefe.

Zeitkoordinaten

Vertikalkoordinaten

Knoten

Für das mathematische Verfahren UNTRIM2 mit SubGrid liegen keine Daten an Knoten vor.

Kanten

Tiefengemittelte Daten

double Mesh2_edge_z_2d(nMesh2_data_time, nMesh2_edge) ;

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

double Mesh2_edge_z_2d_bnd(nMesh2_data_time, nMesh2_edge, two) ;

Hinweise:

  1. Da Hilfs-Koordinatenvariable werden die Attribute "mesh" und "location" nicht angegeben.
  2. Der aktuelle Wert bezeichnet die Mitte zwischen aktueller Wasseroberfläche und maximaler Tiefe der Gewässersohle.
  3. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Tiefenstrukturierte Daten

double Mesh2_edge_z_3d(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

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

double Mesh2_edge_z_3d_bnd(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge, two) ;

Hinweise:

  1. Da Hilfs-Koordinatenvariable werden die Attribute "mesh" und "location" nicht angegeben.
  2. Der aktuelle Wert bezeichnet die Mitte der jeweiligen z-Schicht.
  3. Aus der Boundary-Variablen ergeben sich die aktuellen Schichtgrenzen.
  4. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Polygone

Tiefengemittelte Daten

double Mesh2_poly_z_2d(nMesh2_data_time, nMesh2_poly) ;

Mesh2_poly_z_2d:long_name = "zeit- und ortsvariable Tiefe der Datenpunkte" ;
Mesh2_poly_z_2d:units = "m" ;
Mesh2_poly_z_2d:positive = "down" ;
Mesh2_poly_z_2d:bounds = "Mesh2_poly_z_2d_bnd" ;
Mesh2_poly_z_2d:standard_name = "depth" ;
double Mesh2_poly_z_2d_bnd(nMesh2_data_time, nMesh2_poly, two) ;

Hinweise:

  1. Da Hilfs-Koordinatenvariable werden die Attribute "mesh" und "location" nicht angegeben.
  2. Der aktuelle Wert bezeichnet die Mitte zwischen aktueller Wasseroberfläche und maximaler Tiefe der Gewässersohle.
  3. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Tiefenstrukturierte Daten

double Mesh2_poly_z_3d(nMesh2_data_time, nMesh2_layer_3d, nMesh2_poly) ;

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

double Mesh2_poly_z_3d_bnd(nMesh2_data_time, nMesh2_layer_3d, nMesh2_poly, two) ;

Hinweise:

  1. Da Hilfs-Koordinatenvariable werden die Attribute "mesh" und "location" nicht angegeben.
  2. Der aktuelle Wert bezeichnet die Mitte der jeweiligen z-Schicht.
  3. Aus der Boundary-Variablen ergeben sich die aktuellen Schichtgrenzen.
  4. Das Attribut "axis" ist nicht zulässig, da es sich um eine Hilfs-Vertikalkoordinate handelt.

Informationen für das HN-Verfahren

Subkanten-Tiefenklassen der Plot-Subkanten

int Mesh2_plot_subedge_to_subedgeclass(nMesh2_plot_subedges) ;

Mesh2_plot_subedge_to_subedgeclass:long_name = "(lokale) SubKanten-Tiefenklassen aller Plot-SubKanten" ;
Mesh2_plot_subedge_to_subedgeclass:name_id = -999 ;
Mesh2_plot_subedge_to_subedgeclass:valid_range = 0, 1000000 ;
Mesh2_plot_subedge_to_subedgeclass:_FillValue = -999 ;
Mesh2_plot_subedge_to_subedgeclass:coordinates = "Mesh2_plot_subedge_x Mesh2_plot_subedge_y Mesh2_plot_subedge_lon Mesh2_plot_subedge_lat" ;
Mesh2_plot_subedge_to_subedgeclass:grid_mapping = "Mesh2_crs" ;
Mesh2_plot_subedge_to_subedgeclass:mesh = "Mesh2" ;
Mesh2_plot_subedge_to_subedgeclass:location = "subedge" ;

Hinweise:

  1. Mehrere Plot-Subkanten einer Kante können auf dieselbe Subkanten-Tiefenklasse verweisen.
  2. Es erscheint zweckmäßig, auf die lokale (kantenbezogene) Tiefenklasse zu verweisen.

Subpolygon-Tiefenklassen der Plot-Subpolygone

int Mesh2_plot_subpoly_to_subpolyclass(nMesh2_plot_subpolys) ;

Mesh2_plot_subpoly_to_subpolyclass:long_name = "(lokale) SubPolygon-Tiefenklassen aller Plot-SubPolygone" ;
Mesh2_plot_subpoly_to_subpolyclass:name_id = -999 ;
Mesh2_plot_subpoly_to_subpolyclass:valid_range = 0, 1000000 ;
Mesh2_plot_subpoly_to_subpolyclass:_FillValue = -999 ;
Mesh2_plot_subpoly_to_subpolyclass:coordinates = "Mesh2_plot_subpoly_x Mesh2_plot_subpoly_y Mesh2_plot_subpoly_lon Mesh2_plot_subpoly_lat" ;
Mesh2_plot_subpoly_to_subpolyclass:grid_mapping = "Mesh2_crs" ;
Mesh2_plot_subpoly_to_subpolyclass:mesh = "Mesh2" ;
Mesh2_plot_subpoly_to_subpolyclass:location = "subpoly" ;

Hinweise:

  1. Mehrere Plot-Subpolygone eines Polygons können auf dieselbe Subpolygon-Tiefenklasse verweisen.
  2. Es erscheint zweckmäßig, auf die lokale (polygonbezogene) Tiefenklasse zu verweisen.

Masken

Subkanten-Tiefenklassen-Maske

byte Mesh2_subedgeclass_land_binary_mask(nMesh2_data_time, nMesh2_edge, nMaxMesh2_subedgeclass) ;

Mesh2_subedgeclass_land_binary_mask:long_name = "SubKanten-Maske fuer Land-Wasser-Unterscheidung" ;
Mesh2_subedgeclass_land_binary_mask:units = "1" ;
Mesh2_subedgeclass_land_binary_mask:name_id = -999 ;
Mesh2_subedgeclass_land_binary_mask:valid_range = 0b, 1b ;
Mesh2_subedgeclass_land_binary_mask:_FillValue = -128b ;
Mesh2_subedgeclass_land_binary_mask:cell_methods = "nMesh2_data_time: point" ;
Mesh2_subedgeclass_land_binary_mask:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ;
Mesh2_subedgeclass_land_binary_mask:grid_mapping = "Mesh2_crs" ;
Mesh2_subedgeclass_land_binary_mask:standard_name = "land_binary_mask" ;
Mesh2_subedgeclass_land_binary_mask:mesh = "Mesh2" ;
Mesh2_subedgeclass_land_binary_mask:location = "edge" ;
Mesh2_subedgeclass_land_binary_mask:comment = "land = 1, sea = 0" ;

Hinweise:

  1. Markiert die Subkanten-Tiefenklassen einer Kante als Land oder Wasser.
  2. Vereinfacht ggf. die Interpretation der Berechnungsergebnisse im Postprocessing.

Subseitenflächen-Tiefenklassen-Maske

byte Mesh2_subfaceclass_land_binary_mask(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge, nMaxMesh2_subedgeclass) ;

Mesh2_subfaceclass_land_binary_mask:long_name = "SubZellenseitenflaechen-Maske fuer Land-Wasser-Unterscheidung" ;
Mesh2_subfaceclass_land_binary_mask:units = "1" ;
Mesh2_subfaceclass_land_binary_mask:name_id = -999 ;
Mesh2_subfaceclass_land_binary_mask:valid_range = 0b, 1b ;
Mesh2_subfaceclass_land_binary_mask:_FillValue = -128b ;
Mesh2_subfaceclass_land_binary_mask:cell_methods = "nMesh2_data_time: point" ;
Mesh2_subfaceclass_land_binary_mask:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_subfaceclass_land_binary_mask:grid_mapping = "Mesh2_crs" ;
Mesh2_subfaceclass_land_binary_mask:standard_name = "land_binary_mask" ;
Mesh2_subfaceclass_land_binary_mask:mesh = "Mesh2" ;
Mesh2_subfaceclass_land_binary_mask:location = "edge" ;
Mesh2_subfaceclass_land_binary_mask:comment = "land = 1, sea = 0" ;

Hinweise:

  1. Markiert die Subkanten-Tiefenklassen einer Kante, in Abhängigkeit von der Tiefenschicht, als Land oder Wasser.
  2. Vereinfacht ggf. die Interpretation der Berechnungsergebnisse im Postprocessing.

Subpolygon-Tiefenklassen-Maske

byte Mesh2_subpolyclass_land_binary_mask(nMesh2_data_time, nMesh2_poly, nMaxMesh2_subpolyclass) ;

Mesh2_subpolyclass_land_binary_mask:long_name = "SubPolygon-Maske fuer Land-Wasser-Unterscheidung" ;
Mesh2_subpolyclass_land_binary_mask:units = "1" ;
Mesh2_subpolyclass_land_binary_mask:name_id = -999 ;
Mesh2_subpolyclass_land_binary_mask:valid_range = 0b, 1b ;
Mesh2_subpolyclass_land_binary_mask:_FillValue = -128b ;
Mesh2_subpolyclass_land_binary_mask:cell_methods = "nMesh2_data_time: point" ;
Mesh2_subpolyclass_land_binary_mask:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_subpolyclass_land_binary_mask:grid_mapping = "Mesh2_crs" ;
Mesh2_subpolyclass_land_binary_mask:standard_name = "land_binary_mask" ;
Mesh2_subpolyclass_land_binary_mask:mesh = "Mesh2" ;
Mesh2_subpolyclass_land_binary_mask:location = "poly" ;
Mesh2_subpolyclass_land_binary_mask:comment = "land = 1, sea = 0" ;

Hinweise:

  1. Markiert die Subzellen-Tiefenklassen eines Polygons als Land oder Wasser.
  2. Vereinfacht ggf. die Interpretation der Berechnungsergebnisse im Postprocessing.

Subzellen-Tiefenklassen-Maske

byte Mesh2_subcellclass_land_binary_mask(nMesh2_data_time, nMesh2_layer_3d, nMesh2_poly, nMaxMesh2_subpolyclass) ;

Mesh2_subcellclass_land_binary_mask:long_name = "SubZellen-Maske fuer Land-Wasser-Unterscheidung" ;
Mesh2_subcellclass_land_binary_mask:units = "1" ;
Mesh2_subcellclass_land_binary_mask:name_id = -999 ;
Mesh2_subcellclass_land_binary_mask:valid_range = 0b, 1b ;
Mesh2_subcellclass_land_binary_mask:_FillValue = -128b ;
Mesh2_subcellclass_land_binary_mask:cell_methods = "nMesh2_data_time: point" ;
Mesh2_subcellclass_land_binary_mask:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_z_3d" ;
Mesh2_subcellclass_land_binary_mask:grid_mapping = "Mesh2_crs" ;
Mesh2_subcellclass_land_binary_mask:standard_name = "land_binary_mask" ;
Mesh2_subcellclass_land_binary_mask:mesh = "Mesh2" ;
Mesh2_subcellclass_land_binary_mask:location = "poly" ;
Mesh2_subcellclass_land_binary_mask:comment = "land = 1, sea = 0" ;

Hinweise:

  1. Markiert die Subpolygon-Tiefenklassen eines Polygons, in Abhängigkeit von der Tiefenschicht, als Land oder Wasser.
  2. Vereinfacht ggf. die Interpretation der Berechnungsergebnisse im Postprocessing.

Aktuelle (zeitvariable) SubGrid-Topografie

Knoten

Für das mathematische Verfahren UNTRIM2 liegen keine Daten an Knoten vor.

Subkanten

Konstant in Zeitraum

Hier nicht weiter ausgeführt.

Zeitvariabel

double Mesh2_subedgeclass_depth(nMesh2_data_time, nMesh2_edge, nMaxMesh2_subedgeclass) ;

Mesh2_subedgeclass_depth:long_name = "SubKanten Tiefenklassen fuer alle Kanten" ;
Mesh2_subedgeclass_depth:units = "m" ;
Mesh2_subedgeclass_depth:name_id = 17 ;
Mesh2_subedgeclass_depth:valid_range = -8848., 11034. ;
Mesh2_subedgeclass_depth:_FillValue = 1.e+31 ;
Mesh2_subedgeclass_depth:cell_methods = "nMesh2_data_time: point" ;
Mesh2_subedgeclass_depth:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ;
Mesh2_subedgeclass_depth:grid_mapping = "Mesh2_crs" ;
Mesh2_subedgeclass_depth:standard_name = "sea_floor_depth_below_geoid" ;
Mesh2_subedgeclass_depth:mesh = "Mesh2" ;
Mesh2_subedgeclass_depth:location = "edge" ;
Mesh2_subedgeclass_depth:comment = "cell_measure = length: Mesh2_subedgeclass_length nicht CF-konform" ;

Hinweise:

  1. Tiefen sind Mittelwerte für die entsprechenden Subkanten.
  2. Dieser Sachverhalt kann derzeit nicht CF konform ausgedrückt werden, da hierfür das Attribut "cell_measures" für "length" erweitert werden müsste.

Subpolygone

Konstant in Zeitraum

Hier nicht weiter ausgeführt.

Zeitvariabel

double Mesh2_subpolyclass_depth(nMesh2_data_time, nMesh2_poly, nMaxMesh2_subpolyclass) ;

Mesh2_subpolyclass_depth:long_name = "SubPolygon Tiefenklassen fuer alle Polygone" ;
Mesh2_subpolyclass_depth:units = "m" ;
Mesh2_subpolyclass_depth:name_id = 17 ;
Mesh2_subpolyclass_depth:valid_range = -8848., 11034. ;
Mesh2_subpolyclass_depth:_FillValue = 1.e+31 ;
Mesh2_subpolyclass_depth:cell_methods = "nMesh2_data_time: point area: mean" ;
Mesh2_subpolyclass_depth:cell_measures = "area: Mesh2_subpolyclass_area" ;
Mesh2_subpolyclass_depth:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_subpolyclass_depth:grid_mapping = "Mesh2_crs" ;
Mesh2_subpolyclass_depth:standard_name = "sea_floor_depth_below_geoid" ;
Mesh2_subpolyclass_depth:mesh = "Mesh2" ;
Mesh2_subpolyclass_depth:location = "poly" ;

Hinweise:

  1. Tiefen sind Mittelwerte für die entsprechenden Subpolygone.

Maximale zulässige Tiefe

Knoten

Für das mathematische Verfahren UNTRIM2 liegen keine Daten an Knoten vor.

Subkanten

double Mesh2_max_subedgeclass_depth(nMesh2_time, nMesh2_edge, nMaxMesh2_subedgeclass) ;

Mesh2_max_subedgeclass_depth:long_name = "SubKanten Tiefenklassen (nicht weiter erodierbare Tiefe) fuer alle Kanten" ;
Mesh2_max_subedgeclass_depth:units = "m" ;
Mesh2_max_subedgeclass_depth:name_id = 1149 ;
Mesh2_max_subedgeclass_depth:valid_range = -8848., 11034. ;
Mesh2_max_subedgeclass_depth:_FillValue = 1.e+31 ;
Mesh2_max_subedgeclass_depth:cell_methods = "nMesh2_time: mean" ;
Mesh2_max_subedgeclass_depth:standard_name = "sea_floor_depth_below_geoid" ;
Mesh2_max_subedgeclass_depth:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat" ;
Mesh2_max_subedgeclass_depth:grid_mapping = "Mesh2_crs" ;
Mesh2_max_subedgeclass_depth:mesh = "Mesh2" ;
Mesh2_max_subedgeclass_depth:location = "edge" ;
Mesh2_max_subedgeclass_depth:comment = "cell_measure = length: Mesh2_subedgeclass_length nicht CF-konform" ;

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

Subpolygone

double Mesh2_max_subpolyclass_depth(nMesh2_time, nMesh2_poly, nMaxMesh2_subpolyclass) ;

Mesh2_max_subpolyclass_depth:long_name = "SubPolygon Tiefenklassen (nicht weiter erodierbare Tiefe) fuer alle Polygone" ;
Mesh2_max_subpolyclass_depth:units = "m" ;
Mesh2_max_subpolyclass_depth:name_id = 1149 ;
Mesh2_max_subpolyclass_depth:valid_range = -8848., 11034. ;
Mesh2_max_subpolyclass_depth:_FillValue = 1.e+31 ;
Mesh2_max_subpolyclass_depth:cell_methods = "nMesh2_time: mean area: mean" ;
Mesh2_max_subpolyclass_depth:cell_measures = "area: Mesh2_subpolyclass_area" ;
Mesh2_max_subpolyclass_depth:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_max_subpolyclass_depth:grid_mapping = "Mesh2_crs" ;
Mesh2_max_subpolyclass_depth:standard_name = "sea_floor_depth_below_geoid" ;
Mesh2_max_subpolyclass_depth:mesh = "Mesh2" ;
Mesh2_max_subpolyclass_depth:location = "poly" ;

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

double Mesh2_poly_water_level(nMesh2_data_time, nMesh2_poly) ;

Mesh2_poly_water_level:long_name = "Wasserspiegelauslenkung, Polygon" ;
Mesh2_poly_water_level:units = "m" ;
Mesh2_poly_water_level:name_id = 3 ;
Mesh2_poly_water_level:valid_range = -11034., 8848. ;
Mesh2_poly_water_level:_FillValue = 1.e+31 ;
Mesh2_poly_water_level:cell_methods = "nMesh2_data_time: point area: mean" ;
Mesh2_poly_water_level:cell_measures = "area: Mesh2_poly_wet_area" ;
Mesh2_poly_water_level:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat" ;
Mesh2_poly_water_level:grid_mapping = "Mesh2_crs" ;
Mesh2_poly_water_level:standard_name = "sea_surface_height" ;
Mesh2_poly_water_level:mesh = "Mesh2" ;
Mesh2_poly_water_level:location = "poly" ;

Hinweise:

  1. Wasserstand ist nur an Polygonen definiert.
  2. Wert entspricht dem Mittelwert im nassen Bereich des Polygons (Gewicht "Mesh2_poly_wet_area").

Tiefengemittelter Salzgehalt

double Mesh2_poly_salinity(nMesh2_data_time, nMesh2_layer_2d, nMesh2_poly) ;

Mesh2_poly_salinity:long_name = "Salzgehalt, Polygon" ;
Mesh2_poly_salinity:units = "0.001" ;
Mesh2_poly_salinity:name_id = 5 ;
Mesh2_poly_salinity:valid_range = 0., 40. ;
Mesh2_poly_salinity:_FillValue = 1.e+31 ;
Mesh2_poly_salinity:cell_methods = "nMesh2_data_time: point nMesh2_layer_2d: mean area: mean" ;
Mesh2_poly_salinity:cell_measures = "volume: Mesh2_poly_water_volume" ;
Mesh2_poly_salinity:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_z_2d" ;
Mesh2_poly_salinity:grid_mapping = "Mesh2_crs" ;
Mesh2_poly_salinity:standard_name = "sea_water_salinity" ;
Mesh2_poly_salinity:mesh = "Mesh2" ;
Mesh2_poly_salinity:location = "poly" ;

Hinweise:

  1. Salzgehalt ist nur an Polygonen definiert.
  2. Wert entspricht dem Mittelwert für das Wasservolumen über dem Polygon (Gewicht "Mesh2_poly_water_volume").

Tiefenstrukturierter Salzgehalt

double Mesh2_cell_salinity(nMesh2_data_time, nMesh2_layer_3d, nMesh2_poly) ;

Mesh2_cell_salinity:long_name = "Salzgehalt, Zelle" ;
Mesh2_cell_salinity:units = "0.001" ;
Mesh2_cell_salinity:name_id = 5 ;
Mesh2_cell_salinity:valid_range = 0., 40. ;
Mesh2_cell_salinity:_FillValue = 1.e+31 ;
Mesh2_cell_salinity:cell_methods = "nMesh2_data_time: point nMesh2_layer_3d: mean area: mean" ;
Mesh2_cell_salinity:cell_measures = "volume: Mesh2_cell_water_volume" ;
Mesh2_cell_salinity:coordinates = "Mesh2_poly_x Mesh2_poly_y Mesh2_poly_lon Mesh2_poly_lat Mesh2_poly_z_3d" ;
Mesh2_cell_salinity:grid_mapping = "Mesh2_crs" ;
Mesh2_cell_salinity:standard_name = "sea_water_salinity" ;
Mesh2_cell_salinity:mesh = "Mesh2" ;
Mesh2_cell_salinity:location = "poly" ;

Hinweise:

  1. Salzgehalt ist nur an Polygonen definiert.
  2. Wert entspricht dem Mittelwert für das Wasservolumen in den Zellen über einem Polygon (Gewicht "Mesh2_cell_water_volume").

Tiefengemittelte Strömungsgeschwindigkeit

x-Komponente

double Mesh2_edge_velocity_x(nMesh2_data_time, nMesh2_layer_2d, nMesh2_edge) ;

Mesh2_edge_velocity_x:long_name = "Stroemungsgeschwindigkeit, x-Komponente, Kante" ;
Mesh2_edge_velocity_x:units = "m s-1" ;
Mesh2_edge_velocity_x:name_id = 2 ;
Mesh2_edge_velocity_x:valid_range = -10., 10. ;
Mesh2_edge_velocity_x:_FillValue = 1.e+31 ;
Mesh2_edge_velocity_x:cell_methods = "nMesh2_data_time: point nMesh2_layer_2d: mean area: mean" ;
Mesh2_edge_velocity_x:cell_measures = "area: Mesh2_edge_flow_area" ;
Mesh2_edge_velocity_x:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_2d" ;
Mesh2_edge_velocity_x:grid_mapping = "Mesh2_crs" ;
Mesh2_edge_velocity_x:standard_name = "sea_water_x_velocity" ;
Mesh2_edge_velocity_x:mesh = "Mesh2" ;
Mesh2_edge_velocity_x:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwert für die durchströmte Fläche über einer Kante (Gewicht "Mesh2_edge_flow_area").

y-Komponente

double Mesh2_edge_velocity_y(nMesh2_data_time, nMesh2_layer_2d, nMesh2_edge) ;

Mesh2_edge_velocity_y:long_name = "Stroemungsgeschwindigkeit, y-Komponente, Kante" ;
Mesh2_edge_velocity_y:units = "m s-1" ;
Mesh2_edge_velocity_y:name_id = 2 ;
Mesh2_edge_velocity_y:valid_range = -10., 10. ;
Mesh2_edge_velocity_y:_FillValue = 1.e+31 ;
Mesh2_edge_velocity_y:cell_methods = "nMesh2_data_time: point nMesh2_layer_2d: mean area: mean" ;
Mesh2_edge_velocity_y:cell_measures = "area: Mesh2_edge_flow_area" ;
Mesh2_edge_velocity_y:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_2d" ;
Mesh2_edge_velocity_y:grid_mapping = "Mesh2_crs" ;
Mesh2_edge_velocity_y:standard_name = "sea_water_y_velocity" ;
Mesh2_edge_velocity_y:mesh = "Mesh2" ;
Mesh2_edge_velocity_y:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwert für die durchströmte Fläche über einer Kante (Gewicht "Mesh2_edge_flow_area").

Betrag

double Mesh2_edge_velocity_m(nMesh2_data_time, nMesh2_layer_2d, nMesh2_edge) ;

Mesh2_edge_velocity_m:long_name = "Stroemungsgeschwindigkeit, Betrag, Kante" ;
Mesh2_edge_velocity_m:units = "m s-1" ;
Mesh2_edge_velocity_m:name_id = 2 ;
Mesh2_edge_velocity_m:valid_range = 0., 10. ;
Mesh2_edge_velocity_m:_FillValue = 1.e+31 ;
Mesh2_edge_velocity_m:cell_methods = "nMesh2_data_time: point nMesh2_layer_2d: mean area: mean" ;
Mesh2_edge_velocity_m:cell_measures = "area: Mesh2_edge_flow_area" ;
Mesh2_edge_velocity_m:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_2d" ;
Mesh2_edge_velocity_m:grid_mapping = "Mesh2_crs" ;
Mesh2_edge_velocity_m:standard_name = "magnitude_of_sea_water_velocity" ;
Mesh2_edge_velocity_m:mesh = "Mesh2" ;
Mesh2_edge_velocity_m:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwert für die durchströmte Fläche über einer Kante (Gewicht "Mesh2_edge_flow_area").

Tiefenstrukturierte Strömungsgeschwindigkeit

x-Komponente

double Mesh2_face_velocity_x(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

Mesh2_face_velocity_x:long_name = "Stroemungsgeschwindigkeit, x-Komponente, Zellenseitenflaeche" ;
Mesh2_face_velocity_x:units = "m s-1" ;
Mesh2_face_velocity_x:name_id = 2 ;
Mesh2_face_velocity_x:valid_range = -10., 10. ;
Mesh2_face_velocity_x:_FillValue = 1.e+31 ;
Mesh2_face_velocity_x:cell_methods = "nMesh2_data_time: point nMesh2_layer_3d: mean area: mean" ;
Mesh2_face_velocity_x:cell_measures = "area: Mesh2_face_flow_area" ;
Mesh2_face_velocity_x:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_face_velocity_x:grid_mapping = "Mesh2_crs" ;
Mesh2_face_velocity_x:standard_name = "sea_water_x_velocity" ;
Mesh2_face_velocity_x:mesh = "Mesh2" ;
Mesh2_face_velocity_x:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwerte für die durchströmte Fläche in einer Tiefenschicht über einer Kante (Gewicht "Mesh2_face_flow_area").

y-Komponente

double Mesh2_face_velocity_y(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

Mesh2_face_velocity_y:long_name = "Stroemungsgeschwindigkeit, y-Komponente, Zellenseitenflaeche" ;
Mesh2_face_velocity_y:units = "m s-1" ;
Mesh2_face_velocity_y:name_id = 2 ;
Mesh2_face_velocity_y:valid_range = -10., 10. ;
Mesh2_face_velocity_y:_FillValue = 1.e+31 ;
Mesh2_face_velocity_y:cell_methods = "nMesh2_data_time: point nMesh2_layer_3d: mean area: mean" ;
Mesh2_face_velocity_y:cell_measures = "area: Mesh2_face_flow_area" ;
Mesh2_face_velocity_y:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_face_velocity_y:grid_mapping = "Mesh2_crs" ;
Mesh2_face_velocity_y:standard_name = "sea_water_y_velocity" ;
Mesh2_face_velocity_y:mesh = "Mesh2" ;
Mesh2_face_velocity_y:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwerte für die durchströmte Fläche in einer Tiefenschicht über einer Kante (Gewicht "Mesh2_face_flow_area").

z-Komponente

double Mesh2_face_velocity_z(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

Mesh2_face_velocity_z:long_name = "Stroemungsgeschwindigkeit, z-Komponente, Zellenseitenflaeche" ;
Mesh2_face_velocity_z:units = "m s-1" ;
Mesh2_face_velocity_z:name_id = 2 ;
Mesh2_face_velocity_z:valid_range = -1., 1. ;
Mesh2_face_velocity_z:_FillValue = 1.e+31 ;
Mesh2_face_velocity_z:cell_methods = "nMesh2_data_time: point nMesh2_layer_3d: mean area: mean" ;
Mesh2_face_velocity_z:cell_measures = "area: Mesh2_face_flow_area" ;
Mesh2_face_velocity_z:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_face_velocity_z:grid_mapping = "Mesh2_crs" ;
Mesh2_face_velocity_z:standard_name = "upward_sea_water_velocity" ;
Mesh2_face_velocity_z:mesh = "Mesh2" ;
Mesh2_face_velocity_z:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwerte für die durchströmte Fläche in einer Tiefenschicht über einer Kante (Gewicht "Mesh2_face_flow_area").

Betrag

double Mesh2_face_velocity_m(nMesh2_data_time, nMesh2_layer_3d, nMesh2_edge) ;

Mesh2_face_velocity_m:long_name = "Stroemungsgeschwindigkeit, Betrag, Zellenseitenflaeche" ;
Mesh2_face_velocity_m:units = "m s-1" ;
Mesh2_face_velocity_m:name_id = 2 ;
Mesh2_face_velocity_m:valid_range = 0., 10. ;
Mesh2_face_velocity_m:_FillValue = 1.e+31 ;
Mesh2_face_velocity_m:cell_methods = "nMesh2_data_time: point nMesh2_layer_3d: mean area: mean" ;
Mesh2_face_velocity_m:cell_measures = "area: Mesh2_face_flow_area" ;
Mesh2_face_velocity_m:coordinates = "Mesh2_edge_x Mesh2_edge_y Mesh2_edge_lon Mesh2_edge_lat Mesh2_edge_z_3d" ;
Mesh2_face_velocity_m:grid_mapping = "Mesh2_crs" ;
Mesh2_face_velocity_m:standard_name = "magnitude_of_sea_water_velocity" ;
Mesh2_face_velocity_m:mesh = "Mesh2" ;
Mesh2_face_velocity_m:location = "edge" ;

Hinweise:

  1. Strömungsgeschwindigkeit ist nur an Kanten definiert.
  2. Wert entspricht dem Mittelwerte für die durchströmte Fläche in einer Tiefenschicht über einer Kante (Gewicht "Mesh2_face_flow_area").

Anmerkungen


zurück zu NetCDF


Strukturübersicht