Hauptseminar WS 05/06 Graphische Datenverarbeitung A Vortex Particle Method for Smoke, Fire, and Explosions ( Ein Wirbel-Partikel Ansatz für Rauch, Feuer und Explosionen ) Martin Petrasch
Inhalt 1. Überblick 2. Einführung 3. Bisheriger Ansatz 4. Euler - Gitter basierte Methode 5. Semi Lagrange Methode 6. Erweiterungen 7. Beispiele 8. Zusammenfassung Hauptseminar WS 05/06 2 / 14
1. Überblick Was sind Gas- und Flüssigkeitssimulationen? Wozu benötigt man so etwas? Was ist die Problematik bei solchen Simulationen? Hauptseminar WS 05/06 3 / 14
2. Einführung Numerische Flüssigkeits- und Gassimulationen sind in der Spezialeffekte-Industrie üblich Hochturbulente Phänomene sind dagegen immer noch eine Herausforderung Filmen dieser Effekte ist schwierig Lösung: Auch diese Effekte müssen per Computer berechnet werden Hauptseminar WS 05/06 4 / 14
3. Bisheriger Ansatz Eigener Ansatz? computational fluid dynamics (CFD) existiert schon lange Unterscheidung zwischen kompressibel- und nicht kompressiblen Gasen ( -> Explosionen ) grid based methods Der Gitter-Ansatz Hauptseminar WS 05/06 5 / 14
4. Euler - Gitter basierte Methode kartesisch angeordnetes Voxelgitter Voxeldaten: Druck, Geschwindigkeit, Temperatur etc. Hauptseminar WS 05/06 6 / 14
5. Euler - Gitter basierte Methode Probleme: hoher Speicherbedarf ( 3D Gitter ) grobe Gitter/große Zeitschritte erfassen nicht alle Informationen (Verwirbelung etc.) Hauptseminar WS 05/06 7 / 14
5. Semi Lagrange Methode Erweiterung des Eulergitter zusätzliche Partikel fließen durch das Gitter anhand dessen Geschwindigkeiten Partikel wandern auf Trajektorien durch das Gitter Trajektoren: mittels Semi-Langrange Methode errechnet Semi-Lagrange: Numerisches Verfahren zur Lösung nicht-liniearer Differenzialgleichungen (hier: Navier-Stokes) Hauptseminar WS 05/06 8 / 14
5. Semi Lagrange Methode Partikel halten Informationen über Wirbelkraft (Stärke und Richtung) Übertragen der Wirbelinformationen von den Partikeln auf das Gitter mittels eines Gausschen Verteilungskernes Hauptseminar WS 05/06 9 / 14
6. Erweiterungen Problem - Auflösung von hochturbulenten Phänomenen 1. Eulergitter: Voxelgranularität 2. zu schnelles Verschwinden von Wirbeln durch Numerischen Verlust 3. Aus den Partikeln errechnete Wirbelinformationen des Gitters führen zu unnatürlichen Wirbeln und Bewegungen Hauptseminar WS 05/06 10 / 14
6.1 Eulergitter: Voxelgranularität Verfeinerung des Gitters hilft in vielen Fällen -> ist aber unerwünscht (Ressourcen) => Voxelgranularität soll gleich bleiben Hauptseminar WS 05/06 11 / 14
6.2 zu schnelles Verschwinden von Wirbeln durch Numerischen Verlust Einführung einer zusätzlichen Kraft in der Navier-Stokes Gleichung => vorticity confinement Wirbelerhaltung Die Kraft wird errechnet um die Wirbel länger am Leben zu erhalten bzw. den Numerischen Verlust auszugleichen Hauptseminar WS 05/06 12 / 14
6.3 unnatürliche Wirbel und Bewegungen Grund nach Selle, Rasmussen und Fedwik : Energieerhaltungsatz wird bei der Übertragung der Wirbelinformationen von den Partikeln auf das Grid nicht beachtet Energie (Gesamtwirbelkraft) soll im ganzen System gleich sein Hauptseminar WS 05/06 13 / 14
6.3 unnatürliche Wirbel und Bewegungen Lösung :Wirbelerhaltungskraft wird modifiziert so das die gesamte Wirbelkraft im System möglichst konstant ist Übertragung des Betrages der Wirbelkraft in das Gitter über den Verteilungskern Hauptseminar WS 05/06 14 / 14
8. Beispiele Star Wars Hauptseminar WS 05/06 15 / 14
8. Beispiele Veränderung der Konstanten für die Verfeinerung: Zu klein ( links ): Artefakte und Instabilität Zu groß (rechts ): Rauch steigt nicht mehr auf Hauptseminar WS 05/06 16 / 14
8. Beispiele Animation Hauptseminar WS 05/06 17 / 14
8. Beispiele Animation Wasser mit dem Wirbel-Partikel Ansatz Hauptseminar WS 05/06 18 / 14
9. Zusammenfassung Methode = gitterbasierende Navier Stokes-Lösung + Partikel-basierender Ansatz Vorrausetzungen: 1) Benutzung von Partikeln, um Wirbelkonzentrationen zu erhalten 2) Richte die gitterbasierten Verwirblungswerte in Richtung der Partikel basierenden Verwirblung Hauptseminar WS 05/06 19 / 14
Ende Vielen Dank! Hauptseminar WS 05/06 20 / 14