skip to main content
research-article

SPGrid: a sparse paged grid structure applied to adaptive smoke simulation

Published:19 November 2014Publication History
Skip Abstract Section

Abstract

We introduce a new method for fluid simulation on high-resolution adaptive grids which rivals the throughput and parallelism potential of methods based on uniform grids. Our enabling contribution is SPGrid, a new data structure for compact storage and efficient stream processing of sparsely populated uniform Cartesian grids. SPGrid leverages the extensive hardware acceleration mechanisms inherent in the x86 Virtual Memory Management system to deliver sequential and stencil access bandwidth comparable to dense uniform grids. Second, we eschew tree-based adaptive data structures in favor of storing simulation variables in a pyramid of sparsely populated uniform grids, thus avoiding the cost of indirect memory access associated with pointer-based representations. We show how the costliest algorithmic kernels of fluid simulation can be implemented as a composition of two kernel types: (a) stencil operations on a single sparse uniform grid, and (b) structured data transfers between adjacent levels of resolution, even when modeling non-graded octrees. Finally, we demonstrate an adaptive multigrid-preconditioned Conjugate Gradient solver that achieves resolution-independent convergence rates while admitting a lightweight implementation with a modest memory footprint. Our method is complemented by a new interpolation scheme that reduces dissipative effects and simplifies dynamic grid adaptation. We demonstrate the efficacy of our method in end-to-end simulations of smoke flow.

Skip Supplemental Material Section

Supplemental Material

References

  1. Adams, B., Pauly, M., Keiser, R., and Guibas, L. J. 2007. Adaptively sampled particle fluids. In ACM SIGGRAPH 2007 Papers, ACM, New York, NY, USA, SIGGRAPH '07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Aftosmis, M. J., Berger, M. J., and Murman, S. M., 2004. Applications of space-filling curves to cartesian methods for CFD. 42nd Aerospace Sciences Meeting and Exhibit. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Ando, R., Thürey, N., and Wojtan, C. 2013. Highly adaptive liquid simulations on tetrahedral meshes. ACM Trans. Graph. 32, 4 (July), 103:1--103:10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Batty, C., Xenos, S., and Houston, B. 2010. Tetrahedral embedded boundary methods for accurate and flexible adaptive fluids. Computer Graphics Forum 29, 2, 695--704.Google ScholarGoogle ScholarCross RefCross Ref
  5. Brochu, T., Batty, C., and Bridson, R. 2010. Matching fluid simulation elements to surface geometry and topology. In SIGGRAPH '10, 47:1--47:9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Brun, E., Guittet, A., and Gibou, F. 2012. A local level-set method using a hash table data structure. J. Comput. Phys. 231, 6 (Mar.), 2528--2536. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Chentanez, N., and Müller, M. 2011. Real-time eulerian water simulation using a restricted tall cell grid. In SIGGRAPH '11, 82:1--82:10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chentanez, N., Feldman, B. E., Labelle, F., O'Brien, J. F., and Shewchuk, J. R. 2007. Liquid simulation on lattice-based tetrahedral meshes. SCA '07, 219--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Clausen, P., Wicke, M., Shewchuk, J. R., and O'Brien, J. 2013. Simulating liquids and solid-liquid interactions with lagrangian meshes. ACM Trans. Graph. 32, 2 (Apr.), 17:1--17:15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Cohen, J., Tariq, S., and Green, S. 2010. Interactive fluid-particle simulation using translating Eulerian grids. In ACM SIGGRAPH Symp. on Interactive 3D Graphics and Games, 15--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Crassin, C., Neyret, F., Lefebvre, S., and Eisemann, E. 2009. Gigavoxels: Ray-guided streaming for efficient and detailed voxel rendering. I3D '09, 15--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Desbrun, M., and Cani, M.-P. 1996. Smoothed particles: A new paradigm for animating highly deformable bodies. In Comput. Anim. and Sim. '96, Springer-Verlag, 61--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Dobashi, Y., Matsuda, Y., Yamamoto, T., and Nishita, T. 2008. A fast simulation method using overlapping grids for interactions between smoke and rigid objects. Computer Graphics Forum 27, 2, 477--486. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. English, R. E., Qiu, L., Yu, Y., and Fedkiw, R. 2013. Chimera grids for water simulation. SCA '13, 85--94. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Fedkiw, R., Stam, J., and Jensen, H. W. 2001. Visual simulation of smoke. SIGGRAPH '01, 15--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Feldman, B., O'Brien, J., Klingner, B., and Goktekin, T. 2005. Fluids in deforming meshes. SCA '05, 255--259. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Ferstl, F., Westermann, R., and Dick, C. 2014. Large-scale liquid simulation on adaptive hexahedral grids. IEEE Trans. Visualization & Computer Graphics 20, 10 (Oct), 1405--1417.Google ScholarGoogle ScholarCross RefCross Ref
  18. Frisken, S., Perry, R., Rockwood, A., and Jones, T. 2000. Adaptively sampled distance fields: A general representation of shape for computer graphics. SIGGRAPH '00, 249--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Golas, A., Narain, R., Sewall, J., Krajcevski, P., Dubey, P., and Lin, M. 2012. Large-scale fluid simulation using velocity-vorticity domain decomposition. ACM Trans. Graph. 31, 6, 148:1--148:9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Goswami, P., Schlegel, P., Solenthaler, B., and Pajarola, R. 2010. Interactive SPH simulation and rendering on the GPU. SCA '10, 55--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Harlow, F. H., and Welch, J. E. 1965. Numerical calculation of time-dependent viscous incompressible flow of fluid with free surface. Physics of Fluids (1958-1988) 8, 12.Google ScholarGoogle Scholar
  22. Houston, B., Nielsen, M. B., Batty, C., Nilsson, O., and Museth, K. 2006. Hierarchical RLE level set: A compact and versatile deformable surface representation. ACM Trans. Graph. 25, 1, 151--175. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Irving, G., Guendelman, E., Losasso, F., and Fedkiw, R. 2006. Efficient simulation of large bodies of water by coupling two and three dimensional techniques. SIGGRAPH, 805--811. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Klingner, B., Feldman, B., Chentanez, N., and O'Brien, J. 2006. Fluid animation with dynamic meshes. SIGGRAPH '06, 820--825. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Losasso, F., Gibou, F., and Fedkiw, R. 2004. Simulating water and smoke with an octree data structure. SIGGRAPH '04, 457--462. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Losasso, F., Fedkiw, R., and Osher, S. 2005. Spatially adaptive techniques for level set methods and incompressible flow. Computers and Fluids 35, 2006.Google ScholarGoogle Scholar
  27. McAdams, A., Sifakis, E., and Teran, J. 2010. A parallel multigrid poisson solver for fluids simulation on large grids. SCA '10, 65--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Müller, M., Charypar, D., and Gross, M. 2003. Particle-based fluid simulation for interactive applications. SCA '03, 154--159. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Museth, K. 2011. DB+Grid: A novel dynamic blocked grid for sparse high-resolution volumes and level sets. SIGGRAPH '11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Museth, K. 2013. VDB: High-resolution sparse volumes with dynamic topology. ACM Trans. Graph. 32, 3 (July), 27:1--27:22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Nielsen, M., and Bridson, R. 2011. Guide shapes for high resolution naturalistic liquid simulation. SIGGRAPH '11, 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Nielsen, M. B., and Museth, K. 2006. Dynamic tubular grid: An efficient data structure and algorithms for high resolution level sets. J. Sci. Comput. 26, 3 (Mar.), 261--299. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Nielsen, M. B., Nilsson, O., Söderström, A., and Museth, K. 2007. Out-of-core and compressed level set methods. ACM Trans. Graph. 26, 4 (Oct.). Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Olshanskii, M. A., Terekhov, K. M., and Vassilevski, Y. V. 2013. An octree-based solver for the incompressible Navier-Stokes equations with enhanced stability and low dissipation. Computers and Fluids 84, 0, 231--246.Google ScholarGoogle ScholarCross RefCross Ref
  35. Patel, S., Chu, A., Cohen, J., and Pighin, F. 2005. Fluid simulation via disjoint translating grids. SIGGRAPH '05. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Premoze, S., Tasdizen, T., Bigler, J., Lefohn, A., and Whitaker, R. 2003. Particle--based simulation of fluids. In Comp. Graph. Forum (Eurographics Proc.), vol. 22, 401--410.Google ScholarGoogle ScholarCross RefCross Ref
  37. Selle, A., Rasmussen, N., and Fedkiw, R. 2005. A vortex particle method for smoke, water and explosions. SIGGRAPH '05, 910--914. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Sin, F., Bargteil, A., and Hodgins, J. 2009. A point-based method for animating incompressible flow. SCA '09, 247--255. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Solenthaler, B., and Gross, M. 2011. Two-scale particle simulation. SIGGRAPH '11, 81:1--81:8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Stam, J. 1999. Stable fluids. SIGGRAPH '99, 121--128. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Sussman, M., Almgren, A. S., Bell, J. B., Colella, P., Howell, L. H., and Welcome, M. L. 1999. An adaptive level set approach for incompressible two-phase flows. J. Comput. Phys. 148, 1, 81--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Tan, J., Yang, X., Zhao, X., and Yang, Z. 2008. Fluid animation with multi-layer grids. In SCA '08 Posters.Google ScholarGoogle Scholar
  43. Teschner, M., Heidelberger, B., Müller, M., Pomerantes, D., and Gross, M. 2003. Optimized spatial hashing for collision detection of deformable objects. In VMV, 47--54. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Trottenberg, U., Oosterlee, C. W., and Schuller, A. 2001. Multigrid. Academic Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Zhu, Y., and Bridson, R. 2005. Animating sand as a fluid. SIGGRAPH '05, 965--972. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Zhu, B., Lu, W., Cong, M., Kim, B., and Fedkiw, R. 2013. A new grid structure for domain extension. ACM Trans. Graph. 32, 4, 63:1--63:12. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. SPGrid: a sparse paged grid structure applied to adaptive smoke simulation

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Graphics
          ACM Transactions on Graphics  Volume 33, Issue 6
          November 2014
          704 pages
          ISSN:0730-0301
          EISSN:1557-7368
          DOI:10.1145/2661229
          Issue’s Table of Contents

          Copyright © 2014 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 19 November 2014
          Published in tog Volume 33, Issue 6

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader