Flow Visualization

186.703: Laborübung Visualisierung

Laura Fritz, 9826587

Stephan Pajer, 0325816

Allgemein

Dieser Programm entstand für die Laborübung Visualisierung an der TU-Wien und dient der Darstellung verschiedener Strömungsdatensätze. Neben einem Vektor der die Strömungsrichtung angibt, sind auch oft weitere skalare Werte wie etwa Druck, Geschwindigkeit, Temperatur, usw. gegeben. Diese Daten können in unserem Programm anhand von Arrow-Plots oder Streamlines dargestellt werden. Der verwendete Algorithmus zur automatischen Verteilung der Streamlines ist im Paper von Bruno Jobard and Wilfrid Lefer, "Creating Evenly Spaced Streamlines of Arbitrary Density", Visualization in Scientific Computing '97, zu finden.

Programm

Nach dem Laden eines Datensatzes wird der Strömungsdatensatz auf Grauwerte gemapped dargestellt. In unserem Programm ist es auch möglich mehrere Datensätze gleichzeitig zu laden. Das hat den Vorteil Strömungsdaten zu verschiedenen Zeitschritten vergleichen zu können (linkes Bild), oder den selben Datensatz in mehren Fenstern öffnen zu können (rechtes Bild):

User Interface

Das User Interface ist auf drei Tabs aufgeteilt, deren Funktionen entsprechend auf den Background, die Arrows oder die Streamlines angewendet werden können.

Background

Arrows

  • Size and Style
    • use normalized data: Wenn enabled, werden alle Pfeile in gleicher Länge (unabhängig vom Betrag der Strömungsvektoren) angezeigt. Falls nicht aktiv, sind die Pfeile entsprechend der Länge der jeweiligen Strömungsvektoren lang.
    • arrow size: Skaliert die Grösse der Pfeile.
    • arrow distance: Bestimmt den Abstand zwischen den Pfeilen.
    • Style: Es können verschiedene Arrow-Styles gewählt werden.
      • Lines: Linien in Richtung der Strömungsvektoren (ganz linkes Bild).
      • Lines with Points: Ausgehend von einem Punkt werden die Linien in Richtung der Strömungsvektoren gezeichnet(zweites Bild von links).
      • Arrrows: Pfeile in Richtung der Strömungsvektoren (zweites Bild von rechts).
      • Triangles: Dreiecke in Richtung der Strömungsvektoren (ganz rechtes Bild).

Streamlines

  • Integration Method
    • Euler-Integration: Berechnet eine Streamline numerisch mit der Euler-Integration (linkes Bild): s_i+1 = s_i + dt * v(s_i).
    • Runge-Kutta: Berechnet eine Streamline numerisch mit der Runge-Kutta Integration zweiter Ordnung (rechtes Bild): s_i+1 = s_i + v(s_i+v(s_i) * dt/2) * dt.

  • Parameter Settings
    • dt: Abstand zwischen den Samplingpunkten entlang einer Streamline.
    • d_sept: Setzt den Minimalabstand eines neuen Seedpunkt zu den anderen Samplingpunkten.
    • d_test: Bestimmt den Minimalabstand, den eine Streamline zu anderen Streamlines haben darf.
    • Color: Anhand des Betrags der Strömungsvektoren oder der Skalarwerte können entsprechend des gewählten Parameters (flow, pressure oder vorticity) Farbwerte zugeordnet werden.
    • set streamlines manually: Mit gehaltener mittlerer Maustaste können Streamlines manuell gezeichnet werden, wenn set streamlines manually enabled ist. Dabei werden alle Einstellungen aus dem UI übernommen.
    • clear: Mit dem clear Button lassen sich die manuell gesetzten Streamlines wieder löschen.

  • Additional Settings
    • normal lines: Zeichnet durchgehende Streamlines entsprechend der Parameter Settings.
    • tapering: Berechnet die Streamlines mit unterschiedlicher Linienbreite. Abhängig vom Abstand zu anderen Streamlines wird eine Linie dünner, je näher sie anderen Streamlines kommt (linkes Bild).
      • line width: Legt die ursprüngliche Breite der Linie fest.
    • glyph mapping: Legt Pfeile in die Richtung der Strömung auf die Strömungslinien (Bild in der Mitte).
      • arrow size: Gibt die Grösse der Pfeile an.
    • texturing: Mapped periodische Intensitätsfunktionen auf die Streamlines um Streamlines, die eng zusammen liegen, besser unterscheiden zu können (rechtes Bild).
      • f1(x) = 0.5 * ( 1+sin( (2*PI*x)/N ) )
      • f2(x) = ( x mod N )/( N-1 )
      • period length: Die Länge von N.

Mouse Handling

  • Linke Maustaste: Mit gehaltener linker Maustaste lässt sich das Bild verschieben.
  • Rechte Maustaste: Mit gehaltener rechter Maustaste kann man zoomen.
  • Mittlere Maustaste: Mit gehaltener mittlerer Maustaste können Streamlines manuell gezeichnet werden, wenn set streamlines manually enabled ist.

Dokumentation

Die Klassen-Dokumentation in Doxygen zum downloaden.

Download

Vorraussetzung: Microsoft Visual Studio 2005.

Download FlowVis.

Mehr Bilder