Spatially adaptive long-term semi-Lagrangian method for accurate velocity advection

Abstract

We introduce a new advection scheme for fluid animation. Our main contribution is the use of long-term temporal changes in pressure to extend the commonly used semi-Lagrangian scheme further back along the time axis. Our algorithm starts by tracing sample points along a trajectory following the velocity field backwards in time for many steps. During this backtracing process, the pressure gradient along the path is integrated to correct the velocity of the current time step. We show that our method effectively suppresses numerical diffusion, retains small-scale vorticity, and provides better long-term kinetic energy preservation.

References

  1. [1]

    Selle, A.; Fedkiw, R.; Kim, B.; Liu, Y.; Rossignac, J. An unconditionally stable MacCormack method. Journal of Scientific Computing Vol. 35, Nos. 2–3, 350–371, 2008.

    MathSciNet  Article  MATH  Google Scholar 

  2. [2]

    Stam, J. Stable fluids. In: Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques, 121–128, 1999.

    Google Scholar 

  3. [3]

    Xiu, D.; Karniadakis, G. E. A semi-Lagrangian highorder method for Navier–Stokes equations. Journal of Computational Physics Vol. 172, No. 2, 658–684, 2001.

    MathSciNet  Article  MATH  Google Scholar 

  4. [4]

    Tessendorf, J.; Pelfrey, B. The characteristic map for fast and efficient VFX fluid simulations. In: Proceedings of the Computer Graphics International Workshop on VFX, Computer Animation, and Stereo Movies, 2011.

    Google Scholar 

  5. [5]

    Bridson, R. Fluid Simulation for Computer Graphics, 2nd edn. Taylor & Francis, 2015.

    Google Scholar 

  6. [6]

    Shu, C. W. Essentially non-oscillatory and weighted essentially non-oscillatory schemes for hyperbolic conservation laws. In: Advanced Numerical Approximation of Nonlinear Hyperbolic Equations. Lecture Notes in Mathematics, Vol. 1697. Quarteroni, A. Ed. Springer Berlin Heidelberg, 325–432, 1998.

    MathSciNet  Article  MATH  Google Scholar 

  7. [7]

    Takewaki, H.; Yabe, T. The cubic-interpolated pseudo particle (CIP) method: Application to nonlinear and multi-dimensional hyperbolic equations. Journal of Computational Physics Vol. 70, No. 2, 355–372, 1987.

    Article  MATH  Google Scholar 

  8. [8]

    Foster, N.; Fedkiw, R. Practical animation of liquids. In: Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques, 23–30, 2001.

    Google Scholar 

  9. [9]

    Heo, N.; Ko, H.-S. Detail-preserving fully-Eulerian interface tracking framework. In: Proceedings of the ACM SIGGRAPH Asia 2010 Papers, Article No. 176, 2010.

    Google Scholar 

  10. [10]

    Hachisuka, T. Combined Lagrangian–Eulerian approach for accurate advection. In: Proceedings of the ACM SIGGRAPH 2005 Posters, Article No. 114, 2005.

    Google Scholar 

  11. [11]

    Hachisuka, T. Advection equation solver using mapping functions. Thesis for Bachelor of Engineering. 2006. Available at https://doi.org/www.ci.i.u-tokyo.ac.jp/hachisuka/bt.pdf.

    Google Scholar 

  12. [12]

    Zhu, Y.; Bridson, R. Animating sand as a fluid. In: Proceedings of the ACM SIGGRAPH 2005 Papers, 965–972, 2005.

    Google Scholar 

  13. [13]

    Mullen, P.; Crane, K.; Pavlov, D.; Tong, Y.; Desbrun, M. Energy-preserving integrators for fluid animation. In: Proceedings of the ACM SIGGRAPH 2009 Papers, Article No. 38, 2009.

    Google Scholar 

  14. [14]

    Zhang, X.; Bridson, R.; Greif, C. Restoring the missing vorticity in advection-projection fluid solvers. ACM Transactions on Graphics Vol. 34, No. 4, Article No. 52, 2015.

    Google Scholar 

  15. [15]

    Lentine, M.; Zheng, W.; Fedkiw, R. A novel algorithm for incompressible flow using only a coarse grid projection. In: Proceedings of the ACM SIGGRAPH 2010 Papers, Article No. 114, 2010.

    Google Scholar 

Download references

Acknowledgements

This work was supported by NSERC (Grant RGPIN-04360-2014) and JSPS KAKENHI (Grant 17H00752). The authors thank Toshiya Hachisuka for insightful discussions.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Takahiro Sato.

Additional information

Takahiro Sato is an M.S. student at Computer Science Department, the University of Tokyo. His research interest is focused on physics simulation for applications in computer graphics.

Christopher Batty is an assistant professor of computer science at the University of Waterloo. His research is focused on the development of novel physical simulation techniques for applications in computer graphics and computational physics, with an emphasis on the diverse behaviors of fluids.

Takeo Igarashi is a professor at Computer Science Department, the University of Tokyo. He received his Ph.D. degree from Information Engineering Department, the University of Tokyo, in 2000. His research interest is in user interface in general and current focus is on interaction techniques for 3D graphics.

Ryoichi Ando is an assistant professor at National Institute of Informatics. His research interest is focused on physics simulation for computer graphics, with a strong emphasis on fluid animation.

Electronic supplementary material

Rights and permissions

This article is published under an open access license. Please check the 'Copyright Information' section either on this page or in the PDF for details of this license and what re-use is permitted. If your intended use exceeds what is permitted by the license or if you are unable to locate the licence and re-use information, please contact the Rights and Permissions team.

About this article

Verify currency and authenticity via CrossMark

Cite this article

Sato, T., Batty, C., Igarashi, T. et al. Spatially adaptive long-term semi-Lagrangian method for accurate velocity advection. Comp. Visual Media 4, 223–230 (2018). https://doi.org/10.1007/s41095-018-0117-9

Download citation

Keywords

  • fluid simulation
  • advection
  • method of characteristics
  • spatially adaptive integration
  • interpolation error correction