advanced topics in computer graphics and visualization

34
computer graphics & visualization Advanced Topics in Computer Graphics and Visualization Animating Sand as a Fluid Hanno Flohr Master Informatik

Upload: mikasi

Post on 24-Feb-2016

76 views

Category:

Documents


0 download

DESCRIPTION

Advanced Topics in Computer Graphics and Visualization. Animating Sand as a Fluid Hanno Flohr Master Informatik. Gliederung. Grundlagen Fluidsimulation m it Gittern m it Partikeln Animation von Sand als Fluid Fluidsimulation Modellierung des Sands - PowerPoint PPT Presentation

TRANSCRIPT

Animating Sand as a Fluid

Advanced Topics in Computer Graphics and VisualizationAnimating Sand as a FluidHanno Flohr Master Informatikcomputer graphics & visualizationcomputer graphics & visualization

GliederungGrundlagen Fluidsimulationmit Gitternmit PartikelnAnimation von Sand als FluidFluidsimulationModellierung des SandsOberflchenrekonstruktion mit Partikelncomputer graphics & visualization

FluidsimulationFluide: FlssigkeitenGaseverschiedene Fluidarten zhflssig oder reibungsfrei komprimierbar oder nicht komprimierbarverschiedene Flussarten (laminar/turbulent)

Verschiedene Anstze zur BeschreibungFluidsimulation mit Eulerschen GitternFluidsimulation mit Lagrangeschen Partikeln

computer graphics & visualization

Fluidsimulation

computer graphics & visualization

Fluidsimulation

computer graphics & visualization

Fluidsimulation mit GitternGitterpunkte speichern Geschwindigkeit, Druck, Indikator wo das Fluid (nicht) ist und zustzliche VariablenBestimmung der Zelleninhalte LeerOberflcheVoll

Randbedingungen fr betroffene Zellen festlegenvolle Zellen: Geschwindigkeitskomponenten berechnen und einen Iterationsschritt fr neuen DruckOberflchenzellen: Randgeschwindigkeit neu berechnenPosition und Oberflche updaten

computer graphics & visualization

Fluidsimulation mit GitternHauptvorteil: Simple Diskretisierung der Gleichungen und Lsung der InkompressibilittsbedingungNachteile:Gitter bentigt Werte auch an Gitterpunkten ohne FluidProbleme mit Advektionhohe numerische Diffusion wegen akkumulierter Interpolationsfehler durch numerische Approximation der Gleichungencomputer graphics & visualization

Fluidsimulation mit PartikelnSmoothed Particle Hydrodynamics (SPH)SPH Modell:Fluid als Set von diskreten, sich bewegenden Partikeln speichern Position und GeschwindigkeitKontinuittsgleichung durch Modell erflltkonstante Anzahl Partikel mit konstanter MasseFluid kann sich frei ausbreitenPartikeleigenschaften beeinflussen Nachbarschaft

computer graphics & visualization

Smoothed Particle HydrodynamicsSPH Simulation:Dichte aller Partikel bestimmenMasseneinfluss benachbarter PartikelBeschleunigung aller Partikel berechnenKrafteinfle benachbarter PartikelGeschwindigkeiten updatenAlle Partikel bewegenPosition der Partikel updaten

computer graphics & visualization

Smoothed Particle HydrodynamicsVorteile: hohe Przision bei Advektionkein Gitter bentigtNachteile: Nachbarschaftsbestimmung ntigeffizienteste Methoden basieren auf Sortierung der Partikel in gewhnliche Gitter, kd-tree oder BSP-treeProbleme mit Druck und Inkompressibilittsbedingungoft kleinere Zeitschritte bentigt

computer graphics & visualization

Animation von Sand als FluidFluidsimulationModellierung des SandsOberflchenrekonstruktion mit Partikeln

computer graphics & visualization

FluidsimulationKomplementaritt der Strken und Schwchen von Gittern und Partikeln nutzen

GitterPartikelInkompressibilitt / Druck+-Advektion-+Gitterjaals Hilfsstrukturcomputer graphics & visualization

FluidsimulationParticle-in-Cell (PIC):Partikel fr Advektion, Gitter fr RestProblem: hohe numerische Diffusion durch wiederholte Mittelung und InterpolationFluid-Implicit-Particle (FLIP)Partikel fundamentale Reprsentation des Fluids Gitter zum Aktualisieren der Partikelvariablen, gem auf dem Gitter berechneten nderungenVerbesserung: kaum numerische Diffusioncomputer graphics & visualization

Algorithmus (1)Adaption von PIC und FLIP fr nicht komprimierbare Fle:Initialisierung der Partikel 8 Partikel pro ZelleRandomly jittered (gegen Aliasing)Partikel nahe der Fluidoberflche: mindestens halbe Zelle von Oberflche entfernt

computer graphics & visualization

Algorithmus (2)bertragung auf Gitter:Gitterpunkte erhalten gewichtetes Mittel der nahen Partikel (trilineare Interpolation)Markierung von Gitterzellen mit zumindest einem Partikelim unmarkierten Gitterbereich: Abstandsfeld konstruieren um Geschwindigkeitsfeld auerhalb des Fluids auszudehnen

computer graphics & visualization

Algorithmus (3)Berechnungen auf dem Gitter:Addieren der Beschleunigung durch Gravitation Randbedingungen und Inkompressibilitt erzwingenneues Geschwindigkeitsfeld erneut ausdehnenGitter nur als Zusatzstruktur (Gitter muss nicht in jedem Zeitschritt gleich sein)

computer graphics & visualization

Algorithmus (4)Partikelgeschwindigkeiten updatenTrilineare Interpolation der Geschwindigkeit (PIC) oder Geschwindigkeitsnderung (FLIP) gem der 8 umliegenden Gitterpunktezhflssige Strmung (zB Sand): PICreibungsfreie Strmung (zB Wasser): FLIP

computer graphics & visualization

Algorithmus (5)Partikel bewegen (Advektion)Simpler ODE solver mit 5 Zwischenschritten Beachtung der CFL Bedingung (max eine Zelle pro Zwischenschritt)Erkennen von Partikeln die feste Wnde durchdringen Behebung zur Vermeidung von Artefakten

computer graphics & visualization

Animation von Sand als FluidFluidsimulationModellierung des SandsOberflchenrekonstruktion mit Partikeln

computer graphics & visualization

Modellierung des Sandscomputer graphics & visualization

Zusammenhalt (Kohsion)computer graphics & visualization

Vereinfachtes Modell (Annahmen)Nicht komprimierbare Strmung -> konstante DichteDruck um gesamtes Geschwindigkeitsfeld inkompressibel zu machen hnlich richtigem Druck im SandKeine Beachtung vonelastischer Verformung minimaler Volumennderung zu Beginn/Ende des Flusses Aufteilung: Zellen mit starrer Bewegung undZellen mit nicht komprimierbarer Scherstrmungcomputer graphics & visualization

Vereinfachtes Modell (Annahmen)Flieflchen-Bedingung: Sand kann Krften und Massentrgheit widerstehen -> Zelle mit starrer BewegungVerfestigung der Geschwindigkeit starrer Regionen:Gruppen von zusammenhngenden starren Zellen findeneinheitliche Geschwindigkeit fr starre Regionen bestimmenprojizierte Starrkrperbewegung berechnen

computer graphics & visualization

Reibungsrandbedingungendefinieren Reibung zwischen Sand und anderen ObjektenRandbedingungen bisher erlauben:entweder keinerlei Gleiten oder dauerhaftes Gleiten

Video-Quelle:http://www.cs.ubc.ca/~rbridson/movies/websandbunny.mov

computer graphics & visualization

ReibungsrandbedingungenReibungsformel:Statische Reibung: Geschwindigkeit in Tangentialrichtung = NullKinetische Reibung: Geschwindigkeit in Tangentialrichtung proportional reduziert

Video-Quelle: http://www.cs.ubc.ca/~rbridson/movies/sandbunny.mov

computer graphics & visualization

Algorithmus (fr jeden Zeitschritt)Gewhnliche Schritte der Fluidsimulation (Advektion, Gravitation, Randbedingungen, Druck, etc)Berechnung: Formnderungsgeschwindigkeitstensor pro Zelle (zentrale Differenzen) Speichern der Zellen als starr oder flieendGruppen von starren Zellen finden und Geschwindigkeiten verfestigenUpdate verbleibender Geschwindigkeiten mit Reibungsspannungcomputer graphics & visualization

Animation von Sand als FluidFluidsimulationModellierung des SandsOberflchenrekonstruktion mit Partikeln

computer graphics & visualization

Oberflchenrekonstruktiondurch Simulation: Positionen der Partikel welche das Fluid definieren fr hochqualitatives Rendering: Oberflche zur Umhllung der Partikel ntig

computer graphics & visualization

Oberflchenrekonstruktion

computer graphics & visualization

OberflchenrekonstruktionOberflche bestimmen: benachbarte Gitterpunkte mit unterschiedlichen Vorzeichen fr AbstandOberflche zwischen diesen Gitterpunkten Oberflchenpunkte anhand Abstandswerten bestimmbar

Vorteile:Geringe Kosten pro FrameUnabhngige Frames -> Berechnung mit mehreren CPUs/Maschinen parallel mglich

computer graphics & visualization

OberflchenrekonstruktionProbleme:Artefakte in konkaven Regionen gemittelte Position kann irrtmlich auerhalb der Oberflche liegenLsung: Sampling auf hherer Auflsung + ein smoothing passRadien mssen genaue Abschtzungen des Abstands zur Oberflche seinkeine schnelle Methode zur Berechnung mit gengend hoher Przision vorhandenDarum: alle Radien fest (konstanter durchschnittlicher Partikelabstand) und Initialabstand an Oberflche anpassen

computer graphics & visualization

Video: Sand Column

Video-Quelle:http://www.cs.ubc.ca/~rbridson/movies/sandcolumn.movcomputer graphics & visualization

Video: Water Column

Video-Quelle:http://www.cs.ubc.ca/~rbridson/movies/webwaterslide.movcomputer graphics & visualization

Vielen Dank fr ihre Aufmerksamkeit!

Fragen?computer graphics & visualization