Introduction to Modeling Fluid Dynamics 1 Different Kind

  • Slides: 39
Download presentation
Introduction to Modeling Fluid Dynamics 1

Introduction to Modeling Fluid Dynamics 1

Different Kind of Problem • Can be particles, but lots of them • Solve

Different Kind of Problem • Can be particles, but lots of them • Solve instead on a uniform grid 2

No Particles => New State Particle • Mass • Velocity • Position 3 Fluid

No Particles => New State Particle • Mass • Velocity • Position 3 Fluid • Density • Velocity Field • Pressure • Viscosity

No Particles => New Equations Navier-Stokes equations for viscous, incompressible liquids. 4

No Particles => New Equations Navier-Stokes equations for viscous, incompressible liquids. 4

What goes in must come out Gradient of the velocity field= 0 Conservation of

What goes in must come out Gradient of the velocity field= 0 Conservation of Mass 5

Time derivative of velocity field Think acceleration 6

Time derivative of velocity field Think acceleration 6

Advection term Field is advected through itself Velocity goes with the flow 7

Advection term Field is advected through itself Velocity goes with the flow 7

Diffusion term Kinematic Viscosity times Laplacian of u Differences in Velocity damp out 8

Diffusion term Kinematic Viscosity times Laplacian of u Differences in Velocity damp out 8

Pressure term Fluid moves from high pressure to low pressure Inversely proportional to fluid

Pressure term Fluid moves from high pressure to low pressure Inversely proportional to fluid density, ρ 9

External Force Term Can be or represent anythying Used for gravity or to let

External Force Term Can be or represent anythying Used for gravity or to let animator “stir” 10

Navier-Stokes How do we solve these equations? 11

Navier-Stokes How do we solve these equations? 11

Discretizing in space and time • We have differential equations • We need to

Discretizing in space and time • We have differential equations • We need to put them in a form we can compute • Discetization – Finite Difference Method 12

Discretize in Space Staggered Grid vs Regular X Velocity Y Velocity Pressure 13

Discretize in Space Staggered Grid vs Regular X Velocity Y Velocity Pressure 13

Discretize the operators • Just look them up or derive them with multidimensional Taylor

Discretize the operators • Just look them up or derive them with multidimensional Taylor Expansion • Be careful if you used a staggered grid 14

Example 2 D Discetizations Divergence Operator Laplacian Operator 1 -1 0 -1 15 1

Example 2 D Discetizations Divergence Operator Laplacian Operator 1 -1 0 -1 15 1 1 1 -4 1 1

Make a linear system It all boils down to Ax=b. 16

Make a linear system It all boils down to Ax=b. 16

Simple Linear System • Exact solution takes O(n 3) time where n is number

Simple Linear System • Exact solution takes O(n 3) time where n is number of cells • In 3 D k 3 cells where k is discretization on each axis • Way too slow O(n 9) 17

Need faster solver • Our matrix is symmetric and positive definite…. This means we

Need faster solver • Our matrix is symmetric and positive definite…. This means we can use ♦ Conjugate Gradient • Multigrid also an option – better asymptotic, but slower in practice. 18

Time Integration • Solver gives us time derivative • Use it to update the

Time Integration • Solver gives us time derivative • Use it to update the system state U(t+Δt) U(t) Ut 19

Discetize in Time • Use some system such as forward Euler. • RK methods

Discetize in Time • Use some system such as forward Euler. • RK methods are bad because derivatives are expensive • Be careful of timestep 20

Time/Space relation? • Courant-Friedrichs. Lewy (CFL) condition • Comes from the advection term 21

Time/Space relation? • Courant-Friedrichs. Lewy (CFL) condition • Comes from the advection term 21

Now we have a CFD simulator • We can simulate fluid using only the

Now we have a CFD simulator • We can simulate fluid using only the aforementioned parts so far • This would be like Foster & Metaxas first full 3 D simulator • What if we want it real-time? 22

Time for Graphics Hacks • Unconditionally stable advection ♦ Kills the CFL condition •

Time for Graphics Hacks • Unconditionally stable advection ♦ Kills the CFL condition • Split the operators ♦ Lets us run simpler solvers • Impose divergence free field ♦ Do as post process 23

Semi-lagrangian Advection CFL Condition limits speed of information travel forward in time Like backward

Semi-lagrangian Advection CFL Condition limits speed of information travel forward in time Like backward Euler, what if instead we trace back in time? p(x, t) back-trace 24

Divergence Free Field • Helmholtz-Hodge Decomposition ♦ Every field can be written as •

Divergence Free Field • Helmholtz-Hodge Decomposition ♦ Every field can be written as • w is any vector field • u is a divergence free field • q is a scalar field 25

Helmholtz-Hodge STAM 2003 26

Helmholtz-Hodge STAM 2003 26

Divergence Free Field • We have w and we want u • Projection step

Divergence Free Field • We have w and we want u • Projection step solves this equation 27

Ensures Mass Conservation • Applied to field before advection • Applied at the end

Ensures Mass Conservation • Applied to field before advection • Applied at the end of a step • Takes the place of first equation in Navier-Stokes 28

Operator Splitting • We can’t use semi-lagrangian advection with a Poisson solver • We

Operator Splitting • We can’t use semi-lagrangian advection with a Poisson solver • We have to solve the problem in phases • Introduces another source of error, first order approximation 29

Operator Splitting 30

Operator Splitting 30

Operator Splitting 1. Add External Forces 2. Semi-lagrangian advection 3. Diffusion solve 4. Project

Operator Splitting 1. Add External Forces 2. Semi-lagrangian advection 3. Diffusion solve 4. Project field 31

Operator Splitting u(x, t) W 0 W 1 W 2 W 3 W 4

Operator Splitting u(x, t) W 0 W 1 W 2 W 3 W 4 u(x, t+Δt) 32

Various Extensions • Free surface tracking • Inviscid Navier-Stokes • Solid Fluid interaction 33

Various Extensions • Free surface tracking • Inviscid Navier-Stokes • Solid Fluid interaction 33

Free Surfaces • Level sets ♦ Loses volume ♦ Poor surface detail • Particle-level

Free Surfaces • Level sets ♦ Loses volume ♦ Poor surface detail • Particle-level sets ♦ Still loses volume ♦ Osher, Stanley, & Fedkiw, 2002 • MAC grid ♦ Harlow, F. H. and Welch, J. E. , "Numerical Calculation of Time-Dependent Viscous Incompressible Flow of Fluid with a Free Surface", The Physics of Fluids 8, 2182 -2189 (1965). 34

Free Surfaces MAC Grid 35 Level Set - + + + + - 0

Free Surfaces MAC Grid 35 Level Set - + + + + - 0 + + + + - - 0 + + + - - - - - + + + - - - - - -

Inviscid Navier-Stokes • Can be run faster • Only 1 Poisson Solve needed •

Inviscid Navier-Stokes • Can be run faster • Only 1 Poisson Solve needed • Useful to model smoke and fire ♦ Fedkiw, Stam, Jensen 2001 36

Solid Fluid Interaction • Long history in CFD • Graphics has many papers on

Solid Fluid Interaction • Long history in CFD • Graphics has many papers on 1 way coupling ♦ Way back to Foster & Metaxas, 1996 • Two way coupling is a new area in past 3 -4 years ♦ Carlson 2004 37

Where to get more info • Simplest way to working fluid simulator (Even has

Where to get more info • Simplest way to working fluid simulator (Even has code) ♦ STAM 2003 • Best way to learn enough to be dangerous ♦ CARLSON 2004 38

References CARLSON, M. , “Rigid, Melting, and Flowing Fluid, ” Ph. D Thesis, Georgia

References CARLSON, M. , “Rigid, Melting, and Flowing Fluid, ” Ph. D Thesis, Georgia Institute of Technology, Jul. 2004. FEDKIW, R. , STAM, J. , and JENSEN, H. W. , “Visual simulation of smoke, ” in Proceedings of ACM SIGGRAPH 2001, Computer Graphics Proceedings, Annual Conference Series, pp. 15– 22, Aug. 2001. FOSTER, N. and METAXAS, D. , “Realistic animation of liquids, ” Graphical Models and Image Processing, vol. 58, no. 5, pp. 471– 483, 1996. HARLOW, F. H. and WELCH, J. E. , "Numerical Calculation of Time-Dependent Viscous Incompressible Flow of Fluid with a Free Surface", The Physics of Fluids 8, 2182 -2189 (1965). LOSASSO, F. , GIBOU, F. , and FEDKIW, R. , “Simulating water and smoke with an octree data structure, ” ACM Transactions on Graphics, vol. 23, pp. 457– 462, Aug. 2004. OSHER, STANLEY J. & FEDKIW, R. (2002). Level Set Methods and Dynamic Implicit Surfaces. Springer. Verlag. STAM, J. , “Real-time fluid dynamics for games, ” in Proceedings of the Game Developer Conference, Mar. 2003. 39