ZEITRIO: Unterschied zwischen den Versionen
Aus BAWiki
imported>Spohr Susanne KKeine Bearbeitungszusammenfassung |
KKeine Bearbeitungszusammenfassung |
||
(19 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
|name_en=ZEITRIO | |name_en=ZEITRIO | ||
|name=ZEITRIO | |name=ZEITRIO | ||
|version= | |version=April 2021 | ||
|version_beschr= | |version_beschr=April 2021 | ||
|stichworte=Preprozessor<br /> | |stichworte=Preprozessor<br /> | ||
Zeitreihen-Verarbeitung (Input/Output) | Zeitreihen-Verarbeitung (Input/Output)<br /> | ||
|kurzbeschreibung=Dieses Programm liest und schreibt Dateien, die Zeitreihen in | Aneinanderhängen | ||
|kurzbeschreibung=Dieses Programm liest und schreibt Dateien, die Zeitreihen in den unten angegebenen Formaten bereitstellen. Die Zeitreihen können dann in Dateien der Formate boewrt.dat, als spaltenorientierte ASCII-Datei (für MATLAB/SCILAB) oder als CSV-Datei geschrieben werden. Das Aneinanderhängen mehrerer Zeitreihen-Dateien zu einer einzigen Datei wird unterstützt. | |||
Der BOEWRT-Status-Flag wird ggf. als Zusatzinformation beim Schreiben von [[BOEWRT.DAT|boewrt.dat]] erzeugt bzw. mitgeführt. | |||
|eingabedateien= | |eingabedateien= | ||
# Zeitreihen-Datei vom Typ [[BOEWRT.DAT|boewrt.dat]]. | # Zeitreihen-Datei(en) vom Typ [[BOEWRT.DAT|boewrt.dat]]. Über das Kommandozeilenargument ''-srclist=<file>'' ist auch die Übergabe einer Liste von Dateien möglich, die zu einer Zeitreihe zusammengefasst werden sollen. | ||
# Zeitreihen-Datei vom Typ [[SOLWRT.DAT|solwrt.dat]]. | # Zeitreihen-Datei(en) vom Typ [[SOLWRT.DAT|solwrt.dat]]. | ||
# Zeitreihen-Datei vom Typ 6dph.dat. | # Zeitreihen-Datei(en) vom Typ 6dph.dat. | ||
# Zeitreihen-Datei vom Typ trbnk.dat. | # Zeitreihen-Datei(en) vom Typ trbnk.dat. | ||
# Zeitreihen-Datei vom Typ aander.dat. | # Zeitreihen-Datei(en) vom Typ aander.dat. | ||
# Zeitreihen-Datei vom Typ dwdwin.dat. | # Zeitreihen-Datei(en) vom Typ dwdwin.dat. | ||
# Eine Datei vom Typ [[ZEITRIO.DAT|zeitrio.dat]]. Sie enthaelt vordefinierte Zeitfenster für den Fall, daß nicht eine Datei vom Typ [[BOEWRT.DAT|boewrt.dat]] erzeugt werden soll, sondern für jeden Datentag eine separate [[BOEWRT.DAT|boewrt.dat]]. | # Zeitreihen-Datei(en) vom Typ WSA Bremen. | ||
# Zeitreihen-Datei(en) vom Typ peg.dat. | |||
# Zeitreihen-Datei(en) vom Typ pegel.his. | |||
# Zeitreihen-Datei(en) vom Typ extab.dat (Excel-Tabelle mit Trennern Blanks, Tabs, Komma oder Semikolon als Text-Datei ausgegeben). | |||
# Zeitreihen-Datei(en) vom Typ WSA Emden. | |||
# Zeitreihen-Datei(en) vom Typ spaltenorientierte MATLAB-Matrix. | |||
# Zeitreihen-Datei(en) vom Typ ZRX. | |||
# Zeitreihen-Datei(en) vom Typ WOCE-gauge. | |||
# Zeitreihen-Datei(en) vom Typ [[KNOERG.BIN|knoerg.bin]] | |||
# Zeitreihen-Datei(en) vom Typ CSV Pegel-Online der BfG | |||
# Zeitreihen-Datei(en) vom Typ CSV von ftp://ftp-cdc.dwd.de/pub/CDC/ . | |||
# Zeitreihen-Datei(en) vom Typ ALL (Kisters-Exportformat der WISKI-Datenbank) | |||
# NetCDF-Format für Pegel aus dem Datenportal http://www.marineinsitu.eu/dashboard/ | |||
# Generische CSV-Schnittstelle mit frei auswählbaren Spalten | |||
# Eine optionale Datei vom Typ [[ZEITRIO.DAT|zeitrio.dat]]. Sie enthaelt vordefinierte Zeitfenster für den Fall, daß nicht eine Datei vom Typ [[BOEWRT.DAT|boewrt.dat]] erzeugt werden soll, sondern für jeden Datentag eine separate [[BOEWRT.DAT|boewrt.dat]]. | |||
|ausgabedateien= | |ausgabedateien= | ||
# Zeitreihen-Datei vom Typ [[BOEWRT.DAT|boewrt.dat]]. | Die Zahl der Ausgabe-Dateiformate wurde auf das Notwendige beschränkt, damit innerhalb der BAW-DH nicht zu viele verschiedene Dateiformate kursieren. | ||
# Zeitreihen-Datei in Spaltenorientierung mit zusätzlicher Header-Datei (geeignet für die Verarbeitung mit MATLAB, SCILAB oder Mathematica). | # Zeitreihen-Datei vom Typ [[BOEWRT.DAT|boewrt.dat]] (Ausgabemodus 1 und 2). | ||
# (optional) Terminal-Protokoll vom Typ gkslog.dat. | # Zeitreihen-Datei in Spaltenorientierung mit zusätzlicher Header-Datei (geeignet für die Verarbeitung mit MATLAB, SCILAB oder Mathematica, Ausgabemodus 3) | ||
|methode=Nach Eingabe eines Referenzdatums, auf welches sich Dateien mit relativen Zeitangaben (z.B. solwrt.dat) beziehen, wird eine Zeitreihe eingelesen. Dabei kann immer nur EINE Zeitreihe EINES Knotens gelesen werden. Die gelesenen Dateien werden dann in eine Datei geschrieben, deren Format der Anwender festlegt. Für das [[BOEWRT.DAT|boewrt.dat]]-Format existiert zusätzlich die Möglichkeit, für jeden Tag, an dem Daten vorliegen, eine eigene Datei zu erzeugen. Der Dateiname einer solchen Datei enthält unter anderem das Datum des Tages. | # Zeitreihendatei vom Typ CSV, einzeiliger Header (Zeitpunkt; Größe 1; Größe 2; ....) für [http://www.deltares.nl/en/software/479962/delft-fews Delft-FEWS] (Ausgabemodus 4). Das Einlesen dieser Dateien ist über die generische CSV-Schnittstelle möglich. | ||
|preprozessor=[[FFT]], [[TSCALC]] | # Druckerprotokolldatei (zeitrio.sdr) | ||
|postprozessor=[[BOERND]], [[EXCELENZ]], [[FFT]], [[GVIEW2D]], [[ROSE]], [[TIDKEN]], [[TSCALC]], [[UTRRND]] | # (optional) Terminal-Protokoll vom Typ gkslog.dat. Da ZEITRIO relativ viele Nutzer-Eingaben während des interaktiven Durchlaufes verlangt, wird die Nutzung dieser makroartigen Aufzeichnung dringend empfohlen! Sie kann auch als Grundlage batchorientierter Automatisierung dienen. | ||
|programmiersprache= | |methode=Nach Eingabe eines Referenzdatums, auf welches sich Dateien mit relativen Zeitangaben (z.B. solwrt.dat) beziehen, wird eine Zeitreihe eingelesen. Dabei kann immer nur EINE Zeitreihe EINES Knotens gelesen werden. Optional können weitere Dateien direkt anschließend angehängt werden. Das Dateiformat kann bei jeder einzulesenden Datei gewechselt werden. Nach dem Einlesen wird die gesamte Zeitreihe chronologisch sortiert sowie um doppelte und ungültige Zeitpunkte bereinigt. | ||
|zus_software= - | |||
|kontakt_original= | Die gelesenen Dateien werden dann in eine Datei geschrieben, deren Format der Anwender festlegt. Für das [[BOEWRT.DAT|boewrt.dat]]-Format existiert zusätzlich die Möglichkeit, für jeden Tag, an dem Daten vorliegen, eine eigene Datei zu erzeugen. Der Dateiname einer solchen Datei enthält unter anderem das Datum des Tages. | ||
|kontakt_pflege=[mailto: | Gemessene Eingangsdaten werden mit dem BOEWRT-Status-Flag 2 ("ungeprüft") markiert. Berechnete Zeitreihen (aus knoerg.bin) erhalten ohne Prüfung den Status-Flag 1 ("good")! | ||
Die Zeitreihe kann vor der Ausgabe auf eine äquidistante Zeitachse interpoliert werden. Die Druckerprotokolldatei gibt Auskunft über größere Datenlücken. Datenlücken werden nach der Interpolation entweder mit einem Füllwert ("fill value") belegt (Ausgabemodus 1) oder eliminiert (Ausgabemodus 2). Der Benutzer legt die minimale Größe für Datenlücken fest. Bei der Ausgabe einer äquidistante Zeitreihe, werden alle Werte in zeitlichen Lücken, die kleiner als diese minimale Größe für Datenlücken sind, interpoliert. Es kann zwischen linearer Interpolation oder Spline-Interpolation gewählt werden. | |||
Über den BOEWRT-Status-Flag werden die interpolierten Zeitpunkte eindeutig sichtbar ("ungeprüft", "interpoliert", ggf. zusätzlich "gut" oder "merkwürdig"). | |||
Der Ausgabezeitraum umfasst den Gesamtzeitraum aller eingelesener Eingabedaten. Die vom Nutzer gemachte Angaben können die Ausgabezeitreihe auf den gewünschten Zeitraum einschränken, sofern das eingelesene Dateiformat eine Abfrage zulässt (z.B. beim Einlesen von [[BOEWRT.DAT|boewrt.dat]]). Die Zeitangaben des Nutzers beziehen sich auf die in der Umgebungsvariable BAWZONE definierte Zeitzone. Im Ausgabemodus 1 ([[BOEWRT.DAT|boewrt.dat]]) werden bei äquidistanter Interpolation ggf. "fill values" am Anfang und Ende ergänzt, wenn die Eingabedateien den gewünschten Gesamtzeitraum nicht vollständig abdecken. Ein wie von den früheren Versionen gewohnter Abbruch des Programms bei nicht abgedecktem Zeitraum für das Einlesen von Daten erfolgt nicht mehr. Die Ausgabedatei sollte nachträglich geprüft und die Standardausgabe auf Warnungen geprüft werden. | |||
'''Achtung:''' In vorangegangenen Versionen konnten "fill values" noch nicht bei der Interpolation | |||
verarbeitet werden. Das Vorgehen war daher, eine einzelne Zeitreihe zunächst zu extrahieren und dann zu interpolieren. Ab Version Februar 2020 ist es möglich, die "fill values" in Zeitreihen dahingehend zu berücksichtigen, dass sie als Datenlücken interpretiert werden. Bitte dennoch das Ergebnis immer prüfen! Ab Version 2020_10_15 dürfen einzulesende BOEWRT-Zeitreihen auch mit "fill values" beginnen. | |||
Für Eingabedateien des Typs MATLAB-Matrix, ZRX-Format und "exctab.dat" kann eine Filterung sowie eine Korrektur der Zeitreihe um einen Werte-Offset und einen Skalierungsfaktor erfolgen. Die Berechnung der | |||
absoluten Zeiten der Zeitachse erfolgt mittels hochgenauer Operatoren für absolute Zeitrechnung. | |||
Beim Einlesen der Daten und Interpolieren wird ein vorläufiger zusätzlicher BOEWRT-Status-Flag erzeugt. Dieser sollte im Nachgang durch geeignete Prüfverfahren überarbeitet werden, bevor die Dateien weiter prozessiert werden. | |||
Ab Version Juni 2020 werden die Werte der Nachbarstützstellen bei Berechnung des BOEWRT-Status-Flag interpolierter Werte genutzt. Sind die beiden benachbarten Stützwerte "gut", so bekommt auch der interpolierte Wert den Status "gut". Ist einer der beiden benachbarten Stützwerte "merkwürdig", so bekommt auch der interpolierte Wert diesen Status. Ob interpolierte Werte wirklich "gut" sind, wird '''nicht geprüft'''. Daher haben interpolierte Werte zunächst immer den Status "ungeprüft"! | |||
Die Zahl der interaktiven Eingaben kann ab Version 2020_10_15 durch Angabe von Kommandozeilenargumenten reduziert werden. Welche Kommandozeilenparameter eine Wirkung haben, enthüllt der Aufruf | |||
'''''zeitrio[.i18] -h'''''. | |||
Das ausführbare Programm steht sowohl für LINUX- als auch WINDOWS-Rechner zur Verfügung. | |||
|preprozessor=Tabellenkalkulationsprogramme (z.B. [https://de.wikipedia.org/wiki/Microsoft_Excel MS Office EXCEL], [https://de.wikipedia.org/wiki/LibreOffice_Calc LibreOffice Calc]), [[FFT]], [[FRQ2ZEITR]], [[GVIEW2D]], [[TSCALC]], [http://www.mathworks.de/products/matlab/ MATLAB], [[MESKOR]], [http://www.scilab.org/ SCILAB], [[TRIM-2D]], [[TRIM-3D]], [[XTRDATA]] | |||
|postprozessor=[[BOERND]], [[BOE2NC]], [[DATACONVERT]], [[EXCELENZ]], [[FFT]], [[FRQWF]], [[GVIEW2D]], [[ROSE]], [[TIDKEN]], [[TSCALC]], [[UTRRND]], [http://www.mathworks.de/products/matlab/ MATLAB], [http://www.scilab.org/ SCILAB], [http://www.deltares.nl/en/software/479962/delft-fews Delft-FEWS] | |||
|programmiersprache=Fortran2003 | |||
|zus_software= libgeodesy, NTv2-Gitterdateien für die Koordinatentransformation (siehe auch [[GEOTRANSFORMER]]). | |||
|kontakt_original=J. Jürges | |||
|kontakt_pflege=[mailto:pre.proghome@baw.de Arbeitsgruppe PRE] | |||
|dokumentation=unter $PROGHOME/examples/zeitrio | |dokumentation=unter $PROGHOME/examples/zeitrio | ||
}} | }} |
Aktuelle Version vom 11. Oktober 2022, 07:45 Uhr
Basisinformationen
Programm-Name
ZEITRIO
Version
April 2021
Beschreibung
April 2021
Stichworte
Preprozessor
Zeitreihen-Verarbeitung (Input/Output)
Aneinanderhängen
Kurzbeschreibung
Dieses Programm liest und schreibt Dateien, die Zeitreihen in den unten angegebenen Formaten bereitstellen. Die Zeitreihen können dann in Dateien der Formate boewrt.dat, als spaltenorientierte ASCII-Datei (für MATLAB/SCILAB) oder als CSV-Datei geschrieben werden. Das Aneinanderhängen mehrerer Zeitreihen-Dateien zu einer einzigen Datei wird unterstützt. Der BOEWRT-Status-Flag wird ggf. als Zusatzinformation beim Schreiben von boewrt.dat erzeugt bzw. mitgeführt.
Eingabe-Dateien
- Zeitreihen-Datei(en) vom Typ boewrt.dat. Über das Kommandozeilenargument -srclist=<file> ist auch die Übergabe einer Liste von Dateien möglich, die zu einer Zeitreihe zusammengefasst werden sollen.
- Zeitreihen-Datei(en) vom Typ solwrt.dat.
- Zeitreihen-Datei(en) vom Typ 6dph.dat.
- Zeitreihen-Datei(en) vom Typ trbnk.dat.
- Zeitreihen-Datei(en) vom Typ aander.dat.
- Zeitreihen-Datei(en) vom Typ dwdwin.dat.
- Zeitreihen-Datei(en) vom Typ WSA Bremen.
- Zeitreihen-Datei(en) vom Typ peg.dat.
- Zeitreihen-Datei(en) vom Typ pegel.his.
- Zeitreihen-Datei(en) vom Typ extab.dat (Excel-Tabelle mit Trennern Blanks, Tabs, Komma oder Semikolon als Text-Datei ausgegeben).
- Zeitreihen-Datei(en) vom Typ WSA Emden.
- Zeitreihen-Datei(en) vom Typ spaltenorientierte MATLAB-Matrix.
- Zeitreihen-Datei(en) vom Typ ZRX.
- Zeitreihen-Datei(en) vom Typ WOCE-gauge.
- Zeitreihen-Datei(en) vom Typ knoerg.bin
- Zeitreihen-Datei(en) vom Typ CSV Pegel-Online der BfG
- Zeitreihen-Datei(en) vom Typ CSV von ftp://ftp-cdc.dwd.de/pub/CDC/ .
- Zeitreihen-Datei(en) vom Typ ALL (Kisters-Exportformat der WISKI-Datenbank)
- NetCDF-Format für Pegel aus dem Datenportal http://www.marineinsitu.eu/dashboard/
- Generische CSV-Schnittstelle mit frei auswählbaren Spalten
- Eine optionale Datei vom Typ zeitrio.dat. Sie enthaelt vordefinierte Zeitfenster für den Fall, daß nicht eine Datei vom Typ boewrt.dat erzeugt werden soll, sondern für jeden Datentag eine separate boewrt.dat.
Ausgabe-Dateien
Die Zahl der Ausgabe-Dateiformate wurde auf das Notwendige beschränkt, damit innerhalb der BAW-DH nicht zu viele verschiedene Dateiformate kursieren.
- Zeitreihen-Datei vom Typ boewrt.dat (Ausgabemodus 1 und 2).
- Zeitreihen-Datei in Spaltenorientierung mit zusätzlicher Header-Datei (geeignet für die Verarbeitung mit MATLAB, SCILAB oder Mathematica, Ausgabemodus 3)
- Zeitreihendatei vom Typ CSV, einzeiliger Header (Zeitpunkt; Größe 1; Größe 2; ....) für Delft-FEWS (Ausgabemodus 4). Das Einlesen dieser Dateien ist über die generische CSV-Schnittstelle möglich.
- Druckerprotokolldatei (zeitrio.sdr)
- (optional) Terminal-Protokoll vom Typ gkslog.dat. Da ZEITRIO relativ viele Nutzer-Eingaben während des interaktiven Durchlaufes verlangt, wird die Nutzung dieser makroartigen Aufzeichnung dringend empfohlen! Sie kann auch als Grundlage batchorientierter Automatisierung dienen.
Methode
Nach Eingabe eines Referenzdatums, auf welches sich Dateien mit relativen Zeitangaben (z.B. solwrt.dat) beziehen, wird eine Zeitreihe eingelesen. Dabei kann immer nur EINE Zeitreihe EINES Knotens gelesen werden. Optional können weitere Dateien direkt anschließend angehängt werden. Das Dateiformat kann bei jeder einzulesenden Datei gewechselt werden. Nach dem Einlesen wird die gesamte Zeitreihe chronologisch sortiert sowie um doppelte und ungültige Zeitpunkte bereinigt.
Die gelesenen Dateien werden dann in eine Datei geschrieben, deren Format der Anwender festlegt. Für das boewrt.dat-Format existiert zusätzlich die Möglichkeit, für jeden Tag, an dem Daten vorliegen, eine eigene Datei zu erzeugen. Der Dateiname einer solchen Datei enthält unter anderem das Datum des Tages. Gemessene Eingangsdaten werden mit dem BOEWRT-Status-Flag 2 ("ungeprüft") markiert. Berechnete Zeitreihen (aus knoerg.bin) erhalten ohne Prüfung den Status-Flag 1 ("good")!
Die Zeitreihe kann vor der Ausgabe auf eine äquidistante Zeitachse interpoliert werden. Die Druckerprotokolldatei gibt Auskunft über größere Datenlücken. Datenlücken werden nach der Interpolation entweder mit einem Füllwert ("fill value") belegt (Ausgabemodus 1) oder eliminiert (Ausgabemodus 2). Der Benutzer legt die minimale Größe für Datenlücken fest. Bei der Ausgabe einer äquidistante Zeitreihe, werden alle Werte in zeitlichen Lücken, die kleiner als diese minimale Größe für Datenlücken sind, interpoliert. Es kann zwischen linearer Interpolation oder Spline-Interpolation gewählt werden. Über den BOEWRT-Status-Flag werden die interpolierten Zeitpunkte eindeutig sichtbar ("ungeprüft", "interpoliert", ggf. zusätzlich "gut" oder "merkwürdig").
Der Ausgabezeitraum umfasst den Gesamtzeitraum aller eingelesener Eingabedaten. Die vom Nutzer gemachte Angaben können die Ausgabezeitreihe auf den gewünschten Zeitraum einschränken, sofern das eingelesene Dateiformat eine Abfrage zulässt (z.B. beim Einlesen von boewrt.dat). Die Zeitangaben des Nutzers beziehen sich auf die in der Umgebungsvariable BAWZONE definierte Zeitzone. Im Ausgabemodus 1 (boewrt.dat) werden bei äquidistanter Interpolation ggf. "fill values" am Anfang und Ende ergänzt, wenn die Eingabedateien den gewünschten Gesamtzeitraum nicht vollständig abdecken. Ein wie von den früheren Versionen gewohnter Abbruch des Programms bei nicht abgedecktem Zeitraum für das Einlesen von Daten erfolgt nicht mehr. Die Ausgabedatei sollte nachträglich geprüft und die Standardausgabe auf Warnungen geprüft werden.
Achtung: In vorangegangenen Versionen konnten "fill values" noch nicht bei der Interpolation verarbeitet werden. Das Vorgehen war daher, eine einzelne Zeitreihe zunächst zu extrahieren und dann zu interpolieren. Ab Version Februar 2020 ist es möglich, die "fill values" in Zeitreihen dahingehend zu berücksichtigen, dass sie als Datenlücken interpretiert werden. Bitte dennoch das Ergebnis immer prüfen! Ab Version 2020_10_15 dürfen einzulesende BOEWRT-Zeitreihen auch mit "fill values" beginnen.
Für Eingabedateien des Typs MATLAB-Matrix, ZRX-Format und "exctab.dat" kann eine Filterung sowie eine Korrektur der Zeitreihe um einen Werte-Offset und einen Skalierungsfaktor erfolgen. Die Berechnung der absoluten Zeiten der Zeitachse erfolgt mittels hochgenauer Operatoren für absolute Zeitrechnung.
Beim Einlesen der Daten und Interpolieren wird ein vorläufiger zusätzlicher BOEWRT-Status-Flag erzeugt. Dieser sollte im Nachgang durch geeignete Prüfverfahren überarbeitet werden, bevor die Dateien weiter prozessiert werden.
Ab Version Juni 2020 werden die Werte der Nachbarstützstellen bei Berechnung des BOEWRT-Status-Flag interpolierter Werte genutzt. Sind die beiden benachbarten Stützwerte "gut", so bekommt auch der interpolierte Wert den Status "gut". Ist einer der beiden benachbarten Stützwerte "merkwürdig", so bekommt auch der interpolierte Wert diesen Status. Ob interpolierte Werte wirklich "gut" sind, wird nicht geprüft. Daher haben interpolierte Werte zunächst immer den Status "ungeprüft"!
Die Zahl der interaktiven Eingaben kann ab Version 2020_10_15 durch Angabe von Kommandozeilenargumenten reduziert werden. Welche Kommandozeilenparameter eine Wirkung haben, enthüllt der Aufruf zeitrio[.i18] -h.
Das ausführbare Programm steht sowohl für LINUX- als auch WINDOWS-Rechner zur Verfügung.
Vorlauf-Programme
Tabellenkalkulationsprogramme (z.B. MS Office EXCEL, LibreOffice Calc), FFT, FRQ2ZEITR, GVIEW2D, TSCALC, MATLAB, MESKOR, SCILAB, TRIM-2D, TRIM-3D, XTRDATA
Nachlauf-Programme
BOERND, BOE2NC, DATACONVERT, EXCELENZ, FFT, FRQWF, GVIEW2D, ROSE, TIDKEN, TSCALC, UTRRND, MATLAB, SCILAB, Delft-FEWS
Weitere Informationen
Programmiersprache
Fortran2003
zusätzliche Software
libgeodesy, NTv2-Gitterdateien für die Koordinatentransformation (siehe auch GEOTRANSFORMER).
Originalversion
J. Jürges
Programmpflege
Dokumentation/Literatur
unter $PROGHOME/examples/zeitrio
zurück zu Programmkennblätter