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 effectssurface tension Simple scheme for viscoelasticityviscoelasticity 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
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 Integration Scheme
Density Relaxation For each particle, –Compute its density –Modify the particle and its neighbors predicted positions to approach rest-density
Density: sum of weighted neighbor contributions density kernel h r Density Relaxation
Pseudo-Pressure: i
Density Relaxation Pseudo-Pressure: iii
Density Relaxation Displacement also depends on a distance kernel 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
Density Relaxation Particles can reach rest-density by strongly attracting a small number of neighbors Clustering
Double Density Relaxation Use another SPH-like force to push near-particles Define near-density similarly to density, but with a sharper kernel density kernel (1-r/h) 2 near-density kernel (1-r/h) h r 3
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
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 Surface tension effects without curvature computation! demo
Double Density Relaxation Near-density has zero rest value Add new term to displacement:
Viscosity
Overview Previous work Integration scheme Density relaxation Viscoelasticity Interactions with objects Implementation details, results, and conclusion
Elasticity Add linear springs between neighboring particles Scale spring stiffness so that force vanishes when rest-length L equals interaction range h force magnitude
Plasticity Change rest-length based on current length Linear plasticity: Non-linear plasticity: plastic flow only if deformation is large enough video
Plasticity Add a spring between two particles when they come closer than the interaction range h Remove the spring when its rest-length becomes larger than h
Interactions with objects demo
Implementation Details Neighbor finding through spatial hashing Marching Cube for surface generation OpenGL display or offline raytracing
Results 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