course 14 fluid simulation monday, half day, 8:30 am - 12:15 pm
TRANSCRIPT
![Page 1: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/1.jpg)
![Page 2: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/2.jpg)
Course 14Course 14
Fluid SimulationFluid SimulationMonday, Half Day, 8:30 am - 12:15 pmMonday, Half Day, 8:30 am - 12:15 pm
![Page 3: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/3.jpg)
Course ScheduleCourse 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)
![Page 4: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/4.jpg)
Talk OutlineTalk Outline
• Particle level set method
• Vorticity confinement & vortex particles
• Fire simulation
• Solid-fluid coupling
![Page 5: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/5.jpg)
Particle Level Set MethodParticle Level Set Method
[Enright et al. ’02]
![Page 6: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/6.jpg)
Level SetsLevel Sets
• We like level sets:
– Smooth surface for rendering
– Geometric information (normals, curvature)
– Handle topological changes
![Page 7: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/7.jpg)
simple rigid body rotation vortex stretching
Problem: Bad Mass ConservationProblem: Bad Mass Conservation
• Even with high order solvers!
![Page 8: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/8.jpg)
SolutionSolution
Lagrangian marker particlesEulerian level set
0
0
COMBINE
![Page 9: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/9.jpg)
ParticlesParticles
• 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
![Page 10: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/10.jpg)
ParticlesParticles
Rigid Body
Original shape
Level set only One-sided particles Particle level set method
![Page 11: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/11.jpg)
ParticlesParticles
• Seeded within band of interface
• Carry sign and radius
• Periodically reseed particles
– Add to under-resolved regions
– Delete unnecessary particles
![Page 12: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/12.jpg)
Error IdentificationError Identification
• Escaped particles (on wrong side of interface)
pr
0
0
![Page 13: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/13.jpg)
Error QuantificationError Quantification
• Particles behave like little level set spheres
pr
![Page 14: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/14.jpg)
Error CorrectionError Correction
• Compute corrections to >0 and <0 regions
• Merge into final corrected level set
– Take minimum magnitude
0
0
E
0 0
0
0
![Page 15: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/15.jpg)
Particle Level Set UpdateParticle Level Set Update
• Advect particles & level set
• Particle correction
• Reinitialize
• Particle correction
• Adjust radii
![Page 16: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/16.jpg)
simple rigid body rotation vortex stretching
Reduced Mass LossReduced Mass Loss
![Page 17: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/17.jpg)
Fast and Accurate PLSFast 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
![Page 18: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/18.jpg)
Vorticity Confinement & Vorticity Confinement & Vortex ParticlesVortex Particles
[Selle et al. ’05]
![Page 19: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/19.jpg)
VorticityVorticity
• Vorticity:
– Local rigid rotation
• Want to simulate turbulent phenomena
– Problem: numerical dissipation (boring flows)
![Page 20: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/20.jpg)
Fixing Boring FlowsFixing Boring Flows
Boring Flow Vorticity Confinement Vortex Particle Method
![Page 21: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/21.jpg)
Vorticity ConfinementVorticity Confinement
2. Compute vorticity
4. Compute a force
1. Start with a velocity field
3. Compute vectors directed toward local maxima in vorticity magnitude
[Steinhoff & Underhill ’94; Fedkiw et al. ’01]
[Andrew Selle]
![Page 22: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/22.jpg)
Confinement ParameterConfinement Parameter
=0.25 =0.50
![Page 23: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/23.jpg)
Limitations of Vorticity ConfinementLimitations of Vorticity Confinement
• Uniformly amplifies vorticity ) grid artifacts
• Can only amplify vorticity already on the grid
• Unstable with larger
=2
![Page 24: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/24.jpg)
Vortex Equations of FlowVortex Equations of Flow
Navier-Stokes Equations
Vortex Equations of Flow
![Page 25: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/25.jpg)
Vortex Particle MethodVortex Particle Method
• Hybrid method:
– Vortex particles & grid-based fluid solver
– Evolve both and u
• Easier than trying to compute u from
[Selle et al. ’05]
![Page 26: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/26.jpg)
Vortex Particle MethodVortex Particle Method
• Vortex particle update:
– Move particles (advection)
– Change vorticity (vortex stretching)
• Adding vorticity to flow:
– Apply analytic confinement force
– Ensures vorticity is conserved
![Page 27: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/27.jpg)
Results - SmokeResults - Smoke
Hybrid Method(6000 particles)
![Page 28: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/28.jpg)
Results - Smoke Results - Smoke
![Page 29: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/29.jpg)
Results - WaterResults - Water
[320x128x320 effective octree, 600 particles]
![Page 30: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/30.jpg)
Fire SimulationFire Simulation
[Nguyen et al. ’02]
![Page 31: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/31.jpg)
FireFire
Gaseous fuel
Blue core
Blackbody radiation
Soot & smoke
Heating
Cooling
Emission due to chemical reaction
Assumed premixed with air
Yellowish/orange glow
Visible after cooling
ignition
![Page 32: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/32.jpg)
Fire SimulationFire Simulation
• 2 phase flow
– Gaseous fuel
– Hot gaseous product
• Level set captures interface (blue core)
• Incompressible & inviscid
• Model gas expansion
[Nguyen et al. ’01,’02]
![Page 33: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/33.jpg)
Flame ModelingFlame Modeling
hot gaseous product
gaseous fuel
thin flame
![Page 34: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/34.jpg)
Blue CoreBlue Core
• Track using level set (don’t need PLS)
Varying flame reaction speed S (smaller on right)
![Page 35: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/35.jpg)
Jump ConditionsJump Conditions
• Using:
• e.g. Conservation of mass:
Shorthand:
Mass flux entering flame front
Mass flux exitingflame front
![Page 36: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/36.jpg)
Jump ConditionsJump Conditions
• Conservation of mass and momentum:
![Page 37: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/37.jpg)
Jump ConditionsJump Conditions
• Can rewrite as
![Page 38: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/38.jpg)
Varying Density RatioVarying Density Ratio
Larger f / h on right
![Page 39: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/39.jpg)
Ghost ValuesGhost Values
Fuel
Ghost ValueHot Gas
Ghost Fluid Method: [Fedkiw et al. ’99]
![Page 40: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/40.jpg)
Velocity JumpVelocity Jump
Solve for fuel phase Solve for products phase
![Page 41: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/41.jpg)
Pressure JumpPressure Jump
• Incorporate into pressure solve (projection step)
• e.g. In 1D:
pi+2
pi pi-1
xi xi-1 xi+1 xi+2 xI
pi+1
ghost
![Page 42: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/42.jpg)
When All is Said and Done…When All is Said and Done…
• Still symmetric, positive definite!
![Page 43: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/43.jpg)
Temperature & Smoke DensityTemperature & Smoke Density
Temperature
• Used for color map
Smoke Density
• Soot & smoke
![Page 44: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/44.jpg)
CampfireCampfire
![Page 45: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/45.jpg)
Flammable SolidsFlammable 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
![Page 46: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/46.jpg)
Flammable BallFlammable Ball
![Page 47: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/47.jpg)
Multiple Interacting LiquidsMultiple Interacting Liquids[2nd talk – “Fluids” papers session – Wed. 8:30-10:15]
![Page 48: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/48.jpg)
Solid-Fluid CouplingSolid-Fluid Coupling
[Guendelman et al. ’05]
![Page 49: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/49.jpg)
Lagrangian vs. Eulerian MeshesLagrangian vs. Eulerian Meshes
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
![Page 50: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/50.jpg)
Strong vs. Weak CouplingStrong vs. Weak Coupling
Strong coupling
(simultaneous solution)
• Monolothic system
• More stable
Weak coupling
(staggered solution)
• Use existing simulators
• Less stable
SOLIDS SIM
FLUIDS SIMSOLIDS + FLUIDS SIM
e.g. [Chentanez et al. ’06]
![Page 51: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/51.jpg)
Volumetric vs. Thin SolidsVolumetric vs. Thin Solids
Volumetric Thin shell
![Page 52: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/52.jpg)
256x256x192 effective octree; 30k triangles
Coupling to Thin SolidsCoupling to Thin Solids[Guendelman et al. ’05]
![Page 53: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/53.jpg)
Preventing Leaks: VisibilityPreventing Leaks: Visibility
![Page 54: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/54.jpg)
Check visibility of interpolation nodesUse replacement ghost value when interpolating
One-Sided InterpolationOne-Sided Interpolation
![Page 55: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/55.jpg)
One-Sided AdvectionOne-Sided Advection
• Clip semi-Lagrangian rays
u
x-ut
![Page 56: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/56.jpg)
Additional ConsiderationsAdditional Considerations
• Crossed-over nodes
• Preventing particles from crossing solid
• Redistancing & velocity extrapolation
![Page 57: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/57.jpg)
Simulation StepSimulation Step
un,n
Advance particle level set ! n+1
Advect un and add gravity ! u*
Project u* ! un+1
un+1,n+1
One-sided advection( and particles)
One-sided advection (u)
![Page 58: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/58.jpg)
Solid Affecting FluidSolid Affecting Fluid
• Rasterize solid onto grid faces
• Enforce solid velocity with Neumann boundary conditions
Project u* ! un+1
![Page 59: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/59.jpg)
One-Way Coupling StepOne-Way Coupling Step
un,n
Advance particle level set ! n+1
Advect un and add gravity ! u*
Project u* ! un+1
un+1,n+1
Advance solid
Enforce solid velocities at solid-fluid interface
![Page 60: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/60.jpg)
160x192x160 effective octree
One Way Coupling ExampleOne Way Coupling Example
![Page 61: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/61.jpg)
Fluid Coupling ForceFluid Coupling Force
• Want to use fluid pressure
• Incompressible pressure can be noisy
– Incompressibility = hard constraint
– Enforcing solid velocity = hard constraint
– Better for compressible fluids [Yngve et al. ‘00; Fedkiw ‘02]
![Page 62: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/62.jpg)
Smoother Coupling PressureSmoother Coupling Pressure
• Don’t enforce solid velocity
– Treat solid as fluid
• Solve variable density fluid for pc
![Page 63: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/63.jpg)
Two Pressure Solves!Two Pressure Solves!
• Incompressible pressure (projection):
– Enforce incompressibility & solid velocity
– Essential for reducing mass loss
• Coupling pressure:
– Does not modify fluid velocity
– Essential for smoother coupling force on solid
![Page 64: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/64.jpg)
Computing Force on SolidComputing Force on Solid
• Fluid pressure pushes on both sides
p1
p2
![Page 65: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/65.jpg)
Computing Force on SolidComputing Force on Solid
• Net force is proportional to pressure jump [pc]
p1 - p2
![Page 66: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/66.jpg)
Computing Force on SolidComputing Force on Solid
Rasterize solid
Compute coupling pressure
Pressure jumps on faces
Average to nodes
Extrapolate
Interpolate at centroid
Compute force
![Page 67: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/67.jpg)
Two-Way Coupling StepTwo-Way Coupling Step
un,n
Advance particle level set ! n+1
Advect un and add gravity ! u*
Advance solid
Project u* ! un+1
un+1,n+1
Compute coupling pressure and apply force to solid
![Page 68: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/68.jpg)
148x148x111 uniform; 2.5k triangles
Rigid ShellRigid Shell
![Page 69: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/69.jpg)
200x200x200 effective octree; 30k triangles
Water-Cloth CouplingWater-Cloth Coupling
![Page 70: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/70.jpg)
210x140x140 uniform; 30k triangles
Coupling to SmokeCoupling to Smoke
![Page 71: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/71.jpg)
Coupling to Volumetric SolidsCoupling to Volumetric Solids[Losasso et al. ’06]
![Page 72: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/72.jpg)
ApproachApproach
• Rasterize solid onto fluid grid
– Compute object
• Fill with ghost fluid values
• Two-way coupling as for thin shells
![Page 73: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/73.jpg)
Volumetric SolidsVolumetric Solids
Extrapolate fluid values[Houston et al. ’03;
Rasmussen et al. ’04]
Need grid values in solid
![Page 74: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/74.jpg)
Volumetric SolidsVolumetric Solids
• Velocity boundary conditions
– Model object friction (slip to no-slip)
boundary conditions
– Extrapolate fluid into object
• Separation conditions
– Avoid pulling water out of solid
• Also collide fluid particles against objects
![Page 75: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/75.jpg)
Two-Way CouplingTwo-Way Coupling
Solid Affecting Fluid
• Neumann boundary conditions
Fluid Affecting Solid
• Compute coupling pressure
• Apply force
![Page 76: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/76.jpg)
Ice Cubes ExampleIce Cubes Example
100x100x100 uniform grid
![Page 77: Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm](https://reader035.vdocuments.site/reader035/viewer/2022062409/56649cea5503460f949b5cf3/html5/thumbnails/77.jpg)
SummarySummary
• Particle level set method
– Particles help conserve mass
• Vorticity confinement & vortex particles
– Help preserve “turbulence” in flow
• Fire simulation
– 2 phases with jump conditions
• Solid-fluid coupling
– Couple using solid velocity & fluid pressure