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 jN ( 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
© Copyright 2026 Paperzz