Model Configuration
Die Modellkonfiguration (Dateiendung "jmc") ist ein XML-Dokument, welches zwei Funktionen erfüllt:
- Sie dient als individuelle Konfiguration für ein konkretes Modell, welches in einer Modelldefinitionsdatei abgelegt ist.
- Sie definiert für jeden Parameter, der angepasst wird, wie dieser im JAMS-Launcher dargestellt wird.
Format
Zu den wichtigsten Informationen in der Modellkonfiguration zählen:
- der Name der zugehörigen Modelldefinitionsdatei, z.B.
<config ... modeldefinition="j2k_gehlberg.xml" ...>
- eine Reihe von group-Elementen, die ein Gruppieren von Editorkomponenten im JAMS-Launcher in Form von Tabulatoren ermöglicht
<group description="Common model parameters" name="Main"> ... </group>
- als Kindelemente der group-Elemente eine Reihe von property-Elementen, die für je ein Attribut einer JAMS-Komponente verschiedene Informationen bereitstellt. Folgende Informationen dienen dabei der Konfiguration der Komponente:
- Attributname (z.B. attribute="snowCritDens")
- Komponentenname (z.B. component="J2KProcessSnow")
- Aktueller Wert (z.B. value="0.45")
- Name in der Oberfläche (z.B. name="J2KProcessSnow.snowCritDens")
- Beschreibung (z.B. description="Snowpack density beyond free water is released [dec%]")
- Defaultwert (z.B. default="0.7")
- Datentyp (z.B. type="float", möglich sind hier float, int, string, boolean, file, dir, date)
- Gültigkeitsintervall (z.B. range="0.1;1.0")
- Die letzten fünf Informationen werden dabei für die Erzeugung eines graphischen Eingabefeldes verwendet. Wurde die Anzeige des JAMS-Launchers in der Systemkonfigurationsdatei abgeschaltet, so haben nur die ersten drei Informationen Bedeutung.
Aktivierung und Deaktivierung von Komponenten
Mit Hilfe eines property-Element mit dem reservierten Attributnamen "%enable%" kann eine Komponente über die Modellkonfiguration ein- oder ausgeschaltet werden. Der Typ dieses Attributes ist dabei boolean. Existiert für eine Komponente ein solcher Eintrag, so wird die Komponente zur Modellausführung nur dann erzeugt, wenn sein Wert "1" ist. Darüber hinaus hat dieses Attribut keinerlei Einfluss auf die Komponente.
Ein Beispiel könnte etwa wie folgt aussehen:
<property attribute="%enable%" component="Map" default="1" description="Map on or off" name="Map enable" range="" type="boolean" value="1"/>
Prozessierung der Modellkonfiguration vor der Modellausführung
Wird das JAMSModell gestartet, so wird auf der Grundlage der Modelldefinition das Modell zunächst erzeugt und die dort definierten Attribute mit den Werten aus der Modellkonfiguration initialisiert, sofern diese angegeben wurden. Dies gilt auch dann, wenn der JAMS-Launcher nicht verwendet wird. Die Modellkonfiguration kann somit auch verwendet werden, um unterschiedliche Konfigurationen für ein einziges Modell zu verwalten. Für alle Attribute, die in der Modellkonfiguration nicht aufgeführt sind, behalten die Werte aus der Modelldefinition ihre Gültigkeit.