Procedural Synthesis using Vortex Particle Method for Fluid Simulation

Similar documents
An Efficient Adaptive Vortex Particle Method for Real-Time Smoke Simulation

Simulation of Swirling Bubbly Water using Bubble Particles

Smoke Simulation using Smoothed Particle Hydrodynamics (SPH) Shruti Jain MSc Computer Animation and Visual Eects Bournemouth University

Animating smoke with dynamic balance

Evolving Sub-Grid Turbulence for Smoke Animation

Navier-Stokes & Flow Simulation

Overview of Traditional Surface Tracking Methods

CGT 581 G Fluids. Overview. Some terms. Some terms

Wavelet Turbulence for Fluid Simulation

A Semi-Lagrangian CIP Fluid Solver without Dimensional Splitting

Simulating Gaseous Fluids with Low and High Speeds

Automated Sampling and Control of Gaseous Simulations

Enhancing Fluid Animation with Adaptive, Controllable and Intermittent Turbulence

A Novel Algorithm for Incompressible Flow Using Only a Coarse Grid Projection

Restoring the Missing Vorticity in Advection-Projection Fluid Solvers

Volcanic Smoke Animation using CML

CS-184: Computer Graphics Lecture #21: Fluid Simulation II

Adarsh Krishnamurthy (cs184-bb) Bela Stepanova (cs184-bs)

Visual Simulation of Whirlwind Using a Grid and Particles

Computer animation for fluid simulation of a high viscous fluid melting

Navier-Stokes & Flow Simulation

Fluid Simulation. [Thürey 10] [Pfaff 10] [Chentanez 11]

Realtime Water Simulation on GPU. Nuttapong Chentanez NVIDIA Research

An Adaptive Sampling Approach to Incompressible Particle-Based Fluid

Scalable Fluid Simulation using Anisotropic Turbulence Particles

Wake Synthesis For Shallow Water Equation

Navier-Stokes & Flow Simulation

Extended Galilean Invariance for Adaptive Fluid Simulation

Simulating Smoke with an Octree Data Structure and Ray Marching

Realistic Smoke Simulation Using A Frustum Aligned Grid

Animation of Fluids. Animating Fluid is Hard

Feedback Control of Fire Simulation based on Computational Fluid Dynamics

Physically Based Simulation and Animation of Gaseous Phenomena in a Periodic Domain

FLUID SIMULATION BY PARTICLE LEVEL SET METHOD WITH AN EFFICIENT DYNAMIC ARRAY IMPLEMENTATION ON GPU

Fluid Simulation. Dhruv Kore, Giancarlo Gonzalez, and Jenny Sum CS 488: Introduction to Computer Graphics Professor Angus Forbes

Advections with Significantly Reduced Dissipation and Diffusion

Realistic Animation of Fluids

Synthetic Turbulence using Artificial Boundary Layers

An Improved Study of Real-Time Fluid Simulation on GPU

Adaptive Particles for Incompressible Fluid Simulation (Technical Report tamu-cs-tr )

Surface Tension Approximation in Semi-Lagrangian Level Set Based Fluid Simulations for Computer Graphics

Linear-Time Smoke Animation with Vortex Sheet Meshes

Textured Liquids based on the Marker Level Set

An Unconditionally Stable MacCormack Method

Real-time controllable fire using textured forces

Interactive Fluid Simulation using Augmented Reality Interface

Procedural Fluid Modeling of Explosion Phenomena Based on Physical Properties

SIMULATION OF THE MIXING OF INK AND WATER IN HOUDINI

A Hybrid Lagrangian-Eulerian Formulation for Bubble Generation and Dynamics

Possibility of Implicit LES for Two-Dimensional Incompressible Lid-Driven Cavity Flow Based on COMSOL Multiphysics

Simple and Fast Fluids

GPU Methods for Real-Time Haptic Interaction with 3D Fluids

Interactive Simulation of Fire

Liquid Surface Tracking with Error Compensation

Eulerian Motion Blur

Texture Advection Based Simulation of Dynamic Cloud Scene

AN ADAPTIVE SAMPLING APPROACH TO INCOMPRESSIBLE PARTICLE-BASED FLUID. A Dissertation WOO-SUCK HONG

REVIEWS ON PHYSICALLY BASED CONTROLLABLE FLUID ANIMATION

Animation of air bubbles with SPH

Pattern-Guided Smoke Animation with Lagrangian Coherent Structure

Modeling of Volcanic Clouds using CML *

CS 231. Fluid simulation

More Animation Techniques

Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques

Continued Investigation of Small-Scale Air-Sea Coupled Dynamics Using CBLAST Data

Grid-less Controllable Fire

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang

Simulating Bubbles Michael Running Wolf 4/1/05. Introduction

A Geometric Approach to Animating Thin Surface Features in SPH Water

Flow Simulation with Locally-Refined LBM

Flows on Surfaces of Arbitrary Topology

Interactive Fluid Simulation Using Augmented Reality Interface

Two-Phase flows on massively parallel multi-gpu clusters

Real time simulation of a tornado

IMPROVED WALL BOUNDARY CONDITIONS WITH IMPLICITLY DEFINED WALLS FOR PARTICLE BASED FLUID SIMULATION

Theodore Kim Michael Henson Ming C.Lim. Jae ho Lim. Korea University Computer Graphics Lab.

Divergence-Free Smoothed Particle Hydrodynamics

Real-time haptic display of fluids

Rigid Body Dynamics, Collision Response, & Deformation

REALTIME PARTICLE SYSTEM SIMULATION AND RENDERING IN EMBEDDED SYSTEMS

Editing Fluid Animation using Flow Interpolation

Guide Shapes for High Resolution Naturalistic Liquid Simulation

ALE Seamless Immersed Boundary Method with Overset Grid System for Multiple Moving Objects

Simultaneous Coupling of Fluids and Deformable Bodies

PHYSICALLY BASED ANIMATION

Visual Simulation of Smoke

Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field

... arxiv: v2 [cs.gr] 25 Jul Data-Driven Synthesis of Smoke Flows with CNN-based Feature Descriptors CNN CNN

CUDA. Fluid simulation Lattice Boltzmann Models Cellular Automata

Fluid Simulation Quality with Violated CFL Condition

Realistic and Controllable Fire Simulation

Computers & Graphics

Three Dimensional Numerical Simulation of Turbulent Flow Over Spillways

Realistic Animation of Fluids

Category: Process. Figure 1: Large scale explosions.

Energy-Preserving Integrators for Fluid Animation

A High Quality, Eulerian 3D Fluid Solver in C++ A Senior Project. presented to. the Faculty of the Computer Science Department of

Mass-Spring Systems. Last Time?

To appear in the ACM SIGGRAPH conference proceedings. Jeong-Mo Hong Korea University

Smoothed Particle Hydrodynamics on GPUs

Transcription:

Volume 28 (2009), Number 7 Procedural Synthesis using Vortex Particle Method for Fluid Simulation Jong-Chul Yoon 1, Hyeong Ryeol Kam 2, Jeong-Mo Hong 3, Shin Jin Kang 4 and Chang-Hun Kim 2 1 FXGear Inc. 2 Korea University 3 Dongguk University 4 Hongik University Abstract We propose a fast and effective technique to improve sub-grid visual details of the grid based fluid simulation. Our method procedurally synthesizes the flow fields coming from the incompressible Navier-Stokes solver and the vorticity fields generated by vortex particle method for sub-grid turbulence. We are able to efficiently animate smoke which is highly turbulent and swirling with small scale details. Since this technique does not solve the linear system in high-resolution grids, it can perform fluid simulation more rapidly. We can easily estimate the influence of turbulent and swirling effect to the fluid flow. Categories and Subject Descriptors (according to ACM CCS): Graphics and Realism Animation I.3.7 [Computer Graphics]: Three-Dimensional 1. Introduction As the use of computer graphics is increasing in movies, commercials and other media, the work of animating fluids such as explosion and fire has become an important process in that area. Recently fluid dynamics technologies are applied to a range of special effects, yet achieving precise calculations is still a time-consuming process, which is why various technologies are being studied for better balance between productivity and the reality of graphics. Therefore, in the area of graphics, enhancing productivity while maintaining an adequate level of visual quality - even at the modest expense of physical/mathematical accuracy - presents a challenge to fluid animation technologies. While the vortex particle method [SRF05] is useful for generating turbulent effects, its drawback is that the grid is too coarse to accommodate the vorticity of all particles. Although it is possible to use high-resolution grids in simulation, it would require much more time and memory capacity. Recently introduced techniques [KTJG08, SB08, NSCL08] have improved details in grids by using noise. We propose a new technique for improving details in grids in fluid simulation. This technique depicts the uncomplicated motion of fluid through flow fields calculated by solving the incompressible Navier-Stokes equations, and detailed motion of fluid through vorticity field calculated by the vortex particle method. This technique does not solve the linear system in high-resolution grids, thus it performs large-scale grid simulation efficiently. Another benefit is that it generates turbulent effects of explosion or rough motion of smoke as the vorticity of vortex particles is transferred to the high-resolution grid. Our approach has the following characteristics: A degree of resolution equivalent to the result of simulation using the (k n) 3 grid is achieved by solving fluid equations of the n 3 grid in a three-dimensional space. k is a constant making desired resolution. Since this method has the benefit that the result can be quickly drawn through low-resolution simulation, if the result is satisfactory, a high-resolution result can be obtained without running simulation with adjusted parameters. Highly turbulent and swirling effects that cannot be generated easily by using noise for simulating explosion, smoke, etc. can be achieved since it is hard to anticipate how they will affect flow when using noise. Vortex particle carries the vorticity calculated from low resolution and we create the high resolution vorticity field using the vorticity. This field uses the information from the base simulation. Published by Blackwell Publishing, 9600 Garsington Road, Oxford OX4 2DQ, UK and 350 Main Street, Malden, MA 02148, USA.

Figure 1: Rising smoke: Simulation sequence of synthesizing a 200 600 200 resolution from a 50 150 50 resolution by adding detail using a procedural vortex particle method. We can easily control the size of turbulence depending on the frequency by adjusting the particle radius. 2. Previous Work Stam and Fiume [SF93] proposed a method to depict gaseous phenomena through the ambient turbulence that is used to add new eddies by noise. Smoke simulation using the three dimensional Navier-Stokes equations began with Foster and Metaxas [FM97]. Stam [Sta99] presented a Semi-Lagrangian advection model which allows stable simulation with large time step. Fedkiw et al. [FSJ01] introduced a simulation model for generating a vorticity effect which is hard to depict in coarse grids. This vorticity confinement method reduced the loss of small-scale details and increased the amount of swirling motion. Felici and Drela [FD90, FD93a, FD93b] coupled an Eulerian and a Lagrangian Solver and tried to reduce numerical diffusion. Selle et al. [SRF05] presented vortex particle method which allowed effective simulation by incorporating localized vorticity confinement in grid. It directly computes the velocity for particles by trilinear interpolation. It reduces the numerical loss because each vortex particle stores a vorticity value. But it is slow for high-resolution simulation. And Park and Kim [PK05] presented a Lagrangian method for gaseous phenomena simulation based on the vortex method. Hong and Kim [HK05] proposed the method for vortex advection based on vorticity confinement. Angelidis et al. [ANSN06] used the vortex filament methods based on the vorticity formulation of the Navier-Stokes equations. They defined a vorticity preserving flow field around a set of vortex primitives. Previous research results were only useful in small-scale simulation due to the high computational cost. Although the use of fluid technologies is increasing, the improvement of computing environment still falls short of the demand of developers, which has led to a number of attempts to find ways to enhance the quality as well as reality of simulation. Neyret [Ney03] increased the details of fluid by advecting texture to the velocity field. Rasmussen et al. [RNGF03] proposed an efficient method for large-scale fluid simulation, and Losasso et al. [LGF04] introduced a method to reduce simulation time by limiting the refinement to the fluid surface part of the grid using octree data structure instead of using uniform grid. Another approach is to employ error correction schemes such as BFECC [KLLR07] or a Mac- Cormack method [SFK 08], or less dissipative advection schemes such as USCIP [KSK08], to reduce the diffusion in the numerical method directly. Recently, methods for adding further details in sub-grid by using noise have been introduced. These methods are similar to our method s schematic outline, adding the smallscaled detail to the upsampled field gained by interpolation in coarse-grid simulation for making a new velocity field. Kim et al. [KTJG08] used wavelet method and synthesized missing turbulent flow components with band-limited wavelet noise. This helps to show small-scaled detail in a coarse grid. Schechter and Bridson [SB08] presented subgrid turbulence evolution model for fluid simulation. They tracked bands of turbulent energy using a simple linear model and created the turbulent velocity using flow noise. They added a predictor step to the usual time splitting of the incompressible Euler equation and corrected the additional vorticity dissipation due to time splitting of the pressure and

Figure 2: Overview of our method advection. Narain et al. [NSCL08] introduced a technique coupling a procedural turbulence model with a numerical fluid solver. They used an energy function and a Lagrangian approach to advect noise when synthesizing an incompressible turbulent velocity field. They applied the method to simulation of liquids with free surfaces. Turbulence can be edited easily using these methods because the turbulence is independent from the large-scale flow and able to be added like a post process. But we don t include a noise and energy function but vortex particle method, i.e. vortex particle carries the vorticity calculated from low resolution and we create the high resolution vorticity field using the vorticity. This field uses the information from the base simulation while the noise addition is unrelated to the base simulation. In addition, our method is easy to implement and able to show highly turbulent effects such as an explosion or rocket smoke that is hard to be generated from a noise function. 3. High resolution fluid synthesis This section discusses the high-resolution method of synthesizing vortex particles in fluid simulation. The notation used is as follows. Bold denotes a vector, and non-bold represents a scalar. Parameters used in low-resolution simulation are marked with lower-case letters and parameters used in high-resolution simulation are marked with upper-case letters, while x represents the location. I(u, X) is the function for interpolation of velocity field u by high-resolution location X. A(U,D) is the function for advection of density D by U. 3.1. Base fluid simulation We simulate the motion of fluid by solving the incompressible Navier-Stokes equations commonly used to animate fluid in graphics. The Navier-Stokes equations describing inviscid incompressible fluid motion are u t + (u )u + p/ρ = f (1) u = 0, (2) where u = (u,v,w) is the fluid s velocity, p is the pressure, ρ is the density, and f is the external forces such as gravity and vorticity confinement. Since upsampled velocity field depends on that of base simulation, using a vorticity confinement results in more dynamic flow than not using it. Since numerical methods of solving equations (1) and (2) are well known, we refer readers to [Sta99, FSJ01] for details. 3.2. Saving grid vorticity to vortex particle We use vortex particle method [SRF05] in this paper. The Navier-Stokes equations can be put into vorticity form by

Figure 3: 2D simulation comparison: The low resolution simulation(30 90) is shown in the left. An effective resolution of 480 1440 using our method is shown in the right. taking the curl of equation (1) to obtain ω t + (u )ω (ω )u = µ 2 ω + f (3) where ω = u, ω is vorticity. The vorticity advection term (u )ω and the vortex stretching term (ω )u are calculated and saved in the particles, thereby preserving the magnitude of vorticity in each step. We ignore the µ 2 ω and f terms like Selle et al. [SRF05]. method is not divergence-free. To make vorticity field divergence-free, we can calculate curl of particle s vorticity taken by a ramp function instead of using (N p ω p). Our result came from the method of 3.3. The non divergence-free status in vorticity field at sub-grid level is ignorable since the vorticity field is newly created at each step instead of being advected. Our result shows little difference as compared with divergence-free case and it operates a little faster. 3.3. Generating vorticity field The vorticity of vortex particles obtained in 3.2 is transferred to high-resolution vorticity field U vorticity, which is different from Selle et al. [SRF05]. We get the vorticity of a particle, ω p(x) = ξ p(x X p)ω p by using the distribution kernel, ξ p(x X p) which is a function of the distance between the particle position and the high-resolution grid point. Then we calculate the sum of all contributions from all particles by the normalized location vector from grid point to vortex particle, N p(x) = X p X/ X p X and the confinement force, F p(x) = ε p(n p ω p) to update the vorticity field element which is in the influence of the particles. Discussion: The vorticity field generated by above 3.4. Blending vorticity field with upsampled velocity field We create a new field U advection for the advection of density D, as follows: U advection (X,t) = ku vorticity (X,t) + U interpolation (X,t) (4) where k is a constant that controls influence of the vorticity field and U interpolation = I(u,X). We use k = 1.0 in our experiment and simple linear interpolation for U interpolation = I(u,X).

Figure 4: Explosion-like effect: The low resolution simulation(50 100 50) is shown in the left half of the image. The high resolution simulation(200 400 200) is in the right. 3.5. Peudo-code 1 Advection(u) 2 Vorticity Con f inement(u) 3 Pro jection(u) 4 U interpolation = I(u,X) 5 U vorticity = Vortex Particle Method(u) 6 U advection = ku vorticity + U interpolation 7 A(U advection,d) 4. Examples We used the following kernel function [MCG03] to generate vorticity field from vortex particles. { (r ξ p(x X p) = 2 (X X p) 2 ) 3 0 (X X p) r 0 otherwise (5) where r is the radius of the particles, determines the influence range when the force of the vortex particle is transferred to U vorticity. We defined a particle radius that is long enough to cover about two to three U cells. Figure 1 shows smoke rising from a spherical density source due to buoyancy forces. In this example, vortex particles are randomly seeded where the density is sourced. Vortex particle method(approximately 300 vortex particles for low-resolution field and 20,000 vortex particles for highresolution field, respectively) and Vorticity Confinement were used for base simulation and the BFECC advection method was used for density and velocity advection. Our method is prominently faster than an equivalent fullresolution simulation and performs around seven times faster than the full solver as shown in table 1. All the experiments were performed on an Intel Quad Core CPU 2.4GHz processor with 2GB RAM. Our method Traditional NS solver resolution 120 360 120 120 360 120 time per frame 9.2 sec 59.0 sec Table 1: Comparison of computation time: Performance comparison of our method with the traditional Navier- Stokes Solver needed to generate the same visual detail. Our method used the result of base simulation(30 90 30, 0.58 seconds per frame). Limitations: Our method has following limitations. We calculate the sum of all contributions from every vortex particle when generating vorticity field. So vorticity force is added to velocity field in proportion to the number of vortex particles gathering together in the particle radius. And then strong vorticity force can cause unnaturalness in fluid s motion. Our method cannot reproduce physically correct highresolution simulation. And boundary condition depends on

low resolution. So, there could be a velocity going into a obstacle at sub-grid level. 5. Conclusions and Future Work This paper proposed a synthesizing method using vortex particle method to improve sub-grid visuals of fluid simulation. We modified the technique to apply the vortex particle method instead of using a noise function. We created flow field by solving the incompressible Navier-Stokes equations. It is upsampled through linear interpolation and blended with vorticity field which is calculated by vortex particle method. High-resolution results were achieved by advecting the density with using the calculated velocity field, and made it possible to simulate highly-turbulent swirling motion of fluid. Comparing with previous noise based work [KTJG08, NSCL08], we use vortex particle method. Our work can show more sub-grid details with high turbulences and swirls. And the generation of sub-grid details using our approach can be expected more easily than noise based work. Overall process of ours and theirs is similar but we have different approach in generating turbulence, so the computational time of our work is little different from that of their work. And this also depends on the number of vortex particles and the radius of the particles. In the future, we will try to apply our method to animation of liquids with free surfaces and make proper boundary conditions at the sub-grid level for more precise simulation. Acknowledgements This research is supported by Ministry of Culture, Sports and Tourism (MCST) and Korea Creative Content Agency (KOCCA) in the Culture Technology (CT) Research & Development Program 2009. This work was supported by the Korea Science and Engineering Foundation(KOSEF) grant funded by the Korea government(r01-2008-000-20855-0). This work was supported by the Second Brain Korea 21 Project. J. H. was supported by the Korea Science and Engineering Foundation(KOSEF) grant funded by the Korea government(mest) (No. 2009-0058641) References [ANSN06] ANGELIDIS A., NEYRET F., SINGH K., NOWROUZEZAHRAI D.: A controllable, fast and stable basis for vortex based smoke simulation. Eurographics/SIGGRAPH Symposium on Computer Animation (2006), 25 32. [FD90] FELICI H. M., DRELA M.: Eulerian/lagrangian solution of 3-d rotational flows. In AIAA 21st Fluid Dynamics, Plasma Dynamics and Lasers Conf. (Jun 1990). [FD93a] FELICI H. M., DRELA M.: An eulerian/lagrangian coupling procedure for three-dimensional vortical flows. AIAA J., 1993-3370 (1993). [FD93b] FELICI H. M., DRELA M.: Reduction of numerical diffusion in three-dimensional vortical flows using a coupled eulerian/lagrangian solution procedure. In AIAA 24th Fluid Dynamics Conf. (Jul 1993). [FM97] FOSTER N., METAXAS D.: Modeling the motion of a hot, turbulent gas. In Proc. of SIGGRAPH 97 (1997), pp. 181 188. [FSJ01] FEDKIW R., STAM J., JENSEN H.: Visual simulation of smoke. In Proc. of ACM SIGGRAPH 2001 (2001), pp. 15 22. [HK05] HONG J.-K., KIM C.-H.: Animating smoke with dynamic balance: Natural phenomena and special effects. Computer Animation and Virtual Worlds 16, 3-4 (2005), 405 414. [KLLR07] KIM B., LIU Y., LLAMAS I., ROSSIGNAC J.: Advections with significantly reduced dissipation and diffusion. IEEE Trans. on Vis. and Comput. Graph. 13 (2007), 135 144. [KSK08] KIM D., SONG O.-Y., KO H.-S.: A semi-lagrangian cip fluid solver without dimensional splitting. Computer Graphics Forum (2008), 467 475. [KTJG08] KIM T., THUREY N., JAMES D., GROSS M.: Wavelet turbulence for fluid simulation. ACM Transactions on Graphics (In Proceedings of ACM SIGGRAPH 2008) (2008), 1 6. [LGF04] LOSASSO F., GIBOU F., FEDKIW R.: Simulating water and smoke with an octree data structure. ACM Trans. Graph. (SIGGRAPH Proc.) 23 (2004), 457 462. [MCG03] MÜLLER M., CHARYPAR D., GROSS M.: Particlebased fluid simulation for interactive applications. In Proc. of the 2003 ACM SIGGRAPH/Eurographics Symp. on Comput. Anim. (2003), pp. 154 159. [Ney03] NEYRET F.: Advected textures. In Proc. of Eurographics/SIGGRAPH Symp. on Comput. Anim. (2003), pp. 147 153. [NSCL08] NARAIN R., SEWALL J., CARLSON M., LIN M.: Fast animation of turbulence using energy transport and procedural synthesis. ACM Transactions on Graphics (Proc. SIGGRAPH Asia) (2008), 1 8. [PK05] PARK S. I., KIM M. J.: Vortex fluid for gaseous phenomena. Eurographics/SIGGRAPH Symposium on Computer Animation (2005), 261 270. [RNGF03] RASMUSSEN N., NGUYEN D., GEIGER W., FEDKIW R.: Smoke simulation for large scale phenomena. ACM Trans. Graph. (SIGGRAPH Proc.) 22 (2003), 703 707. [SB08] SCHECHTER H., BRIDSON R.: Evolving sub-grid turbulence for smoke animation. Eurographics/SIGGRAPH Symposium on Computer Animation (2008), 1 8. [SF93] STAM J., FIUME E.: Turbulent Wind Fields for Gaseous Phenomena. In Proc. of SIGGRAPH 1993 (1993), pp. 369 376. [SFK 08] SELLE A., FEDKIW R., KIM B., Y.LIU, ROSSIGNAC J.: An unconditionally stable maccormack method. Journal of Scientific Computing (2008), 350 371. [SRF05] SELLE A., RASMUSSEN N., FEDKIW R.: A vortex particle method for smoke, water and explosions. ACM Trans. Graph. (SIGGRAPH Proc.) 24, 3 (2005), 910 914. [Sta99] STAM J.: Stable fluids. In Proc. of SIGGRAPH 99 (1999), pp. 121 128.

Figure 5: Side by side comparison: 50 100 50 base simulation(top), upsampled simulation on a 200 400 200 resolution(middle), our method of 200 400 200 resolution(bottom)