Journal of Scientific Computing

, Volume 35, Issue 2–3, pp 350–371 | Cite as

An Unconditionally Stable MacCormack Method

  • Andrew Selle
  • Ronald Fedkiw
  • ByungMoon Kim
  • Yingjie Liu
  • Jarek Rossignac


The back and forth error compensation and correction (BFECC) method advects the solution forward and then backward in time. The result is compared to the original data to estimate the error. Although inappropriate for parabolic and other non-reversible partial differential equations, it is useful for often troublesome advection terms. The error estimate is used to correct the data before advection raising the method to second order accuracy, even though each individual step is only first order accurate. In this paper, we rewrite the MacCormack method to illustrate that it estimates the error in the same exact fashion as BFECC. The difference is that the MacCormack method uses this error estimate to correct the already computed forward advected data. Thus, it does not require the third advection step in BFECC reducing the cost of the method while still obtaining second order accuracy in space and time. Recent work replaced each of the three BFECC advection steps with a simple first order accurate unconditionally stable semi-Lagrangian method yielding a second order accurate unconditionally stable BFECC scheme. We use a similar approach to create a second order accurate unconditionally stable MacCormack method.


Advection Semi-Lagrangian CIR MacCormak Second order 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Anderson, J.D.: Computational Fluid Dynamics: The Basics With Applications. McGraw-Hill, New York (1995) Google Scholar
  2. 2.
    Courant, R., Issacson, E., Rees, M.: On the solution of nonlinear hyperbolic differential equations by finite differences. Commun. Pure Appl. Math. 5, 243–255 (1952) zbMATHCrossRefGoogle Scholar
  3. 3.
    Dupont, T., Liu, Y.: Back and forth error compensation and correction methods for removing errors induced by uneven gradients of the level set function. J. Comput. Phys. 190(1), 311–324 (2003) zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Dupont, T., Liu, Y.: Back and forth error compensation and correction methods for semi-Lagrangian schemes with application to level set interface computations. Math. Comp. 76, 647–668 (2007) zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Enright, D., Fedkiw, R., Ferziger, J., Mitchell, I.: A hybrid particle level set method for improved interface capturing. J. Comput. Phys. 183, 83–116 (2002) zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Enright, D., Losasso, F., Fedkiw, R.: A fast and accurate semi-Lagrangian particle level set method. Comput. Struct. 83, 479–490 (2005) CrossRefMathSciNetGoogle Scholar
  7. 7.
    Enright, D., Marschner, S., Fedkiw, R.: Animation and rendering of complex water surfaces. ACM Trans. Graph. (SIGGRAPH Proc.) 21(3), 736–744 (2002) Google Scholar
  8. 8.
    Enright, D., Nguyen, D., Gibou, F., Fedkiw, R.: Using the particle level set method and a second order accurate pressure boundary condition for free surface flows. In: Proc. 4th ASME-JSME Joint Fluids Eng. Conf., no. FEDSM2003–45144. ASME (2003) Google Scholar
  9. 9.
    Fedkiw, R., Stam, J., Jensen, H.: Visual simulation of smoke. In: Proc. of ACM SIGGRAPH 2001, pp. 15–22 (2001) Google Scholar
  10. 10.
    Herrmann, M., Blanquart, G.: Flux corrected finite volume scheme for preserving scalar boundedness in reacting large-eddy simulations. AIAA J. 44(12), 2879–2886 (2006) CrossRefGoogle Scholar
  11. 11.
    Irving, G., Guendelman, E., Losasso, F., Fedkiw, R.: Efficient simulation of large bodies of water by coupling two and three dimensional techniques. ACM Trans. Graph. (SIGGRAPH Proc.) 25(3), 805–811 (2006) CrossRefGoogle Scholar
  12. 12.
    Jiang, G.-S., Peng, D.: Weighted ENO schemes for Hamilton-Jacobi equations. SIAM J. Sci. Comput. 21, 2126–2143 (2000) zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Kim, B.-M., Liu, Y., Llamas, I., Rossignac, J.: Using BFECC for fluid simulation. In: Eurographics Workshop on Natural Phenomena (2005) Google Scholar
  14. 14.
    Kim, B.-M., Liu, Y., Llamas, I., Rossignac, J.: Advections with significantly reduced dissipation and diffusion. IEEE Trans. Vis. Comput. Graph. 13(1), 135–144 (2007) CrossRefGoogle Scholar
  15. 15.
    Lax, P.D.: On the stability of difference approximations to solutions of hyperbolic equations with variable coefficients. Commun. Pure Appl. Math. 14, 497–520 (1961) zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Losasso, F., Fedkiw, R., Osher, S.: Spatially adaptive techniques for level set methods and incompressible flow. Comput. Fluids 35, 995–1010 (2006) CrossRefMathSciNetGoogle Scholar
  17. 17.
    Losasso, F., Gibou, F., Fedkiw, R.: Simulating water and smoke with an octree data structure. ACM Trans. Graph. (SIGGRAPH Proc.) 23, 457–462 (2004) CrossRefGoogle Scholar
  18. 18.
    MacCormack, R.: The effect of viscosity in hypervelocity impact cratering. In: AIAA Hypervelocity Impact Conference, 1969. AIAA paper, pp. 69–354 (1969) Google Scholar
  19. 19.
    Min, C., Gibou, F.: A second order accurate projection method for the incompressible Navier-Stokes equation on non-graded adaptive grids. J. Comput. Phys. 219, 912–929 (2006) zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Osher, S., Fedkiw, R.: Level Set Methods and Dynamic Implicit Surfaces. Springer, New York (2002) Google Scholar
  21. 21.
    Osher, S., Sethian, J.: Fronts propagating with curvature-dependent speed: Algorithms based on Hamilton-Jacobi formulations. J. Comput. Phys. 79, 12–49 (1988) zbMATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Selle, A., Rasmussen, N., Fedkiw, R.: A vortex particle method for smoke, water and explosions. ACM Trans. Graph. (SIGGRAPH Proc.) 24(3), 910–914 (2005) CrossRefGoogle Scholar
  23. 23.
    Shu, C.-W., Osher, S.: Efficient implementation of essentially non-oscillatory shock capturing schemes. J. Comput. Phys. 77, 439–471 (1988) zbMATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Stam, J.: Stable fluids. In: Proc. of SIGGRAPH 99, pp. 121–128 (1999) Google Scholar
  25. 25.
    Staniforth, A., Cote, J.: Semi-Lagrangian integration schemes for atmospheric models: A review. Mon. Weather Rev. 119, 2206–2223 (1991) CrossRefGoogle Scholar
  26. 26.
    Steinhoff, J., Underhill, D.: Modification of the Euler equations for “vorticity confinement”: Application to the computation of interacting vortex rings. Phys. Fluids 6(8), 2738–2744 (1994) zbMATHCrossRefGoogle Scholar
  27. 27.
    Strain, J.: Tree methods for moving interfaces. J. Comput. Phys. 151, 616–648 (1999) zbMATHCrossRefMathSciNetGoogle Scholar
  28. 28.
    Sussman, M., Smereka, P., Osher, S.: A level set approach for computing solutions to incompressible two-phase flow. J. Comput. Phys. 114, 146–159 (1994) zbMATHCrossRefGoogle Scholar
  29. 29.
    Warming, R.F., Beam, R.M.: Upwind second-order difference schemes and applications in aerodynamic flows. AIAA J. 14(9), 1241–1249 (1976) zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Andrew Selle
    • 1
  • Ronald Fedkiw
    • 1
  • ByungMoon Kim
    • 2
  • Yingjie Liu
    • 3
  • Jarek Rossignac
    • 2
  1. 1.Computer Science DepartmentStanford UniversityStanfordUSA
  2. 2.College of ComputingGeorgia Institute of TechnologyAtlantaUSA
  3. 3.School of MathematicsGeorgia Institute of TechnologyAtlantaUSA

Personalised recommendations