Flow Visualization

Martin Gasser, January 2002


Worum gehts hier?

Das Programm dient zur interaktiven Visualisierung von Strömungsdaten.

Überblick

Neben einfachen Arrow Plots, Streamline Plots und Color Plots beherrscht die Software den in [1] vorgeschlagenen Algorithmus zur Generierung von gleichverteilten Strömungslinien. Die Software wurde in Java (JDK 1.3) implementiert und sollte daher auf allen gängigen Plattformen lauffähig sein.

Beschreibung des Algorithmus

In einem Preprocessing-Schritt werden die in Form eines rektilinearen Grids vorhandenen Samples in ein kartesisches Gitter umgerechnet. Auf der Basis dieses Gitters werden dann alle weiteren Schritte durchgeführt. Für den Arrow Plot werden die Richtungsvektoren an diskreten Gitterpunkten (entweder gleichverteilt oder mit Mausklick bestimmt) durch Pfeile gleicher Länge dargestellt. Color Plots errechnen sich durch an einem Punkt (x,y).
Streamlines können entweder manuell durch Angabe eines Startpunktes und anschließender Vorwärts- und Rückwärtsintegration mit oder automatisch mit dem in [1] beschriebenen Algorithmus erzeugt werden.

GUI

GUI

Das grafische User Interface bietet folgende Bedienelemente an:

Tabsheet "Arrow Plot"

Hier kann der Abstand der Pfeile im Arrowplot (bei automatischer Generierung) angegeben werden.

Tabsheet "Streamline Plot"

Mit dem Slider "DSep" kann der Anfangsabstand (in Pixeln) eines neuen Startpunktes von den bestehenden Streamlines angegeben werden, DTest bietet die Möglichkeit, den Testabstand bei der Konstruktion der Streamline in Abhängigkeit von DSep in Prozent anzugeben. Mit dem Slider "Integration Step" kann der Zeitschritt bei der Integration der Streamlines angegeben werden. Mit den Radio-Buttons "Euler Integrator" bzw. "Runge Kutta Integrator" kann das Integrationsverfahren ausgewählt werden.

Popup-Menü

Ein Klick mit der rechten Maustaste auf die Zeichenfläche bringt ein Popup-Menü zum Vorschein, das eine Auswahl der Verfügbaren Zeichentechniken bietet, wobei die Unterpunkte "Draw Arrows -> Single Arrows" und "Draw Streamlines -> Single Streamlines" eine interaktive Platzierung der Elemente via Mausklick anbieten.

Button "Clear"

Lösch die Zeichenfläche.

Menu "File"

Mit dem Menüpunkt "Open" kann ein Datenfile geladen. Der Fortschritt des Ladevorganges und des anschließenden Resamplings wird in einem Fortschrittsbalken angezeigt. Mit "Save Picture" kann der aktuelle Inhalt der Zeichenfläche im JPEG-Format abgespeichert werden. "Exit" beendet das Programm.

API-Dokumentation

Javadoc

Beispielbilder

Runge-Kutta integrated ESS streamlines, velocity plot
Beispiel 1: Evenly spaced Streamlines mit Runge-Kutta-Integration und
Velocity Color-Plot im Hintergrund
Arrow plot
Beispiel 2: Arrow plot
Pressure plot, manually placed, Runge-Kutta integrated  streamlines
Beispiel 3: Manuell gesetzte Streamlines, Runge-Kutta-Integration und
Pressure Plot als Hintergrund
Velocity color plot, ess, arrow plot
Beispiel 4: Velocity color plot als Hintergrund, darüber ESS und ein Arrow Plot

Download

(kontaktiere die Übungsleitung)

Installation

FlowViz.zip entpacken und flowviz.bat bzw. flowviz.sh starten.

Referenzen

[1] Bruno Jobard and Wilfried Lefer, Creating evenly spaced streamlines of arbitrary density