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
Top Related