Contents Contents Fluid - - PowerPoint PPT Presentation

contents contents fluid solver
SMART_READER_LITE
LIVE PREVIEW

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-1
SLIDE 1

Physics-based Fluid Simulations for Computer Graphics

Ryoichi Ando

CG物理ベース流体シミュレーション

安東 遼一

slide-2
SLIDE 2

Contents

slide-3
SLIDE 3

Contents

Fluid Solver

slide-4
SLIDE 4

Contents

Fluid Solver Surface Tracker

slide-5
SLIDE 5

Contents

Fluid Solver Surface Tracker FLIP Solver

slide-6
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
SLIDE 7

Fluid Solver Surface Tracker FLIP Solver

slide-8
SLIDE 8

Fluid Solver

slide-9
SLIDE 9

Navier-Stokes Equations s.t.

slide-10
SLIDE 10

Navier-Stokes Equations s.t.

How velocity changes

  • ver time
slide-11
SLIDE 11

Navier-Stokes Equations s.t.

How velocity changes

  • ver time

Advection term

slide-12
SLIDE 12

Navier-Stokes Equations s.t.

How velocity changes

  • ver time

Advection term Pressure term

slide-13
SLIDE 13

Navier-Stokes Equations s.t.

How velocity changes

  • ver time

Advection term Pressure term Viscosity term

slide-14
SLIDE 14

Navier-Stokes Equations s.t.

How velocity changes

  • ver time

Advection term Pressure term Viscosity term External force term

slide-15
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
SLIDE 16

Navier-Stokes Equations

slide-17
SLIDE 17

Navier-Stokes Equations Large Matrix

slide-18
SLIDE 18

Navier-Stokes Equations Large Matrix p u

=

RHS

slide-19
SLIDE 19

Navier-Stokes Equations Large Matrix p u

=

RHS

Newton Iterations...

slide-20
SLIDE 20

Navier-Stokes Equations Large Matrix p u

=

RHS

Newton Iterations...

slide-21
SLIDE 21

Operator Splitting

slide-22
SLIDE 22

Operator Splitting

slide-23
SLIDE 23

Operator Splitting

slide-24
SLIDE 24

Operator Splitting

slide-25
SLIDE 25

Operator Splitting

[Stable fluid, Stam99]

slide-26
SLIDE 26

First-order integration

slide-27
SLIDE 27

First-order integration

e.g, advection

slide-28
SLIDE 28

First-order integration

e.g, advection First-order accuracy!

slide-29
SLIDE 29

Simulation Steps

slide-30
SLIDE 30

Simulation Steps

Advection term

slide-31
SLIDE 31

Simulation Steps

Advection term Pressure term

slide-32
SLIDE 32

Simulation Steps

Advection term Pressure term Viscosity term

slide-33
SLIDE 33

Simulation Steps

Advection term Pressure term Viscosity term External force term

slide-34
SLIDE 34

Simulation Steps

Advection term Pressure term

slide-35
SLIDE 35

Simulation Steps

Advection term Pressure term

slide-36
SLIDE 36

Simulation Steps

Advection term Pressure term Simulation Loop...

slide-37
SLIDE 37

Advection term Pressure term

slide-38
SLIDE 38

Advection term Pressure term

slide-39
SLIDE 39

Advection term

slide-40
SLIDE 40

Advection term

Computing

slide-41
SLIDE 41

Advection term

Computing

slide-42
SLIDE 42

Advection term

Computing

Scalar Scalar

slide-43
SLIDE 43

Advection term

Computing

Expand...

Scalar Scalar

slide-44
SLIDE 44

Advection term

Computing

Expand...

Scalar Scalar

slide-45
SLIDE 45

Advection term

Computing

Expand... Key component !

Scalar Scalar

slide-46
SLIDE 46

Advection term

Computing

Velocity field Scalar field

slide-47
SLIDE 47

Advection term

Computing

Velocity field Scalar field

slide-48
SLIDE 48

Advection term

Computing

Velocity field Scalar field

slide-49
SLIDE 49

Advection term

Computing

Velocity field Scalar field

Ground Truth

slide-50
SLIDE 50

Advection term

Computing

How to discretize ?

slide-51
SLIDE 51

Advection term

Computing

slide-52
SLIDE 52

Advection term

Computing

Central Difference

slide-53
SLIDE 53

Advection term

Computing

Central Difference Accurate

slide-54
SLIDE 54

Advection term

Computing

Central Difference Accurate

slide-55
SLIDE 55

Advection term

Computing

Central Difference

slide-56
SLIDE 56

Advection term

Computing

Central Difference

slide-57
SLIDE 57

Advection term

Computing

Upwind Scheme If If

slide-58
SLIDE 58

Advection term

Computing

Upwind Scheme If If

slide-59
SLIDE 59

Advection term

Computing

High-order Upwind Scheme ( WENO5 )

slide-60
SLIDE 60

Advection term

Computing

High-order Upwind Scheme ( WENO5 )

slide-61
SLIDE 61

Advection term

Computing

High-order Upwind Scheme ( WENO5 ) Upwind Scheme

slide-62
SLIDE 62

Advection term

Computing

High-order Upwind Scheme ( WENO5 ) Upwind Scheme

slide-63
SLIDE 63

Advection term

Computing

High-order Upwind Scheme ( WENO5 ) Upwind Scheme

slide-64
SLIDE 64

Advection term

Computing

High-order Upwind Scheme ( WENO5 ) Upwind Scheme

slide-65
SLIDE 65

Advection term Pressure term

slide-66
SLIDE 66

Advection term Pressure term

slide-67
SLIDE 67

Pressure term

slide-68
SLIDE 68

Computing

Pressure term

slide-69
SLIDE 69

Computing

Pressure term

slide-70
SLIDE 70

Computing

Pressure term

slide-71
SLIDE 71

Computing

Pressure term

slide-72
SLIDE 72

Computing

Pressure term

slide-73
SLIDE 73

Computing

Pressure term

slide-74
SLIDE 74

Computing

Pressure term

slide-75
SLIDE 75

Computing

Pressure term Pressure Poisson Equation

slide-76
SLIDE 76

Computing

Pressure term Pressure Poisson Equation

slide-77
SLIDE 77

Pressure term Pressure Poisson Equation

Boundary Conditions of

slide-78
SLIDE 78

Pressure term

Discretizing

slide-79
SLIDE 79

Pressure term

Discretizing

slide-80
SLIDE 80

Pressure term

Discretizing

slide-81
SLIDE 81

Pressure term

Discretizing

Divergence Theorem

slide-82
SLIDE 82

Pressure term

Discretizing

slide-83
SLIDE 83

Pressure term

Discretizing

slide-84
SLIDE 84

Pressure term

Discretizing

slide-85
SLIDE 85

Pressure term

Discretizing

slide-86
SLIDE 86

Pressure term

Discretizing

slide-87
SLIDE 87

Pressure term

Discretizing

slide-88
SLIDE 88

Pressure term

Discretizing MAC Grid

slide-89
SLIDE 89

Pressure term

Discretizing

slide-90
SLIDE 90

Pressure term

Discretizing

slide-91
SLIDE 91

Pressure term

Discretizing

slide-92
SLIDE 92

Pressure term

Discretizing

1 2 3 4 p

slide-93
SLIDE 93

Pressure term

Discretizing

Solid wall

slide-94
SLIDE 94

Pressure term

Discretizing

Solid wall

slide-95
SLIDE 95

Pressure term

Discretizing

Solid wall 1 2

=

slide-96
SLIDE 96

Pressure term

Discretizing

Empty Matrix

slide-97
SLIDE 97

Pressure term

Discretizing

slide-98
SLIDE 98

Pressure term

Discretizing

slide-99
SLIDE 99

Pressure term

Discretizing

p u*

=

slide-100
SLIDE 100

Pressure term

Discretizing

p u*

=

(Semi-)Positive Definite System

slide-101
SLIDE 101

Pressure term

Discretizing

p u*

=

(Semi-)Positive Definite System

  • 1
slide-102
SLIDE 102

Pressure term

Discretizing

p u*

=

(Semi-)Positive Definite System

  • 1

Preconditioned Conjugate Gradient Solver

slide-103
SLIDE 103

Pressure term

Discretizing

p

=

(Semi-)Positive Definite System Solution

slide-104
SLIDE 104

Pressure term

Discretizing

Solution

slide-105
SLIDE 105

Pressure term

Discretizing

Solution

slide-106
SLIDE 106

Pressure term

Discretizing

Solution

slide-107
SLIDE 107

Advection term Pressure term

slide-108
SLIDE 108

Advection term Pressure term

slide-109
SLIDE 109

Advection term Pressure term

slide-110
SLIDE 110

Examples

slide-111
SLIDE 111

Examples

slide-112
SLIDE 112

Short Break

Next: Liquid Simulations...

slide-113
SLIDE 113

Fluid Solver Surface Tracker FLIP Solver

slide-114
SLIDE 114

Fluid Solver Surface Tracker FLIP Solver

slide-115
SLIDE 115

Surface Tracker

slide-116
SLIDE 116

Liquid Simulation

slide-117
SLIDE 117

Liquid Simulation

slide-118
SLIDE 118

Liquid Simulation Surface Tracker

slide-119
SLIDE 119

Surface Tracker

slide-120
SLIDE 120

Surface Tracker

slide-121
SLIDE 121

Surface Tracker

slide-122
SLIDE 122

Surface Tracker

slide-123
SLIDE 123

Surface Tracker

slide-124
SLIDE 124

Surface Tracker

  • Water tight
  • Topology change
slide-125
SLIDE 125

Surface Tracker

  • Water tight
  • Topology change
slide-126
SLIDE 126

Surface Tracker

  • Water tight
  • Topology change
slide-127
SLIDE 127

Surface Tracker

  • Water tight
  • Topology change
slide-128
SLIDE 128

Surface Tracker

slide-129
SLIDE 129

Surface Tracker

Levelset Method

slide-130
SLIDE 130

Surface Tracker

Levelset Method Mesh-based Method

slide-131
SLIDE 131

Surface Tracker

Levelset Method Mesh-based Method Particle-based Method

slide-132
SLIDE 132

Surface Tracker

Levelset Method

slide-133
SLIDE 133

Levelset Method

slide-134
SLIDE 134

φ0

Levelset Method

slide-135
SLIDE 135

φ0 φ1

Levelset Method

slide-136
SLIDE 136

φ0 φ1 φ2

Levelset Method

slide-137
SLIDE 137

φ < 0 φ > 0

Levelset Method

slide-138
SLIDE 138

φ < 0 φ > 0

Levelset Method

∂φ ∂t = u · rφ

slide-139
SLIDE 139

Levelset Method

φ < 0 φ < 0 φ > 0

slide-140
SLIDE 140

Levelset Method

φ < 0 φ < 0 φ > 0

slide-141
SLIDE 141

Levelset Method

φ < 0 φ < 0 φ > 0

slide-142
SLIDE 142

Levelset Method

φ < 0 φ < 0 φ > 0

slide-143
SLIDE 143

Levelset Method

φ > 0 φ < 0

Topology change

slide-144
SLIDE 144

Levelset Method

slide-145
SLIDE 145

Levelset Method

slide-146
SLIDE 146

p = 0

Levelset Method

slide-147
SLIDE 147

Levelset Method

slide-148
SLIDE 148

Levelset Method

slide-149
SLIDE 149

Fluid Solver Surface Tracker FLIP Solver

slide-150
SLIDE 150

Fluid Solver Surface Tracker FLIP Solver

slide-151
SLIDE 151

FLIP Solver

slide-152
SLIDE 152

FLIP Solver

Particles Levelset Velocity Pressure

slide-153
SLIDE 153

FLIP Solver

Particles Levelset Velocity Pressure

slide-154
SLIDE 154

FLIP Solver

Particles Levelset Velocity Pressure

slide-155
SLIDE 155

FLIP Solver

Particles Levelset Velocity Pressure

slide-156
SLIDE 156

FLIP Solver

Particles Levelset Velocity Pressure Boundary Condition

slide-157
SLIDE 157

FLIP Solver

Particles Levelset Velocity Pressure Boundary Condition Map Velocity

slide-158
SLIDE 158

FLIP Solver

Particles Levelset Velocity Pressure Boundary Condition Map Velocity

slide-159
SLIDE 159

FLIP Solver

Particles Levelset Velocity Pressure Boundary Condition Map Velocity Solve Pressure

slide-160
SLIDE 160

FLIP Solver

Particles Levelset Velocity Pressure Boundary Condition Map Velocity Solve Pressure

slide-161
SLIDE 161

FLIP Solver

slide-162
SLIDE 162

FLIP Solver

slide-163
SLIDE 163

FLIP Solver

  • Easy advection
slide-164
SLIDE 164

FLIP Solver

  • Easy advection
  • Fast pressure solver
slide-165
SLIDE 165

FLIP Solver

  • Easy advection
  • Fast pressure solver
  • Splash !
slide-166
SLIDE 166

FLIP Solver

slide-167
SLIDE 167

FLIP Solver

slide-168
SLIDE 168

FLIP Solver

slide-169
SLIDE 169

FLIP Solver

slide-170
SLIDE 170

FLIP Solver

slide-171
SLIDE 171

FLIP Solver

slide-172
SLIDE 172

Summary

slide-173
SLIDE 173

Summary

Fluid Solver

  • Pressure Solver
  • Advection
slide-174
SLIDE 174

Summary

Fluid Solver Surface Tracker

  • Pressure Solver
  • Advection
  • Levelset
  • Topology Change
slide-175
SLIDE 175

Summary

Fluid Solver Surface Tracker FLIP Solver

  • Pressure Solver
  • Advection
  • Levelset
  • Topology Change
  • FLIP Steps