





[Back to top...]

 2016 
 

 Interpolations of Smoke and Liquid Simulations [CITE]
Nils Thuerey
Transactions on Graphics (to appear); ACM, 2016
Abstract: We present a novel method to interpolate smoke and liquid simulations in order to perform datadriven fluid simulations. Our approach calculates a dense spacetime deformation using gridbased signeddistance functions of the inputs. A key advantage of this implicit Eulerian representation is that it allows us to use powerful techniques from the optical flow area. In combination with a novel projection algorithm, and residual iterations, we achieve a robust matching of the inputs. Once the match is computed, we can create arbitrary in between variants very efficiently. Our approach has numerous advantages, including automatic matches without user input, volumetric deformations that can be applied to details around the surface, and the inherent handling of topology changes. As a result, we can interpolate swirling smoke clouds, and splashing liquid simulations. We can even match and interpolate phenomena with fundamentally different physics: a drop of liquid, and a blob of heavy smoke.



 Examplebased Plastic Deformation of Rigid Bodies [CITE]
Ben Jones, Nils Thuerey, Tamar Shinar, Adam Bargteil
Transactions on Graphics (SIGGRAPH); ACM, 2016
Abstract: Physicsbased animation is often used to animate scenes containing destruction of nearrigid, manmade materials. For these applications, the most important visual features are plastic deformation and fracture. Methods based on continuum mechanics model these materials as elastoplastic, and must perform expensive elasticity computations even though elastic deformations are imperceptibly small for rigid materials. We introduce an examplebased plasticity model based on linear blend skinning that allows artists to author simulation objects using familiar tools. Dynamics are computed using an unmodified rigid body simulator, making our method computationally efficient and easy to integrate into existing pipelines. We introduce a flexible technique for mapping impulses computed by the rigid body solver to local, examplebased deformations. For completeness, our method also supports prescoring based fracture. We demonstrate the practicality of our method by animating a variety of destructive scenes.



 Narrow Band FLIP for Liquid Simulations [CITE]
Florian Ferstl, Ryoichi Ando, Chris Wojtan, Ruediger Westermann, Nils Thuerey
Eurographics'16; Eurographics Association, 2016
Paper: [PDF]
Project: [WWW]
Video: [WWW]
Code: [TGZ]
Abstract: The Fluid Implicit Particle method (FLIP) for liquid simulations uses particles to reduce numerical dissipation and provide important visual cues for events like complex splashes and smallscale features near the liquid surface. Unfortunately, FLIP simulations can be computationally expensive, because they require a dense sampling of particles to fill the entire liquid volume. Furthermore, the vast majority of these FLIP particles contribute nothing to the fluid's visual appearance, especially for larger volumes of liquid. We present a method that only uses FLIP particles within a narrow band of the liquid surface, while efficiently representing the remaining inner volume on a regular grid. We show that a naive realization of this idea introduces unstable and uncontrollable energy fluctuations, and we propose a novel coupling scheme between FLIP particles and regular grid which overcomes this problem. Our method drastically reduces the particle count and simulation times while yielding results that are nearly indistinguishable from regular FLIP simulations. Our approach is easy to integrate into any existing FLIP implementation.

  2015 
 

 Surface Turbulence for ParticleBased Liquid Simulations [CITE]
Olivier Mercier, Cynthia Beauchemin, Nils Thuerey, Theodore Kim, Derek Nowrouzezahrai
Transactions on Graphics (SIGGRAPH Asia); ACM, 2015
Paper: [PDF]
Video: [AVI]
Video: [WWW]
Abstract: We present a method to increase the apparent resolution of particlebased liquid simulations. Our method first outputs a dense, temporally coherent, regularized point set from a coarse particlebased liquid simulation. We then apply a surfaceonly Lagrangian wave simulation to this highresolution point set. We develop novel methods for seeding and simulating waves over surface points, and use them to generate highresolution details. We avoid errorprone surface mesh processing, and robustly propagate waves without the need for explicit connectivity information. Our seeding strategy combines a robust curvature evaluation with multiple bands of seeding oscillators, injects waves with arbitrarily finescale structures, and properly handles obstacle boundaries. We generate detailed fluid surfaces from coarse simulations as an independent postprocess that can be applied to most particlebased fluid solvers.



 A Stream Function Solver for Liquid Simulations [CITE]
Ryoichi Ando, Nils Thuerey, and Chris Wojtan
Transactions on Graphics (SIGGRAPH); ACM, 2015
Paper: [PDF]
Video: [WWW]
Supp.Vid.: [WWW]
Project: [WWW]
Abstract: This paper presents a liquid simulation technique that enforces the incompressibility condition using a stream function solve instead of a pressure projection. Previous methods have used stream function techniques for the simulation of detailed singlephase flows, but a formulation for liquid simulation has proved elusive in part due to the free surface boundary conditions. In this paper, we introduce a stream function approach to liquid simulations with novel boundary conditions for free surfaces, solid obstacles, and solidfluid coupling. Although our approach increases the dimension of the linear system necessary to enforce incompressibility, it provides interesting and surprising benefits. First, the resulting flow is guaranteed to be divergencefree regardless of the accuracy of the solve. Second, our freesurface boundary conditions guarantee divergencefree motion even in the unsimulated air phase, which enables twophase flow simulation by only computing a single phase. We implemented this method using a variant of FLIP simulation which only samples particles within a narrow band of the liquid surface, and we illustrate the effectiveness of our method for detailed twophase flow simulations with complex boundaries, detailed bubble interactions, and twoway solidfluid coupling.



 A Dimensionreduced Pressure Solver for Liquid Simulations [CITE]
Ryoichi Ando, Nils Thuerey, and Chris Wojtan
Computer Graphics Forum (Eurographics); Eurographics Association, 2015
Paper: [PDF]
Video: [WWW]
Project: [WWW]
Abstract: This work presents a method for efficiently simplifying the pressure projection step in a liquid simulation. We first devise a straightforward dimension reduction technique that dramatically reduces the cost of solving the pressure projection. Next, we introduce a novel change of basis that satisfies freesurface boundary conditions exactly, regardless of the accuracy of the pressure solve. When combined, these ideas greatly reduce the computational complexity of the pressure solve without compromising free surface boundary conditions at the highest level of detail. Our techniques are easy to parallelize, and they effectively eliminate the computational bottleneck for large liquid simulations.

  2014 
 

 Blending Liquids [CITE]
Karthik Raveendran, Nils Thuerey, Chris Wojtan, Greg Turk
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2014
Paper: [PDF]
Video: [WWW]
Abstract: We present a method for smoothly blending between existing liquid animations. We introduce a semiautomatic method for matching two existing liquid animations, which we use to create new fluid motion that plausibly interpolates the input. Our contributions include a new spacetime nonrigid iterative closest point algorithm that incorporates user guidance, a subsampling technique for efficient registration of meshes with millions of vertices, and a fast surface extraction algorithm that produces 3D triangle meshes from a 4D spacetime surface. Our technique can be used to instantly create hundreds of new simulations, or to interactively explore complex parameter spaces. Our method is guaranteed to produce output that does not deviate from the input animations, and it generalizes to multiple dimensions. Because our method runs at interactive rates after the initial precomputation step, it has potential applications in games and training simulations.



 From Capture to Simulation  Connecting Forward and Inverse Problems in Fluids [CITE]
James Gregson, Nils Thuerey, Ivo Ihrke, Wolfgang Heidrich
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2014
Paper: [PDF]
Video: [AVI]
Video: [WWW]
Project: [WWW]
Abstract: We explore the connection between fluid capture, simulation and proximal methods, a class of algorithms commonly used for inverse problems in image processing and computer vision. Our key finding is that the proximal operator constraining fluid velocities to be divergencefree is directly equivalent to the pressureprojection methods commonly used in incompressible flow solvers. This observation lets us treat the inverse problem of fluid tracking as a constrained flow problem all while working in an efficient, modular framework. In addition it lets us tightly couple fluid simulation into flow tracking, providing a global prior that significantly increases tracking accuracy and temporal coherence as compared to previous techniques. We demonstrate how we can use these improved results for a variety of applications, such as resimulation, detail enhancement, and domain modification. We furthermore give an outlook of the applications beyond fluid tracking that our proximal operator framework could enable by exploring the connection of deblurring and fluid guiding.

  2013 
 

 Highly Adaptive Liquid Simulations on Tetrahedral Meshes [CITE]
Ryoichi Ando, Nils Thuerey, Chris Wojtan
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2013
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Project: [WWW]
Abstract: We introduce a new method for efficiently simulating liquid with extreme amounts of spatial adaptivity. Our method combines several key components to drastically speed up the simulation of largescale fluid phenomena: We leverage an alternative Eulerian tetrahedral mesh discretization to significantly reduce the complexity of the pressure solve while increasing the robustness with respect to element quality and removing the possibility of locking. Next, we enable subtle freesurface phenomena by deriving novel secondorder boundary conditions consistent with our discretization. We couple this discretization with a spatially adaptive FluidImplicit Particle (FLIP) method, enabling efficient, robust, minimallydissipative simulations that can undergo sharp changes in spatial resolution while minimizing artifacts. Along the way, we provide a new method for generating a smooth and detailed surface from a set of particles with variable sizes. Finally, we explore several new sizing functions for determining spatially adaptive simulation resolutions, and we show how to couple them to our simulator. We combine each of these elements to produce a simulation algorithm that is capable of creating animations at high maximum resolutions while avoiding common pitfalls like inaccurate boundary conditions and inefficient computation.



 ClosestPoint Turbulence for Liquid Surfaces [CITE]
Theodore Kim, Jerry Tessendorf, Nils Thuerey
ACM Transactions on Graphics; ACM Press, 2013
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Project: [WWW]
Abstract: We propose a method of increasing the apparent spatial resolution of an existing liquid simulation. Previous approaches to this "upresing" problem have focused on increasing the turbulence of the underlying velocity field. Motivated by measurements in the free surface turbulence literature, we observe that past certain frequencies, it is sufficient to perform a wave simulation directly on the liquid surface, and construct a reduceddimensional surfaceonly simulation. We sidestep the considerable problem of generating a surface parameterization by employing an embedding technique known as the Closest Point Method (CPM) that operates directly on a 3D extension field. The CPM requires 3D operators, and we show that for surface operators with no natural 3D generalization, it is possible to construct a viable operator using the inverse Abel transform. We additionally propose a fast, frozen core closest point transform, and an advection method for the extension field that reduces smearing considerably. Finally, we propose two turbulence coupling methods that seed the high resolution wave simulation in visually expected regions.

  2012 
 

 Lagrangian Vortex Sheets for Animating Fluids [CITE]
Tobias Pfaff, Nils Thuerey, Markus Gross
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2012
Paper: [PDF]
Video: [MP4]
Video: [WWW]
Abstract: Buoyant turbulent smoke plumes with a sharp smokeair interface, such as volcanic plumes, are notoriously hard to simulate. The surface clearly shows smallscale turbulent structures which are costly to resolve. In addition, the turbulence onset is directly visible at the interface, and is not captured by commonly used turbulence models. We present a novel approach that employs a triangle mesh as a highresolution surface representation combined with a coarse Eulerian solver. On the mesh, we solve the interfacial vortex sheet equations, which allows us to accurately simulate buoyancy induced turbulence. For complex boundary conditions we propose an orthogonal turbulence model that handles vortices caused by obstacle interaction. In addition, we demonstrate a resampling scheme to remove surfaces that are hidden inside the bulk volume. In this way we are able to achieve highly detailed simulations of turbulent plumes efficiently.



 Controlling Fluids using Meshes [CITE]
Karthik Raveendran, Nils Thuerey, Chris Wojtan, Greg Turk
SCA '12: Proceedings of the 2012 ACM SIGGRAPH/Eurographics Symposium on Computer Animation; Eurographics Association, 2012
Paper: [PDF]
Video: [WWW]
Abstract: We present an approach for artistdirected animation of liquids using multiple levels of control over the simulation, ranging from the overall tracking of desired shapes to highly detailed secondary effects such as dripping streams, separating sheets of fluid, surface waves and ripples. The first portion of our technique is a volume preserving morph that allows the animator to produce a plausible fluidlike motion from a sparse set of control meshes. By rasterizing the resulting control meshes onto the simulation grid, the mesh velocities act as boundary conditions during the projection step of the fluid simulation. We can then blend this motion together with uncontrolled fluid velocities to achieve a more relaxed control over the fluid that captures natural inertial effects. Our method can produce highly detailed liquid surfaces with control over subgrid details by using a meshbased surface tracker on top of a coarse gridbased fluid simulation. We can create ripples and waves on the fluid surface attracting the surface mesh to the control mesh with springlike forces and also by running a wave simulation over the surface mesh. Our video results demonstrate how our control scheme can be used to create animated characters and shapes that are made of water.

  2011 
 

 Preserving Fluid Sheets with Adaptively Sampled Anisotropic Particles [CITE]
Ryoichi Ando, Nils Thuerey, Reiji Tsuruno
IEEE Transactions on Visualization and Computer Graphics; IEEE, 2011
Preprint: [PDF]
Video: [WWW]
Project: [WWW]
Abstract: This paper presents a particlebased model for preserving fluid sheets of animated liquids with an adaptively sampled FluidImplicitParticle (FLIP) method. In our method, we preserve fluid sheets by filling the breaking sheets with particle splitting in the thin regions, and by collapsing them in the deep water. To identify the critically thin parts, we compute the anisotropy of the particle neighborhoods, and use this information as a resampling criterion to reconstruct thin liquid surfaces. Unlike previous approaches, our method does not suffer from diffusive surfaces or complex remeshing operations, and robustly handles topology changes with the use of a meshless representation. We extend the underlying FLIP model with an anisotropic position correction to improve the particle spacing, and adaptive sampling to efficiently perform simulations of larger volumes. Due to the Lagrangian nature of our method, it can be easily implemented and efficiently parallelized. The results show that our method can produce visually complex liquid animations with thin structures and vivid motions.

  2010 
 

 Scalable Fluid Simulation using Anisotropic Turbulence Particles [CITE]
Tobias Pfaff, Nils Thuerey, Jonathan Cohen, Sarah Tariq, Markus Gross
ACM Transactions on Graphics (SIGGRAPH Asia); ACM Press, 2010
Paper: [PDF]
Video: [MP4]
Video: [WWW]
Project: [WWW]
Abstract: We present a novel, scalable turbulence method for fluid simulations that simulates smallscale detail based on a particle representation, which does not require neighborhood information. We compute transport of turbulent energy using a full twoequation ke model with extensions for stability and for realistically capturing anisotropic turbulence effects. Turbulence is synthesized using a curl noise function, and we only require a very low grid resolution to resolve an underlying base flow. As we offload complexity from the fluid solver to the particle system, we can control the level of detail of the simulation easily by adjusting the particle number, without changing the largescale behavior. In addition, no computations are wasted on areas that are not visible. We demonstrate that due to the design of our algorithm it is highly suitable for massively parallel architectures, and is able to generate detailed turbulent simulations with millions of particles at high frame rates.



 A Multiscale Approach to Meshbased Surface Tension Flows [CITE]
Nils Thuerey, Chris Wojtan, Markus Gross, Greg Turk
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2010
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Abstract: We present an approach to simulate flows driven by surface tension based on triangle meshes. Our method consists of two simulation layers: the first layer is an Eulerian method for simulating surface tension forces that is free from typical strict time step constraints. The second simulation layer is a Lagrangian finite element method that simulates subgrid scale wave details on the fluid surface. The surface wave simulation employs an unconditionally stable, symplectic time integration method that allows for a high propagation speed due to strong surface tension. Our approach can naturally separate the grid and subgrid scales based on a volumepreserving mean curvature flow. As our model for the subgrid dynamics enforces a local conservation of mass, it leads to realistic pinch off and merging effects. In addition to this method for simulating dynamic surface tension effects, we also present an efficient nonoscillatory approximation for capturing damped surface tension behavior. These approaches allow us to efficiently simulate complex phenomena associated with strong surface tension, such as RayleighPlateau instabilities and crown splashes, in a short amount of time.



 PhysicsInspired Topology Changes for Thin Fluid Features [CITE]
Chris Wojtan, Nils Thuerey, Markus Gross, Greg Turk
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2010
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Abstract: We propose a meshbased surface tracking method for fluid animation that both preserves fine surface details and robustly adjusts the topology of the surface in the presence of arbitrarily thin features like sheets and strands. We replace traditional resampling methods with a convex hull method for connecting surface features during topological changes. This technique permits arbitrarily thin fluid features with minimal resampling errors by reusing points from the original surface. We further reduce resampling artifacts with a subdivisionbased meshstitching algorithm, and we use a higher order interpolating subdivision scheme to determine the location of any newlycreated vertices. The resulting algorithm efficiently produces detailed fluid surfaces with arbitrarily thin features while maintaining a consistent topology with the underlying fluid simulation.

  2009 
 

 Synthetic Turbulence using Artificial Boundary Layers [CITE]
Tobias Pfaff, Nils Thuerey, Andrew Selle, Markus Gross
ACM Transactions on Graphics (SIGGRAPH Asia); ACM Press, 2009
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Sources: [TGZ]
Abstract: Turbulent vortices in fluid flows are crucial for a visually interesting appearance. Although there has been a significant amount of work on turbulence in graphics recently, these algorithms rely on the underlying simulation to resolve the flow around objects. We build upon work from classical fluid mechanics to design an algorithm that allows us to accurately precompute the turbulence being generated around an object immersed in a flow. This is made possible by separating the flow into a mean and a fluctuating component, and relying on universal laws describing the flow near a wall. We precompute the turbulence characteristics around an object, and inject corresponding vorticity during a fluid simulation run, giving regions of confined vorticity. Then, a turbulence model is used to identify areas where this vorticity will transition into actual turbulence. We sample these regions with vortex particles, and simulate the further dynamics of the vortices based on these particles. We will show how our method complements previous work on synthetic turbulence, and yields physically plausible results. In addition, we demonstrate that our method can efficiently compute turbulent flows around a variety of objects including cars, whisks, as well as boulders in a river flow. We can even apply our model to precomputed static flow fields, yielding turbulent dynamics without a costly simulation.



 Deforming Meshes that Split and Merge [CITE]
Chris Wojtan, Nils Thuerey, Markus Gross and Greg Turk
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2009
Paper: [PDF]
Video: [MOV]
Video: [WWW]
Abstract: We present a method for accurately tracking the moving surface of deformable materials in a manner that gracefully handles topological changes. We employ a Lagrangian surface tracking method, and we utilize a triangle mesh for our surface representation so that fine features can be retained. We make topological changes to the mesh by first identifying merging or splitting events at a particular grid resolution, and then locally creating new pieces of the mesh in the affected cells using a standard isosurface creation method. We stitch the new, topologically simplified portion of the mesh to the rest of the mesh at the cell boundaries. Our method detects and treats topological events with an emphasis on the preservation of thin features, while simultaneously simplifying those portions of the material that are not visible. Our surface tracker is not tied to a particular method for simulating deformable materials. In particular, we show results from two significantly different simulators: a Lagrangian FEM simulator with tetrahedral elements, and an Eulerian gridbased fluid simulator. Although our surface tracking method is generic, it is particularly wellsuited for simulations that exhibit thin features and numerous topological events. Highlights of our results include a taffypulling animation with many fold and merge events, the creation and separation of thin strands in the simulation of viscoelastic materials, and the retention of thin sheets and surface details in a splashing fluid animation.



 Visibility Transition Planning for RealTime Camera Control [CITE]
Thomas Oskam, Robert W. Sumner, Nils Thuerey, Markus Gross
SCA '09: Proceedings of the 2009 ACM SIGGRAPH/Eurographics Symposium on Computer Animation; Eurographics Association, 2009
Paper: [PDF]
Video: [MOV]
Abstract: We present a realtime camera control system that uses a global planning algorithm to compute large, occlusion free camera paths through complex environments. The algorithm incorporates the visibility of a focus point into the search strategy, so that a path is chosen along which the focus target will be in view. The efficiency of our algorithm comes from a visibilityaware roadmap data structure that permits the precomputation of a coarse representation of all collisionfree paths through an environment, together with an estimate of the pairwise visibility between all portions of the scene. Our runtime system executes a path planning algorithm using the precomputed roadmap values to find a coarse path, and then refines the path using a sequence of occlusion maps computed onthefly. An iterative smoothing algorithm, together with a physicallybased camera model, ensures that the path followed by the camera is smooth in both space and time. Our global planning strategy on the visibilityaware roadmap enables largescale camera transitions as well as a local thirdperson camera module that follows a player and avoids obstructed viewpoints. The data structure itself adapts at runtime to dynamic occluders that move in an environment. We demonstrate these capabilities in several realistic game environments.



 DetailPreserving Fluid Control [CITE]
Nils Thuerey, Richard Keiser, Ulrich Ruede, Mark Pauly
Graphical Models; Elsevier, 2009
PaperOnline: [WWW]
Video: [AVI]
Video: [WWW]
Abstract: We propose a new fluid control technique that uses scaledependent force control to preserve smallscale fluid detail. Control particles define local force fields and can be generated automatically from either a physical simulation or a sequence of target shapes. We use a multiscale decomposition of the velocity field and apply control forces only to the coarsescale components of the flow. Smallscale detail is thus preserved in a natural way avoiding the artificial viscosity often introduced by forcebased control methods. We demonstrate the effectiveness of our method for both Lagrangian and Eulerian fluid simulation environments.
The results of this paper can also be seen in the "Magic Fluid Control" animation, which can be found below.

  2008 
 

 Wavelet Turbulence for Fluid Simulation [CITE]
Theodore Kim, Nils Thuerey, Doug James, Markus Gross
ACM Transactions on Graphics (SIGGRAPH); ACM Press, 2008
Webpage: [WWW]
Sourcecode: [WWW]
Paper: [PDF]
Video: [WWW]
Abstract: We present a novel wavelet method for the simulation of fluids at high spatial resolution. The algorithm enables large and smallscale detail to be edited separately, allowing highresolution detail to be added as a postprocessing step. Instead of solving the NavierStokes equations over a highly refined mesh, we use the wavelet decomposition of a lowresolution simulation to determine the location and energy characteristics of missing highfrequency components. We then synthesize these missing components using a novel incompressible turbulence function, and provide a method to maintain the temporal coherence of the resulting structures. There is no linear system to solve, so the method parallelizes trivially and requires only a few auxiliary arrays. The method guarantees that the new frequencies will not interfere with existing frequencies, allowing animators to set up a low resolution simulation quickly and later add details without changing the overall fluid motion.



 Robust and Efficient Wave Simulations on Deforming Meshes [CITE]
Roland Angst, Nils Thuerey, Mario Botsch, Markus Gross
Computer Graphics Forum; Blackwell Publishing, 2008
Paper: [PDF]
Video: [MOV]
Abstract: The goal of this paper is to enable the interactive simulation of phenomena such as animated fluid characters. While full 3D fluid solvers achieve this with control algorithms, these 3D simulations are usually too costly for realtime environments. In order to achieve our goal, we reduce the problem from a three to a twodimensional one, and make use of the shallow water equations to simulate surface waves that can be solved very efficiently. In addition to a low runtime cost, stability is likewise crucial for interactive applications. Hence, we make use of an implicit time integration scheme to obtain a robust solver. To ensure a low energy dissipation, we apply an Implicit Newmark time integration scheme. We propose a general formulation of the underlying equations that is tailored towards the use with an Implicit Newmark integrator. Furthermore, we gain efficiency by making use of a direct solver. Due to the generality of our formulation, the fluid simulation can be coupled interactively with arbitrary external forces, such as forces caused by inertia or collisions. We will discuss the properties of our algorithm, and demonstrate its robustness with simulations on strongly deforming meshes.



 Stable free surface flows with the lattice Boltzmann method on adaptively coarsened grids [CITE]
Nils Thuerey, Ulrich Ruede
Computing and Visualization in Science; Springer, 2009
Online: [WWW]
Preprint: [PDF]
Video: [AVI] [MPG]
Abstract: In this paper we will present an algorithm to perform free surface flow simulations with the lattice Boltzmann method (LBM) on adaptive grids. This reduces the required computational time by more than a factor of three for simulations with large volumes of fluid. To achieve this, the simulation of large fluid regions is performed with coarser grid resolutions.We have developed a set of rules to dynamically adapt the coarse regions to the movement of the free surface, while ensuring the consistency of all grids. Furthermore, the free surface treatment is combined with a Smagorinsky turbulence model and a technique for adaptive time steps to ensure stable simulations. The method is validated by comparing the position of the free surface with an uncoarsened simulation. It yields speedup factors of up to 3.85 for a simulation with a resolution of 480^3 cells and three coarser grid levels, and thus enables efficient and stable simulations of free surface flows, e.g. for highly detailed physically based animations of fluids.



 The ETH Game Programming Laboratory: A Capstone for Computer Science and Visual Computing [CITE]
Robert Sumner, Nils Thuerey and Markus Gross
Game Development in Computer Science Education (GDCSE); ACM, 2008
Paper: [PDF]
Course: [WWW]
Abstract: The Visual Computing bachelors/masters program at ETH Zurich provides an internationally renowned degree in computer science with a specialization track in computer graphics. A new projectbased game development course serves as a capstone to the program by reinforcing core computer science concepts and specialized topics in Visual Computing. Additionally, students learn design principles and obtain a better understanding of the interplay between the desires of game design and the realities of technical implementation. Finally, students practice crucial ¿soft skills¿ such as team work, effective communication, time management, and leadership. This article details the course goals and structure, presents three case studies of studentmade games and the effect of the class on the students, and evaluates the overall class design. We hope that this document presents a compelling argument in favor of game development as a capstone to computer science and also provides useful insights for other academics wishing to incorporate game development into the computer science curriculum.

  2007 
 

 Hybrid Parallelization Techniques for Lattice Boltzmann Free Surface Flows [CITE]
Nils Thuerey, Thomas Pohl and Ulrich Ruede
Proceedings of Parallel CFD 2007; , 2007
Paper: [PDF]
Abstract: In the following, we will present an algorithm to perform adaptive free surface simulations with the lattice Boltzmann method (LBM) on machines with shared and distributed memory architectures. Performance results for different test cases and architectures will be given. The algorithm for parallelization yields a high performance, and can be combined with the adaptive LBM simulations. Moreover, the effects of the adaptive simulation on the parallel performance will be evaluated.



 Simulation of moving particles in 3D with the Lattice Boltzmann method [CITE]
Klaus Iglberger, Nils Thuerey and Ulrich Ruede
Computers and Mathematics with Applications, Mesoscopic Methods in Engineering and Science; Elsevier, 2008
Webpage: [WWW]
Abstract: The paper presents a way to simulate the behavior of particle agglomerates in a fluid flow by coupling the Lattice Boltzmann Method to a rigid body physics engine. By extending the basic algorithm by a fluid/particle force interaction method, the hydrodynamic forces acting on the particles can be calculated. By the use of this force interaction between the fluid and the particles and by the use of the rigid body physics engine, the movement and collision behavior of particles in a flow can be simulated. Additionally, this coupled simulation system is able to simulate the internal particle forces in the connections between sintered particles, which could break due to the forces and torques of a shear flow. This permits a prediction of possible breakups or structural displacements.



 Realtime Breaking Waves for Shallow Water Simulations [CITE]
Nils Thuerey, Matthias MuellerFischer, Simon Schirm, Markus Gross
Proceedings of the Pacific Conference on Computer Graphics and Applications 2007; IEEE Computer Society, 2007
Paper: [PDF]
Video: [MOV]
Abstract: We present a new method for enhancing shallow water simulations by the effect of overturning waves. While full 3D fluid simulations can capture the process of wave breaking, this is beyond the capabilities of a pure height field model. 3D simulations, however, are still too expensive for realtime applications, especially when large bodies of water need to be simulated. The extension we propose overcomes this problem and makes it possible to simulate scenes such as waves near a beach, and surf riding characters in realtime. In a first step, steep wave fronts in the height field are detected and marked by line segments. These segments then spawn sheets of fluid represented by connected particles. When the sheets impinge on the water surface, they are absorbed and result in the creation of particles representing drops and foam. To enable interesting applications, we furthermore present a twoway coupling of rigid bodies with the fluid simulation. The capabilities and efficiency of the method will be demonstrated with several scenes, which run in realtime on today¿s commodity hardware.



 Realtime simulations of bubbles and foam within a shallow water framework [CITE]
Nils Thuerey, Filip Sadlo, Simon Schirm, Matthias MuellerFischer and Markus Gross
SCA '07: Proceedings of the 2007 ACM SIGGRAPH/Eurographics Symposium on Computer Animation; Eurographics Association, 2007
Paper: [PDF]
Video: [MOV]
Abstract: Bubbles and foam are important fluid phenomena on scales that we encounter in our lives every day. While different techniques to handle these effects were developed in the past years, they require a full 3D fluid solver with free surfaces and surface tension. We present a shallow water based particle model that is coupled with a smoothed particle hydrodynamics simulation to demonstrate that realtime simulations of bubble and foam effects are possible with high frame rates. A shallow water simulation is used to represent the overall water volume. It is coupled to a particlebased bubble simulation with a flow field of spherical vortices. This bubble simulation is interacting with a smoothed particle hydrodynamics simulation including surface tension to handle foam on the fluid surface. The realism and performance of our approach is demonstrated with several test cases that run with high frame rates on a standard PC.

  2006 
 

 DetailPreserving Fluid Control [CITE]
Nils Thuerey, Richard Keiser, Ulrich Ruede and Mark Pauly
SCA '06: Proceedings of the 2006 ACM SIGGRAPH/Eurographics Symposium on Computer Animation; Eurographics Association, 2006
Paper: [PDF]
Video: [AVI]
Abstract: We propose a new fluid control technique that uses scaledependent force control to preserve smallscale fluid detail. Control particles define local force fields and can be generated automatically from either a physical simulation or a sequence of target shapes. We use a multiscale decomposition of the velocity field and apply control forces only to the coarsescale components of the flow. Smallscale detail is thus preserved in a natural way avoiding the artificial viscosity often introduced by forcebased control methods. We demonstrate the effectiveness of our method for both Lagrangian and Eulerian fluid simulation environments.
The results of this paper can also be seen in the "Magic Fluid Control" animation, which can be found here.



 Animation of Open water Phenomena with coupled Shallow Water and Free Surface Simulation [CITE]
Nils Thuerey, U. Ruede and M. Stamminger
SCA '06: Proceedings of the 2006 ACM SIGGRAPH/Eurographics Symposium on Computer Animation; Eurographics Association, 2006
Paper: [PDF]
Video: [AVI]
Abstract: The goal of this paper is to perform simulations that capture fluid effects from small drops up to the propagation of large waves. To achieve this, we present a hybrid simulation method, that couples a twodimensional shallow water simulation with a full threedimensional free surface fluid simulation. We explain the approximations imposed by the shallow water model, and how to parametrize it according to the parameters of a 3D simulation. Each simulation is used to initialize double layered boundary conditions for the other one. The area covered by the 2D region can be an order of magnitude larger than the 3D region without significantly effecting the overall computation time. The 3D region can furthermore be easily moved within the 2D region during the course of the simulation. To achieve realistic results we combine our simulation method with a physically based model to generate and animate drops. For their generation we make use of the fluid turbulence model, and animate them with a simplified drag calculation. This allows simulations with relatively low resolutions.



 Free Surface Flows with Moving and Deforming Objects for LBM [CITE]
Nils Thuerey, K. Iglberger and U. Ruede
Proceedings of Vision, Modeling and Visualization 2006; IOS Press, 2006
Paper: [PDF]
Video: [MPG]
Abstract: We present an algorithm to handle moving and deforming objects for free surface fluid simulations with the lattice Boltzmann method (LBM). To achieve this we extend methods available for flows without a free surface to enables simulations of moving objects with varying surface roughness, twoway coupled interaction and improved mass conservation. We furthermore show how to efficiently initialize boundary conditions for the moving objects from an arbitrary triangle mesh. The triangulation of the free surface can be improved by removing the interface between fluid and an immersed object. We will demonstrate the capabilities of our approach with two simpler test cases, and a more complicated simulation using an animated character as obstacle.



 Enhanced Motion Blur Calculation with Optical Flow [CITE]
Yuan Zheng, Harald Koestler, Nils Thuerey and Ulrich Ruede
Proceedings of Vision, Modeling and Visualization 2006; IOS Press, 2006
Paper: [PDF]
Abstract: Computing motion blur is a complex task for modern raytracers, usually temporal supersampling is used to compute motion blur. However, this leads to increased rendering time and high computational complexity. In the following we present an image based technique which is based on the optical flow method to achieve an approximated motion field in an image sequence. In contrast to vector fields generated by the raytracer itself, this enables us to also attain motion vectors for indirect movements, such as shadows or caustics. For the optical flow computation we use an extended Horn and Schunk model based on the assumption that changes in the illumination are ignored. Experiments to compare the results of motion blurred pictures, computed by a raytracer and the optical flow method, will be presented and evaluated with respect to visual effects and runtime.



 Simulation of the Hydrodynamic Drag of Aggregated Particles [CITE]
Christian Binder, Christian Feichtinger, HansJoachim Schmid, Nils Thuerey, Wolfgang Peukert and Ulrich Ruede
Journal of Colloid and Interface Science; Elsevier, 2006
Paper online: [WWW]
Abstract: The drag force on aggregates and partially sintered agglomerates is assessed using the lattice Boltzmann method (LBM) and accelerated Stokesian dynamics (ASD). Both methods have been compared in terms of accuracy and computational effort. It is shown that they give comparable results if all numerical parameters are controlled carefully. LBM requires a much higher computational effort, however, in contrast to ASD it is able to simulate partially sintered agglomerates as well. The results show that even a very small amount of sintering leads to a significant reduction in the drag force. The analysis of the drag force on agglomerates as well as on aggregates shows that there is no simple geometric quantity which is uniquely related to the drag force. Moreover, there is a significant variation in drag force for single aggregates at different orientations or for the orientation averaged drag force of different aggregates of the same size. This is explained by the structural effects which may lead to a variation in the drag force up to 20%.



 Parallel Lattice Boltzmann Methods for CFD Applications [CITE]
Carolin Koerner, Thomas Pohl, Ulrich Ruede, Nils Thuerey and Thomas Zeiser
Numerical Solution of Partial Differential Equations on Parallel Computers; Springer, 2006
Book Chaper: [PDF]
Book: [Table of Contents]
Abstract: The lattice Boltzmann method (LBM) has evolved to a promising alternative to the wellestablished methods based on finite elements/volumes for computational fluid dynamics simulations. Ease of implementation, extensibility, and computational efficiency are the major reasons for LBM's growing field of application and increasing popularity. In this paper we give a brief introduction to the involved theory and equations for LBM, present various techniques to increase the singleCPU performance, outline the parallelization of a standard LBM implementation, and show performance results. In order to demonstrate the straightforward extensibility of LBM, we then focus on an application in material science involving fluid flows with free surfaces. We discuss the required extensions to handle this complex scenario, and the impact on the parallelization technique.



 Optimization and Stabilization of LBM Free Surface Flow Simulations using Adaptive Parameterization [CITE]
Nils Thuerey, Thomas Pohl, Ulrich Ruede, Markus Oechsner and Carolin Koerner
Computers and Fluids; Elsevier, 2006
Webpage: [WWW]
Preprint: [PDF]
Abstract: We present a method to speed up and stabilize free surface simulations with the lattice Boltzmann method (LBM). This is done by adaptively changing the parameterization of the simulation in a way that corresponds to a different size of the simulation time step. This means that the Mach number changes as well, and requires a rescaling of all distribution functions. Hence we only perform the rescaling when the velocities in the simulation become too large or small. We will demonstrate the effect of this procedure for two and threedimensional test cases. In addition to a reduction of the necessary LBM steps, this method can also be used to stabilize gravity driven simulations, where the maximum velocities are not known a priori.

  2005 
 

 Lattice Boltzmann Model for Free Surface Flow for Modeling Foaming [CITE]
Carolin Koerner, Michael Thies, Thomas Hofmann, Nils Thuerey and Ulrich Ruede
Journal of Statistical Physics; Springer, 2005
Paper: [PDF]
Abstract: We present a 2D and 3Dlattice Boltzmann model for the treatment of free surface flows including gas diffusion. Interface advection and related boundary conditions are based on the idea of the lattice Boltzmann equation. The fluid dynamic boundary conditions are approximated by using the mass and momentum fluxes across the interface, which do not require explicit calculation of gradients. A similar procedure is applied to fulfill the diffusion boundary condition. Simple verification tests demonstrate the correctness of the algorithms. 2D and 3Dfoam evolution examples demonstrate the potential of the method.

  2004 
 

 Free Surface LatticeBoltzmann fluid simulations with and without level sets [CITE]
Nils Thuerey and U. Ruede
Proc. of Vision, Modelling, and Visualization VMV; IOS Press, 2004
Paper: [PDF]
Poster: [PDF]
Abstract: We present two variants of free surface LatticeBoltzmann fluid simulations for the animation of liquids in computer graphics. The LatticeBoltzmann method is an attractive alternative to conventional fluid solvers, due to its simplicity and flexibility, especially for changing geometries and topologies. While our first method directly calculates the mass fluxes between the cells of the computational grid, another variant of the method is explained, that uses level sets to track the fluid surface. This has advantages for the smoothness of the fluid surface and improves the representation of details in the free surface, but makes the conservation of mass more difficult. Several examples will be shown to highlight the differences between the two methods.



 Performance Evaluation of Parallel LargeScale Lattice Boltzmann Applications on Three Supercomputing Architectures [CITE]
Thomas Pohl, Frank Deserno, Nils Thuerey, Ulrich Ruede, Peter Lammers, Gerhard Wellein and Thomas Zeiser
SC '04: Proceedings of the 2004 ACM/IEEE conference on Supercomputing; IEEE Computer Society, 2004
Paper: [PDF]
TechReport: [PDF] [PS.GZ]
Abstract: Computationally intensive programs with moderate communication requirements such as CFD codes suffer from the standard slow interconnects of commodity off the shelf (COTS) hardware. We will introduce different largescale applications of the Lattice Boltzmann Method (LBM) in fluid dynamics, material science, and chemical engineering and present results of the parallel performance on different architectures. It will be shown that a high speed communication network in combination with an efficient CPU is mandatory in order to achieve the required performance. An estimation of the necessary CPU count to meet the performance of 1 TFlop/s will be given as well as a prediction as to which architecture is the most suitable for LBM. Finally, ratios of costs to application performance for tailored HPC systems and COTS architectures will be presented.

  2002 
 

 Performance Optimization of 3D Multigrid on Hierarchical Memory Architectures [CITE]
Markus Kowarschik, Ulrich Ruede, Nils Thuerey and Christian Weiss
Proceedings of PARA'02; Springer, Lecture Notes in Computer Science, 2002
Paper: [PDF]


[Back to top...]

  2011 
 

 The Design and Development of Computer Games [CITE]
Markus Gross, Robert Sumner, Nils Thuerey
The Design of Material, Organism, and Minds (Editors: S. Lang, M. Hampe); Springer, 2011
Online: [WWW]
Preprint: [PDF]
Abstract: The design of modern computer games is as much an art as painting, sculpting, music, or writing. Albeit relatively young and still evolving, game design is highly complex and requires a broad spectrum of artistic and technical skills. The following contribution reviews the process of designing and developing modern computer games. We will acquaint the reader with the most important fundamentals of game design, walk through the various stages of the design process, and highlight the specifics of each stage.

  2008 
 

 Realtime Physics, SIGGRAPH 2008 Course
Matthias MuellerFischer, Doug James, Jos Stam, Nils Thuerey
Webpage: [WWW]
SWSsourcecode: [TGZ]
LBMsourcecode: [TGZ]
Coursenotes: [PDF]
Abstract: Physical simulations have become an important component of computer games. In nextgeneration games, players expect to see fully dynamic and destructible worlds, and this requires fast and stable simulation methods. In this class, lecturers who have made significant contributions in simulation methods present a wide spectrum of stateoftheart methods for realtime simulation of rigid and deformable solids, and smoke and liquid simulation. In addition to the underlying physical equations, they present practical simulation methods and algorithms that will help physicalsimulation developers and game developers apply these techniques properly.



 Magic Fluid Control, Animation
Nils Thuerey, Mark Pauly, Richard Keiser, Ulrich Ruede
Video: [MPG]
Webpage: [WWW]
Video (uploaded by someone else): [WWW]
Abstract: The movie consists of three clips to demonstrate the possibilities of controlled water simulations: 1. A magician pulls out water from a basin which forms a teapot by moving his hand upwards from the basin. 2. Water flows magically upwards a stair where it forms a human figure. This is achieved by using control particles from a reversed water simulation and from an invisible model. 3. The magician moves a duck out of water from one basin to another and vice versa. Finally, he pulls out two ducks from both basins which end up in a short "fight".
So far, the animation was shown at the following events: Eurographics 2006, Animations & Interactive Media Computer Graphics International 2007, Video Festival SIGGRAPH 2007, Computer Animation Festival Melbourne International Animation Festival 2008

  2007 
 

 Physically based Animation of Free Surface Flows with the Lattice Boltzmann Method [CITE]
N. Thuerey
PhD thesis; Dept. of Computer Science 10, University of ErlangenNuremberg, 2007
Thesis: [PDF]
Abstract: The numerical simulation of fluids has become an established tool in many engineering applications. Free surface fluids represent a special case that is important for a variety of applications. For a free surface simulation, a two phase system, such as air and water, is described by a single fluid phase with a sharp interface and corresponding boundary conditions. This allows the efficient representation and simulation of complex problems. In this thesis, the main application for free surface flows will be the generation of animations of liquids. Additionally, engineering applications from material science and particle technology are considered.

  2006 
 

 Fluid Simulation with Blender [CITE]
Nils Thuerey
Dr. Dobbs Journal; CMP Media, 2006
Webpage: [WWW]
Abstract: The goal of the Fluid Simulation with Blender project was the integration of the free surface fluid solver developed at the system simulation group (LSS) in Erlangen, Germany into the Blender graphics toolset (3D modeling, animation, rendering, and the like) and to publish it as opensource software.

  2005 
 

 Simulation of moving NanoParticles with the Lattice Boltzmann Method in 3D [CITE]
Iglberger, Nils Thuerey, Ulrich Ruede, H.J. Schmid and W. Peukert
Proceedings of ASIM '05; SCS Publishing House, 2005
Paper: [PDF]
Abstract: The following work presents a way to simulate the nanoparticle behavior in a flow by coupling the Lattice Boltzmann Method to a rigid body physics engine. By extending the basic fluid simulation for the treatment of curved particle surfaces and by a force interaction method, the fluid forces acting on the nanoparticles can be calculated.With this force interaction between the fluid and the particles and the use of the rigid body physics engine, the movement and collision behavior of nanoparticles in a flow can be simulated. Additionally, this coupled simulation system is able to calculate the internal particle forces in the connections between sintered particles, which could break due to the forces of a shear flow. Therefore a prediction of possible breakups becomes possible.



 Drag Force Simulations of Particle Agglomerates with the LatticeBoltzmann Method [CITE]
Christian Feichtinger, Nils Thuerey, Ulrich Ruede, Christian Binder, Hans Schmid, Wolfgang Peukert
Proceedings of ASIM '05; SCS Publishing House, 2005
Paper: [PDF]
Abstract: In this work we show, that the Lattice Boltzmann method is capable of calculating the drag force on spheres with a sufficient accuracy. The main interest lies on laminar flows around nano particle agglomerates. To give an overview over the simulated force accuracy the results are compared with analytical solutions. Thereby the benefit from curved boundary treatments such as [YD03] and [PL03] is taken into account. Through the use of curved boundary treatments the lattice radius of the spheres can be reduced and thus smaller domain sizes can be used with the same force accuracy. Further more, results for complex agglomerates are presented and compared to solutions of the Stokesian Dynamics approach [AS01].



 Optimized Free Surface Fluids on Adaptive Grids with the Lattice Boltzmann Method [CITE]
Nils Thuerey and Ulrich Ruede
Poster; SIGGRAPH '05, 2005
Video: [AVI]
Poster: [PDF]
Abstract: [PDF]
Abstract: The algorithm used to simulate the free surface fluid is based on the Lattice Boltzmann Method (LBM). The free surface tracking is similar to VolumeofFluid methods for conventional NavierStokes solvers. For the free surface three types of cells are distinguished  fluid cells that are treated with the normal LBM, empty cells, that do not require any computations, and interface cells. For these the amount of fluid mass is tracked for each time step, together with appropriate boundary conditions for the fluid gas interface. The algorithm is described in more detail in e.g. [Thuerey 2003]. To speed up the simulations we use a modied version of the gridrefinement described in [Filippova and Haenel 1998] together with a method to adapt the grid boundaries according to the free surface movement.



 Interactive Free Surface Fluids with the Lattice Boltzmann Method [CITE]
Nils Thuerey, Carolin Koerner and Ulrich Ruede
Technical Report 054; Department of Computer Science 10 System Simulation, 2005
Report: [PDF]
Video: [DivX] [MPG]
Abstract: In this paper we present our algorithm for animating fluids with a free surface. It is based on the LatticeBoltzmann Method, instead of a direct discretization of the NavierStokes equations. This allows a relatively simple treatment of the free surface boundary conditions at high computational efficiency, without sacrificing the underlying physics. We give a detailed description of our algorithm, focussing on details that are required to achieve a good visual appearance. Furthermore we describe how to implement our adaptive time stepping technique to achieve flexible and stable simulations. We will demonstrate the speed and capabilities of the method with animations from different interactive test cases. These run with, on average, more than 20 frames per second on a standard desktop PC.

  2003 
 

 Simulation von Metallschaum mittels der LatticeBoltzmann Methode [CITE]
Nils Thuerey, Ulrich Ruede and Carolin Koerner
Konwihr Quartl; KONWIHR, 2003
Paper: [PDF]



 A Lattice Boltzmann method for singlephase free surface flows in 3D [CITE]
Nils Thuerey
Master thesis; Dept. of Computer Science 10, University of ErlangenNuremberg, 2003
Thesis: [PDF] [PS.GZ]
Abstract: The fluid solver presented here is capable of simulating a single fluid phase with a free surface, including surface tension, bubbles and coalescence. In contrast to the standard multiphase models of [Gunstensen et al., 1991] and [Swift et al., 1996] it is not necessary to simulate the motion of the gas phase, which overcomes restrictions in difference of the viscosity of the two phases, and improves the computational time needed for the numerical simulation, as the gas volumes in the foam do not require any additional computations. The forces at the fluid interface, gas pressure and surface tension, are applied by reconstructing the missing information from the gas phase. For surface tension, points on the fluid surface are calculated with the marching cubes algorithm and used to retrieve an average curvature at the fluidgas interface. As part of this thesis, the fluid solver is tested and validated with standard problems like the breaking dam problem and rising bubble problems.

  2002 
 

 Cache Optimizations for Multigrid in 3D [CITE]
Nils Thuerey
Semester thesis; Dept. of Computer Science 10, University of ErlangenNuremberg, 2002
Thesis: [PDF]


