Title: Coupling Water and Smoke to Thin Deformable and Rigid Shells
1Coupling Water and Smoke to Thin Deformable and
Rigid Shells
- Eran Guendelman 1,2
- Andrew Selle 1,3
- Frank Losasso 1,2
- Ronald Fedkiw 1,2
- 1Stanford University, 2Industrial Light Magic,
3Intel Corporation
2Motivation
- Fluid simulation becoming more common
- Engineering, biomedicine, entertainment
- Want interaction with thin solids
- Parachutes
- Cardiovascular simulation
- CG characters w/clothing
3Goal
- Two-way coupling between
- Smoke or free-surface water
- Thin rigid and deformable open shells
- Prevent leaks across solid
4256x256x192 effective octree 30k triangles
5Volumetric vs. Thin Solids
Volumetric
Thin shell
6Related Work Volumetric
- DLM / Rigid Fluid Glowinski et al. 94Carlson
et al. 04 - Inter-particle forces Génevaux et al. 03
Müller et al. 04 - Coupling solid velocity fluid pressure
- Incompressible Takahashi et al. 02
- Compressible Yngve et al. 00 Fedkiw 02
7Diffuse Interface Methods
- Smear solid onto fluid grid
- e.g. Immersed boundary method Peskin 72
- Parasitic currents
8Sharp Interface Methods
- Incorporate jump conditions into stencils
- Ghost fluid method Fedkiw et al. 99 Tam et al.
05 - Immersed interface method LeVeque Li 94
9Our Approach
- Couple using
- Solid velocity fluid coupling pressure
- Sharp interface treatment
- Prevent leaks using robust ray intersections
10Talk Overview
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying coupling force
- Summary and future work
11Talk Overview
- Fluid simulation (focus on water)
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Summary and future work
12Fluid Simulation
- Assume incompressible inviscid
- Use projection method Chorin 68
un
(u is fluid velocity)
Advect un and add gravity ! u
u violates incompressibility
Compute pressure to enforce incompressibility
Project u ! un1
un1
13Fluid Grid
- Uniform octree grids Losasso et al. 04
- Staggered grid configuration Harlow Welch 65
14Advection
- First order semi-Lagrangian Courant et al. 52
Stam 99 - Advection on nodes
15Particle Level Set Method
Enright et al. 02
- Level set ? captures water-air interface
- Particles help correct interface
water
air
16Water Simulation Step (n!n1)
un,?n
Advance particle level set ! ?n1
Advect ? and particles
Advect un and add gravity ! u
Project u ! un1
un1,?n1
17Now Add Solids to the Mix
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Summary and future work
18Now Add Solids to the Mix
- Black box
- Input external forces
- Output positions and velocities
Guendelman et al. 03
Bridson et al. 02,03
19Surface Quantities
- Rigid body
- Directly compute
- Deformable body
- Barycentric weights
20Talk Overview
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Examples, summary, and future work
21Key Visibility
22Thin Shell Aware Interpolation
- Check visibility of interpolation nodes
- Use replacement ghost value when interpolating
23Replacement Ghost Values
Fluid velocity (u)
use solid velocity
Level set (?)
average from nearest valid nodes
24Thin Shell Aware Advection
- Clip semi-Lagrangian rays
25Crossed Over Nodes
- Represent information from opposite side
- Reassign valid values by averaging
26Thin Shell Aware Fluid Step
un,?n
Thin shell aware advection(? and particles)
Advance particle level set ! ?n1
Advect un and add gravity ! u
Thin shell aware advection (u)
Project u ! un1
un1,?n1
see paper for more details
27210x140x140 uniform 30k triangles
28210x140x140 uniform 30k triangles
29Talk Overview
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Summary and future work
30Rasterizing Solid
- Rasterize onto faces of fluid grid
31Solid Affecting Fluid
- Solid prescribes velocity on rasterized faces
- Enforce as Neumann boundary conditions in
projection step
Project u ! un1
32Which Solid Velocities?
- At time n1!n2, at solid-fluid interface
- Fluid moves with velocity enforced during un1
projection - Solid moves from to Xn1 to Xn2
- Want these motions to match (reduce mass loss)
- Solution
- Enforce effective solid velocity
Veff(Xn2-Xn1)/?t
33One-Way Coupling Step
un,?n,Sn,Sn1
(S is the solids state)
Advance particle level set ! ?n1
Advect un and add gravity ! u
Enforce effective solid velocities (n1! n2) at
solid-fluid interface
Project u ! un1
un1,?n1,Sn1,Sn2
34160x192x160 effective octree
35192x192x192 effective octree 60k triangles
36Talk Overview
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Summary and future work
37Fluid 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
38Smoother Coupling Pressure
- Treat solid as fluid
- Solve variable density fluid for pc
- Similar to projection step, but
- Solid velocities not enforced
- Fluid velocities not modified!
39Two 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
40Must Enforce Solid Velocity
Rigid Fluid Carlson et al. 04
Enforcing solid velocity
Enforced!
41Computing Force on Solid
- Fluid pressure pushes on both sides
42Computing Force on Solid
- Net force is proportional to pressure jump pc
43Computing Force on Solid
44Two-Way Coupling Step
un,?n,Sn,Sn1
Advance particle level set ! ?n1
Advect un and add gravity ! u
Compute coupling pressure and apply force to solid
Advance solid ! Sn2
Project u ! un1
un1,?n1,Sn1,Sn2
45148x148x111 uniform 2.5k triangles
46200x200x200 effective octree 30k triangles
47256x256x192 effective octree 30k triangles
48256x256x192 effective octree 30k triangles
49Talk Overview
- Fluid simulation
- Solid simulation
- Preventing leaks across solid
- Enforcing solid velocity on fluid
- Computing and applying fluid coupling force
- Summary and future work
50Summary
- Sharp interface treatment
- Prevent leaks using ray intersections
(visibility) - Solid prescribes velocity boundary conditions
- Use effective velocity to reduce mass loss
- Smooth coupling force applied to solid
- Treat solid as fluid to compute smoother pressure
51Future Work
- Absorption, adhesion, permeability
- Compare against experiments
52Acknowledgements
- Mike Houston, Christos Kozyrakis, Mark Horowitz,
Bill Dally, Vijay Pande - Stanford Graphics Lab
- ONR, ARO, NSF, PECASE, Sloan Foundation, Packard
Foundation
53The End