“Restoring the missing vorticity in advection-projection fluid solvers”

  • ©Xinxin Zhang, Robert Bridson, and Chen Greif




    Restoring the missing vorticity in advection-projection fluid solvers

Session/Category Title: Wave-Particle Fluidity




    Most visual effects fluid solvers use a time-splitting approach where velocity is first advected in the flow, then projected to be incompressible with pressure. Even if a highly accurate advection scheme is used, the self-advection step typically transfers some kinetic energy from divergence-free modes into divergent modes, which are then projected out by pressure, losing energy noticeably for large time steps. Instead of taking smaller time steps or using significantly more complex time integration, we propose a new scheme called IVOCK (Integrated Vorticity of Convective Kinematics) which cheaply captures much of what is lost in self-advection by identifying it as a violation of the vorticity equation. We measure vorticity on the grid before and after advection, taking into account vortex stretching, and use a cheap multigrid V-cycle approximation to a vector potential whose curl will correct the vorticity error. IVOCK works independently of the advection scheme (we present examples with various semi-Lagrangian methods and FLIP), works independently of how boundary conditions are applied (it just corrects error in advection, leaving pressure etc. to take care of boundaries and other forces), and other solver parameters (we provide smoke, fire, and water examples). For 10 ~ 25% extra computation time per step much larger steps can be used, while producing detailed vorticial structures and convincing turbulence that are lost without correction.


    1. Barnes, J., and Hut, P. 1986. A hierarchical O(N log N) force-calculation algorithm. Nature 324, 446–449.Google ScholarCross Ref
    2. Batty, C., Bertails, F., and Bridson, R. 2007. A fast variational framework for accurate solid-fluid coupling. ACM Trans. Graph. (Proc. SIGGRAPH) 26, 3, 100. Google ScholarDigital Library
    3. Bridson, R. 2008. Fluid Simulation for Computer Graphics. A K Peters / CRC Press. Google ScholarDigital Library
    4. Brochu, T., Keeler, T., and Bridson, R. 2012. Linear-time smoke animation with vortex sheet meshes. In Proc. ACM SIGGRAPH / Eurographics Symp. Comp. Animation, 87–95. Google ScholarDigital Library
    5. Edwards, E., and Bridson, R. 2014. Detailed water with coarse grids: combining surface meshes and adaptive discontinuous Galerkin. ACM Trans. Graph. (Proc. SIGGRAPH) 33, 4, 136:1–9. Google ScholarDigital Library
    6. Elcott, S., Tong, Y., Kanso, E., Schröder, P., and Desbrun, M. 2007. Stable, circulation-preserving, simplicial fluids. ACM Trans. Graph. 26, 1 (Jan.). Google ScholarDigital Library
    7. Fedkiw, R., Stam, J., and Jensen, H. W. 2001. Visual simulation of smoke. In Proc. ACM SIGGRAPH, 15–22. Google ScholarDigital Library
    8. Feldman, B. E., O’Brien, J. F., and Arikan, O. 2003. Animating suspended particle explosions. ACM Trans. Graph. (Proc. SIGGRAPH) 22, 3, 708–715. Google ScholarDigital Library
    9. Foster, N., and Fedkiw, R. 2001. Practical animation of liquids. In Proc. ACM SIGGRAPH, 23–30. Google ScholarDigital Library
    10. Harlow, F. H., and Welch, J. E. 1965. Numerical calculation of time-dependent viscous incompressible flow of fluid with free surfaces. Physics of fluids 8, 2182–2189.Google Scholar
    11. Kim, B., Liu, Y., Llamas, I., and Rossignac, J. 2005. Flow-Fixer: Using BFECC for fluid simulation. In Proc. First Eurographics Conf. on Natural Phenomena, NPH’05, 51–56. Google ScholarDigital Library
    12. Kim, T., Thurey, N., James, D., and Gross, M. H. 2008. Wavelet turbulence for fluid simulation. ACM Trans. Graph. (Proc. SIGGRAPH) 27, 3, 50. Google ScholarDigital Library
    13. Lentine, M., Aanjaneya, M., and Fedkiw, R. 2011. Mass and momentum conservation for fluid simulation. In Proc. ACM SIGGRAPH / Eurographics Symp. Comp. Anim., 91–100. Google ScholarDigital Library
    14. Liu, C. H., and Doorly, D. J. 2000. Vortex particle-in-cell method for three-dimensional viscous unbounded flow computations. International Journal for Numerical Methods in Fluids 32, 1, 23–42.Google ScholarCross Ref
    15. Losasso, F., Gibou, F., and Fedkiw, R. 2004. Simulating water and smoke with an octree data structure. ACM Trans. Graph. (Proc. SIGGRAPH) 23, 3, 457–462. Google ScholarDigital Library
    16. Macklin, M., and Müller, M. 2013. Position based fluids. ACM Trans. Graph. (Proc. SIGGRAPH) 32, 4, 104. Google ScholarDigital Library
    17. McAdams, A., Sifakis, E., and Teran, J. 2010. A parallel multigrid poisson solver for fluids simulation on large grids. In Proc. ACM SIGGRAPH / Eurographics Symp. Comp. Anim., 65–74. Google ScholarDigital Library
    18. Mullen, P., Crane, K., Pavlov, D., Tong, Y., and Desbrun, M. 2009. Energy-preserving integrators for fluid animation. ACM Trans. Graph. (Proc. SIGGRAPH) 28, 3, 38:1–38:8. Google ScholarDigital Library
    19. Nguyen, D. Q., Fedkiw, R., and Jensen, H. W. 2002. Physically based modeling and animation of fire. ACM Trans. Graph. (Proc. SIGGRAPH) 21, 3, 721–728. Google ScholarDigital Library
    20. Park, S. I., and Kim, M.-J. 2005. Vortex fluid for gaseous phenomena. In Proc. ACM SIGGRAPH / Eurographics Symp. Comp. Animation, 261–270. Google ScholarDigital Library
    21. Pfaff, T., Thuerey, N., Selle, A., and Gross, M. 2009. Synthetic turbulence using artificial boundary layers. ACM Trans. Graph. 28, 5, 121. Google ScholarDigital Library
    22. Pfaff, T., Thuerey, N., and Gross, M. 2012. Lagrangian vortex sheets for animating fluids. ACM Trans. Graph. (Proc. SIGGRAPH) 31, 4, 112:1–8. Google ScholarDigital Library
    23. Selle, A., Rasmussen, N., and Fedkiw, R. 2005. A vortex particle method for smoke, water and explosions. ACM Trans. Graph. (Proc. SIGGRAPH) 24, 3, 910–914. Google ScholarDigital Library
    24. Selle, A., Fedkiw, R., Kim, B., Liu, Y., and Rossignac, J. 2008. An Unconditionally Stable MacCormack Method. J. Scientific Computing 35, 2-3, 350–371. Google ScholarDigital Library
    25. Setaluri, R., Aanjaneya, M., Bauer, S., and Sifakis, E. 2014. SPGrid: A sparse paged grid structure applied to adaptive smoke simulation. ACM Trans. Graph. (Proc. SIGGRAPH Asia) 33, 6, 205:1–205:12. Google ScholarDigital Library
    26. Stam, J. 1999. Stable fluids. In Proc. ACM SIGGRAPH, 121–128. Google ScholarDigital Library
    27. Steinhoff, J., and Underhill, D. 1994. Modification of the Euler equations for “vorticity confinement”: Application to the computation of interacting vortex rings. Physics of Fluids 6, 2738–2744.Google ScholarCross Ref
    28. Tabak, E. G., 2002. Vortex stretching in incompressible and compressible fluids. Courant Institute, Lecture Notes (Fluid Dynamics II), http://www.math.nyu.edu/faculty/tabak/vorticity.pdf.Google Scholar
    29. Weissmann, S., and Pinkall, U. 2010. Filament-based smoke with vortex shedding and variational reconnection. ACM Trans. Graph. (Proc. SIGGRAPH) 29, 4, 115. Google ScholarDigital Library
    30. Yaeger, L., Upson, C., and Myers, R. 1986. Combining physical and visual simulation–creation of the planet Jupiter for the film “2010”. Proc. SIGGRAPH 20, 4 (Aug.), 85–93. Google ScholarDigital Library
    31. Zhang, X., and Bridson, R. 2014. A PPPM fast summation method for fluids and beyond. ACM Trans. Graph. (Proc. SIGGRAPH Asia) 33, 6, 206:1–11. Google ScholarDigital Library
    32. Zhu, Y., and Bridson, R. 2005. Animating sand as a fluid. ACM Trans. Graph. (Proc. SIGGRAPH) 24, 3, 965–972. Google ScholarDigital Library

ACM Digital Library Publication:

Overview Page: