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

Similar documents
Navier-Stokes & Flow Simulation

Overview of Traditional Surface Tracking Methods

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

Navier-Stokes & Flow Simulation

Navier-Stokes & Flow Simulation

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

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

CS 231. Fluid simulation

BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION

Computer animation for fluid simulation of a high viscous fluid melting

Realistic Animation of Fluids

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

Two-Phase flows on massively parallel multi-gpu clusters

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

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

Droplet collisions using a Level Set method: comparisons between simulation and experiments

Simulation of Swirling Bubbly Water using Bubble Particles

Divergence-Free Smoothed Particle Hydrodynamics


Gradient Free Design of Microfluidic Structures on a GPU Cluster

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

Interactive Fluid Simulation using Augmented Reality Interface

Realtime Water Simulation on GPU. Nuttapong Chentanez NVIDIA Research

Interactive Fluid Simulation Using Augmented Reality Interface

Water. Notes. Free surface. Boundary conditions. This week: extend our 3D flow solver to full 3D water We need to add two things:

The 3D DSC in Fluid Simulation

Animation of Fluids. Animating Fluid is Hard

Overview. Applications of DEC: Fluid Mechanics and Meshing. Fluid Models (I) Part I. Computational Fluids with DEC. Fluid Models (II) Fluid Models (I)

1.2 Numerical Solutions of Flow Problems

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

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

The Level Set Method. Lecture Notes, MIT J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations

Chapter 2 Water and Bubbles

Robust Simulation of Sparsely Sampled Thin Features in SPH-Based Free Surface Flows

Calculate a solution using the pressure-based coupled solver.

2.7 Cloth Animation. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter 2 123

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

Deforming meshes that split and merge

An Adaptive Sampling Approach to Incompressible Particle-Based Fluid

Computational Fluid Dynamics using OpenCL a Practical Introduction

CNM 190, pt 2 Advanced Digital Animation Lec 03 : Art Direction on Madagascar / Effects 1

Parallelization study of a VOF/Navier-Stokes model for 3D unstructured staggered meshes

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

Abstract. Introduction. Kevin Todisco

Math 690N - Final Report

FLUID SIMULATION. Kristofer Schlachter

A 3D VOF model in cylindrical coordinates

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

Multigrid Solvers in CFD. David Emerson. Scientific Computing Department STFC Daresbury Laboratory Daresbury, Warrington, WA4 4AD, UK

Volcanic Smoke Animation using CML

Phase-field simulation of two-phase micro-flows in a Hele-Shaw cell

Cloth Simulation. Tanja Munz. Master of Science Computer Animation and Visual Effects. CGI Techniques Report

Faculty of Mechanical and Manufacturing Engineering, University Tun Hussein Onn Malaysia (UTHM), Parit Raja, Batu Pahat, Johor, Malaysia

Driven Cavity Example

Particle-Based Fluid Simulation. CSE169: Computer Animation Steve Rotenberg UCSD, Spring 2016

A Toolbox of Level Set Methods

FEMLAB Exercise 1 for ChE366

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS

Animation of Bubbles in Liquid

(LSS Erlangen, Simon Bogner, Ulrich Rüde, Thomas Pohl, Nils Thürey in collaboration with many more

CHAPTER 3. Elementary Fluid Dynamics

Drop Impact Simulation with a Velocity-Dependent Contact Angle

MultiFLIP for Energetic Two-Phase Fluid Simulation

The viscous forces on the cylinder are proportional to the gradient of the velocity field at the

Shape of Things to Come: Next-Gen Physics Deep Dive

PHYSICALLY BASED ANIMATION

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

Adaptive Fluid Simulation Using a Linear Octree Structure

ENERGY-224 Reservoir Simulation Project Report. Ala Alzayer

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

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

A Novel Approach to High Speed Collision

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

FLUENT Secondary flow in a teacup Author: John M. Cimbala, Penn State University Latest revision: 26 January 2016

Permeable and Absorbent Materials in Fluid Simulations

A CONSERVATIVE LEVEL SET METHOD FOR SHARP INTERFACE MULTIPHASE FLOW SIMULATION

Development of an Integrated Computational Simulation Method for Fluid Driven Structure Movement and Acoustics

Investigating The Stability of The Balance-force Continuum Surface Force Model of Surface Tension In Interfacial Flow

Ship in a Bottle. 1 Modeling and Rendering the Water. Saket Patkar and Bo Zhu

Highly efficient «on-the-fly» data processing using the open-source library CPPPO

Alex Li 11/20/2009. Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk

Influence of mesh quality and density on numerical calculation of heat exchanger with undulation in herringbone pattern

Animating smoke with dynamic balance

Modelling of Levitation Melting using a Fixed Mesh Method

Optimizing Bio-Inspired Flow Channel Design on Bipolar Plates of PEM Fuel Cells

Particle-based Fluid Simulation

The Level Set Method applied to Structural Topology Optimization

Tutorial 17. Using the Mixture and Eulerian Multiphase Models

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

Level Set Methods and Fast Marching Methods

Simulation in Computer Graphics. Deformable Objects. Matthias Teschner. Computer Science Department University of Freiburg

LS-DYNA 980 : Recent Developments, Application Areas and Validation Process of the Incompressible fluid solver (ICFD) in LS-DYNA.

A Geometric Approach to Animating Thin Surface Features in SPH Water

Lagrangian methods and Smoothed Particle Hydrodynamics (SPH) Computation in Astrophysics Seminar (Spring 2006) L. J. Dursi

Support for Multi physics in Chrono

Solving Partial Differential Equations on Overlapping Grids

6.1 Rendering Wet Sand

Fluid Solver built in Houdini

Free Surface Flow Simulations

Comparison between incompressible SPH solvers

Transcription:

Surface Tension Approximation in Semi-Lagrangian Level Set Based Fluid Simulations for Computer Graphics Israel Pineda and Oubong Gwun Chonbuk National University israel_pineda_arias@yahoo.com, obgwun@jbnu.ac.kr ABSTRACT In this work we present an approximation of surface tension intended to create more visually plausible results of a large-scale fluid simulation for Computer Graphics applications. We modify the computation of the Navier-Stokes equations to work with an alternative version of the velocity field that includes our additional logic. We describe how to compute this additional information and how to store it. This leads to more realistic results of the simulation with only a minimum increase in computation time. After presenting some background information, we show the details of how our algorithm accomplishes its goal and then we present some results and the corresponding analysis. KEYWORDS Surface Tension, Fluid Simulation, Semi-Lagrangian, Level Set, Computer Graphics 1 INTRODUCTION Surface Tension is one of the many forces that shape the behavior of water and other fluids. It is especially true when two or more fluids interact leading to an interface between them. In computer based simulations, particularly in Computer Graphics field, this force is usually omitted because it is considered that there is no significant effect when applying it. Commonly, when the object of the simulation is a large-scale volume of fluid. In the opposite case, low-scale fluid simulations need surface tension to achieve most of the desired effects like drop formations and capillarity. In our case, we explore surface tension only for large-scale scenarios. After presenting the physical background and the context needed for our simulation we will present our method to improve the quality of the simulation through the inclusion of surface tension. Our method incorporates surface tension force into a Semi-Lagrangian fluid solver. We describe how to modify the fluid solver to include this new force in a dense and coarse grid and analyze the numerical and visual results obtained from the experiment. Finally, we present our results and conclusions. With our implementation we have been able to replicate the shivering of the water when it is poured in a recipient or when the container itself moves. The shivering effect gives extra detail in the fluid in certain scenarios and it is very often found in nature. This kind of behavior can produce significant improvement in the visual quality of the simulation. 2 RELATED WORK Different scientific disciplines have done a vast study of surface tension. They all have studied surface tension with their own goals, approaches and methods. In this section, we briefly describe the core ideas and concepts of the related work. The mathematical model behind the vast majority of fluid simulations is given by Navier-Stokes equations. It gives the necessary fundamentals to understand surface tension and to simulate it. Some simulations also make use of the Young equation. More details about this equations in section 3. The building blocks for our fluid solver are the ISBN: 978-1-941968-02-4 2014 SDIWC 49

well discussed techniques for fluid simulations as stated by Bridson [1] who describes how to use and implement the Navier-Stokes equations and where the reader can find all the details for a standard computer based fluid simulation. Enright et al. [2] used the level set method to track the fluid surface, other authors have also studied similar and related approaches [2, 3, 4, 5]. Batty et al. [6] extend the ideas for a better solid-fluid coupling. With the equations and the work mentioned a fluid simulation can be implemented. Computer Graphics is concerned about obtaining visual plausible results in an affordable time. In this regard, most of the time it has to sacrifice some information for acceleration. In fluids simulations it is often surface tension, which is considered as not necessary for most of the previous research. However, more holistic approaches exists, like the extension of the Ghost Fluid Method (GFM) by Kang et al.[7, 8] where viscosity, surface tension and gravity are considered by storing additional data in what is called ghost cells. Kang[4] describes an approach applied to the simulation of soup bubbles. Another work that uses surface tension is Losasso[9]. More recently Clausen et al. [10] have studied related topics. There are two different scenarios for fluid simulation in Computer Graphics and they are usually handled as totally different simulations. The first one is when we simulate large-scale amounts of the fluid and the second one is when we simulate small-scale amounts of fluids. The former case deals with medium to big bodies of fluid and the latter with small bodies of fluid usually in the order of millimeters. In each case there are some forces that affect less than others, mainly the surface tension and buoyancy forces are both considered not strictly necessary for large-scale fluids, therefore, they are usually omitted. For further reference you can review work on large-scale fluid simulation (e.g., [11]). In the latter case, for small-scale fluid simulations the reader could look through related papers [12, 13, 14, 15]. The difference of our algorithm with the previous work is that most of it relies in the usage of triangle meshes or layers of processing [11] or it actually manipulates the pressure, in this latest case the computing time is affected. For the first difference we work with level set method to track the surface so we do not need a mesh, of course we can get it if needed, especially for rendering using marching cubes algorithm. In the second difference our algorithm does not actually modify the pressure like GFM, at least, not directly, so it does not affect the computation time required. 3 PHYSICAL BACKGROUND The physical behavior of a fluid is encapsulated in a set of Partial Differential Equations (PDE), more specifically, the Navier-Stokes set of equations and the Young equation give the mathematical model. Hereby, in this section we briefly review the most important concepts we need to understand in order to appreciate our proposed method and refer the reader to the relevant documentation. Navier-Stokes equations describe the behavior of the fluid in terms of its local velocities, traditionally the Navier-Stokes equations are represented as: u t + u u + 1 p = g + ν u (1) ρ u = 0 (2) Where, equation (1) is known as the momentum equation and produces a velocity field u that describes the movement of the fluid. And, equation (2) known as the incompressibility equation ensures a constant volume of the fluid over time. Additionally, to be able to track where the surface of the fluid defined by equations (1) and (2) is at a given time, we have to solve the Level Set equation. Level Set equations is defined as: φ t + u φ = 0 (3) In the other hand, the Young equation is only applicable when the target phenomena is drop-like formations using the contact angle ISBN: 978-1-941968-02-4 2014 SDIWC 50

Table 1: Nomenclature Equation Symbol Description u Velocity field u Gradient ρ Density Navier-Stokes p Pressure u Laplacian g Gravity ν Viscosity γ Surface Tension sg Solid-Gas Young Eq. sl Solid-Liquid lg Liquid-Gas θ Contact angle criteria, and it is not always consider for simulations. The equation is: γ sg = γ sl + γ lg cos θ (4) For detailed interpretation of the symbols in the presented equations refer to table 1. Bridson[1] studies the graphics approach to Navier-Stokes in more detail and Wang et al. [12] provide more information about the Young equation. Surface Tension, itself, is not a characteristic of the material. This means that surface tension is a property of two bodies interacting with each other. However, it is important to mention that due to the characteristics of air this is usually considered to have zero effect in simulations. All the forces and computations are executed only for the fluid. This implies that we need to find where and how to allocate the surface tension information of our algorithm within the fluid. 4 THE ALGORITHM In this section we present the details of our proposed method. We start showing how to obtain all the necessary information for the computation, then we dig into the details of the algorithm itself and lastly we discuss how these modifications affect the overall simulation leading to results shown in section 5. 4.1 Computing Input Parameters One strength of our method is that all the necessary data for its implementation can be easily found in any standard fluid solver. Namely, the input parameters we need are: mean curvature κ, surface tension factor γ, normal at a given point N and distance for the updating band T. The least problematic one is of course the normal N which has well established ways to be computed. In the case of surface tension factor γ, it is a configurable parameter that has to be set by the user according to the simulation, in the case of water-air interface at normal conditions it is 0.073 J. Similarly, the threshold T that m 2 defines how much of the fluid will be consider is a user defined value. However, mean curvature κ is a more interesting value. Bridson [1] shows that the mean curvature can be calculated using the Laplacian operator, which is usually already implemented in fluid solvers due to its frequent appearance in this kind of simulations. The mean curvature κ can be define by equation (5) where it is computed as the divergence ( ) of the gradient ( ). κ = 2 φ = φ (5) With the parameters described we can modify the Navier-Stokes equation as presented in the following section. One inconvenience of our method is that in order to know which section of the fluid will be affected we need to compute the distance function φ in an earlier stage. This is because in a fluid solver the distance function φ is typically computed when the viscosity is applied and not before, as it is in our case. However, it is not a problem because we use this value only as input, we do not modify it, so we can still use it in the next stage avoiding duplicated computation. 4.2 Description of the Method Broadly speaking we work with a Semi-Lagrangian convection simulation over a standard Marker-And-Cell (MAC) grid and use a level set to track the fluid surface. Our simulation is based on the well ISBN: 978-1-941968-02-4 2014 SDIWC 51

Simulation Start t=0 If t<total_time Advect Velocity Apply Viscosity Apply Pressure Advect Free Surface t = t +1 End Figure 1: Algorithm flow. The logic within the fluid solver is presented and the proposed method to compute the body forces block is contextualized. studied Navier-Stokes equations as defined in equation (1) and equation (2). The equation (1) can be modify to include the surface tension force, see equation (6). We add a force in what is usually known as the body forces block. This modified version carries additional information for the computation. u t + u u+1 ρ p = ( g γκ N)+ν u (6) As mention before surface tension is a characteristic of the interface not the material, however, in our approximation we include this force within the fluid, more precisely in a narrow band near the interface boundary defined by the parameter T. The overall picture of the simulation and the new proposed method can be seen in figure 1, where you can view how the body forces are computed considering the new surface tension criteria. As usual in fluid simulation of Computer Graphics we neglected the gas, usually air, outside the liquid body for our tests, however, because our implementation is based on Losasso et al. [9], it should be no problem to simulate the air independently or include more fluids. That means that even though we could use two level sets, one for water and one for the air, in our experiments we have only dealt with one level set. Our method directly affects the velocity field u which determines the behavior of the fluid. Changing the velocity field u means that the posterior processing, viscosity and pressure will lead to different results, and optimistically better results. To know where to update the velocity field u we make use of a threshold variable T and the distance function φ to control how much of the velocity field will be updated in each iteration of the solver. In contrast with our method, real surface tension makes the pressure to be different at each point of the fluid which leads to big increment in computation time. In our approximation that is not the case because we consider the pressure to be uniform all over the fluid. That intrinsically means that we only have experimented with incompressible fluids, constant pressure. This technique of using the body forces block to modify the behavior of the fluid has been previously used to modify the behavior of the fluid (e.g., [9]). 5 RESULTS For our test we are using an Intel Core i3-3220 CPU @ 3.30GHz processor with 4GB of RAM memory, the environment runs a Linux-Based Operating System. We run our program using OpenMP where applicable, however, the surface tension computation runs sequentially. For our simulations we are using one cubic meter as the domain of the problem. Our examples run in a rather coarse grid which helps to visualize better our results, the resolution of the grid is 70x70x70. ISBN: 978-1-941968-02-4 2014 SDIWC 52

5.1 Example The presented example shows how the inclusion of surface tension using the new proposed method leads to the shivering behavior of the fluid. This example is a falling body of water, initially configured as an analytic sphere with radius equals to 10cm, that water body falls from 50cm altitude. In this case we are using water properties for the fluid. Viscosity is configured to be 0.001 N s, and surface tension factor equals m 2 to 0.073 J. The difference in the obtained m 2 surface after several frames of simulations and after the fluid body have hit the ground can be seen in figure 2, for our example the ground is modeled as a solid and we need to handle the respective boundary conditions. Figure 3 shows the silhouettes of a cross section cut of the surfaces with the view aligned with the Z axis where the difference can be better appreciated as the silhouettes of the fluid. These silhouettes allow us to notices that in regions where there is a plain aspect in the original simulation our method can generate low-scale irregularities due to the new force that resemble a shivering-like behavior. This behavior enhances the result of the falling water. For rendering purposes we use the marching cubes algorithm to obtain a mesh of triangles. The final, ray-traced, results of the two simulations is presented in figure 4. In this image we can see how the water presents a shivering effect visible in various settings. Refer to figure 5 for a comparison of the execution times between the simulation with surface tension and without surface tension, the time measured considers the generation of seventy frames at different grid resolutions. Even though the execution time is considerably big, it is mainly due to the data structure we are using, the dense MAC grid. In this case a basic dense grid stores all the information, but it potentially could use other data structure to accelerate its execution. 5.2 Limitations For surface tension computation the Young equation and the logic behind contact angles is very important because It can generate Figure 2: Surface comparison. In the left without surface tension the surface looks very plain. In the right with surface tension the surface has more detail. ISBN: 978-1-941968-02-4 2014 SDIWC 53

Proceedings of the International Conference on Computer Graphics, Multimedia and Image Processing, Kuala Lumpur, Malaysia, 2014 Figure 3: Silhouettes comparison, the silhouette on the top is taken from a simulation without surface tension. The one in the bottom is a simulation using our algorithm. In the latter it is possible to notice more low-scale formations. Figure 5: Execution time comparison Here we have compared visual results and execution times with favorable outcome. Even though other methods for surface tension exists, ours is unique because it does not work with triangle meshes, it is a fast approximation, and avoid the complexity of dealing with the variation in pressure. In the future we would like to investigate how our proposed method behaves in different configuration like different data structures, inviscid and compressible fluids. 7 REFERENCES Figure 4: Ray-Traced results comparison. Top: without surface tension. Bottom: with surface tension. very interesting results like drop formation and capillarity, in our presented results we do not consider this logic. The data structure we are using, dense MAC grid, leads to very high computational time. 6 CONCLUSION Using the proposed method in this paper we have been able to replicate a shivering effect of water using an approximation of surface tension. Therefore, the simulation has improved in quality and realism. The time increment is proportional to the time obtained without surface tension, that means that our method can be safely used without any considerable impact in the performance of the simulation. ISBN: 978-1-941968-02-4 2014 SDIWC [1] R. Bridson, Fluid Simulation for Computer Graphics. Ak Peters Series, Taylor & Francis, 2008. [2] D. Enright, R. Fedkiw, J. Ferziger, and I. Mitchell, A hybrid particle level set method for improved interface capturing, Journal of Computational Physics, vol. 183, no. 1, pp. 83 116, 2002. [3] S. Osher, Level Set Methods and Dynamic Implicit Surfaces. New York: Springer, 2003 edition ed., Nov. 2002. [4] M. Kang, A level set approach for the motion of soap bubbles with curvature dependent velocity or acceleration. PhD thesis, University of California Los Angeles, 1996. [5] J. A. Sethian, Level Set Methods and Fast Marching Methods: Evolving Interfaces in Computational Geometry, Fluid Mechanics, Computer Vision, and Materials Science. Cambridge, U.K. ; New York: Cambridge University Press, 2 edition ed., June 1999. [6] C. Batty, F. Bertails, and R. Bridson, A fast variational framework for accurate solid-fluid coupling, ACM Trans. Graph., vol. 26, 100, July 2007. 54

[7] M. Kang, R. P. Fedkiw, and X.-D. Liu, A boundary condition capturing method for multiphase incompressible flow, Journal of Scientific Computing, vol. 15, no. 3, pp. 323 360, 2000. [8] R. P. Fedkiw, T. Aslam, B. Merriman, and S. Osher, A non-oscillatory eulerian approach to interfaces in multimaterial flows (the ghost fluid method), Journal of Computational Physics, vol. 152, no. 2, pp. 457 492, 1999. [9] F. Losasso, T. Shinar, A. Selle, and R. Fedkiw, Multiple interacting liquids, ACM Trans. Graph., vol. 25, pp. 812 819, July 2006. [10] P. Clausen, M. Wicke, J. R. Shewchuk, and J. F. O Brien, Simulating liquids and solid-liquid interactions with lagrangian meshes, ACM Trans. Graph., vol. 32, pp. 17:1 15, Apr. 2013. [11] N. Thürey, C. Wojtan, M. Gross, and G. Turk, A multiscale approach to mesh-based surface tension flows, ACM Transactions on Graphics (TOG), vol. 29, no. 4, p. 48, 2010. [12] H. Wang, P. J. Mucha, and G. Turk, Water drops on surfaces, ACM Transactions on Graphics (TOG), vol. 24, no. 3, pp. 921 929, 2005. [13] P. Rousseau, V. Jolivet, and D. Ghazanfarpour, Realistic real-time rain rendering, Computers & Graphics, vol. 30, no. 4, pp. 507 518, 2006. [14] Y. Zhang, H. Wang, S. Wang, Y. Tong, and K. Zhou, A deformable surface model for real-time water drop animation, Visualization and Computer Graphics, IEEE Transactions on, vol. 18, no. 8, pp. 1281 1289, 2012. [15] M. Griebel and M. Klitz, Simulation of droplet impact with dynamic contact angle boundary conditions, in Singular Phenomena and Scaling in Mathematical Models, pp. 297 325, Springer, 2014. ISBN: 978-1-941968-02-4 2014 SDIWC 55