780 likes | 795 Views
Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm. Course Schedule. The Basics of Fluid Flow (Robert, 105 min) Break (15 min) The Cutting-Edge in Film (Eran, 45 min) Real Time Fluids in Games (Matthias, 45 min) Non-Newtonian Fluids (Robert, 15 min). Talk Outline.
E N D
Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm
Course Schedule • The Basics of Fluid Flow (Robert, 105 min) • Break (15 min) • The Cutting-Edge in Film (Eran, 45 min) • Real Time Fluids in Games (Matthias, 45 min) • Non-Newtonian Fluids (Robert, 15 min)
Talk Outline • Particle level set method • Vorticity confinement & vortex particles • Fire simulation • Solid-fluid coupling
Particle Level Set Method [Enright et al. ’02]
Level Sets • We like level sets: • Smooth surface for rendering • Geometric information (normals, curvature) • Handle topological changes
Problem: Bad Mass Conservation • Even with high order solvers! simple rigid body rotation vortex stretching
Lagrangian marker particles Eulerian level set Solution COMBINE
Particles • Passively advected with flow • Help correct interface • Especially areas of high curvature • Hybrid surface model [Foster & Fedkiw ’01] • Particles inside water • Particle level set method [Enright et al. ’02] • Particles on both sides
Rigid Body Particles Original shape Level set only One-sided particles Particle level set method
Particles • Seeded within band of interface • Carry sign and radius • Periodically reseed particles • Add to under-resolved regions • Delete unnecessary particles
Error Identification • Escaped particles (on wrong side of interface)
Error Quantification • Particles behave like little level set spheres
Error Correction • Compute corrections to >0 and <0 regions • Merge into final corrected level set • Take minimum magnitude
Particle Level Set Update • Advect particles & level set • Particle correction • Reinitialize • Particle correction • Adjust radii
Reduced Mass Loss simple rigid body rotation vortex stretching
Fast and Accurate PLS • Original PLS: • 3rd order RK; 5th order HJ-WENO • [Enright et al. ‘04]: Good results with lower order methods • Semi-Lagrangian (advection) • Fast marching method (redistancing) • 2nd order RK for particles • Easier for adaptive grids
Vorticity Confinement & Vortex Particles [Selle et al. ’05]
Vorticity • Vorticity: • Local rigid rotation • Want to simulate turbulent phenomena • Problem: numerical dissipation (boring flows)
Fixing Boring Flows Boring Flow Vorticity Confinement Vortex Particle Method
Vorticity Confinement [Steinhoff & Underhill ’94; Fedkiw et al. ’01] 1. Start with a velocity field 2. Compute vorticity 3. Compute vectors directed toward local maxima in vorticity magnitude 4. Compute a force [Andrew Selle]
Confinement Parameter e=0.25 e=0.50
Limitations of Vorticity Confinement • Uniformly amplifies vorticity ) grid artifacts • Can only amplify vorticity already on the grid • Unstable with larger e=2
Vortex Equations of Flow Navier-Stokes Equations Vortex Equations of Flow
Vortex Particle Method [Selle et al. ’05] • Hybrid method: • Vortex particles & grid-based fluid solver • Evolve both and u • Easier than trying to computeu from
Vortex Particle Method • Vortex particle update: • Move particles (advection) • Change vorticity (vortex stretching) • Adding vorticity to flow: • Apply analytic confinement force • Ensures vorticity is conserved
Results - Smoke Hybrid Method(6000 particles)
Results - Water [320x128x320 effective octree, 600 particles]
Fire Simulation [Nguyen et al. ’02]
Fire Gaseous fuel Assumed premixed with air Blue core Heating ignition Emission due to chemical reaction Blackbody radiation Yellowish/orange glow Cooling Soot & smoke Visible after cooling
Fire Simulation [Nguyen et al. ’01,’02] • 2 phase flow • Gaseous fuel • Hot gaseous product • Level set captures interface (blue core) • Incompressible & inviscid • Model gas expansion
Flame Modeling hot gaseous product gaseous fuel thin flame
Blue Core • Track using level set (don’t need PLS) Varying flame reaction speed S (smaller on right)
Jump Conditions • Using: • e.g. Conservation of mass: Mass flux exitingflame front Mass flux entering flame front Shorthand:
Jump Conditions • Conservation of mass and momentum:
Jump Conditions • Can rewrite as
Varying Density Ratio Larger f / h on right
Ghost Values Ghost Fluid Method: [Fedkiw et al. ’99] Ghost Value Hot Gas Fuel
Velocity Jump Solve for fuel phase Solve for products phase
Pressure Jump • Incorporate into pressure solve (projection step) • e.g. In 1D:
When All is Said and Done… • Still symmetric, positive definite!
Temperature Used for color map Smoke Density Soot & smoke Temperature & Smoke Density
Flammable Solids • Voxelize solid • Track solid’s temperature (heat conduction) • After ignition • Change solid voxels to negative (fuel) • Set injection velocity on faces of solid voxels
Multiple Interacting Liquids [2nd talk – “Fluids” papers session – Wed. 8:30-10:15]
Solid-Fluid Coupling [Guendelman et al. ’05]
Lagrangian (moving) mesh Good for solids Bad for fluids Significant deformation and topology change Eulerian (static) mesh Good for fluids Bad for solids Harder to track moving material quantities Lagrangian vs. Eulerian Meshes
Strong coupling (simultaneous solution) Monolothic system More stable Weak coupling (staggered solution) Use existing simulators Less stable Strong vs. Weak Coupling e.g. [Chentanez et al. ’06] SOLIDS SIM SOLIDS + FLUIDS SIM FLUIDS SIM