Transcript Document

Combined Lagrangian-Eulerian Approach for Accurate Advection
Toshiya HACHISUKA ([email protected])
The University of Tokyo
Demo application is available at http://www.bee-www.com/
Introduction
Mapping Functions
Non-Advection Phase
Grid-based fluid simulations using the Navier-Stokes equations have become
popular for computer animations of fluid flow. While grid-based methods have
some advantages as compared with particle-based methods, they also have a major
disadvantage called “numerical diffusion”. Numerical diffusion is the numerical
errors that occurs in calculation of advection equations. This error causes mass
dissipation and motion damping of fluids, so the detail of fluid animation is
filtered out. Both of the artifacts are visually distracting artifacts in fluid
animations, such as a shrinking water or a rising smoke without small vortices.
The algorithm updates the mapping functions of advection equations, not the advected
field itself. It calculates both the mapping function F and the inverse mapping function G.
The update process of mapping function is performed by tracing mass-less particles that
have positions as values of mapping functions. The process is done once per time-step.
In the non-advection phase, the method adds non-advection terms into the initial
field. This can be done by performing "texture mapping" using mapping function
F as texture coordinates, then adding the mapped current non-advection terms.
 
F  x , t    
 u F x , t , t
t


Forward Tracing of Particles
Calculate
In this poster, we propose a new algorithm to accurately calculate advection
equations. The method can calculate highly detailed advection of arbitrary fields
including fields without boundaries. This property is important because almost all
physical quantities do not have specific boundaries, like the density field of
smoke or velocity fields. The method can be used for any application involving
advection phenomena because it is general solver of advection equations.
The following list shows some features of the proposed method.
Current Field
Non-Advection Terms
Algorithm Overview
The proposed method mainly consists of the advection phase and the nonadvection phase. In the advection phase, the method calculates the current field
from the initial field by using the combined method of lagrangian method and
eulerian method. In the non-advection phase, influences of non-advection terms are
added back to the initial field by using the mapping functions of advection
equations. The main feature of the method is that the method retains the initial
field and warps the initial fields into the current advected field at every time-step.
Initial fields, velocity fields and the current fields are stored in fixed grid.
Mapping functions are also stored at each grid point as mass-less particles.
Advection Phase
Mapping Function G
Initial Field
Non-advection terms include any effect like source term, pressure term and
boundary condition (include moving, arbitrary one). The method can handle almost
all processes which can be handled by previous semi-Lagrangian methods.
Remapping
Provides
concept of mapping functions of advection
Greatly reduces numerical diffusion
Can be applied to any type of fields
GPU friendly
Easy to implement
Map &
Add
 
  
G x , t 
 u G x , t , t
t


Backward Tracing of Particles
This process is full-Lagrangian method (i.e. flow using particles), so numerical diffusion
associated with Eulerian methods does not exist to the mapping functions. Note that the
method has no problem for time-space varying velocity fields (even if the velocity field
self-advected, the method can be applied without problems). Theoretical basis of our
method does not impose restriction for the type of velocity fields (in practice, it works).
Advection Phase
In the advection phase, the method warps initial field into the current advected field.
This can be done by performing “texture mapping” of initial fields using inverse
mapping function G as texture coordinates. The order of the method is determined by the
order of filtering function for texture mapping. If you use cubic filtering function, the
method becomes 3rd-order in space. The method is not restricted to 1st-order in space.
This process is needed at every several time-steps in practice, to prevent extreme
stretch of the mapping. Remapping process copies the current field into the initial
field and initializes the mapping functions by the position of grid points. Our
method causes numerical diffusion only at this process. Note that even if you
perform remapping at every other time-step, numerical diffusion is reduced
compared with previous grid-based method like semi-Lagrangian methods.
Results
As a preliminary result, we have implemented 2D/3D smoke simulation using the
Navier-Stokes equations. Our method produces highly detailed fluid
motion/appearance because it greatly prevents numerical diffusion. In addition,
computation time per frame is almost the same because calculation of advection is
not the bottleneck of fluid simulation. We also have implemented the method on
GPUs. Interactive demo application is available on the above website.
Semi-Lagrangian Method
Current Field
Our Method
Interpolate
at G
Initial Field
Mapping Function F
Map
Non-Advection Terms
Initial Field
Non-Advection Phase
Since our method always constructs the current field from the initial field, the
error in current field is not accumulated. In contrast, since previous Eulerian
methods for advection equations uses the previous fields to calculate the current
field, the error is accumulated and becomes numerical diffusion.
Current Field
The method is easy to implement if you have already implemented semi-Lagrangian
methods because the required processes are similar. Moreover, the method is suitable
This process can be viewed as a extension of semi-Lagrangian methods. While semi- for GPU implementation because fundamental process is the same as texture mapping.
Lagrangian methods use the upstream positions by one time-step, our method uses the
Future work
upstream positions by several time-step. The advantage over particle-based methods, which
Applying the method to various fluid phenomena
have no numerical diffusion, is that the fields are defined continuously. Note that each grid
Developing more consistent remapping process
point of the field is associated with exactly one particle of the mapping functions.
Modifying the method to mesh-less calculation