330 likes | 573 Views
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
E N D
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: sum of weighted neighbor contributions Density Relaxation density kernel r h
Density Relaxation Pseudo-Pressure: i
Density Relaxation Pseudo-Pressure: i i i
Density Relaxation Displacement also depends on a distance kernel r h 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 3 2 near-density kernel (1-r/h) density kernel (1-r/h) r h
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
Double Density Relaxation • Near-density has zero rest value • Add new term to displacement:
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
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