| 1.3.1 Programmstrukturierung |
| 1.3.2 Programmsteuerung |
| 1.3.3 Verzeichnisstruktur |
| 1.3.4 Programmname und Programmstart |
| 1.3.5 Pfade |
| 1.3.6 Programmtestung |
| 1.3.7 Modellvarianten |
| 1.3.8 Zeitschrittwahl für die Kontrollanzeige während Rechnung |
Das System ArcEGMO wurde in der Programmiersprache C geschrieben und ist auf PC's unter Windows und auf UNIX-Plattformen lauffähig. In der jetzigen Version ist es in erster Linie als intelligente Toolbox für die Modellierung hydrologischer Prozesse zu sehen. Um die Lauffähigkeit auf verschiedenen Plattformen zu gewährleisten, besitzt ArcEGMO keine Nutzeroberfläche. Das Modell generiert sich weitgehend selbst entsprechend den zur Verfügung stehenden raum- und zeitbezogenen Eingangsdaten. Der auf ein Minimum reduzierte Nutzerdialog findet über Steuerdateien im ASCII-Format statt.
Im Folgenden werden im Sinne einer Übersichtsdarstellung einige grundlegende Prinzipien des Programms ArcEGMO beschrieben. Ausführlichere Beschreibungen werden in den nachfolgenden Kapiteln gegeben.
ArcEGMO besteht aus einer Reihe von Komponenten, die sich wie folgt bezüglich ihres Inhaltes unterscheiden:
Abbildung 3-1 gibt eine schematische Übersicht über das Programmsystem ArcEGMO. Den Kern bildet das hydrologische Modell, das definiert wird über
Die Verbindung zwischen Ein- und Ausgangsdaten und Modell wird über die folgenden Programmkomponenten realisiert:

Abbildung 3‑1: Übersichtsschema zum Aufbau des Programmsystems
ArcEGMO existiert in zwei unterschiedlichen Programmversionen.
Die Nutzerversion kann angewendet werden für Simulationsrechnungen mit den implementierten Modellvarianten.
Bei Einsatz der Entwicklerversion
Je nach Aufgabenstellung können mit ArcEGMO unterschiedlich komplexe Modelltypen generiert und abgearbeitet werden. Folgende Modelltypen werden derzeit unterstützt bzw. werden z.T. in das Programmsystem integriert:
|
MET_MOD |
Modell zur Flächenübertragung stationsbezogener Klimagrößen, Schließen von Beobachtungslücken etc. |
|
WH_MOD |
Modell zur flächendifferenzierten Berechnung des Wasserhaushalts unter Nutzung stations- oder flächenbezogener Klimagrößen (analog MET_MOD) |
|
NA_MOD |
Niederschlag-Abfluss-Modell - WH_MOD zzgl. Berechnung der lateralen Mengenströme auf der Erdoberfläche, im Untergrund und im Gewässernetz |
|
BW_MOD |
Bewirtschaftungsmodell - erlaubt effektive Betrachtung von interessierenden Ausschnitten des Untersuchungsgebietes, z.B. Variantenrechnungen für Bewirtschaftungsmaßnahmen, betrachtet wird nur noch die Abflusskonzentration im Gewässernetz, Vorgabe von Randbedingungen (mit NA_MOD berechnete Zuflüsse zum Gebietsausschnitt) möglich |
Dem Modell und jeder Komponente ist jeweils eine Steuerdatei zugeordnet, die entweder
Zur besseren Unterscheidung der verschiedenen Dateien gibt es verschiedenen Dateitypen, die sich durch ihre Endungen leicht erkennen lassen.
Die Steuerdateien sind aus verschiedenen Informationsblöcken aufgebaut, die nacheinander abgearbeitet werden. Während die Programmsteuerung über die STEeuerdateien erfolgt, wird die Datenstruktur in den StrukturDefinitionsDateien festgelegt (Abbildung 3-2).

Abbildung 3‑2: Struktur des Projektverzeichnisses
Auf die Integration einer Programmoberfläche wurde vorerst verzichtet.
Jede Steuerdatei setzt sich aus einem oder mehreren Anweisungsblöcken zusammen. Jeweils in der ersten Zeile eines Anweisungsblockes befindet sich ein definiertes und damit obligatorisches Schlüsselwort. Ein Block wird über das Dateiende oder mit einer mit "+" beginnende Abschlusszeile abgeschlossen, die ebenfalls obligatorisch ist und programmintern zur Ermittlung der Anzahl der Anweisungszeilen verwendet wird.
In der Regel beginnt jede Anweisungszeile mit einem definierten Schlüsselwort. Innerhalb des Programms werden Anweisungen über ihre Schlüsselwörter identifiziert. Wird ein Schlüsselwort nicht gefunden, führt das je nach Anweisung zu einem definierten Programmabbruch oder dazu, dass die zugehörige Anweisung nicht ausgeführt wird. In einigen Steuerdateien wird letzteres genutzt, um gezielt bestimmte Optionen ein- oder auszuschalten, indem vor das Schlüsselwort z.B. ein "*" gesetzt wird, was zur Nichtidentifikation dieses Wortes führt. Schlüsselworte sind weitgehend in Klarschrift verfasst, sie lassen also schon direkt auf den Inhalt der zugehörigen Anweisung schließen. Durch Kommentare, die nach der eigentlichen Anweisung folgen und mit "/*" beginnen, sind weitere Erläuterungen zu den einzelnen Anweisungen direkt in die Steuerdateien integriert, so dass vielfach auf eine ausführliche Erläuterung einzelner Anweisungen verzichtet werden kann. Wichtig ist jedoch der Hinweis, dass als Dezimaltrenner der "." in sämtlichen Steuerdateien fungiert.
Das Hauptprogramm ARC_EGMO initialisiert Speicherplatz für die Modellsteuerung und organisiert den Aufruf des abzuarbeitenden Modells. Zu Beginn eines Simulationslaufes wird die Programmsteuerdatei ARC_EGMO.STE (vgl. Abbildung 3.2) eingelesen, die sich im aktuellen Verzeichnis bzw. bei der Arbeit unter Windows im Arbeitsverzeichnis befinden muss.
Innerhalb dieser Steuerdatei werden die folgenden Optionen festgelegt:
Welche Raumbezüge prinzipiell vom System ArcEGMO unterstützt werden, wird in den Kapiteln 1.4 und 1.7 erläutert. Die Festlegung des jeweils zu aktivierenden Raumbezugs muss passfähig zu den Möglichkeiten des aktivierten Moduls sein.
#############################################################################
MODELL_VERSION NA_Mod /* NA_Mod oder WH_Mod */
STARTDATUM 15 6 88 /* Tag Monat Jahr */
STARTZEIT 1 0
ENDDATUM 31 12 90 /* Tag Monat Jahr */
*ENDZEIT 1 0
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
STARTWERTE_AUS_SIMULATION? Ja
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PROJEKT d:\NA-Modell_ArcEGMO
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
RAUMBEZUEGE_MODELLIERUNG
METEOR efl /* EFL, KAS, TG oder GEB */
ABFLUSSBILDUNG efl /* EFL, KAS, TG oder GEB */
ABFLUSSKONZENTRATION_RD geb /* KAS, TG oder GEB */
ABFLUSSKONZENTRATION_GW geb /* FE, KAS, TG oder GEB */
GESAMTABFLUSS fgw /* FGW, TG oder GEB */
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
RAUMBEZUEGE_ERGEBNISSE
METEOR efl /* EFL, KAS, TG oder GEB */
ABFLUSSBILDUNG geb /* EFL, KAS, TG, GEB oder HYD */
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MODUL_MET met_mod1 /* met_mod1 */
MODUL_ABI efl_mod1 /* efl_mod1 SiWaE, EGMO_WH, EGMO_NA */
MODUL_RD RD_SIMP /* KINWAVE, RD_SIMP */
MODUL_GW EGMO_GW /* EGMO_GW */
MODUL_Q q_els /* Q_ELS, FALTUNG */
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
BERECHNUNGS_VARIANTE test1 /* Ergebnisverzeichnis
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Kommentar : beliebiger Kommentar zum Simulationslauf etc.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#############################################################################
Abbildung 3‑3: Programmsteuerdatei ARC_EGMO.STE
So wird in der Hauptsteuerdatei einerseits die Modellversion Niederschlags-Abfluss-Modell (NA_Mod) oder Wasserhaushaltsmodell (WH-Mod) ausgewählt, aber auch der Modellierungszeitraum über Startdatum und Enddatum festgelegt. Dann folgen Verweise auf die Datenbasis (hier z.B. Elementarflächen ⇒ EFL) die dann weiter über die Strukturdefinitionsfiles beschrieben werden (Abbildung 3-3).
Sämtliche für die Modellierung benötigten Daten werden in einem Projektverzeichnis verwaltet, dessen prinzipielle Struktur in den Abbildungen 3-4 und 3-5 dargestellt ist. Der Name des Projektverzeichnisses ist frei wählbar und wird dem Programm innerhalb der Programmsteuerdatei mitgeteilt (s. Kapitel 1.3.2).

Abbildung 3‑4: Struktur des Projektverzeichnisses
Jedes Projektverzeichnis besteht aus den 4 Hauptverzeichnissen
Das GIS-Verzeichnis besteht aus einer Reihe von Unterverzeichnissen, die
Das Verzeichnis ZEIT.DAT besteht aus Unterverzeichnissen, die
Im RESULTS-Verzeichnis werden die Ergebnisse abgelegt,

Abbildung 3‑5: Struktur des Projektverzeichnisses
Die Dateien sind über Verweise miteinander verknüpft. Die Hauptsteuerdatei ist die ArcEGMO.ste. Von dieser werden alle anderen Dateien angesteuert. Daher wird sie auch zum Programmstart (Kapitel 1.3.4) an die Ausführungsdatei (AE_5.exe) übergeben.
Der Programmname setzt sich aus "ae_" für ArcEGMO und der Versionsbezeichnung zusammen.
Für das Starten des Programms existieren verschiedene Möglichkeiten.
oder
Auch hier müssen Sie beachten, dass Sie vorher den Pfad in der arc_egmo.ste geändert haben.

Abbildung 3‑6: Eingabeaufforderung
Beim Starten des Programms wird getestet, ob eine Übergabevariable existiert und diese den Zugriff auf die Hauptsteuerdatei arc_egmo.ste gestattet. Existiert keine Übergabevariable, wird im aktuellen Verzeichnis nach einer Datei arc_egmo.ste gesucht und diese - sofern vorhanden - verwendet.
Schlägt dies fehl, wird getestet, ob die Environment-Variable AE_HOME belegt ist. Ist dies der Fall, wird vorausgesetzt, dass diese Variable den kompletten Pfad bis zum aktuellen Projekt enthält. Im Unterverzeichnis ARC_EGMO wird dann die Hauptsteuerdatei arc_egmo.ste geladen und die normale Abarbeitung beginnt. Ist die Environment-Variable AE_HOME nicht belegt, wird das Programm beendet, da dann die Hauptsteuerdatei arc_egmo.ste nicht geladen werden kann.
Über das Steuerwort PROJEKT in der ARC_EGMO.STE wird der Projektpfad mit dem entsprechendem Laufwerksbuchstaben festgelegt. Neben dem Projektverzeichnis können über die Schlüsselwörter GIS_VERZEICHNIS und RESULT_VERZEICHNIS auch separate Verzeichnisse für die raumbezogenen Eingangsdaten (GIS) und die Ergebnisse (Results) angegeben werden und diese somit getrennt von den weiteren Projektdaten gehalten werden.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PROJEKT d:\NA-Modell_ArcEGMO
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Abbildung 3‑7: Auszug aus der ARC_EGMO.STE
Die Pfade für das PROJEKT, GIS_VERZEICHNIS und RESULT_VERZEICHNIS können aber auch über eine PFADE.STE angegeben werden.
Dazu muss in der ARC_EGMO.STE die Steuerdatei Pfade anstelle des Projektpfades angegeben werden. Dies erfolgt über den Eintrag des Wortes Datei (siehe Abbildung 3-8).
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PROJEKT Datei
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Abbildung 3‑8: Verweis auf die PFADE.STE in der ARC_EGMO.ste
In der PFADE.STE, die im ARC_EGMO Verzeichnis stehen muss, können andere Pfade als die Standardpfade angegeben werden.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PROJEKT d:\NA-Modell_ArcEGMO
GIS_VERZEICHNIS d:\NA-Modell_ArcEGMO\GIS
RESULT_VERZEICHNIS d:\NA-Modell_ArcEGMO
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Abbildung 3‑9: PFADE.STE
In der PFADE.STE können aber keine Pfade für die Zeit-Daten verwaltet werden.
Die Angabe von Unterverzeichnissen oder Verweise auf andere Speicherorte bei den Zeit-Daten kann in den DESCRIBE-Dateien für die Zeit-Daten vorgenommen werden. Der Pfad des Unterverzeichnisses muss mit \ beginnen und enden. Es wird dann der angegebene Pfad aus der ARC_EGMO.STE mit dem Pfad des Unterverzeichnisses verkettet. Soll ein Verweis auf einen Ordner außerhalb der ArcEGMO-Struktur erfolgen muss der gesamte Pfad angegeben werden. Der folgende Auszug aus der MET_DATA.SDF zeigt die drei verschieden Möglichkeiten (Standard, Unterverzeichnis und Verweis) der Pfadangabe bei den Zeit-Daten.
######Meteorologie ##################################################
MET_DATEN ASCII
*MET_DATEN ASCII \stundenwerte\
*MET_DATEN ASCII D:\NA-Modell_ArcEGMO\met_data\stundenwerte\
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Abbildung 3‑10: Auszug aus der MET_DATA.SDF
Bei den DESCRIBE-Dateien für die GIS-Daten kann ebenfalls auf diese Weise ein Unterverzeichnis, aber kein Verweis angegeben werden.
Durch den Eintrag des Schlüsselwortes TESTDRUCK in einer Steuer- oder DESCRIBE-Datei wird zu Prüfzwecken eine detaillierte Protokollierung in der Datei ARC_EGMO.TXT für die betreffende Programmkomponente aktiviert (z.B. von eingelesenen Werten wie Systemzustandsvariablen).
Über den Block STEUERDATEIEN in die Datei ARC_EGMO.STE besteht die Möglichkeit, verschiedene Modellvarianten (Daten, Steuerparameter etc.) zentral über Änderungen in einer Datei zu aktivieren. Der folgende Dateiauszug zeigt diesen Steuerblock mit den möglichen Schlüsselwörtern. Die Einträge ELEMENTARFLAECHEN bis ZEITFUNKTIONEN verweisen auf die Definitionsdateien im Verzeichnis GIS\DESCRIBE (.sdf wird programmintern ergänzt), während die Einträge METEOROLOGIE_DATEN bis ERGEBNISSE auf Steuerdateien im Verzeichnis ARC_EGMO verweisen (.ste wird programmintern ergänzt). Wird ein Schlüsselwort nicht gefunden, weil es nicht angegeben ist oder auskommentiert wurde, wird auf die bisherigen Standarddateien (sdf bzw. ste) zugegriffen.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
STEUERDATEIEN
ELEMENTARFLAECHEN EFL /* */
*KASKADENSEGMENTE
TEILEINZUGSGEBIETE TG /* oberirdisches Einzugsgebiet */
FLIESSGEWAESSER FGW /* FGW des oberird. Einzugsgebietes */
*GEWAESSERPUNKTE GWP /* Flughafen ueber Bauernsee */
*ELEMENTARFLAECHENKLASSIFIZIERUNG EFL_HYD
*HYDROTOPKLASSENZUORDNUNG HYD
*ZEITFUNKTIONEN ZF_ohne /* ohne Zeitfunktionen */
*METEOROLOGIE_DATEN met /* Test-Stationsreihen */
*METEOROLOGIE_DATEN meteor /* Stationsreihen */
*HYDROLOGIE_DATEN
BEWIRTSCHAFTUNGSDATEN bw_data_mit /* mit Nutzungseinfluessen */
MODULSTEUERUNG modul /* */
ERGEBNISSE results /* Ergebnisdatei für Langzeitsimulation */
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Abbildung 3‑11: Auszug aus der Steuerdatei
In die arc_egmo.ste wurde ein weiteres Schlüsselwort integriert, mit dem die während der Rechnung durchlaufende Kontrollanzeige modifiziert werden kann.
arc_egmo.ste
Kontrolldruck 1 /* default - eine Ausgabe pro Jahr */
0 /* - eine Ausgabe pro Tag bzw. pro Zeitschritt */
Abbildung 3‑12: Kontrollanzeige
[2] zur Integration vorgesehen - dient der Berücksichtigung von besonderen Punkten im Gewässernetz (Speicher, Hochwasserrückhaltebecken, Seen, Wehre etc.)
[3] Die Endzeit wird nur benötigt, wenn der Berechnungszeitschritt kleiner 24 h ist und der Simulationszeitraum nicht um 24 Uhr endet.