Projektstruktur¶
WorldQual/
├── mkdocs-docs/ # MkDocs-Dokumentation
│ ├── index.md
│ ├── user/ # Benutzer-Dokumentation
│ ├── technical/ # Entwickler-Dokumentation
│ ├── stylesheets/extra.css
│ └── javascripts/extra.js
├── src/ # C++ Quellcode
│ ├── worldqual/ # Hauptprogramm (Instream-Transport)
│ ├── wq_load/ # Nährstoffeinträge-Berechnung
│ ├── wq_stat/ # Statistische Auswertung
│ ├── wq_stat_scen/ # Szenario-Statistik
│ ├── wq_stat_stations/ # Stations-Statistik
│ ├── wq_stat_riverdef/ # Flussabschnitts-Definition
│ ├── wq_instream_daily/ # Tägliche Instream-Berechnung
│ ├── water_temperature/ # Wassertemperaturmodell
│ ├── find_river_cells/ # Flusszellen-Identifikation
│ ├── MapRiverQuality/ # Visualisierung/Kartierung
│ ├── copy_run/ # Run-Daten kopieren
│ ├── copy_scen/ # Szenario-Daten kopieren
│ ├── create_scenarios/ # Szenarien erstellen
│ ├── fill_worldqual_load/ # Load-Tabellen befüllen
│ ├── rtf_input_corr_factor/ # RTF-Korrekturfaktoren
│ ├── rtf_input/ # RTF-Input verarbeiten
│ ├── pop_dens_input/ # Bevölkerungsdichte-Input
│ ├── general_function/ # Gemeinsame Hilfsfunktionen
│ ├── options/ # Basis-Optionsklasse
│ ├── newton/ # Newton-Verfahren, Länderinfo│ ├── _corr_factor/ # R-Skript für Korrekturfaktoren
│ └── R-scripte/ # R-Skripte für Visualisierung
├── docs/ # Doxygen-Dokumentation
│ ├── Doxyfile # Doxygen-Konfiguration
│ ├── html/ # Generierte HTML-Dokumentation
│ └── *.dox # Doxygen-Textseiten
├── database_schema.sql # MySQL-Schema (alle Datenbanken)
├── install_dependencies.sh # Automatischer Dependency-Installer
├── Brewfile # Homebrew-Abhängigkeiten
├── requirements.txt # Abhängigkeiten-Dokumentation
├── mkdocs.yml # MkDocs-Konfiguration
├── DATA_REQUIREMENTS.md # Datenanforderungen
├── README.md
└── .gitignore
Module im Detail¶
Jedes Modul in src/ folgt einer einheitlichen Struktur:
src/modulname/
├── modulname.cpp # Hauptprogramm
├── options_modulname.cpp # Modul-spezifische Optionsklasse
├── options_modulname.h # Header
├── OPTIONS.DAT # Konfigurationsdatei
└── makefile # Build-Konfiguration
Hauptmodule¶
| Modul | Dateien | Funktion |
|---|---|---|
worldqual |
WorldQual.cpp, def.h, options_wq.cpp/h | Instream-Transport, Konzentrationsberechnung |
wq_load |
wq_load.cpp, ClassWQload.cpp/h, crop.cpp/h, gb.cpp/h, ls.cpp/h | Nährstoffeinträge aus Punkt- und diffusen Quellen |
wq_stat |
wq_stat.cpp, statistic.h, options_wqstat.cpp/h | Statistische Auswertung |
water_temperature |
water_temperature.cpp, options_waterTemp.cpp/h | Wassertemperaturmodellierung |
find_river_cells |
find_river_cells.cpp, optionsfindRiverCells.cpp/h | Flusszellen-Identifikation |
MapRiverQuality |
mapRiverQuality.cpp, options_mapRiverQuality.cpp/h | Ergebnis-Kartierung |
Gemeinsame Bibliotheken¶
| Verzeichnis | Dateien | Funktion |
|---|---|---|
general_function |
general_functions.cpp/h, country.cpp/h, timestring.cpp/h | Hilfsfunktionen, Länderverwaltung |
options |
options.cpp/h, options_scen.cpp/h | Basis-Optionsklasse (OPTIONS.DAT einlesen) |
newton |
Newton.cpp/h, countryinfo.cpp/h | Newton-Verfahren, Länderinformationen |
R-Skripte¶
Das Verzeichnis src/R-scripte/ enthält R-Skripte zur Visualisierung von Simulationsergebnissen (Flussabschnitte, Stationsvergleiche, Streudiagramme).