ABZ-Datei: Unterschied zwischen den Versionen

Aus TALSIM Docs
(→‎Beispiel: Leerzeile, die zu Fehlern führt, entfernt)
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


__TOC__
__TOC__
Mit der optionalen ABZ-Datei wird vorgegeben, ob eine Hotstart-Datei gelesen und/oder geschrieben werden soll.
Mit der optionalen ABZ-Datei wird vorgegeben, ob eine State-Datei gelesen und/oder geschrieben werden soll.


Eine Hotstart-Datei enthält für einen bestimmten Zeitschritt die Werte aller simulationsintern gehaltenen Variablen, die nötig sind, um den aktuellen Zustand des Systems vollständig zu beschreiben. Durch das Einlesen einer Hotstart-Datei kann eine Simulation ab diesem Zeitschritt nahtlos fortgesetzt werden.
Eine State-Datei enthält für einen bestimmten Zeitschritt die Werte aller simulationsintern gehaltenen Variablen, die nötig sind, um den aktuellen Zustand des Systems vollständig zu beschreiben. Durch das Einlesen einer State-Datei kann eine Simulation ab diesem Zeitschritt nahtlos fortgesetzt werden.


;Hinweis: Das Schreiben einer Hotstart-Datei erfolgt immer am Ende des angegebenen Zeitschritts. Beim Lesen einer Hotstart-Datei muss deshalb ein Zeitschritt später begonnen werden. Beispiel: Simulation mit Tageszeitschritt, Hotstart-Datei wird geschrieben für 01.01.2020 00:00. Simulationen, die diese Hotstart-Datei einlesen, sollten am 02.01.2020 00:00 beginnen.
<div class="info">Das Schreiben einer State-Datei erfolgt immer am Ende des angegebenen Zeitschritts. Beim Lesen einer State-Datei muss deshalb ein Zeitschritt später begonnen werden. Beispiel: Simulation mit Tageszeitschritt, State-Datei wird geschrieben für 01.01.2020 00:00. Simulationen, die diese Hotstart-Datei einlesen, sollten am 02.01.2020 00:00 beginnen.
</div>


==Beispiel==
==Beispiel==
Zeile 16: Zeile 17:
Name=gerst              ; Titel
Name=gerst              ; Titel
Option=0                ; 0=nichts, 1=schreiben, 2=lesen, 3=lesen (SimBeginn) schreiben (SimEnde)
Option=0                ; 0=nichts, 1=schreiben, 2=lesen, 3=lesen (SimBeginn) schreiben (SimEnde)
FilenameRead=gerst.20200101.asc.state
FilenameRead=gerst.state
FilenameWrite=gerst.20200101.asc.state
FilenameWrite=gerst.state


[WRITE]
[WRITE]
Zeile 32: Zeile 33:
Cntrl=1                          ; Systemzustände + Zustandsgruppen, 0=nicht gesetzt, 1=gesetzt
Cntrl=1                          ; Systemzustände + Zustandsgruppen, 0=nicht gesetzt, 1=gesetzt
OrdinarySysState=1                ; sonstige Elementezustände, 0=nicht gesetzt, 1=gesetzt
OrdinarySysState=1                ; sonstige Elementezustände, 0=nicht gesetzt, 1=gesetzt
[READWRITE]
SimEndOffset=1
</pre>
</pre>


Zeile 39: Zeile 43:
* <code>Option</code>: Gibt an, was getan werden soll. Mögliche Werte:
* <code>Option</code>: Gibt an, was getan werden soll. Mögliche Werte:
** <code>0</code>: nichts tun
** <code>0</code>: nichts tun
** <code>1</code>: Hotstart-Datei(en) schreiben. Anzahl und Zeitpunkte werden weiter unten unter <code>[WRITE]</code> angegeben.
** <code>1</code>: State-Datei(en) schreiben. Anzahl und Zeitpunkte werden weiter unten unter <code>[WRITE]</code> angegeben.
** <code>2</code>: Hotstart-Datei zu Simulationsbeginn lesen
** <code>2</code>: State-Datei zu Simulationsbeginn lesen
** <code>3</code>: Hotstart-Datei zu Simulationsbeginn lesen und am Simulationsende schreiben
** <code>3</code>: State-Datei zu Simulationsbeginn lesen und am Simulationsende schreiben
* <code>FilenameRead</code>: Pfad und Dateiname der zu lesenden Hotstart-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.
* <code>FilenameRead</code>: Pfad und Dateiname der zu lesenden State-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.
* <code>FilenameWrite</code>: Pfad und Dateiname der zu schreibenden Hotstart-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.
* <code>FilenameWrite</code>: Pfad und Dateiname der zu schreibenden STate-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.


===<code>[WRITE]</code>===
===<code>[WRITE]</code>===
Wenn <code>Option</code> auf <code>1</code> (Hotstart-Datei schreiben) gesetzt ist, wird in diesem Abschnitt angegeben, wie viele und zu welchen Simulationszeitpunkten Hotstart-Dateien geschrieben werden sollen.
Wenn <code>Option=1</code> (State-Datei schreiben) gesetzt ist, wird in diesem Abschnitt angegeben, wie viele und zu welchen Simulationszeitpunkten State-Dateien geschrieben werden sollen.


===<code>[READ]</code>===
===<code>[READ]</code>===
Optionen zum Lesen von Hotstart-Dateien. Hier kann für einzelne Komponenten festgelegt werden, ob ihr Zustand aus der Hotstart-Datei eingelesen werden soll (<code>1</code>) oder nicht (<code>0</code>).
Optionen zum Lesen von Hotstart-Dateien. Hier kann für einzelne Komponenten festgelegt werden, ob ihr Zustand aus der State-Datei eingelesen werden soll (<code>1</code>) oder nicht (<code>0</code>).
 
===<code>[READWRITE]</code>===
* <code>SimEndOffset</code>: Bei <code>Option=3</code>, Anzahl Zeitschritte vor Simulationsende, zu dem die State-Datei geschrieben werden soll.


==Hinweise==
==Hinweise==
* Wenn mehrere Zeitstempel zum Schreiben angegeben werden (<code>NDate</code> > 1), werden alle Zeitstempel hintereinander in die unter <code>FilenameWrite</code> angegebene Datei geschrieben.
* Wenn mehrere Zeitstempel zum Schreiben angegeben werden (<code>NDate</code> > 1), wird für jeden Zeitstempel eine separate Datei geschrieben, dabei wird der Zeitstempel an den Dateinamen angehängt. (''Seit v3.2.17'')
* Beim Lesen aus einer Hotstart-Datei wird immer der erste in der Datei verfügbare Zeitstempel eingelesen und als Anfangsbedingung/Hotstart für den Simulationsbeginn gesetzt, unabhängig vom Zeitstempel des Datensatzes.
* Beim Lesen aus einer State-Datei wird immer der erste in der Datei verfügbare Zeitstempel eingelesen und als Anfangsbedingung/Hotstart für den Simulationsbeginn gesetzt, unabhängig vom tatsächlichen Zeitstempel der State-Datei.
* Ein besserer Umgang mit mehrfachen Zeitstempeln ist derzeit in Entwicklung (#112)

Aktuelle Version vom 26. Mai 2023, 07:43 Uhr

Mit der optionalen ABZ-Datei wird vorgegeben, ob eine State-Datei gelesen und/oder geschrieben werden soll.

Eine State-Datei enthält für einen bestimmten Zeitschritt die Werte aller simulationsintern gehaltenen Variablen, die nötig sind, um den aktuellen Zustand des Systems vollständig zu beschreiben. Durch das Einlesen einer State-Datei kann eine Simulation ab diesem Zeitschritt nahtlos fortgesetzt werden.

Das Schreiben einer State-Datei erfolgt immer am Ende des angegebenen Zeitschritts. Beim Lesen einer State-Datei muss deshalb ein Zeitschritt später begonnen werden. Beispiel: Simulation mit Tageszeitschritt, State-Datei wird geschrieben für 01.01.2020 00:00. Simulationen, die diese Hotstart-Datei einlesen, sollten am 02.01.2020 00:00 beginnen.

Beispiel

*SYSTEM vollständig einlesen oder zu Zeitpunkten X schreiben
*====================================

[SETTINGS]
Name=gerst              ; Titel
Option=0                ; 0=nichts, 1=schreiben, 2=lesen, 3=lesen (SimBeginn) schreiben (SimEnde)
FilenameRead=gerst.state
FilenameWrite=gerst.state

[WRITE]
NDate=1                 ; Anzahl der Datumsangaben, zu denen der Zustand geschrieben werden soll
01.01.2020 00:00        ; Datum TT.MM.JJJJ hh:mm

[READ]
Runoff=1                          ; Abflussbildung, 0=nicht gesetzt, 1=gesetzt
TimeofConcentration=1             ; Abflusskonzentration, 0=nicht gesetzt, 1=gesetzt
Transport=1                       ; Transportstrecken, 0=nicht gesetzt, 1=gesetzt
RainHistory=1                     ; Regen-Historie, 0=nicht gesetzt, 1=gesetzt
Snow=1                            ; Schnee-Historie, 0=nicht gesetzt, 1=gesetzt
InitVolume=1                      ; Anfangsinhalte, 0=nicht gesetzt, 1=gesetzt
Cntrl=1                           ; Systemzustände + Zustandsgruppen, 0=nicht gesetzt, 1=gesetzt
OrdinarySysState=1                ; sonstige Elementezustände, 0=nicht gesetzt, 1=gesetzt

[READWRITE]
SimEndOffset=1

Erläuterung

[SETTINGS]

  • Name:
  • Option: Gibt an, was getan werden soll. Mögliche Werte:
    • 0: nichts tun
    • 1: State-Datei(en) schreiben. Anzahl und Zeitpunkte werden weiter unten unter [WRITE] angegeben.
    • 2: State-Datei zu Simulationsbeginn lesen
    • 3: State-Datei zu Simulationsbeginn lesen und am Simulationsende schreiben
  • FilenameRead: Pfad und Dateiname der zu lesenden State-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.
  • FilenameWrite: Pfad und Dateiname der zu schreibenden STate-Datei. Relative Pfade können ausgehend vom Pfad der Simulationsengine angegeben werden.

[WRITE]

Wenn Option=1 (State-Datei schreiben) gesetzt ist, wird in diesem Abschnitt angegeben, wie viele und zu welchen Simulationszeitpunkten State-Dateien geschrieben werden sollen.

[READ]

Optionen zum Lesen von Hotstart-Dateien. Hier kann für einzelne Komponenten festgelegt werden, ob ihr Zustand aus der State-Datei eingelesen werden soll (1) oder nicht (0).

[READWRITE]

  • SimEndOffset: Bei Option=3, Anzahl Zeitschritte vor Simulationsende, zu dem die State-Datei geschrieben werden soll.

Hinweise

  • Wenn mehrere Zeitstempel zum Schreiben angegeben werden (NDate > 1), wird für jeden Zeitstempel eine separate Datei geschrieben, dabei wird der Zeitstempel an den Dateinamen angehängt. (Seit v3.2.17)
  • Beim Lesen aus einer State-Datei wird immer der erste in der Datei verfügbare Zeitstempel eingelesen und als Anfangsbedingung/Hotstart für den Simulationsbeginn gesetzt, unabhängig vom tatsächlichen Zeitstempel der State-Datei.