Particle-based Viscoelastic Fluid Simulation Simon Clavet Philippe Beaudoin Pierre Poulin LIGUM, Université de Montréal

Embed Size (px)

DESCRIPTION

Overview Previous work Integration scheme Density relaxation Viscoelasticity Interactions with objects Implementation details, results, and conclusion

Citation preview

Particle-based Viscoelastic Fluid Simulation Simon Clavet Philippe Beaudoin Pierre Poulin LIGUM, Universit de Montral 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 [Mller et al. 2003] Elastic and plastic materials [Mller 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