Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques Geoffrey Irving Stanford University Pixar Animation Studios.

Slides:



Advertisements
Similar presentations
Stable Fluids A paper by Jos Stam.
Advertisements

My First Fluid Project Ryan Schmidt. Outline MAC Method How far did I get? What went wrong? Future Work.
Realistic Simulation and Rendering of Smoke CSE Class Project Presentation Oleksiy Busaryev TexPoint fonts used in EMF. Read the TexPoint manual.
Joint Mathematics Meetings Hynes Convention Center, Boston, MA
Christopher Batty and Robert Bridson University of British Columbia
(c) MSc Module MTMW14 : Numerical modelling of atmospheres and oceans Staggered schemes 3.1 Staggered time schemes.
RAMS/BRAMS Basic equations and some numerical issues.
1 Modeling Highly- Deformable Liquid Chih-Wei Chiu Computer Graphics and Geometry Modeling Laboratory National Chiao Tung University June 25, 2002 Advisors:
Course 14 Fluid Simulation Monday, Half Day, 8:30 am - 12:15 pm.
Coupling Continuum Model and Smoothed Particle Hydrodynamics Methods for Reactive Transport Yilin Fang, Timothy D Scheibe and Alexandre M Tartakovsky Pacific.
Combating Dissipation. Numerical Dissipation  There are several sources of numerical dissipation in these simulation methods  Error in advection step.
More Accurate Pressure Solves. Solid Boundaries  Voxelized version works great if solids aligned with grid  If not: though the error in geometry is.
1cs533d-winter-2005 Notes  Please read Fedkiw, Stam, Jensen, “Visual simulation of smoke”, SIGGRAPH ‘01.
Peyman Mostaghimi, Martin Blunt, Branko Bijeljic 11 th January 2010, Pore-scale project meeting Direct Numerical Simulation of Transport Phenomena on Pore-space.
University of North Carolina - Chapel Hill Fluid & Rigid Body Interaction Comp Physical Modeling Craig Bennetts April 25, 2006 Comp Physical.
Mesh refinement methods in ROMS Laurent Debreu INRIA, Grenoble, France In collaboration with Patrick Marchesiello and Pierrick Penven (IRD, Brest, France)
Use of satellite altimeter data for validating large scale hydraulic models Matt Wilson, University of Exeter Doug Alsdorf, Ohio State University Paul.
Modeling Fluid Phenomena -Vinay Bondhugula (25 th & 27 th April 2006)
Coupling Water and Smoke to Thin Deformable and Rigid Shells Eran Guendelman 1,2 Andrew Selle 1,3 Frank Losasso 1,2 Ronald Fedkiw 1,2 1 Stanford University,
Computations of Fluid Dynamics using the Interface Tracking Method Zhiliang Xu Department of Mathematics University of Notre.
Non-hydrostatic algorithm and dynamics in ROMS Yuliya Kanarska, Alexander Shchepetkin, Alexander Shchepetkin, James C. McWilliams, IGPP, UCLA.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Intro to Computational Fluid Dynamics Brandon Lloyd COMP 259 April 16, 2003 Image courtesy of Prof. A.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Introduction to Modeling Fluid Dynamics 1.
A TWO-FLUID NUMERICAL MODEL OF THE LIMPET OWC CG Mingham, L Qian, DM Causon and DM Ingram Centre for Mathematical Modelling and Flow Analysis Manchester.
Modeling, Simulating and Rendering Fluids Thanks to Ron Fediw et al, Jos Stam, Henrik Jensen, Ryan.
Juan Carlos Ortiz Royero Ph.D.
FUNDAMENTAL EQUATIONS, CONCEPTS AND IMPLEMENTATION
Motivation  Movie  Game  Engineering Introduction  Ideally  Looks good  Fast simulation  Looks good?  Look plausible  Doesn’t need to be exactly.
Fluid Animation CSE 3541 Matt Boggus. Procedural approximations – Heightfield fluids Mathematical background – Navier-Stokes equation Computational models.
Methods for the Physically Based Simulation of Solids and Fluids Geoffrey Irving Stanford University May 16, 2007.
A Look at High-Order Finite- Volume Schemes for Simulating Atmospheric Flows Paul Ullrich University of Michigan.
A Hybrid Particle-Mesh Method for Viscous, Incompressible, Multiphase Flows Jie LIU, Seiichi KOSHIZUKA Yoshiaki OKA The University of Tokyo,
Animation of Fluids.
COMPUTATIONAL FLUID DYNAMICS IN REAL-TIME An Introduction to Simulation and Animation of Liquids and Gases.
A Fast Simulation Method Using Overlapping Grids for Interactions between Smoke and Rigid Objects Yoshinori Dobashi (Hokkaido University) Tsuyoshi Yamamoto.
Page 1 JASS 2004 Tobias Weinzierl Sophisticated construction ideas of ansatz- spaces How to construct Ritz-Galerkin ansatz-spaces for the Navier-Stokes.
1 Discretization of Fluid Models (Navier Stokes) Dr. Farzad Ismail School of Aerospace and Mechanical Engineering Universiti Sains Malaysia Nibong Tebal.
A conservative FE-discretisation of the Navier-Stokes equation JASS 2005, St. Petersburg Thomas Satzger.
A cell-integrated semi-Lagrangian dynamical scheme based on a step-function representation Eigil Kaas, Bennert Machenhauer and Peter Hjort Lauritzen Danish.
A particle-gridless hybrid methods for incompressible flows
Governing equations: Navier-Stokes equations, Two-dimensional shallow-water equations, Saint-Venant equations, compressible water hammer flow equations.
Momentum Equations in a Fluid (PD) Pressure difference (Co) Coriolis Force (Fr) Friction Total Force acting on a body = mass times its acceleration (W)
A Numerical Model for Multiphase Flow, I: The Interface Tracking Algorithm Frank Bierbrauer.
Taming a Wild River Jeff Lander Darwin 3D
FPGA Based Smoke Simulator Jonathan Chang Yun Fei Tianming Miao Guanduo Li.
FlowFixer: Using BFECC for Fluid Simulation ByungMoon Kim Yingjie Liu Ignacio Llamas Jarek Rossignac Georgia Institute of Technology.
Two Dimensional simulation of a Dam Break wave propagation for the isolated building test case University of Pavia Gabriella Petaccia Impact Workshop...
Lagrangian particle models are three-dimensional models for the simulation of airborne pollutant dispersion, able to account for flow and turbulence space-time.
Discretization Methods Chapter 2. Training Manual May 15, 2001 Inventory # Discretization Methods Topics Equations and The Goal Brief overview.
Houston, Wiebe & Batty. (2004) RLE Sparse Level Sets. RLE Sparse Level Sets Ben Houston Mark Wiebe Christopher Batty Fluids and Level Sets Session.
CHANGSHENG CHEN, HEDONG LIU, And ROBERT C. BEARDSLEY
1 Application of Weighted Essentially Non-Oscillatory Limiting to Compact Interpolation Schemes Debojyoti Ghosh Graduate Research Assistant Alfred Gessow.
Numerical Algorithm Development and Testing in HYCOM.
November 2005 Center for Computational Visualization Institute of Computational and Engineering Sciences Department of Computer Sciences University of.
Nansen Environmental and Remote Sensing Center Modifications of the MICOM version used in the Bergen Climate Model Mats Bentsen and Helge Drange Nansen.
Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques SIGGRAPH 2006 Geoffrey Irving Eran Guendelman Frank Losasso.
Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques Geoffrey Irving Stanford University Pixar Animation Studios.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Water Computational Fluid Dynamics Volumes Lagrangian vs. Eulerian modelling Navier-Stokes equations.
Stable But Nondissipative Water OH-YOUNG SONG HYUNCHEOL SHIN HYEONG-SEOK KO.
Animating smoke with dynamic balance Jin-Kyung Hong Chang-Hun Kim 발표 윤종철.
Interesting papers on SIGGRAPH 2005 Korea University Computer Graphics Lab. Jin-Kyung Hong.
Fluid Animation CSE 3541 By: Matt Boggus.
Xing Cai University of Oslo
Objective Numerical methods Finite volume.
Finite Volume Method Philip Mocz.
Lake Iseo Field Experiment
Introduction to Fluid Dynamics & Applications
Bogdan Rosa1, Marcin Kurowski1, Damian Wójcik1,
Low Order Methods for Simulation of Turbulence in Complex Geometries
Ph.D. Thesis Numerical Solution of PDEs and Their Object-oriented Parallel Implementations Xing Cai October 26, 1998.
Presentation transcript:

Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques Geoffrey Irving Stanford University Pixar Animation Studios Eran Guendelman Stanford University Frank Losasso Ron Fedkiw Stanford University Industrial Light + Magic

Motivation Large scale water phenomena important – Rivers, lakes, oceans, floods Fast option: height field methods – Nice wave propagation – Can’t handle overturning Accurate option: 3D Navier Stokes – Captures three dimensional behavior – Slow at high resolutions: O(N 4 )

Solution: use both Uniform 3D Navier-Stokes near interface Coarsen elsewhere using tall cells uniform tall cells

Solution: use both

Related work: 2D Deep water – Fournier and Reeves 1986, Peachy 1986 – Recent: Thon et al. 2000, Hinsinger 2002 Shallow Water – Kass and Miller 1990, O’Brien and Hodgins 1995 Rivers and streams – Chen and Lobo 1994, Thon and Ghazanfarpour 2001

Related work: 3D Uniform Navier-Stokes water – Foster and Metaxas 1997, Foster and Fedkiw 2001 – Enright et. al 2002: Particle level set method Large bodies of water – Takahashi et al. 2003: spray and foam – Mihalef et al. 2004: breaking waves Adaptive simulation – Losasso et al. 2004: Octree grids – Houston et al. 2006: Run-Length Encoded (RLE) grids

Why height fields work Water likes to stay flat Only water-air interface is visible Vertical structure simpler than horizontal

Mixing height fields and 3D Specify “optical depth” where we expect turbulent motion Use uniform 3D cells within optical depth Use height field model elsewhere optical depth

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Grid structure Start with uniform MAC grid Keep cells within optical depth of the interface Outside optical depth, merge vertical sequences of cells into single tall cells

Grid structure: storing values Start with MAC grid storage – Level set values in cell centers near interface – Pressure values in cell centers – Velocity components on corresponding faces

Grid structure: pressure Two pressure samples per tall cell Linear interpolation between Allows

Grid structure: velocity Velocity corresponds to pressure gradients Horizontal velocity (u and w)Vertical velocity (v)

Grid structure: velocity Velocity corresponds to pressure gradients Horizontal velocity (u and w)Vertical velocity (v)

Refinement and coarsening Grid is rebuilt whenever fluid moves based on current level set Linear time (Houston et al. 2006) Velocity must be transferred to new grid – optionally transfer pressure as initial guess

Transferring velocity InterpolateLeast squares Main criterion: conserve momentum

Transferring velocity (cont) Interpolate: Least squares:

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Uniform solver Navier-Stokes equations for velocity: Level set equation: Standard uniform MAC grid within uniform band Level set exists only in uniform cells

Uniform solver (cont) Advect velocity and add gravity – use semi-Lagrangian for uniform cells (Stam 1999) Solve Laplace equation for pressure Apply pressure correction to velocity

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Tall cell advection Can’t use semi-Lagrangian for tall cells Use conservative method for plausible motion Simplest option: first order upwinding Ignored by semi-Lagrangian

First order upwinding (uniform) Average to control volume face Compute flux based on upwind velocity Adjust velocities based on flux

First order upwinding (tall cells) Pretend to do the following – Refine to uniform grid – Advect – Coarsen back to original grid Simulate this by applying least squares directly to uniform discretization Same answer but faster

Advection issues Occasional instabilities near steep terrain Fix by clamping to affine combination

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Pressure solve on tall cells Pressure projection is Need to define two operations: – Gradient (pressure to velocity) – Divergence (velocity to pressure)

Pressure solve: gradient Gradient is easy:

Pressure solve: divergence

Pressure solve: Laplacian Compose divergence and gradient to get linear system Symmetric and positive definite since we used the same weights in both Solve using preconditioned conjugate gradients

Outline Grid structure Uniform solver Advection on tall cells Pressure solver on tall cells Parallel implementation Discussion and Results

Parallelize only along horizontal dimensions – No harder than parallelizing a uniform code – Vertical dimension already cheap Exchange data with neighbors every step Solve for pressure on all processors globally Parallel implementation

Results: splash (300 x 200) Optical depth equal to water depth

Results: splash (300 x 200) Optical depth 1/4 th water depth

Results: splash (300 x 200) fully refined 1/4 th refined

Results: splash (300 x 200) Optical depth 1/16 th water depth

Results: deep splash Water depth doubled

Results: boat (1500 x 300)

Matching bottom topography Tall cells match ground for free Octrees would require extra refinement Less important in very deep water

Results: river (2000 x 200)

Comparison with octrees Advantages over octrees: – Easy to parallelize – Reduces to MAC discretization with refinement – Matches bottom topography for free Main disadvantage: relies on vertical simplicity for efficiency Not applicable for all flows – rising bubbles, colliding droplets, etc.

Conclusion Want high resolution near interface – Uniform interface resolution sufficient Plausible bulk motion enough elsewhere Many flows have simple vertical structure Use this to create hybrid 2D/3D method

Future work Improved advection scheme – Match ENO/WENO schemes for shallow water Better parallelism – Remove global linear system solve Find optimal adaptive structure – Hybrid RLE / octree grid?

Acknowledgements My co-authors: Eran, Frank, and Ron Stanford Physically-Based Modeling group Funding agencies – NSF, ONR, Packard Foundation, and Sloan

The End Questions?

First order upwinding (uniform) Conservation form of advection equation Compute flux on each control volume face Add fluxes to current velocity

First order upwinding (tall cells) u along uu along vv along uv along v

Pressure solve: divergence Two divergence samples per cell Interpolate velocity to uniform face Divide flux between samples with same weights used for interpolation

Parallel implementation Pressure solved globally on all processors together Block diagonal preconditioner built out of incomplete Choleski on each processor AB CD