Aktionen

NetCDF Vertikalkoordinate: Unterschied zwischen den Versionen

Aus BAWiki

imported>Lang Guenther
(Die LinkTitles-Erweiterung hat automatisch Links zu anderen Seiten hinzugefügt (<a target="_blank" rel="nofollow noreferrer noopener" class="external free" href="https://github.com/bovender/LinkTitles">https://github.com/bovender/LinkTitles</a>).)
 
(12 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 4: Zeile 4:
Lage der Schichtgrenzen und Schichtmitten für z-Schichten. Es kann ein Höhen- oder ein Tiefenkoordinatensystem benutzt werden.
Lage der Schichtgrenzen und Schichtmitten für z-Schichten. Es kann ein Höhen- oder ein Tiefenkoordinatensystem benutzt werden.
# Entwurf für ein Tiefensystem, mit einer zeit- und ortsabhängigen Hilfs-Vertikalkoordinate.
# Entwurf für ein Tiefensystem, mit einer zeit- und ortsabhängigen Hilfs-Vertikalkoordinate.
# Jeweils ein Entwurf für ein Höhen- bzw. Tiefen-System mit Berechnungsvorschrift für die zeitvariablen z-Koordinaten mit Hilfe des Attributs ''formula_terms''.
=Zeit- und ortsabhängige Vertikalkoordinate ''Depth_ZT'' für z-Schichten=


Es wird eine zeit- und ortsabhängige Hilfs-Koordinatenvariable verwendet.
=(Hilfs-) Vertikalkoordinate ''Depth_ZT'' für z-Schichten=
 
Es wird eine zeit- und ortsabhängige Hilfs-Koordinatenvariable, zusammen mit einer entsprechenden ''Boundaryvariablen'' verwendet.


==Dimensionen==
==Dimensionen==
Zeile 14: Zeile 14:
:: time    = ''numer of time steps'', siehe auch [[NetCDF Zeitkoordinate]] ;
:: time    = ''numer of time steps'', siehe auch [[NetCDF Zeitkoordinate]] ;
:: nlayer  = ''number of layers'' ;
:: nlayer  = ''number of layers'' ;
:: ndata    = ''number of data locations'', könnte ''node'', ''edge'', ''poly'' ... sein ;   
:: ndata    = ''number of data locations'', könnte ''node'', ''edge'', ''[[POLY|poly]]'' ... sein ;   
:: bnd      = 2 ''number of boundaries'';
:: bnd      = 2 ''number of boundaries'';


Zeile 22: Zeile 22:


:: double depth_zt(time,nlayer,ndata) ;     
:: double depth_zt(time,nlayer,ndata) ;     
::: depth_zt:standard_name = "'''???'''" ; \\ yet to be determined
::: depth_zt:standard_name = "'''depth'''" ; \\ yet to be determined ???
::: depth_zt:long_name = "time and space dependent depth of data points" ;     
::: depth_zt:long_name = "time and space dependent depth of data points" ;     
::: depth_zt:units = "m" ;
::: depth_zt:units = "m" ;
Zeile 36: Zeile 36:
* depthbnd_zt(i,k,n,1) bezeichnet die (räumlich) ''obere'' Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
* depthbnd_zt(i,k,n,1) bezeichnet die (räumlich) ''obere'' Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
* depthbnd_zt(i,k,n,2) bezeichnet die (räumlich) ''untere'' Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
* depthbnd_zt(i,k,n,2) bezeichnet die (räumlich) ''untere'' Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
 
* Vorteil: Vollständig konform mit dem CF Metadatenstandard.
=Vertikalkoordinate ''Depth'' für z-Schichten=
* Nachteil: Für jeden Termin müssen für alle Positionen und Schichten die Grenzen geschrieben werden. Daher sind sehr viele Daten redundant vorhanden.
==Dimensionen==
 
: dimensions:   
:: depth = ''number of layers'' ; 
:: bnd  = 2 ;
 
==Variablen== 
 
===Koordinatenvariable ''depth''===
 
:: double depth(depth) ;   
::: depth:standard_name = "'''depth'''" ; \\ yet to be determined '''ocean_z_layer_depth_coordinate'''   
::: depth:long_name = "depth" ;   
::: depth:units = "m" ;
::: depth:axis = "Z"
::: depth:positive = "down"
::: depth:bounds = "depthbnd"
::: depth:formula_terms = "d: depthbnd e: ''elevation'' b: ''bottom''"
 
Bemerkungen:
* ''elevation'' ist eine Variable, in welcher die (zeitvariable) Wasserspiegellage enthalten sein muss. ''standard_name'' = '''sea_surface_height_above_geoid''' gemäß [http://cf-pcmdi.llnl.gov/documents/cf-standard-names/standard-name-table/15/cf-standard-name-table.html ''CF standard name table'']. Nach Oben positiv.
* ''bottom'' ist eine Variable, in welcher die (zeitvariable) Lage der Gewässersohle enthalten sein muss. ''standard_name'' = '''sea_floor_depth_below_geoid''' gemäß [http://cf-pcmdi.llnl.gov/documents/cf-standard-names/standard-name-table/15/cf-standard-name-table.html ''CF standard name table'']. Nach Unten positiv.
 
===Schichtgrenzen===
 
:: double depthbnd(depth,bnd) ;   
 
Bemerkungen:
* depthbnd(n,1) bezeichnet die (räumlich) ''obere'' Schichtgrenze der n-ten Schicht.
* depthbnd(n,2) bezeichnet die (räumlich) ''untere'' Schichtgrenze der n-ten Schicht.
 
===Berechnungsvorschrift===
 
* Falls eine Schicht vollständig wassergefüllt oder vollständig wasserfrei ist gilt:
*: <math>\texttt{depth}(k) = 0.5 \times \left( d(k,1) + d(k,2) \right)</math>
* Falls eine Schicht teilweise wassergefüllt ist gilt:
*: <math>\texttt{depth}(k) = 0.5 \times \left( \max\left[-e,d(k,1)\right] + \min\left[b,d(k,2)\right] \right)</math>
 
=Vertikalkoordinate ''Height'' für z-Schichten=
==Dimensionen==
 
: dimensions:   
:: height = ''number of layers'' ; 
:: bnd  = 2 ;
 
==Variablen== 
 
===Koordinatenvariable ''height''===
 
:: double height(height) ;   
::: height:standard_name = "'''height'''" ; \\ yet to be determined '''ocean_z_layer_height_coordinate'''   
::: height:long_name = "height" ;   
::: height:units = "m" ;
::: height:axis = "Z"
::: height:positive = "up"
::: height:bounds = "heightbnd"
::: height:formula_terms = "d: heightbnd e: ''elevation'' b: ''bottom''"
 
Bemerkungen:
* ''elevation'' ist eine Variable, in welcher die (zeitvariable) Wasserspiegellage enthalten sein muss. ''standard_name'' = '''sea_surface_height_above_geoid''' gemäß [http://cf-pcmdi.llnl.gov/documents/cf-standard-names/standard-name-table/15/cf-standard-name-table.html ''CF standard name table'']. Nach Oben positiv.
* ''bottom'' ist eine Variable, in welcher die (zeitvariable) Lage der Gewässersohle enthalten sein muss. ''standard_name'' = '''sea_floor_depth_below_geoid''' gemäß [http://cf-pcmdi.llnl.gov/documents/cf-standard-names/standard-name-table/15/cf-standard-name-table.html ''CF standard name table'']. Nach Unten positiv.
 
===Schichtgrenzen===
 
:: double heightbnd(height,bnd) ;   
 
Bemerkungen:
* heightbnd(n,1) bezeichnet die (räumlich) ''untere'' Schichtgrenze der n-ten Schicht.
* heightbnd(n,2) bezeichnet die (räumlich) ''obere'' Schichtgrenze der n-ten Schicht.
 
===Berechnungsvorschrift===
 
* Falls eine Schicht vollständig wassergefüllt oder vollständig wasserfrei ist gilt:
*: <math>\texttt{height}(k) = 0.5 \times \left( d(k,1) + d(k,2) \right)</math>
* Falls eine Schicht teilweise wassergefüllt ist gilt:
*: <math>\texttt{height}(k) = 0.5 \times \left( \max\left[b,d(k,1)\right] + \min\left[-e,d(k,2)\right] \right)</math>


=Anmerkungen, Fragen=
=Anmerkungen, Fragen=


* Datei ist nicht vollständig CF-konform - ggf. Erweiterungen erforderlich!
Siehe unter ''Bemerkungen'' bei den einzelnen Definitionen oben.
* Kann das Attribut ''formula_terms'' für eine dimensionsbehaftete Variable mit verwendet werden?


----
----

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

Kurze Beschreibung

Lage der Schichtgrenzen und Schichtmitten für z-Schichten. Es kann ein Höhen- oder ein Tiefenkoordinatensystem benutzt werden.

  1. Entwurf für ein Tiefensystem, mit einer zeit- und ortsabhängigen Hilfs-Vertikalkoordinate.

(Hilfs-) Vertikalkoordinate Depth_ZT für z-Schichten

Es wird eine zeit- und ortsabhängige Hilfs-Koordinatenvariable, zusammen mit einer entsprechenden Boundaryvariablen verwendet.

Dimensionen

dimensions:
time = numer of time steps, siehe auch NetCDF Zeitkoordinate ;
nlayer = number of layers ;
ndata = number of data locations, könnte node, edge, poly ... sein ;
bnd = 2 number of boundaries;

Variablen

Hilfs-Koordinatenvariable depth_zt

double depth_zt(time,nlayer,ndata) ;
depth_zt:standard_name = "depth" ; \\ yet to be determined ???
depth_zt:long_name = "time and space dependent depth of data points" ;
depth_zt:units = "m" ;
depth_zt:axis = "Z"
depth_zt:positive = "down"
depth_zt:bounds = "depthbnd_zt"

Schichtgrenzen

double depthbnd_zt(time,nlayer,ndata,bnd) ;

Bemerkungen:

  • depthbnd_zt(i,k,n,1) bezeichnet die (räumlich) obere Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
  • depthbnd_zt(i,k,n,2) bezeichnet die (räumlich) untere Schichtgrenze der k-ten Schicht für den i-ten Zeitpunkt an Position n.
  • Vorteil: Vollständig konform mit dem CF Metadatenstandard.
  • Nachteil: Für jeden Termin müssen für alle Positionen und Schichten die Grenzen geschrieben werden. Daher sind sehr viele Daten redundant vorhanden.

Anmerkungen, Fragen

Siehe unter Bemerkungen bei den einzelnen Definitionen oben.


zurück zu NetCDF


Strukturübersicht