SLIDE 1
Contents Contents Fluid - - PowerPoint PPT Presentation
Contents Contents Fluid - - PowerPoint PPT Presentation
Physics-based Fluid Simulations for Computer Graphics Ryoichi Ando Contents Contents Fluid Solver Contents Fluid Solver Surface Tracker Contents Fluid Solver Surface
SLIDE 2
SLIDE 3
Contents
Fluid Solver
SLIDE 4
Contents
Fluid Solver Surface Tracker
SLIDE 5
Contents
Fluid Solver Surface Tracker FLIP Solver
SLIDE 6
- Ph.D student @ Kyushu Univ
- Visiting Scientist at IST Austria
- Fluid Simulations
- SIGRRAPH 2013 Tech. paper with
Chris Wojtan and Nils Thuerey
Short Bio
SLIDE 7
Fluid Solver Surface Tracker FLIP Solver
SLIDE 8
Fluid Solver
SLIDE 9
Navier-Stokes Equations s.t.
SLIDE 10
Navier-Stokes Equations s.t.
How velocity changes
- ver time
SLIDE 11
Navier-Stokes Equations s.t.
How velocity changes
- ver time
Advection term
SLIDE 12
Navier-Stokes Equations s.t.
How velocity changes
- ver time
Advection term Pressure term
SLIDE 13
Navier-Stokes Equations s.t.
How velocity changes
- ver time
Advection term Pressure term Viscosity term
SLIDE 14
Navier-Stokes Equations s.t.
How velocity changes
- ver time
Advection term Pressure term Viscosity term External force term
SLIDE 15
Navier-Stokes Equations s.t.
How velocity changes
- ver time
Advection term Pressure term Viscosity term Incompressiblity Constraint External force term
SLIDE 16
Navier-Stokes Equations
SLIDE 17
Navier-Stokes Equations Large Matrix
SLIDE 18
Navier-Stokes Equations Large Matrix p u
=
RHS
SLIDE 19
Navier-Stokes Equations Large Matrix p u
=
RHS
Newton Iterations...
SLIDE 20
Navier-Stokes Equations Large Matrix p u
=
RHS
Newton Iterations...
SLIDE 21
Operator Splitting
SLIDE 22
Operator Splitting
SLIDE 23
Operator Splitting
SLIDE 24
Operator Splitting
SLIDE 25
Operator Splitting
[Stable fluid, Stam99]
SLIDE 26
First-order integration
SLIDE 27
First-order integration
e.g, advection
SLIDE 28
First-order integration
e.g, advection First-order accuracy!
SLIDE 29
Simulation Steps
SLIDE 30
Simulation Steps
Advection term
SLIDE 31
Simulation Steps
Advection term Pressure term
SLIDE 32
Simulation Steps
Advection term Pressure term Viscosity term
SLIDE 33
Simulation Steps
Advection term Pressure term Viscosity term External force term
SLIDE 34
Simulation Steps
Advection term Pressure term
SLIDE 35
Simulation Steps
Advection term Pressure term
SLIDE 36
Simulation Steps
Advection term Pressure term Simulation Loop...
SLIDE 37
Advection term Pressure term
SLIDE 38
Advection term Pressure term
SLIDE 39
Advection term
SLIDE 40
Advection term
Computing
SLIDE 41
Advection term
Computing
SLIDE 42
Advection term
Computing
Scalar Scalar
SLIDE 43
Advection term
Computing
Expand...
Scalar Scalar
SLIDE 44
Advection term
Computing
Expand...
Scalar Scalar
SLIDE 45
Advection term
Computing
Expand... Key component !
Scalar Scalar
SLIDE 46
Advection term
Computing
Velocity field Scalar field
SLIDE 47
Advection term
Computing
Velocity field Scalar field
SLIDE 48
Advection term
Computing
Velocity field Scalar field
SLIDE 49
Advection term
Computing
Velocity field Scalar field
Ground Truth
SLIDE 50
Advection term
Computing
How to discretize ?
SLIDE 51
Advection term
Computing
SLIDE 52
Advection term
Computing
Central Difference
SLIDE 53
Advection term
Computing
Central Difference Accurate
SLIDE 54
Advection term
Computing
Central Difference Accurate
SLIDE 55
Advection term
Computing
Central Difference
SLIDE 56
Advection term
Computing
Central Difference
SLIDE 57
Advection term
Computing
Upwind Scheme If If
SLIDE 58
Advection term
Computing
Upwind Scheme If If
SLIDE 59
Advection term
Computing
High-order Upwind Scheme ( WENO5 )
SLIDE 60
Advection term
Computing
High-order Upwind Scheme ( WENO5 )
SLIDE 61
Advection term
Computing
High-order Upwind Scheme ( WENO5 ) Upwind Scheme
SLIDE 62
Advection term
Computing
High-order Upwind Scheme ( WENO5 ) Upwind Scheme
SLIDE 63
Advection term
Computing
High-order Upwind Scheme ( WENO5 ) Upwind Scheme
SLIDE 64
Advection term
Computing
High-order Upwind Scheme ( WENO5 ) Upwind Scheme
SLIDE 65
Advection term Pressure term
SLIDE 66
Advection term Pressure term
SLIDE 67
Pressure term
SLIDE 68
Computing
Pressure term
SLIDE 69
Computing
Pressure term
SLIDE 70
Computing
Pressure term
SLIDE 71
Computing
Pressure term
SLIDE 72
Computing
Pressure term
SLIDE 73
Computing
Pressure term
SLIDE 74
Computing
Pressure term
SLIDE 75
Computing
Pressure term Pressure Poisson Equation
SLIDE 76
Computing
Pressure term Pressure Poisson Equation
SLIDE 77
Pressure term Pressure Poisson Equation
Boundary Conditions of
SLIDE 78
Pressure term
Discretizing
SLIDE 79
Pressure term
Discretizing
SLIDE 80
Pressure term
Discretizing
SLIDE 81
Pressure term
Discretizing
Divergence Theorem
SLIDE 82
Pressure term
Discretizing
SLIDE 83
Pressure term
Discretizing
SLIDE 84
Pressure term
Discretizing
SLIDE 85
Pressure term
Discretizing
SLIDE 86
Pressure term
Discretizing
SLIDE 87
Pressure term
Discretizing
SLIDE 88
Pressure term
Discretizing MAC Grid
SLIDE 89
Pressure term
Discretizing
SLIDE 90
Pressure term
Discretizing
SLIDE 91
Pressure term
Discretizing
SLIDE 92
Pressure term
Discretizing
1 2 3 4 p
SLIDE 93
Pressure term
Discretizing
Solid wall
SLIDE 94
Pressure term
Discretizing
Solid wall
SLIDE 95
Pressure term
Discretizing
Solid wall 1 2
=
SLIDE 96
Pressure term
Discretizing
Empty Matrix
SLIDE 97
Pressure term
Discretizing
SLIDE 98
Pressure term
Discretizing
SLIDE 99
Pressure term
Discretizing
p u*
=
SLIDE 100
Pressure term
Discretizing
p u*
=
(Semi-)Positive Definite System
SLIDE 101
Pressure term
Discretizing
p u*
=
(Semi-)Positive Definite System
- 1
SLIDE 102
Pressure term
Discretizing
p u*
=
(Semi-)Positive Definite System
- 1
Preconditioned Conjugate Gradient Solver
SLIDE 103
Pressure term
Discretizing
p
=
(Semi-)Positive Definite System Solution
SLIDE 104
Pressure term
Discretizing
Solution
SLIDE 105
Pressure term
Discretizing
Solution
SLIDE 106
Pressure term
Discretizing
Solution
SLIDE 107
Advection term Pressure term
SLIDE 108
Advection term Pressure term
SLIDE 109
Advection term Pressure term
SLIDE 110
Examples
SLIDE 111
Examples
SLIDE 112
Short Break
Next: Liquid Simulations...
SLIDE 113
Fluid Solver Surface Tracker FLIP Solver
SLIDE 114
Fluid Solver Surface Tracker FLIP Solver
SLIDE 115
Surface Tracker
SLIDE 116
Liquid Simulation
SLIDE 117
Liquid Simulation
SLIDE 118
Liquid Simulation Surface Tracker
SLIDE 119
Surface Tracker
SLIDE 120
Surface Tracker
SLIDE 121
Surface Tracker
SLIDE 122
Surface Tracker
SLIDE 123
Surface Tracker
SLIDE 124
Surface Tracker
- Water tight
- Topology change
SLIDE 125
Surface Tracker
- Water tight
- Topology change
SLIDE 126
Surface Tracker
- Water tight
- Topology change
SLIDE 127
Surface Tracker
- Water tight
- Topology change
SLIDE 128
Surface Tracker
SLIDE 129
Surface Tracker
Levelset Method
SLIDE 130
Surface Tracker
Levelset Method Mesh-based Method
SLIDE 131
Surface Tracker
Levelset Method Mesh-based Method Particle-based Method
SLIDE 132
Surface Tracker
Levelset Method
SLIDE 133
Levelset Method
SLIDE 134
φ0
Levelset Method
SLIDE 135
φ0 φ1
Levelset Method
SLIDE 136
φ0 φ1 φ2
Levelset Method
SLIDE 137
φ < 0 φ > 0
Levelset Method
SLIDE 138
φ < 0 φ > 0
Levelset Method
∂φ ∂t = u · rφ
SLIDE 139
Levelset Method
φ < 0 φ < 0 φ > 0
SLIDE 140
Levelset Method
φ < 0 φ < 0 φ > 0
SLIDE 141
Levelset Method
φ < 0 φ < 0 φ > 0
SLIDE 142
Levelset Method
φ < 0 φ < 0 φ > 0
SLIDE 143
Levelset Method
φ > 0 φ < 0
Topology change
SLIDE 144
Levelset Method
SLIDE 145
Levelset Method
SLIDE 146
p = 0
Levelset Method
SLIDE 147
Levelset Method
SLIDE 148
Levelset Method
SLIDE 149
Fluid Solver Surface Tracker FLIP Solver
SLIDE 150
Fluid Solver Surface Tracker FLIP Solver
SLIDE 151
FLIP Solver
SLIDE 152
FLIP Solver
Particles Levelset Velocity Pressure
SLIDE 153
FLIP Solver
Particles Levelset Velocity Pressure
SLIDE 154
FLIP Solver
Particles Levelset Velocity Pressure
SLIDE 155
FLIP Solver
Particles Levelset Velocity Pressure
SLIDE 156
FLIP Solver
Particles Levelset Velocity Pressure Boundary Condition
SLIDE 157
FLIP Solver
Particles Levelset Velocity Pressure Boundary Condition Map Velocity
SLIDE 158
FLIP Solver
Particles Levelset Velocity Pressure Boundary Condition Map Velocity
SLIDE 159
FLIP Solver
Particles Levelset Velocity Pressure Boundary Condition Map Velocity Solve Pressure
SLIDE 160
FLIP Solver
Particles Levelset Velocity Pressure Boundary Condition Map Velocity Solve Pressure
SLIDE 161
FLIP Solver
SLIDE 162
FLIP Solver
SLIDE 163
FLIP Solver
- Easy advection
SLIDE 164
FLIP Solver
- Easy advection
- Fast pressure solver
SLIDE 165
FLIP Solver
- Easy advection
- Fast pressure solver
- Splash !
SLIDE 166
FLIP Solver
SLIDE 167
FLIP Solver
SLIDE 168
FLIP Solver
SLIDE 169
FLIP Solver
SLIDE 170
FLIP Solver
SLIDE 171
FLIP Solver
SLIDE 172
Summary
SLIDE 173
Summary
Fluid Solver
- Pressure Solver
- Advection
SLIDE 174
Summary
Fluid Solver Surface Tracker
- Pressure Solver
- Advection
- Levelset
- Topology Change
SLIDE 175
Summary
Fluid Solver Surface Tracker FLIP Solver
- Pressure Solver
- Advection
- Levelset
- Topology Change
- FLIP Steps