Aktionen

Erfassung der Metadaten einer Simulation

Aus BAWiki

Die Erfassung setzt in der Prozessierungskette bei der Simulation ein. Das Modellierungsverfahren UnTRIM, bestehend aus den nachfolgenden Teilmodellen, verarbeitet die Meta-Informationen.

1. Anleitung

Die Metadaten sind als Umgebungsvariablen zu setzen, die von den drei genannten Teilmodellen ausgelesen werden. Das Setzen der Variablen verteilt sich auf ein Auftragsskript und das eigentliche Run-Skript, s. Abb. 1.

Abb. 1: Shellskripte zum Erfassen der DMQS-Metadaten eines Simulationslaufes

Das Auftragsskript wird einmalig zu Beginn eines Auftags erstellt und erhält die Mehrzahl der Metadaten:

  • DMQS_PSP
  • DMQS_TITLE
  • DMQS_SUMMARY
  • DMQS_CREATOR_NAME
  • DMQS_CREATOR_EMAIL
  • DMQS_PUBLISHER_EMAIL
  • DMQS_INSTITUTION
  • (NEU) DMQS_GEO_ID: Auftragsweit gültiger Geografischer Identifikator. Eine Liste mit erlaubten Wasserstraßennamen und -IDs findet sich unter $CFGDIR/dmqs/geo, z.Z. \\themis\system\akprog\cfg\dmqs\geo .
  • META_NAMING_AUTHORITY
  • META_PUBLISHER_NAME
  • META_PUBLISHER_URL
  • META_REFERENCES

Eine ausführliche Vorlage steht unter
$PROGHOME/bin/dmqs/set_dmqs_template.sh,

Die folgenden Metadaten beschreiben einen Simulationslauf.

Abb. 2: DMQS-Metadaten zur Beschreibung eines Simulationslaufes vom Auftrag bis zum Run

  • DMQS_METHOD: Die Methode beschreibt das eingesetzte Modellverfahren und wird in der ProgHome-Software automatisch erkannt.

Die folgenden Metadaten sie sind in den jeweiligen Run- oder QSUB-Skripten explizit zu setzen.

  • DMQS_VARIANT: Eine Variante ist eine Modellgeometrie. Innerhalb eines Auftrags gibt es häufig eine Ist-Variante, die die aktuelle Geometrie beschreibt und eine Ausbauvariante mit den gleichen Koordinaten in der Horizontalen, aber veränderten Tiefenwerten. Eine horizontal, bspw. für eine Sturmflutuntersuchung erweiterte Topografie, ist ebenfalls als eigenständige Variante zu kennzeichnen. Auch Ausprägungen des SubGrids oder der Randkanten (offen/geschlossen) stellen jeweils eigenständige Varianten dar. - DMQS_VARIANT wird mit einer Liste der für diesen Auftrag gültigen Varianten abgeglichen.
  • DMQS_SCENARIO: Ein Szenario beinhaltet die Anfangs- und Randwerte sowie die Parametrisierungen einer Simulation. Ein Randwert kann bspw. der Wind während eines Sturmtiefs sein, der Diffusionskoeffizient ist eine Parametrisierung. - DMQS_SCENARIO wird mit einer Liste der für diesen Auftrag gültigen Varianten abgeglichen.
  • RUN: Der Name eines Runs bezeichnet weitere Anfangs- und Randwerte und Parametrisierungen. Bei der Namenswahl wird den Usern mehr Freiheit als beim Szenario eingeräumt, auch Compilerversionen können verwendet werden und es gibt keinen Abgleich mit gültigen Run-Namen.
  • DMQS_RUN_COMMENT: Freitext zur Beschreibung von RUN.


2. Vorlagen

2.1. Run-Skripte unter $PROGHOME/examples/qsub

  • serieller Job: run_serialjob_1core_omp.qsub
  • UnTRIM 8 Cores: run_untrim_8core_omp_icex.qsub
  • UnTRIM 16 Cores: run_untrim_16core_omp_icex.qsub

2.2. Auftragsskript

  • $PROGHOME/bin/dmqs/set_dmqs_template.sh

2.3. Listen mit gültigen Varianten- und Szenariennamen

  • $PROGHOME/cfg/dmqs/variant/01_template.dat
  • $PROGHOME/cfg/dmqs/scenario/01_template.dat

2.4. Testverzeichnisse aus Simulation und Postprocessing zur freien Verfügung

  • Startverzeichnis: $PROGHOME/examples/dmqs
  • UnTRIM: $PROGHOME/examples/dmqs/01_simulation/work/piz/scena1/r033
  • Analyse: $PROGHOME/examples/dmqs/02_ncanalyse/work/piz/scena1/r033
  • Originaldaten: $PROGHOME/examples/dmqs/02_ncanalyse/orig


3. Für interessierte: Automatisch erzeugte Metadaten

Weitere Metadaten werden in den Teilprogrammen Utromp2007, SediMorph und k-Modell automatisch erfasst. Dazu gehören der Simulationszeitraum und die Abmessungen des Modellgebietes.
Die meisten Metadatenelemente gehen als CF-Attribute in die NetCDF-Datei ein. Nicht-standardisierte Attribute sind:

  • max_source_dimensionality: maximale Dimensionalität der Modellrechnung (kann von der der Datei abweichen).
  • dmqs_run_id: ID des Simulationslaufes, in allen NetCDF-Ergebnisdateien des Laufs identisch.

Hinzu kommen DMQS-Variablen, die mit jedem Prozessierungsschritt automatisch ergänzt werden.

  • dmqs_steering: Pfad und Name der Eingabesteuerdatei im Arbeitsverzeichnis
  • dmqs_data_path_file: Pfad und Name der Ergebnisdatei im Arbeitsverzeichnis
  • dmqs_method: Name und Version der Methode
  • dmqs_execution_start: Datums- und Zeitstempel zu Beginn der Laufzeit
  • dmqs_sim_time_step: Rechenzeitschritt der ursprünglichen Simulation
  • dmqs: DMQS-Containervariable mit Referenzen auf die anderen DMQS-Variablen.

Dmqs_steering enthält in den hydrodynamischen Ergebnissen einen String mit dem Pfad und dem Namen der Steuerdatei des Hydrodynamik-Paketes, bspw.:

  • /net/themis/system/akprog/examples/dmqs/work/01_simulation/piz/scena1/r033/untrim.piz.dat

Ein Postprozessor wie NCANALYSE wird die Variable dmqs_steering um einen eigenen String mit Pfad und Namen der eigenen Steuerdatei ergänzen:

  • /net/themis/system/akprog/examples/dmqs/work/02_simulation/piz/scena1/r033/ncanalyse_LZKB.dat




-> Erfassung von Analyse-Metadaten