Auswertung Messstellen mit R: Unterschied zwischen den Versionen

Aus Dokumentation
Wechseln zu:Navigation, Suche
Zeile 53: Zeile 53:
 
Die Funktion „Messstellen“ ist in ++SYSTEMS im Projektbaum zu finden. Zur Erstellung einer neuen Messstelle müssen Sie auf den Oberpunkt Messstelle mit der rechten Maustaste klicken und „neu“ auswählen. Es erscheint folgender Dialog.
 
Die Funktion „Messstellen“ ist in ++SYSTEMS im Projektbaum zu finden. Zur Erstellung einer neuen Messstelle müssen Sie auf den Oberpunkt Messstelle mit der rechten Maustaste klicken und „neu“ auswählen. Es erscheint folgender Dialog.
  
[[File:Image_R_006.png|center|400px]]
+
[[File:Image_R_006.png|center|600px]]
  
 
Sie müssen nun ein Objekt (Abschnitt oder Knoten) auswählen. Sie können das Objekt entweder per Eingabe des Namens direkt über „Suchen“, oder durch Anklicken des Objektes im Bearbeitungsbildschirm über „Grafisch auswählen“, wählen. Nach dem erstellen der Messstelle wird diese auch grafisch dargestellt.
 
Sie müssen nun ein Objekt (Abschnitt oder Knoten) auswählen. Sie können das Objekt entweder per Eingabe des Namens direkt über „Suchen“, oder durch Anklicken des Objektes im Bearbeitungsbildschirm über „Grafisch auswählen“, wählen. Nach dem erstellen der Messstelle wird diese auch grafisch dargestellt.
Zeile 62: Zeile 62:
 
Sie können sich die vorgeschlagene Einheit, also [m] oder [m³/s], mit Hilfe der Umrechnungsfunktion in eine andere Einheit ausgeben lassen. Also, wenn Sie sich z.B. den Durchfluss lieber in [l/s] anstatt in [m³/s] ausgeben lassen wollen, dann müssen Sie in dem Feld neben '''Umrechnung*1000''' eingeben.
 
Sie können sich die vorgeschlagene Einheit, also [m] oder [m³/s], mit Hilfe der Umrechnungsfunktion in eine andere Einheit ausgeben lassen. Also, wenn Sie sich z.B. den Durchfluss lieber in [l/s] anstatt in [m³/s] ausgeben lassen wollen, dann müssen Sie in dem Feld neben '''Umrechnung*1000''' eingeben.
  
[[File:Image_R_007.png|center|400px]]
+
[[File:Image_R_007.png|center|600px]]
  
 
Der Haken neben dem Feld muss natürlich gesetzt sein.
 
Der Haken neben dem Feld muss natürlich gesetzt sein.
Zeile 75: Zeile 75:
 
[[File:Image_R_008.png|center|400px]]
 
[[File:Image_R_008.png|center|400px]]
  
Zum Vergleich der Simulation mit der Messung, muss die Messstelle in ++SYSTEMS den gleichen Namen, wie die Datei mit den gemessenen Werten haben. Dieser Name dient quasi der Identifikation zwischen Messung und Messstelle. Als Beispiel hat die vergebene Messstelle in ++SYSTEMS den Namen „Q1“, weshalb die Messungsdatei auch „Q01“ heißen muss.
+
Zum Vergleich der Simulation mit der Messung, muss die Messstelle in ++SYSTEMS den gleichen Namen, wie die Datei mit den gemessenen Werten haben. Dieser Name dient quasi der Identifikation zwischen Messung und Messstelle. Als Beispiel hat die vergebene Messstelle in ++SYSTEMS den Namen „Q1“, weshalb die Messungsdatei auch „Q1“ heißen muss.
  
[[File:Image_R_009.png|center|400px]]
+
[[File:Image_R_009.png|center|600px]]
  
  
Zeile 127: Zeile 127:
 
*Bestimmtheitsmaß
 
*Bestimmtheitsmaß
 
Das Bestimmtheitsmaß gibt Auskunft über den linearen Zusammenhang zwischen gemessenen und simulierten Werten. Die Größenordnung der Kennzahl liegt zwischen null und eins. Ein Wert von eins würde einen perfekten linearen Zusammenhang zwischen Messung und Simulation bedeuten, während ein Wert von Null keinen linearen Zusammenhang bedeutet. Das Maß beschreibt demnach nicht die Differenz oder den Größenunterschied zweier Kurven, sondern nur wie sich deren Verlauf ähnelt bzw. übereinstimmt.
 
Das Bestimmtheitsmaß gibt Auskunft über den linearen Zusammenhang zwischen gemessenen und simulierten Werten. Die Größenordnung der Kennzahl liegt zwischen null und eins. Ein Wert von eins würde einen perfekten linearen Zusammenhang zwischen Messung und Simulation bedeuten, während ein Wert von Null keinen linearen Zusammenhang bedeutet. Das Maß beschreibt demnach nicht die Differenz oder den Größenunterschied zweier Kurven, sondern nur wie sich deren Verlauf ähnelt bzw. übereinstimmt.
 +
 
== <p style="color: #B7117F"> Wichtige Hinweise:==
 
== <p style="color: #B7117F"> Wichtige Hinweise:==
  

Version vom 23. Juli 2020, 16:25 Uhr

Einleitung

Mit der in ++SYSTEMS implementierten Funktion Messstellen können gemessene Werte (=Messungen) mit den Ergebnissen der Simulation verglichen werden. Die visuelle Darstellung der Gegenüberstellung von Messung und Simulation geschieht durch ein PDF-Programm (z.B. Adobe Reader). Natürlich stehen die Ergebnisse auch als Textdatei bereit. Für die Auswertung der Messstellen wird noch das externe Statistik Programm R benötigt. R ist eine Freeware und kann aus dem Internet heruntergeladen werden. Nachdem R installiert wurde müssen noch ein paar Einstellungen, die im Nachhinein erläutert werden, vorgenommen werden. Wenn nun auch ein PDF-Programm auf dem PC vorhanden ist, dann steht dem Arbeiten mit der Funktion „Messstellen“ nichts mehr im Weg.

Vorbereitungen

Installieren des Programms R

Hierbei wird davon ausgegangen, dass schon ein PDF-Programm auf dem PC installiert wurde, und nur noch das Programm R benötigt wird. Es gibt zwei Möglichkeiten R zu installieren. Entweder Sie laden das Programm aus dem Internet herunter, oder Sie führen die von tandler.com mitgelieferte Installationsdatei von R aus. Sie können R auf folgender Internetseite herunterladen: https://cran.r-project.org/bin/windows/base/ Die Installationsdatei (R-3.3.3-win.exe) befindet sich in dem Order R, welcher in Ihrem ++SYSTEMS Ordner zu finden ist. Sie können entweder die exe-Datei in diesem Ordner ausführen, oder Sie verwenden das Shortcut in Ihrem ++SYSTEM Ordner im Startmenü.

Installieren von R-Paketen

Sie müssen zusätzlich zu dem Programm R diverse Pakete installieren, um alle Funktionen des R-Skripts nutzen zu können.

Im Folgenden eine Auflistung der benötigten Pakete:

  • PNG
  • HydroGOF


Für die Installation dieser Pakete müssen Sie nach der Installation von R die Rgui.exe starten. Diese Datei befindet sich in dem Installationsverzeichnis Ihres R-Ordners in dem bin Ordner. Hier gibt es wieder zwei Möglichkeiten Packete zu installieren. Entweder Sie laden es aus dem Internet herunter, oder Sie verweisen auf das schon mitgelieferte Pakete, welches sich in dem R Ordner im ++SYSTEMS Ordner befindet.

Die ersten Möglichkeit wird im Programm R über die Textbox ausgeführt. In dieser Textbox müssen Sie nun „install.packages(“png“)“ schreiben. Dies ist der Befehl zum Download und Installation des benötigten Pakets.

Image R 001.png

Mit Drücken der ENTER-Taste führen Sie diesen Befehl aus. Nun müssen Sie noch einen „mirror“ wählen. Im Prinzip ist es egal welchen. Wenn Sie nun mit OKEY bestätigen, dann wird das „R package.png“ runtergeladen und installiert. Sie können aber auch im Projektmenü unter „Pakete“ die Aktion „Install package(s) from local files…“ verwenden. Hierbei müssen Sie nun das mitgelieferte png-Paket auswählen. Das png-Paket liegt als Zip-Datei in dem R Ordner im ++SYSTEMS Ordner vor.

Image R 003.png

Nach Auswahl dieser Zip-Datei wird das Paket installiert.

Ghostscript für Mehrfachplots installieren

Um einen Merfachplot durchzuführen wird das Programm Ghostscript benötigt. Ghostscript ist ein Interpreter für Dateien im PostScript- und PDF-Format. Ghostscript wandelt PDF-, EPS- und PostScript-/PS-Dateien in Bitmaps um, bereitet diese für die Bildschirmansicht auf und druckt sie auf Wunsch aus. Das Programm von Artifex konvertiert darüber hinaus eine PostScript-Datei in ein PDF-Dokument oder Bild. Die mit Ghostscript erstellten Dokumente und Bilder dienen zudem als Grundlage für andere PDF-Konverter und Drucker. Ghostscript steht unter der Open-Source-Lizenz GPL (GNU General Public Licence) und ist unter Windows und Linux kostenlos nutzbar.

Die Open-Source-Software könnnen Sie unter folgenden Link für Windows(64bit) herunterladen: https://www.ghostscript.com/download/gsdnld.html

Pfad der R-Batch Datei anpassen

Damit das Programm R korrekt ausgeführt wird, greift ++Systems auf die Datei visualize_messtellen.R zu. Diese Datei muss sich im ++System Bin-Programmverzeichnis befinden. Außerdem sind noch zwei .bat-Dateien (visualize_messstellen.bat und visualize_messstellen_all.bat) und zwei .png-Dateien (tandler.png und ++SYSTEMS.png) erforderlich. Diese Dateien werden bei der Installation in Bin Verzeichnis angelegt und müssen jetzt noch angepasst werden. Mit diesen .bat-Dateien werden mit Hilfe des Programms R die PDF Dokumente erstellt. Hierfür muss aber in den .bat-Dateien auf R und das PDF-Programm verwiesen werden. Klicken Sie nun mit der rechten Maustaste auf eine dieser .bat-Dateien und wählen „Bearbeiten“. Diese .bat-Datei wird nun in einem Editor (z.B. Notepad) geöffnet. Die eingetragenen Pfade für „R“ und für das PDF-Programm müssen nun überprüft und auf Ihr System angepasst werden. Ergänzend hierzu muss in diesen .bat-Dateien auch das PDF-Programm, also die .exe, aufgeführt werden. Zum besseren Verständnis sind anschließend zwei Screenshots von den beiden .bat-Dateien mit den Programmpfaden und der PDF-Programm.exe dargestellt. Bei dem Programm R muss auf den bin-Ordner, bei dem PDF-Programm auf den Ordner, der die PDF-Programm.exe enthält, verwiesen werden.

Image R 004.png
Image R 005.png

Ist dies geschehen, dann ist die Funktion „Messstellen“ in vollem Umfang verfügbar.

Messstellen in SYSTEM++

Messtellen anlegen

Die Funktion „Messstellen“ ist in ++SYSTEMS im Projektbaum zu finden. Zur Erstellung einer neuen Messstelle müssen Sie auf den Oberpunkt Messstelle mit der rechten Maustaste klicken und „neu“ auswählen. Es erscheint folgender Dialog.

Image R 006.png

Sie müssen nun ein Objekt (Abschnitt oder Knoten) auswählen. Sie können das Objekt entweder per Eingabe des Namens direkt über „Suchen“, oder durch Anklicken des Objektes im Bearbeitungsbildschirm über „Grafisch auswählen“, wählen. Nach dem erstellen der Messstelle wird diese auch grafisch dargestellt.

Image R 015.png

Bei einem Knoten wird automatisch der Wasserstand [m], bei einem Abschnitt der Durchfluss [m³/s], als Messgröße angegeben. Sie können sich die vorgeschlagene Einheit, also [m] oder [m³/s], mit Hilfe der Umrechnungsfunktion in eine andere Einheit ausgeben lassen. Also, wenn Sie sich z.B. den Durchfluss lieber in [l/s] anstatt in [m³/s] ausgeben lassen wollen, dann müssen Sie in dem Feld neben Umrechnung*1000 eingeben.

Image R 007.png

Der Haken neben dem Feld muss natürlich gesetzt sein.

Messungen hinterlegen

Wenn Sie gemessene Werte mit den Ergebnissen der Simulation vergleichen wollen, dann ist es sehr wichtig, dass die Datei, in der die gemessenen Werte stehen:

  • an einem bestimmten Ort im Projektverzeichnis liegt
  • denselben Namen wie die in ++SYSTEMS vergebene Messstelle hat
  • in einem bestimmten Format vorliegt.

Die Datei muss in einem Ordner mit dem Namen „Messstellen“ liegen. Dieser Ordner Messstellen (orange) befindet sich im gleichen Ordner, also auf der gleichen Ordnerebene, wie die Projektdatei (grün).

Image R 008.png

Zum Vergleich der Simulation mit der Messung, muss die Messstelle in ++SYSTEMS den gleichen Namen, wie die Datei mit den gemessenen Werten haben. Dieser Name dient quasi der Identifikation zwischen Messung und Messstelle. Als Beispiel hat die vergebene Messstelle in ++SYSTEMS den Namen „Q1“, weshalb die Messungsdatei auch „Q1“ heißen muss.

Image R 009.png


Die Messungsdatei muss eine Textdatei im csv-Format sein. Sie besteht im Prinzip aus 3 Spalten, die durch ein „;“ getrennt sind. In der ersten Spalte muss das Datum tt.mm.jj, in der zweiten Spalte die Uhrzeit hh:mm:ss und in der dritten Spalte der Messwert stehen.

Image R 010.png

Auswertung der Messung

Nachdem die Messstelle definiert und die Messungsdatei hinterlegt wurde, kann mit Hilfe einer hydraulischen Berechnung die Messung mit der Simulation verglichen werden. Zu beachten ist jedoch noch,dass bei der Berechnung die Durchflusskurven in den angrenzenden Knotenpunkte aufgezeichnet werden müssen! Zudem muss der Regen der gerechnet wird, sei es ein Gebietsniederschlag oder ein Einzelregen, zeitlich auf die Messung abgestimmt sein. Das heißt, es sollte innerhalb der Messungsaufzeichnung regnen. Am besten wäre es natürlich, wenn der Zeitpunkt der Messaufzeichnung identisch mit dem Regenbeginn ist. Der Regenbeginn ist für Gebietsniederschläge in der jeweiligen Regenmessstation definiert.

Image R 012.png

Für Natur-/Modellregen können Sie den Regenbeginn direkt in der jeweiligen Regeneingabemaske vergeben.

Image R 011.png

In der zu berechnenden Hydraulikvariante kann jetzt noch eingestellt werden, dass alle definierten Messstellen automatisch nach einer hydraulischen Berechnung ausgewertet werden. Diese Einstellung finden Sie im Reiter Ausgabe in der Hydraulikvariante.

Image R 013.png

Dieser Automatismus ist jedoch nicht zwingend relevant. Sie können auch nach einer hydraulischen Berechnung die Messstellen einzeln manuell auswerten. Hierzu müssen Sie mit der Maustaste auf die betroffene Messstelle rechtsklicken und die Funktion „Vergleichen in R“ auswählen. Auf den Vergleich in AquaZIS bzw. den Export im AquaZIS wird hier nicht näher eingegangen, da dies an AquaZIS gekoppelt ist. Unabhängig, ob der manuelle Weg oder die Automatik gewählt wurde, werden für die einzelne bzw. die Messstellen zunächst ein paar Werte ausgegeben.

Image R 014.png

Dieser Dialog gilt nur zur Info und kann durch Klicken von OK ausgeblendet werden. Anschließend wird die .bat Datei mit Hilfe der cmd.exe (schwarzes Fenster) ausgeführt. Hierbei werden die PDF-Dokumente erstellt.

Image R 016.png

Anschließend öffnet sich das PDF-Programm mit der jeweiligen Messstelle (=Simulation) und Messung.

Image R 018.png

Falls einer Messstelle keine Messung hinterlegt ist, dann wird nur die Simulation als PDF ausgegeben.

Image R 017.png

Desweiteren wird eine weitere PDF-Seite ausgegeben, welche Auskunft gibt inwieweit die simulierten Ergebnisse mit denen der Messung übereinstimmen. Hier ein Beispiel für die folgenden Messskurvenvergleich:

Image R 019.png
Image R 020.png
  • Nash-Sutcliffe-Effizienz (NSE)

Hierfür wird der bekannte Nash-Sutcliff-Effizienz-Koeffizient (Nash–Sutcliffe model efficiency coefficient NSE) ausgerechnet und bewertet. Nash-Sutcliffe Effizienz kann von -∞ bis 1. eine Effizienz von 1 entspricht eine perfekte Übereinstimmung von modellierten Entladung zu den beobachteten Daten. Ein Wirkungsgrad von 0 zeigt an, dass die Modellvorhersagen so genau wie die Mittel der beobachteten Daten sind, während ein Wirkungsgrad von weniger als Null auftritt , wenn die beobachtete mittler ein besserer Prädiktor als das Modell ist. Im Wesentlichen ist, desto näher das Modell Effizienz zu 1 ist, desto genauer das Modell ist.

  • Bestimmtheitsmaß

Das Bestimmtheitsmaß gibt Auskunft über den linearen Zusammenhang zwischen gemessenen und simulierten Werten. Die Größenordnung der Kennzahl liegt zwischen null und eins. Ein Wert von eins würde einen perfekten linearen Zusammenhang zwischen Messung und Simulation bedeuten, während ein Wert von Null keinen linearen Zusammenhang bedeutet. Das Maß beschreibt demnach nicht die Differenz oder den Größenunterschied zweier Kurven, sondern nur wie sich deren Verlauf ähnelt bzw. übereinstimmt.

Wichtige Hinweise:

  • Für die Auswertung der Messstellen müssen vor der Berechnung für alle anschließenden Knoten die Durchflusskurven gespeichert werden.

  • Falls einer Messstelle keine Messung hinterlegt ist, dann wird nur die Simulation als PDF ausgegeben.

  • In dem jeweiligen Verzeichnis der Hydraulikvariante wird eine .Rout-Datei geschrieben. Diese Datei schreibt bei Fehlern eine Meldung aus und gibt somit einen ersten Anhaltspunkt falls das Skript nicht Ordnungsgemäß funktioniert.

  • Das R-Skript soll einen ersten Ansatz zur Datenauswertung und Kalibrierung in ++System bieten. Es kann jederzeit bei Bedarf an die jeweiligen Bedürfnisse angepasst werden.