Particle-based Viscoelastic Fluid Simulation

Download Report

Transcript Particle-based Viscoelastic Fluid Simulation

Particle-based Viscoelastic
Fluid Simulation
Simon Clavet
Philippe Beaudoin
Pierre Poulin
LIGUM, Université de Montréal
Goals
• Intuitive and versatile framework for
particle-based fluid simulation
• Stable integration scheme
• Small scale surface tension effects
• Simple scheme for viscoelasticity
• Two-way coupling with rigid bodies
Overview
• Previous work
• Integration scheme
• Density relaxation
• Viscoelasticity
• Interactions with objects
• Implementation details, results, and conclusion
Previous Work
• Grid-based techniques
– High-quality liquid animation
[Enright et al. 2002]
– Viscous, elastic, and plastic materials
[Goktekin et al. 2004]
Previous Work
• Particle-based techniques
– SPH for highly deformable bodies
[Desbrun, Gascuel 1996]
– Interactive water simulation
[Müller et al. 2003]
– Elastic and plastic materials
[Müller et al. 2004]
Integration Scheme
• Advance particles to predicted positions
• Relax according to positional constraints
Integration Scheme
Apply gravity
Integration Scheme
Apply gravity and viscosity
Integration Scheme
Apply gravity and viscosity
Advance to predicted positions
Integration Scheme
Apply gravity and viscosity
Advance to predicted positions
Relax (density and springs)
Integration Scheme
Apply gravity and viscosity
Advance to predicted positions
Relax (density and springs)
Obtain new velocities
Integration Scheme
Apply gravity and viscosity
Advance to predicted positions
Relax (density and springs)
Obtain new velocities
Integration Scheme
Apply gravity and viscosity
Advance to predicted positions
Relax (density and springs)
Obtain new velocities
Density Relaxation
• For each particle,
– Compute its density
– Modify the particle and its neighbors predicted
positions to approach rest-density
Density Relaxation
• Density: sum of weighted neighbor contributions
rij 

 i   1  
h
jN ( i ) 
2
density kernel
h r
Density Relaxation
• Pseudo-Pressure:
P
i
Pi ~ i  0
i
0

Density Relaxation
• Pseudo-Pressure:
Pi ~ i  0
i
P
 0 i 
Density Relaxation
• Displacement also depends on a distance kernel
rij 

D ~ Pi 1  
h

h r
i
Density Relaxation
• Linear and angular momentum conservation:
apply radial, equal, and opposite displacements
Density Relaxation
• Linear and angular momentum conservation:
apply radial, equal, and opposite displacements
demo
Double Density Relaxation
• Use another SPH-like force to push near-particles
• Define near-density similarly to density, but with a
sharper kernel
2
density kernel (1-r/h)
3
near-density kernel (1-r/h)
h
r
Double Density Relaxation
• For each particle,
– Compute density and near-density
– Modify the particle and its neighbors predicted
positions to approach constant density and
zero near-density
Double Density Relaxation
• Near-density has zero rest value
• Add new term to displacement:
rij 
rij 

NEAR 
1  
D ~ Pi 1    Pi
h
h


Pi ~ i  0
Pi
2
NEAR
~ i
NEAR
Overview
• Previous work
• Integration scheme
• Density relaxation
• Viscoelasticity
• Interactions with objects
• Implementation details, results, and conclusion
Elasticity
F ~ (L  r)
r
L
• Add linear springs between neighboring particles
• Scale spring stiffness so that force vanishes
when rest-length L equals interaction range h
force magnitude
L

~ 1  ( L  r )
h

Plasticity
• Change rest-length based on current length
• Linear plasticity:
L ~  (r  L)
• Non-linear plasticity:
plastic flow only if deformation is large enough
L
L
L
r
L
L
r
video
Interactions with objects
demo
Implementation Details
• Neighbor finding through spatial hashing
• Marching Cube for surface generation
• OpenGL display or offline raytracing
Results
• 20000 particles
≈ 2 sec / frame
• 1000 particles
≈ 10 FPS
Conclusion
• Particle-based fluid simulation with simple and
stable integration scheme
• Incompressiblity, anticlustering and surface
tension effects through double density relaxation
• Dynamic rest-length springs for viscoelasticity
• Two-way coupling with rigid bodies
Future Work
• Multiple particle types
• Rotating particles with directional springs
• Multiresolution