NCDELTA: Unterschied zwischen den Versionen
Aus BAWiki
imported>Lang Guenther K (Hinweis auf GKS Software gelöscht) |
KKeine Bearbeitungszusammenfassung |
||
(48 dazwischenliegende Versionen von 10 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
|name_en=NCDELTA | |name_en=NCDELTA | ||
|name=NCDELTA | |name=NCDELTA | ||
|version= | |version=April 2023 | ||
|version_beschr= | |version_beschr=September 2022 | ||
|stichworte=Postprozessor<br /> | |stichworte=Postprozessor<br /> | ||
Differenzen für synoptische Daten<br /> | Differenzen für synoptische Daten (optionale Beschränkung des Zeitraums)<br /> | ||
Differenzen für Kennwerte<br /> | Differenzen für Kennwerte<br /> | ||
Differenzen für extensive Größen<br /> | |||
Eingangsdaten für Taylor-Diagramm<br /> | Eingangsdaten für Taylor-Diagramm<br /> | ||
Skill nach Murphy (1988) Gleichung 4<br /> | |||
Skill nach Taylor (2001) Gleichungen 4 und 5<br /> | |||
Skill nach Willmott (1981) Index of agreement (d)<br /> | |||
Median, Perzentile (Q01, Q05, Q95, Q99)<br /> | Median, Perzentile (Q01, Q05, Q95, Q99)<br /> | ||
Parallelisierung mit [http://openmp.org/wp/ OpenMP]<br /> | |||
[[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(Teil-) Automatisierte Qualitätssicherung (Wertebereich)]]<br /> | |||
Automatische Anpassung der READ-Daten-Portionen an Chunk-Größe<br /> | |||
Automatisches Setzen der WRITE Chunk-Größe<br /> | |||
Ablage des Inhalts der ASCII-Eingabesteuerdateien in [[CF-NETCDF.NC|netcdf.nc]] (als Variable)<br /> | |||
Ablage der [https://de.wikipedia.org/wiki/Message-Digest_Algorithm_5 MD5-Hash]-Werte von Eingabedateien in [[CF-NETCDF.NC|netcdf.nc]] (als Variable)<br /> | |||
optionale Verwendung der ''Message Passing Interface'' (MPI, [https://www.mpi-forum.org/ MPI Forum]) | |||
Danksagung: ''This project took advantage of netCDF software developed by UCAR/Unidata ([http://www.unidata.ucar.edu/software/netcdf/ www.unidata.ucar.edu/software/netcdf/]).'' | |||
|kurzbeschreibung= | |kurzbeschreibung= | ||
Das Programm berechnet Differenzen für vergleichbare Variablen (primäre Variablenpaare) sowie gegebenenfalls weitere, daraus abgeleitete statistische Daten, und außerdem Eingangsdaten für Taylor-Diagramme (Details siehe [[Differenzen der Berechnungsergebnisse]]). Das Zusammenführen der primären Variablenpaare erfolgt dabei weitestgehend automatisch, kann aber von dem Anwender in Grenzen manuell übersteuert werden (siehe [[NCDELTA.DAT|ncdelta.dat]]). Die primären Differenzen berechnen sich gemäß ''Vergleichsdaten'' '''minus''' ''Referenzdaten''. | Das Programm berechnet Differenzen für vergleichbare Variablen (primäre Variablenpaare) sowie gegebenenfalls weitere, daraus abgeleitete statistische Daten, und außerdem Eingangsdaten für Taylor-Diagramme (Details siehe [[Differenzen der Berechnungsergebnisse]]). Das Zusammenführen der primären Variablenpaare erfolgt dabei weitestgehend automatisch, kann aber von dem Anwender in Grenzen manuell übersteuert werden (siehe [[NCDELTA.DAT|ncdelta.dat]]). Die primären Differenzen berechnen sich gemäß ''Vergleichsdaten'' '''minus''' ''Referenzdaten''. | ||
Anforderungen an zu vergleichende (zeitabhängige) Daten: | Anforderungen an synoptische Daten mit jeweils konstantem Zeitschritt: | ||
# Die Datensätze müssen dieselbe ''Anzahl'' von Terminen enthalten, wobei die Zeiträume selbst verschieden sein dürfen | # Die Datensätze können eine unterschiedliche ''Anzahl'' von Terminen enthalten, allerdings müssen die zu vergleichenden Zeiträume gleich lang sein. Es können also verschiedene, aber gleich lange Zeiträume miteinander verglichen werden; | ||
# Bei Datensätzen mit konstantem Zeitschritt dürfen sich die Zeitschritte um ein ganzzahliges Vielfaches voneinander unterscheiden. | |||
Anforderungen an zu vergleichende (zeitabhängige) Daten mit variablem Zeitschritt: | |||
# Die Datensätze müssen dieselbe ''Anzahl'' von Terminen enthalten, wobei die Zeiträume selbst verschieden sein dürfen. | |||
Anmerkungen zur räumlichen Lage zu vergleichender Datensätze: | Anmerkungen zur räumlichen Lage zu vergleichender Datensätze: | ||
Zeile 21: | Zeile 37: | ||
# Die Datensätze müssen sich räumlich zu einem gewissen Grad überlappen; | # Die Datensätze müssen sich räumlich zu einem gewissen Grad überlappen; | ||
# Die Koordinaten der Datensätze dürfen in verschiedenen Koordinatensystemen vorliegen, z. B. Gauß-Krüger und UTM; | # Die Koordinaten der Datensätze dürfen in verschiedenen Koordinatensystemen vorliegen, z. B. Gauß-Krüger und UTM; | ||
# Die Daten einer Position werden mit den Daten der jeweils am nächsten liegenden Position verglichen, insofern der Abstand zwischen den Positionen einen maximal zulässigen Abstand (siehe [[NCDELTA.DAT|ncdelta.dat]]) nicht überschreitet. | # Die Daten einer Position werden mit den Daten der jeweils am nächsten liegenden Position verglichen, insofern der Abstand zwischen den Positionen einen maximal zulässigen Abstand (siehe [[NCDELTA.DAT|ncdelta.dat]]) nicht überschreitet. | ||
Anmerkungen zum Vergleich extensiver Größen: | |||
# Bei extensiven Größen wird als Gewicht die relevante Größe der Berechnungszelle berücksichtigt (Fläche, Länge). | |||
|eingabedateien= | |eingabedateien= | ||
# '''allgemeine Eingabedaten''' (Dateityp [[NCDELTA.DAT|ncdelta.dat]]) | # '''allgemeine Eingabedaten''' (Dateityp [[NCDELTA.DAT|ncdelta.dat]]); | ||
# '''Referenzdaten''', z. B. Ist-Zustand (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]) | # '''Referenzdaten''', z. B. Ist-Zustand (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]); | ||
# '''Vergleichsdaten''', z. B. Variante (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]) | # '''Vergleichsdaten''', z. B. Variante (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]); | ||
# für eine [[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(teil-) automatisierte Qualitätssicherung]] (Dateityp [[BOUNDS.CFG.DAT|bounds_verify.dat]]). | |||
|ausgabedateien= | |ausgabedateien= | ||
Zeile 45: | Zeile 65: | ||
# Erzeugen der Metadaten für die Ergebnisdatei; diese setzen sich i. W. aus den Metadaten der zu kopierenden Variablen, der primären Berechnungsergebnisse, neu zu erzeugenden Koordinatenvariablen (Zeit, Vertikale), sowie zu kopierender oder neu zu erzeugender Gewichts- und weiterer Hilfsvariablen zusammen; | # Erzeugen der Metadaten für die Ergebnisdatei; diese setzen sich i. W. aus den Metadaten der zu kopierenden Variablen, der primären Berechnungsergebnisse, neu zu erzeugenden Koordinatenvariablen (Zeit, Vertikale), sowie zu kopierender oder neu zu erzeugender Gewichts- und weiterer Hilfsvariablen zusammen; | ||
# Kopieren der aus den Eingangsdateien in die Ergebnisdatei zu kopierenden Daten; | # Kopieren der aus den Eingangsdateien in die Ergebnisdatei zu kopierenden Daten; | ||
# Berechnen aller primären Ergebnisvariablen, (neuer) Zeit- und Vertikalkoordinaten, sowie | # Berechnen aller primären Ergebnisvariablen, (neuer) Zeit- und Vertikalkoordinaten, sowie Gewichte und Hilfsvariablen. Bei primären Ergebnisvariablen werden optional vorhandene Hilfsvariablen mit Modifikator ''status_flag'' im ''standard_name'' berücksichtigt, insofern die Bedeutung ''good'' durch ein Bit (Flag) repräsentiert wird. | ||
# Für die Definition der verschiedenen Skills wird auf nachfolgende Literatur verwiesen: | |||
#* Murphy, Allan H. (1988) "Skill Scores Based on the Mean Square Error and Their Relationship to the Correlation Coefficient". Monthly Weather Review, Dec. 1988, Seiten 2417 - 2424. | |||
#* Taylor, Karl E. (2001) "Summarizing multiple aspects of model performance in a single diagram". Journal of Geophysical Research, Vol 106, No. D7, April 16, 2001, Seiten 7183 - 7192. | |||
#* Willmott, Cort J. (1981) "On the validation of models". Physical Geography, Seiten 184–194. | |||
Falls beim Lesen von Daten ein '''HDF error''' auftritt wird versucht, die Werte des gewünschten Datenrecords aus den Werten zeitlich benachbarter Records zu rekonstruieren (Interpolation). Diese Reparatur funktioniert ausschließlich für von der Zeit abhängige Variablen. <br> | |||
|preprozessor=[[DATACONVERT]], [[NCAGGREGATE]], [[NCANALYSE]], [[UNK]], [[UNTRIM2007]], [[UNTRIM2]] | |preprozessor=[[DATACONVERT]], [[BOE2NC]], [[TS2NC]], [[NCAGGREGATE]], [[NCANALYSE]], [[NCCHUNKIE]], [[NCCUTOUT]], [[NCRCATMAT]], [[NetCDF Operators]], [[UNK]], [[UNTRIM2007]], [[UNTRIM2]] | ||
|postprozessor=DAVIT, [[NCPLOT]] | |postprozessor=[[DAVIT]], [[GEOTIFFRASTERTOOL]], [[NCAUTO]], [[NCCHUNKIE]], [[NCCUTOUT]], [[NCPLOT]], [[NCPOLO]], [[NCVIEW2D]], [[NC2TABLE]], [[NETCDFRASTERTOOL]], [[TAYLORTARGETDIAGRAM]] | ||
|programmiersprache=Fortran95 | |programmiersprache=Fortran95 | ||
|zus_software= keine | |zus_software= keine | ||
|kontakt_original= | |kontakt_original=G. Lang, S. Spohr | ||
|kontakt_pflege=[mailto: | |kontakt_pflege=[mailto:pos.proghome@baw.de Arbeitsgruppe POS] | ||
|dokumentation= | |dokumentation= | ||
Musterdateien finden sich in '''$PROGHOME/examples/ncdelta/''' | * Vorträge: | ||
** 2015-07-15: [http://ewisa.baw.de/files/12835_tv12_2015_07_15_ncdelta_g_lang.pdf ''NCDELTA - Differenzen neu berechnet'']. | |||
* [https://izw-campus.baw.de/ ''IZW-Campus''] (Podcast) | |||
** 2022-05-30: [https://izw-campus.baw.de/goto.php?target=cat_4308&client_id=iliasclient ''NCDELTA - Berechnung von Differenzen'']. | |||
* Musterdateien: | |||
** Musterdateien finden sich in '''$PROGHOME/examples/ncdelta/''' | |||
}} | }} |
Aktuelle Version vom 28. August 2023, 06:14 Uhr
Basisinformationen
Programm-Name
NCDELTA
Version
April 2023
Beschreibung
September 2022
Stichworte
Postprozessor
Differenzen für synoptische Daten (optionale Beschränkung des Zeitraums)
Differenzen für Kennwerte
Differenzen für extensive Größen
Eingangsdaten für Taylor-Diagramm
Skill nach Murphy (1988) Gleichung 4
Skill nach Taylor (2001) Gleichungen 4 und 5
Skill nach Willmott (1981) Index of agreement (d)
Median, Perzentile (Q01, Q05, Q95, Q99)
Parallelisierung mit OpenMP
(Teil-) Automatisierte Qualitätssicherung (Wertebereich)
Automatische Anpassung der READ-Daten-Portionen an Chunk-Größe
Automatisches Setzen der WRITE Chunk-Größe
Ablage des Inhalts der ASCII-Eingabesteuerdateien in netcdf.nc (als Variable)
Ablage der MD5-Hash-Werte von Eingabedateien in netcdf.nc (als Variable)
optionale Verwendung der Message Passing Interface (MPI, MPI Forum)
Danksagung: This project took advantage of netCDF software developed by UCAR/Unidata (www.unidata.ucar.edu/software/netcdf/).
Kurzbeschreibung
Das Programm berechnet Differenzen für vergleichbare Variablen (primäre Variablenpaare) sowie gegebenenfalls weitere, daraus abgeleitete statistische Daten, und außerdem Eingangsdaten für Taylor-Diagramme (Details siehe Differenzen der Berechnungsergebnisse). Das Zusammenführen der primären Variablenpaare erfolgt dabei weitestgehend automatisch, kann aber von dem Anwender in Grenzen manuell übersteuert werden (siehe ncdelta.dat). Die primären Differenzen berechnen sich gemäß Vergleichsdaten minus Referenzdaten.
Anforderungen an synoptische Daten mit jeweils konstantem Zeitschritt:
- Die Datensätze können eine unterschiedliche Anzahl von Terminen enthalten, allerdings müssen die zu vergleichenden Zeiträume gleich lang sein. Es können also verschiedene, aber gleich lange Zeiträume miteinander verglichen werden;
- Bei Datensätzen mit konstantem Zeitschritt dürfen sich die Zeitschritte um ein ganzzahliges Vielfaches voneinander unterscheiden.
Anforderungen an zu vergleichende (zeitabhängige) Daten mit variablem Zeitschritt:
- Die Datensätze müssen dieselbe Anzahl von Terminen enthalten, wobei die Zeiträume selbst verschieden sein dürfen.
Anmerkungen zur räumlichen Lage zu vergleichender Datensätze:
- Datensätze müssen nicht an denselben Positionen vorliegen;
- Die Datensätze müssen sich räumlich zu einem gewissen Grad überlappen;
- Die Koordinaten der Datensätze dürfen in verschiedenen Koordinatensystemen vorliegen, z. B. Gauß-Krüger und UTM;
- Die Daten einer Position werden mit den Daten der jeweils am nächsten liegenden Position verglichen, insofern der Abstand zwischen den Positionen einen maximal zulässigen Abstand (siehe ncdelta.dat) nicht überschreitet.
Anmerkungen zum Vergleich extensiver Größen:
- Bei extensiven Größen wird als Gewicht die relevante Größe der Berechnungszelle berücksichtigt (Fläche, Länge).
Eingabe-Dateien
- allgemeine Eingabedaten (Dateityp ncdelta.dat);
- Referenzdaten, z. B. Ist-Zustand (Dateityp cf-netcdf.nc);
- Vergleichsdaten, z. B. Variante (Dateityp cf-netcdf.nc);
- für eine (teil-) automatisierte Qualitätssicherung (Dateityp bounds_verify.dat).
Ausgabe-Dateien
- Ergebnisse (Dateityp cf-netcdf.nc)
- (optional) Datei mit Informationen zum Programmablauf (Dateityp ncdelta.sdr)
- (optional) Datei mit Testausgaben (Dateityp ncdelta.trc)
Methode
Das Programm untergliedert sich im Wesentlichen in folgende Abschnitte:
- Lesen, Prüfen und Druckerausgabe der Steuerdaten des Anwenders;
- Metadaten der Referenzdaten lesen;
- Metadaten der Vergleichsdaten lesen;
- Metadaten der Referenz- und Vergleichsdaten in programminterne Datenobjekte transferieren;
- Metadaten vergleichen und auf grundlegende Inkonsistenzen (insbesondere Referenzpositionen) überprüfen;
- Klassifizierung der Referenz- und Vergleichsdaten durchführen;
- Primäre Variablenpaare finden: eine Vergleichsvariable hat genau eine Referenzvariable als Partner; aus den zu einem primären Variablenpaar gehörenden Variablen werden später die primären Ergebnisdaten erzeugt;
- Bestimmen der aus den Referenz- und Vergleichsdaten in die Ergebnisdatei zu kopierenden Variablen;
- Ermitteln der für die räumliche Interpolation der Referenzdaten auf die Positionen der Vergleichsdaten erforderlichen Matrizen;
- Erzeugen der Metadaten für die Ergebnisdatei; diese setzen sich i. W. aus den Metadaten der zu kopierenden Variablen, der primären Berechnungsergebnisse, neu zu erzeugenden Koordinatenvariablen (Zeit, Vertikale), sowie zu kopierender oder neu zu erzeugender Gewichts- und weiterer Hilfsvariablen zusammen;
- Kopieren der aus den Eingangsdateien in die Ergebnisdatei zu kopierenden Daten;
- Berechnen aller primären Ergebnisvariablen, (neuer) Zeit- und Vertikalkoordinaten, sowie Gewichte und Hilfsvariablen. Bei primären Ergebnisvariablen werden optional vorhandene Hilfsvariablen mit Modifikator status_flag im standard_name berücksichtigt, insofern die Bedeutung good durch ein Bit (Flag) repräsentiert wird.
- Für die Definition der verschiedenen Skills wird auf nachfolgende Literatur verwiesen:
- Murphy, Allan H. (1988) "Skill Scores Based on the Mean Square Error and Their Relationship to the Correlation Coefficient". Monthly Weather Review, Dec. 1988, Seiten 2417 - 2424.
- Taylor, Karl E. (2001) "Summarizing multiple aspects of model performance in a single diagram". Journal of Geophysical Research, Vol 106, No. D7, April 16, 2001, Seiten 7183 - 7192.
- Willmott, Cort J. (1981) "On the validation of models". Physical Geography, Seiten 184–194.
Falls beim Lesen von Daten ein HDF error auftritt wird versucht, die Werte des gewünschten Datenrecords aus den Werten zeitlich benachbarter Records zu rekonstruieren (Interpolation). Diese Reparatur funktioniert ausschließlich für von der Zeit abhängige Variablen.
Vorlauf-Programme
DATACONVERT, BOE2NC, TS2NC, NCAGGREGATE, NCANALYSE, NCCHUNKIE, NCCUTOUT, NCRCATMAT, NetCDF Operators, UNK, UNTRIM2007, UNTRIM2
Nachlauf-Programme
DAVIT, GEOTIFFRASTERTOOL, NCAUTO, NCCHUNKIE, NCCUTOUT, NCPLOT, NCPOLO, NCVIEW2D, NC2TABLE, NETCDFRASTERTOOL, TAYLORTARGETDIAGRAM
Weitere Informationen
Programmiersprache
Fortran95
zusätzliche Software
keine
Originalversion
G. Lang, S. Spohr
Programmpflege
Dokumentation/Literatur
- Vorträge:
- 2015-07-15: NCDELTA - Differenzen neu berechnet.
- IZW-Campus (Podcast)
- 2022-05-30: NCDELTA - Berechnung von Differenzen.
- Musterdateien:
- Musterdateien finden sich in $PROGHOME/examples/ncdelta/
zurück zu Programmkennblätter