MetadataShow full item record
AbstractMomentum conservation has long been used as a design principle for solid simulation (e.g. collisions between rigid bodies, mass-spring elastic and damping forces, etc.), yet it has not been widely used for fluid simulation. In fact, semi-Lagrangian advection does not conserve momentum, but is still regularly used as a bread and butter method for fluid simulation. In this paper, we propose a modification to the semi-Lagrangian method in order to make it fully conserve momentum. While methods of this type have been proposed earlier in the computational physics literature, they are not necessarily appropriate for coarse grids, large time steps or inviscid flows, all of which are common in graphics applications. In addition, we show that the commonly used vorticity confinement turbulence model can be modified to exactly conserve momentum as well. We provide a number of examples that illustrate the benefits of this new approach, both in conserving fluid momentum and passively advected scalars such as smoke density. In particular, we show that our new method is amenable to efficient smoke simulation with one time step per frame, whereas the traditional non-conservative semi-Lagrangian method experiences serious artifacts when run with these large time steps, especially when object interaction is considered. Copyright © 2011 by the Association for Computing Machinery, Inc.
CitationLentine M, Aanjaneya M, Fedkiw R (2011) Mass and momentum conservation for fluid simulation. Proceedings of the 2011 ACM SIGGRAPH/Eurographics Symposium on Computer Animation - SCA ’11. Available: http://dx.doi.org/10.1145/2019406.2019419.
SponsorsResearch supported in part by ONR N00014-09-1-0101,ONR N00014-11-1-0027, ONR N00014-06-1-0505, ONRN00014-05-1-0479, for a computing cluster, NSF IIS-1048573 and King Abdullah University of Science andTechnology (KAUST) 42959. M.L. was supported in partby an Intel Ph.D. Fellowship. M.A. was supported in part bythe Nokia Research Center. We would like to thank ChristosKozyrakis for additional computing resources as well as JacobLeverich for helping us use those resources. We wouldalso like to thank Craig Schroeder for his fish model.