Zum Inhalt

Modulübersicht

Modul-Pipeline

graph LR
    A["wq_load\nNährstoffberechnung"] --> B["worldqual\nHauptsimulation"]
    B --> C["wq_stat\nStatistik"]
    C --> D["MapRiverQuality\nVisualisierung"]
    B --> E["wq_instream_daily\nTägliche Berechnung"]
    E --> C
    F["water_temperature\nTemperaturmodell"] --> B
    G["find_river_cells\nZellen-Zuordnung"] --> B

Hauptmodule

worldqual (Hauptprogramm)

Verzeichnis: src/worldqual/

Berechnet den Instream-Transport von Wasserqualitätsparametern entlang des Flussnetzwerks. Das Modul liest Routing-Informationen und Nährstoffeinträge aus der Datenbank, simuliert Transport und biochemischen Abbau und schreibt Konzentrationen in die Ausgabedatenbank.

./worldqual IDrun startYear endYear

Dateien:

Datei Funktion
WorldQual.cpp Hauptprogramm: Routing-Schleife, Transportberechnung
def.h Globale Definitionen und Konstanten
options_wq.cpp/h Optionsklasse (erbt von optionsClass)

wq_load (Nährstoffeinträge)

Verzeichnis: src/wq_load/

Berechnet monatliche Nährstoffeinträge aus Punkt- und diffusen Quellen pro Rasterzelle. Unterstützt verschiedene Parameter (BOD, TDS, FC, TN, TP, Pestizide).

./wq_load startYear endYear

Dateien:

Datei Funktion
wq_load.cpp Hauptprogramm
ClassWQload.cpp/h Kernklasse: Eintragberechnung für alle Quelltypen
crop.cpp/h Ackerbau-Klasse: Düngemittel, Ernteentzug
gb.cpp/h Gewässer-Bilanz-Klasse
ls.cpp/h Viehwirtschafts-Klasse: Exkremente nach Tierart
options_wq_load.cpp/h Optionsklasse
### wq_stat (Statistik)

Verzeichnis: src/wq_stat/

Statistische Auswertung der Simulationsergebnisse. Liest Konzentrationsdaten aus wq_out_{kontinent} und berechnet zusammenfassende Statistiken.

Varianten:

Modul Verzeichnis Funktion
wq_stat src/wq_stat/ Standard-Statistik
wq_stat_scen src/wq_stat_scen/ Szenario-Vergleich
wq_stat_stations src/wq_stat_stations/ Stationsbasierte Auswertung
wq_stat_riverdef src/wq_stat_riverdef/ Flussabschnitts-Definition

water_temperature (Wassertemperatur)

Verzeichnis: src/water_temperature/

Berechnet Wassertemperaturen aus Klimadaten (Kurzwellenstrahlung, Lufttemperatur). Wird vom Hauptprogramm genutzt, um temperaturabhängige Abbauraten zu bestimmen.

find_river_cells (Flusszellen)

Verzeichnis: src/find_river_cells/

Identifiziert Flusszellen im Raster und ordnet sie dem Routing-Netzwerk zu. Muss vor der Hauptsimulation ausgeführt werden.

MapRiverQuality (Visualisierung)

Verzeichnis: src/MapRiverQuality/

Liest Simulationsergebnisse und erstellt Karten der Wasserqualität. Für erweiterte Visualisierung stehen zusätzlich R-Skripte in src/R-scripte/ zur Verfügung.


Hilfsmodule

Modul Verzeichnis Funktion
copy_run src/copy_run/ Run-Daten zwischen Datenbanken kopieren
copy_scen src/copy_scen/ Szenario-Daten kopieren
create_scenarios src/create_scenarios/ Neue Szenarien erstellen
fill_worldqual_load src/fill_worldqual_load/ Load-Tabellen aus wq_load-Ergebnissen befüllen
rtf_input_corr_factor src/rtf_input_corr_factor/ Return-Flow-Korrekturfaktoren berechnen
rtf_input src/rtf_input/ Return-Flow-Input verarbeiten
pop_dens_input src/pop_dens_input/ Bevölkerungsdichte-Daten einlesen

Gemeinsame Bibliotheken

Verzeichnis Funktion
src/general_function/ Hilfsfunktionen: Länderverwaltung (country.cpp), Zeitstrings (timestring.cpp)
src/options/ Basis-Optionsklasse zum Einlesen von OPTIONS.DAT-Dateien
src/newton/ Newton-Verfahren für numerische Berechnungen, Länderinformationen