Simple Eulerian Methods for Compressible Fluids in …...Simple Eulerian Methods for Compressible...

Post on 20-Jul-2020

6 views 0 download

Transcript of Simple Eulerian Methods for Compressible Fluids in …...Simple Eulerian Methods for Compressible...

Simple Eulerian Methods for CompressibleFluids in Domains with Moving Boundaries

Alina Chertock

North Carolina State Universitychertock@math.ncsu.edu

joint work with Armando Coco, Yuanzhen Cheng, Smadar Karni,Alexander Kurganov and Giovanni Russo

supported in part by

Compressible Euler Equations

ρρuρvE

t

+

ρuρu2 + pρuv

u(E + p)

x

+

ρvρuv

ρv2 + pv(E + p)

y

= 0

E =p

γ − 1+ρ

2(u2 + v2)

• ρ is the fluid density;

• u, v are the velocities;

• E is the total energy;

• p is the pressure;

• c =

√γp

ρis the speed of sound.

1

Two Types of Problems

• Multicomponent Flow: We assume that γ is a piecewise constant functionpropagation with the fluid velocity according to

γt + uγx + vγy = 0.

• Problems with Changing Geometries:

– The right boundary is a movingsolid wall with a prescribedequation of motion x = xB(t)

B

Moving Boundary

x

– Flow around an (oscillating)solid circle.

I II

2

Conservative Methods

wt + F (w)x = 0 ⇔

ρρuEργ

t

+

ρuρu2 + pu(E + p)uργ

x

= 0

Godunov-type discretization:

wn+1j = wn

j −∆t

∆x

(Hj+1/2 −Hj−1/2

),

Hj+1/2 = H(. . . , wnj , w

nj+1, . . .), H(. . . ,w,w, . . .) = F (w).

The major difficulty: to ensure that the pressure equilibrium between fluidcomponents is not disturbed by the numerical scheme.

3

What is going wrong? (S. Karni)

4

Multicomponent Flow

wt + f(w)x = 0 ⇐⇒

ρρuE

t

+

ρuρu2 + pu(E + p)

x

= 0

EOS: p = (γ − 1)

(E − 1

2ρu2

)− γp∞

w = (ρ, ρu,E)T

We assume that γ is a piecewise constant function propagation with thefluid velocity according to

γt + uγx = 0.

5

Multi-Fluid Example

0 0.2 0.4 0.6 0.8 10.98

1

1.02

1.04

1.06

1.08

1.1

1.12

pressure

CONSERVATIVE METHODEXACT SOLUTION

(ρ, u, p, γ)T =

(1.0, 1.0, 1.0, 1.6)T , if x < 0.25,(0.1, 1.0, 1.0, 1.4)T , if x > 0.25.

Different EOS...

6

What is going wrong?

J-1 J J+1

!

tn

!

tn+1

!

xJ"1/2

!

xJ+1/2

material interface

• Fluxes are computed using the information in the mixed cell.

• No valid EOS in mixed cells.

7

Some Models/Schemes

• Conserve not only total mass and momentum but also total energy.

– Volume-of-Fluid Method (Noh & Woodward; Collela, Glaz &Ferguson).

– Internal Energy Correction Algorithm (Jenny, Mueller & Thomann).– A Fluid-Mixture Type Algorithm (Shyue).

• Conserve only total mass and momentum but not total energy.

– Pressure Evolution Method (Karni).– Ghost-Fluid Method for the Poor (Abgrall & Karni).

• Nonconservative

– Ghost-Fluid Method (Fedkiw, Aslam, Merriman & Osher).

• – Conservative locally moving mesh method for multifluid flows (A.C.& A. Kurganov)

– A second-order finite-difference method for compressible fluids indomains with moving boundaries, (A. C., A. Coco, A. Kurganov andG. Russo)

– Interface tracking method for compressible multifluids, (A.C., S.Karni & A. Kurganov)

8

Semi-Discrete Central-Upwind Scheme – 1-D Case

wt + f(w)x = 0 ⇐⇒

ρρuE

t

+

ρuρu2 + pu(E + p)

x

= 0

w := (ρ, ρu,E)T

Computational cells: Cj := [xj−12, xj+1

2]

The cell averages: wj(t) :=1

∆x

Cj

w(x, t) dx

Time evolution:

d

dtwj(t) = −

Hj+12(t)−Hj−1

2(t)

∆x

Hj+1

2

: numerical fluxes

9

wj(t) → w(·, t)→w±j+1

2(t)→Hj+1

2(t)→ wj(t+ ∆t)

(Discontinuous) piecewise-linear reconstruction:

w(x, t) := wj(t) + (wx)j(x− xj), x ∈ Cj

It is conservative, second-order accurate, and non-oscillatory provided theslopes, (wx)j, are computed by a nonlinear limiter

Example — Generalized Minmod Limiter

(wx)j = minmod

(θwj −wj−1

∆x,wj+1 −wj−1

2∆x, θ

wj+1 −wj

∆x

)

where

minmod(z1, z2, ...) :=

minjzj, if zj > 0 ∀j,maxjzj, if zj < 0 ∀j,0, otherwise,

and θ ∈ [1, 2] is a constant10

wj(t) → w(·, t)→w±j+1

2(t)→Hj+1

2(t)→ wj(t+ ∆t)

w±j+1

2(t) are the point values of

w(x, t) = wj + (wx)j(x− xj), x ∈ Cj

at xj+12:

w+

j+12

:= w(xj+12

+ 0, t) = wj+1 −∆x

2(wx)j+1

w−j+1

2:= w(xj−1

2− 0, t) = wj +

∆x

2(wx)j

11

wj(t) → w(·, t)→w±j (t)

→Hj+1

2(t)→ wj(t+ ∆t)

Hj+12(t) = H(w−

j+12(t),w+

j+12(t))

Example — Central-Upwind Flux:

[Kurganov, Lin, Noelle, Petrova, Tadmor, et al.; 2000–2007]

Hj+12

=a+

j+12f(w−

j+12)− a−

j+12f(w+

j+12)

a+

j+12− a−

j+12

+a+

j+12a−j+1

2

a+

j+12− a−

j+12

[w+

j+12−w−

j+12

]

a±j+1

2(t) = a±

j+12

(w+

j+12,w−

j+12

)are one-sided local speeds, estimated using

the largest and the smallest eigenvalues of the Jacobian∂f

∂w.

d

dtwj(t) = −

Hj+12(t)−Hj−1

2(t)

∆x

12

Boundary Treatment in 1-D

• Assume that at some time level t the wall is located in cell J

• All computational cells are divided into 3 groups:

– Internal cells with reliable data– Boundary cells with unreliable data– External cells with no data

All computational cells are divided into 3 groups:

• Internal cells with reliable data

• Boundary cells with unreliable data (as multi-fluid “mixed” cells)

• External cells with no data

xJ!5/2

xJ!3/2

xJ!1/2

xJ+1/2

xJ+3/2

Moving Boundary

xB

43

13

Boundary Treatment in 1-D

• The cell averages wJ(t) will not be evolved

• To evolve the cell averages wJ−1(t) we need:

– the numerical flux HJ−12(t)

– the point values w+

J−12(t)

Assume that at some time level t the wall is located in cell J

The cell averages wJ(t) will not be evolved

To evolve the cell averages wJ!1(t) we need the numerical flux HJ!1

2(t).

Thus we need the point values w+J!1

2(t)

xJ!5/2

xJ!3/2

xJ!1/2

xJ+1/2

xJ+3/2

Moving Boundary

wJ!1/2

J!1

xB

w

+

44

14

Solid Wall Extrapolation

The solid wall extrapolation of the solution values in cell (J − 1),

ρJ−1, uJ−1 =(ρu)J−1

ρJ−1

, pJ−1 = (γ − 1)

[EJ−1 −

ρJ−1u2J−1

2

]

To obtain the ”missing” ghost values:

ρd2xB(t)

dt2

∣∣∣x=xB(t)

= −px∣∣∣x=xB(t)

,∂p

∂ρ

∣∣∣x=xB(t)

=γp

ρ

∣∣∣x=xB(t)

Solid Wall Extrapolation

The solid wall extrapolation of the solution values in cell (J ! 1),

!J!1, uJ!1 =(!u)J!1

!J!1, pJ!1 = (" ! 1)

!"EJ!1 !

!J!1u2J!1

2

#$ ,

results in the following ghost-cell values:

!gh := !J!1, ugh := 2xB(t) ! uJ!1, pgh := pJ!1

xB(t): velocity of the wall at time t

xJ!5/2

xJ!3/2

xJ!1/2

xJ+1/2

xJ+3/2

wJ!1

wJ!1/2

xB

+

wgh

45

15

Solid Wall Extrapolation

• Second-Order Approximation:

ρJ−1 + ρgh

2· d

2xB(t)

dt2= −pgh − pJ−1

∆x

pgh − pJ−1

ρgh − ρJ−1

= γ · pgh + pJ−1

ρgh + ρJ−1

• First-Order Approximation:

ρgh := ρJ−1, ugh := 2xB(t)− uJ−1, pgh := pJ−1

xB(t): velocity of the wall at time t

16

Phase Space Interpolation

if u∗ > 0 then

w+

J−12

=

w∗, if u∗ − c∗ < 0

wJ−1, otherwise

else

w+

J−12

=

w∗, if u∗ + c∗ > 0

wgh, otherwise

gh

ρ

u

p

J−1

J−1

J−1

p

gh

ρ

u

p

*

*

* ρ

u gh

Once w+

J−12

are available, we

compute the slopes (wx)J−1

using

w−J−3

2, wJ−1 and w+

J−12

Once w+J!1

2are available,

we compute the slopes (wx)J!1 using w!J!3

2, wJ!1 and w+

J!12

xJ!5/2

xJ!3/2

xJ!1/2

xJ+1/2

xJ+3/2

Moving Boundary

!w

w

wJ!1/2

J!3/2

J!1

+

xB

4717

Solution of the RP – A Very Simple Structure

• If ugh < uJ−1, the solution consists of three constant states, connectedby two shock waves. The intermediate state is equal to:

p∗ = pJ−1

+(γ + 1)ρJ−1 (xB(t)− uJ−1)

2

4

1 +

√1 +

(4cJ−1

(γ + 1) (xB(t)− uJ−1)

)2

u∗ = xB(t), ρ∗ = ρJ−1

(γ − 1)pJ−1 + (γ + 1)p∗(γ + 1)pJ−1 + (γ − 1)p∗

• If ugh > uJ−1, the solution consists of three constant states, connectedby two rarefaction waves.The intermediate state is given by:

p∗ = pJ−1

(1− (γ − 1) (xB(t)− uJ−1)

2cJ−1

)2γ/(γ−1)

u∗ = xB(t), ρ∗ = ρJ−1

(p∗pJ−1

)1/γ

18

Time Evolution

d

dtwj(t) = −

Hj+12(t)−Hj−1

2(t)

∆x: wj(t)→ wj(t+ ∆t)

• If xB(t+ ∆t) ∈ CJ , the evolution step is completed.

• If xB(t+ ∆t) ∈ CJ−1, then

– Cell J − 1 becomes the new boundary cell

– Cell J turns into an external one

– The computed values wJ−1(t+ ∆t) will not be used any more

After the cell averages wj are evolved from time t to time t + !t usingthe finite-volume method, the location of the moving wall is updated.

• If xB(t + !t) remains in cell J , the evolution step is completed

• If xB(t + !t) is in cell (J ! 1), then

– this cell becomes the new boundary cell

– cell J turns into an external one

– the computed values wJ!1(t + !t) will not be used any more

xJ!3/2

xJ!1/2

xJ+1/2

t+! t

WJ!1

x

t

t

4819

• If xB(t+ ∆t) ∈ CJ+1, then

– Cell (J + 1) becomes a new boundary cell

– Cell J turns into an internal one

– We use the phase space interpolation between (ρJ−1, uJ−1, pJ−1) and(ρgh, ugh, pgh) to obtain (ρ∗, u∗, p∗) and then

wJ(t+ ∆t) := w∗

• If xB(t + !t) is in cell (J + 1), then

– this cell becomes a new boundary cell

– cell J turns into an internal one

– we use the phase space interpolation between (!J!1, uJ!1, pJ!1)and (!gh, ugh, pgh) to obtain wJ(t + !t):

if xB(t + !t) " CJ+1 then set wJ(t + !t) := w#

xJ!1/2

xJ+1/2

xJ+3/2

WJ

t+! t

x

t

t

49 20

Important Remarks

• The proposed boundary cell treatment procedures use the O(∆x)accurate information on the location of the boundary instead of theexact one and thus the overall accuracy of the introduced methodcannot be higher than the first order

• The main advantages of the proposed method are its simplicity androbustness

• To achieve a higher resolution, one may use an adaptive mesh refinementtechnique near the boundary

• The proposed boundary treatment procedure is not conservative.However, the conservation error occurs only along the boundary surfaceof co-dimension one. Thus the total conservation error is expected to beproportional to the mesh size, as confirmed by our numerical experiments

21

Example — Piston ProblemThe tube is bounded by a stationary solid wall at x = 0 and a piston atx = xB(t), which is free to move without friction in the tube. The motionof the piston is governed by the Newton equation:

d2xB(t)

dt2=A

m(p(xB(t), t)− pout) ,

where A is the area of the piston, m is its mass, A/m = 2, and pout = 2 isan external pressure.

The velocity of the piston is obtained from

dxB(t)

dt=A

m(p∗ − pout) ,

where p∗ is the solution of the corresponding RP.

Initial Condition:

u(x, 0) ≡ 0, xB(0) = 0, ρ(x, 0) ≡ p(x, 0) ≡ 1, xB(0) = 1.

22

What happens?

• Due to the difference between the interior and exterior pressure, thepiston starts moving into the tube, rising the pressure inside it.

• When the pressure in the tube becomes larger than the outside one, thepiston decelerates and turns back.

• The pattern repeats and the motion of the piston becomes oscillatory.

Remark: The piston problem is slightly different since the piston motion isnot a-priori prescribed but depends on the difference between the pressuresinside and outside the tube. However, when the boundary cell extrapolationprocedure is used, the elastic properties of the piston are neglected and thewall (piston) is assumed to be solid.

23

0 0.5 10

1

2

3

4

5

6

7

8

9

10

x

t

0.9 0.92 0.94 0.96 0.98

8

8.1

8.2

8.3

8.4

8.5

8.6

8.7

8.8

xt

∆ x=1/100

∆ x=1/200

∆ x=1/400

∆ x=1/2000

The piston trajectory as a function of time (left) computed on four differentuniform grids with ∆x = 1/100, 1/200, 1/400, and 1/2000. Zoom at[0.89, 0.98]× [7.95, 8.8] (right).

24

Example — Solid Oscillating Boundary

1-D : wt + f(w)x = 0,

w := (ρ, ρu,E)T , E =p

γ − 1+ρu2

2

The initial data correspond to a right moving shock:

(ρ, u, p) =

(4/3, 35/99, 1.5), x < 0.5

(1, 0, 1), 0.5 < x < xB(0)

γ = 1.4

xB(t) = 0.9 + 0.1 sin(10πt)

25

0 0.5 10

1

2

3

4

5

ρ (x,t=0.05)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 10

1

2

3

4

5

ρ (x,t=0.15)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 10

1

2

3

4

5

ρ (x,t=0.3)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 10

1

2

3

4

5

ρ (x,t=0.4)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

26

0 0.5 1

−3

−2

−1

0

1

2

3

u(x,t=0.05)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 1

−3

−2

−1

0

1

2

3

u(x,t=0.15)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 1

−3

−2

−1

0

1

2

3

u(x,t=0.3)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

0 0.5 1

−3

−2

−1

0

1

2

3

u(x,t=0.4)

∆ x=1/100

∆ x=1/200

∆ x=1/51200

27

Mass conservation error

t = 0.05 t = 0.4∆x Error Rate Error Rate

1/200 4.371 · 10−3 – 2.580 · 10−3 –1/400 1.995 · 10−3 1.13 1.548 · 10−3 0.741/800 9.673 · 10−4 1.04 8.589 · 10−4 0.851/1600 4.565 · 10−4 1.08 4.279 · 10−4 1.001/3200 2.202 · 10−4 1.05 2.221 · 10−4 0.95

28

2-D compressible Euler equations

ρρuρvE

t

+

ρuρu2 + pρuv

u(E + p)

x

+

ρvρuv

ρv2 + pv(E + p)

y

= 0

EOS: E =p

γ − 1+ρ

2(u2 + v2), γ = const

• Boundary conditions:

– left: inflow

– right: outflow

– top, bottom, circle: solid wall

I II

29

Example — No Shock - Vertically Moving Ball

Initial Data:

ρ(x, y, 0) ≡ p(x, y, 0) ≡ 1, u(x, y, 0) ≡ v(x, y, 0) ≡ 0

Vertical Movement of the Cylinder:

xc(t) ≡ 0.5, yc(t) = 0.5 + 0.1 sin(10πt)

30

∆ x=∆ y=1/400, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/400, t=0.2

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.2

0 0.5 10

0.2

0.4

0.6

0.8

1

31

Example — No Shock - Diagonally Moving Ball

Initial Data:

ρ(x, y, 0) ≡ p(x, y, 0) ≡ 1, u(x, y, 0) ≡ v(x, y, 0) ≡ 0

Diagonal Movement of the Cylinder:

xc(t) = yc(t) = 0.5 +0.1√

2sin(10πt)

32

∆ x=∆ y=1/400, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/400, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

33

Example — Moving Shock - Moving Ball

Initial Data (Right-Moving Shock):

I: ρ = 43, u = 35

99, v = 0, p = 32

II: ρ = 1, u = 0, v = 0, p = 1

Vertical Movement of the Cylinder:

xc(t) ≡ 0.5, yc(t) = 0.5 + 0.1 sin(10πt)

34

∆ x=∆ y=1/400, t=0.05

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/400, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.05

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.1

0 0.5 10

0.2

0.4

0.6

0.8

1

35

∆ x=∆ y=1/400, t=0.15

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/400, t=0.2

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.15

0 0.5 10

0.2

0.4

0.6

0.8

1

∆ x=∆ y=1/800, t=0.2

0 0.5 10

0.2

0.4

0.6

0.8

1

36

Mass conservation error

t = 0.05 t = 0.1∆x = ∆y Error Rate Error Rate

1/100 5.056 · 10−4 – 3.984 · 10−3 –1/200 2.453 · 10−4 1.04 2.513 · 10−3 0.661/400 2.105 · 10−4 0.22 1.879 · 10−3 0.421/800 9.038 · 10−5 1.22 1.017 · 10−3 0.89

t = 0.15 t = 0.2∆x = ∆y Error Rate Error Rate

1/100 3.505 · 10−3 – 7.979 · 10−3 –1/200 2.096 · 10−3 0.74 4.410 · 10−3 0.861/400 1.462 · 10−3 0.52 2.992 · 10−3 0.561/800 8.112 · 10−4 0.85 1.857 · 10−3 0.69

37

Second-Order Boundary Conditions

38

1-D Finite-Difference Scheme

dUjdt

= −fj+1

2− fj−1

2

∆x, j = 1, . . . , J, Uj(t) :≈ U(xj, t)

The numerical fluxes fj+12 are computed as follows:

• Split the flux function f as

f(Uj) = f+j + f−j , f±j :=

1

2

(f(Uj)± ajUj

), aj := |uj|+ cj

• Evaluate the values of f+ and f− at the cell interfaces xj+12:

fEj := f+

j +∆x

2(fx)

+j , fW

j := f−j −∆x

2(fx)

−j ,

where the slopes are computed using the generalized minmod limiter

• The numerical fluxes are given by

fj+12

= fEj + fW

j+1.

39

Second-Order Boundary Conditions – 1-DxB

x xJ

xJ+1

xJ−1 J+2

More accurate solid wall boundary conditions:

u(xB) = x′B

∂p

∂x

∣∣∣∣x=xB

= −ρ(xB)x′′B

∂ρ

∂x

∣∣∣∣x=xB

=1

c2(xB)· ∂p∂x

∣∣∣∣x=xB

= − ρ(xB)

c2(xB)x′′B

, c :=

√γp

ρ

Second-order discretization:

αugh + (1− α)uJ = x′B

pgh − pJ∆x

= − [αρgh + (1− α)ρJ ]x′′B

ρgh − ρJ∆x

= −αρgh + (1− α)ρJαc2gh + (1− α)c2J

x′′B

, α :=xB − xJ

∆x

40

Second-Order Boundary Conditions – 2-D

• Internal points (xj, yk) ∈ Ω ((j, k) ∈ I).

• Ghost points (xj, yk) ((j, k) ∈ G).

• Inactive points. These are grid points located outside of Ω, but notghost points.

41

n

τ

Ω

n

τ

Ω

φ: level-set function, V (x, y, t): prescribed normal boundary velocity,

∂Ω :∂φ

∂t+ V |∇φ| = 0.

(x, y) ∈ R2 : φ(x, y) < 0

: domain Ω

(x, y) ∈ R2 : φ(x, y) = 0

: boundary ∂Ω(x, y) ∈ R2 : φ(x, y) > 0

: obstacle

Example – signed distance function:

φ(x, y) =

−dist

((x, y), ∂Ω

), if (x, y) ∈ Ω

dist((x, y), ∂Ω

), if (x, y) /∈ Ω

n and τ : normal and tangential unit vectorsκ: signed curvature of ∂Ω

42

• Condition on the normal component of the velocity: un = V

• Condition on the pressure:

∂p

∂n= −ρu2

τκ− ρuτ∂τ

∂t· n− ρDV

Dt

whereDV

Dt:=

∂V

∂t+ u

∂V

∂x+ v

∂V

∂yand

∂τ

∂t· n = −∂φ

∂x· ∂

∂y ∂t+∂φ

∂y· ∂

∂x ∂t

• Condition on the density:

∂ρ

∂n=

ρ

γp· ∂p∂n

• Condition on the tangential component of the velocity:

∂uτ∂n

=∂V

∂τ+ uτκ

43

1-D Accuracy Test

• Computational domain: [0, 1]

• Solid wall boundary conditions imposed at both ends

• Left boundary is fixed, right boundary oscillates according to the a-prioriprescribed equation of motion

xB(0) = 0.9, x′B(t) = 0.25 sin3(2πt).

• The initial data: ρ(x, 0) ≡ 1, u(x, 0) ≡ 0, p(x, 0) ≡ 1

∆x ‖ρ∆x − ρ2∆x‖1 r1 ‖ρ∆x − ρ2∆x‖∞ r∞1/400 2.05 · 10−4 – 3.90 · 10−3 –1/800 5.03 · 10−5 2.03 1.31 · 10−3 1.581/1600 1.29 · 10−5 1.96 3.82 · 10−4 1.771/3200 3.25 · 10−6 1.99 1.04 · 10−4 1.88

44

2-D Accuracy Test

• Computational domain: [0, 1]× [0, 1]

• Fluid domain is Ω = [0, 1] × [0, 1] \ BR(t), where BR(t) is the rigid ballof radius R = 0.1 and center (xc(t), yc(t))

• Inflow boundary conditions at the left boundary and outflow boundaryconditions at the right boundary, while the top and the bottom boundariesof the domain as well as the boundaries of the moving circle are assumedto be solid walls.

We compare:

• the second-order boundary conditions

• the first-order boundary conditions, which are obtained using

∂ρ

∂n= 0, un = V,

∂uτ∂n

= 0,∂p

∂n= 0.

45

To better illustrate the advantages of the second-order boundary treatment,we will plot the 1-D slices of the computed solutions along the threedirections:

46

2-D Accuracy Test

We consider a simple wave that propagates around a steady disk withxc(t) ≡ 0.6 and yc(t) ≡ 0.5 in a constant medium.

The initial conditions are

(ρ, u, v, p) =

(ρ(x, y), u(x, y), 0, p(x, y)

), if |x− 0.35| < 0.25,

(ρ0, 0, 0, p0

), otherwise,

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0.9

1

1.1

1.2

1.3

1.4

1.5

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0.9

1

1.1

1.2

1.3

1.4

1.5

47

∆x = ∆y ‖ρ∆x − ρ2∆x‖1 rate ‖u∆x − u2∆x‖1 rate1/100 2.71 · 10−3 – 2.62 · 10−3 –1/200 1.09 · 10−3 1.31 1.08 · 10−3 1.281/400 3.12 · 10−4 1.80 3.11 · 10−4 1.80

48

Example — Shock Hitting a Steady Ball

First-order BC (left) vs. second-order BC (right)

49

Example — Shock Hitting a Steady Ball

First-order BC (left) vs. second-order BC (right)

50

Example — Slow Moving Ball

First-order BC (left) vs. second-order BC (right)

51

Example — Slow Moving Ball

First-order BC (left) vs. second-order BC (right)

52

Example — Slow Moving Ball

First-order BC (left) vs. second-order BC (right)

53

Multifluid Example– Light Cylindrical Helium Bubble

−1.5 −1 −0.5 0 0.5 1 1.5

−0.4

−0.2

0

0.2

0.4

γ=7/5 γ=5/3

If x > 0.75

ρ =4

3, u = − 707

2000, v = 0, p =

3

2.

Inside the bubble

ρ =4

29, u = v = 0, p = 1.

If x < 0.75ρ = 1, u = 0, v = 0, p = 1.

54

−1.5 −1 −0.5 0 0.5 1 1.5

−0.4

−0.2

0

0.2

0.4

γ=7/5 γ=5/3

Upon hitting the bubble, the shock wave partly refracts, and partly reflects.The refracted shock is curved and propagates faster inside the helium bubblethan in the air, as sound speed in helium is higher than sound speed inair. The bubble compresses under the impact of the shock and is set intomotion. Being lighter than air, the helium accelerates more under theimpact of the shock, and shear is produced across the bubble interface. Therefracted shock sweeps over the bubble, and continues to interacts withthe bubble interface, giving rise to highly complicated refraction patterns.After the shock completes its sweep over the bubble, the bubble continuesto evolve slowly into a familiar kidney shape as a result of the vorticitygenerated at the bubble interface, before losing its integrity and breakingup. Interface roll-up due to shear instability may be observed, as well aswave reflection from the solid top/bottom boundaries.

55

56

57

Multifluid Example – Heavy Cylindrical Bubble

−1.5 −1 −0.5 0 0.5 1 1.5

−0.4

−0.2

0

0.2

0.4

γ=1.4 γ=1.249

If x > 0.75

ρ =4

3, u = − 707

2000, v = 0, p =

3

2.

Inside the bubble

ρ = 3.1538, u = v = 0, p = 1.

If x < 0.75ρ = 1, u = 0, v = 0, p = 1.

58

−1.5 −1 −0.5 0 0.5 1 1.5

−0.4

−0.2

0

0.2

0.4

γ=1.4 γ=1.249

Upon being hit by the shock wave, the bubble compresses and undergoesa deformation, and the shock partly reflects and partly refracts. The speedof sound inside the R22 bubble is lower than outside, causing the refractedshock wave to move more slowly than the shock outside the bubble. Thebubble is heavier than the surrounding air, and accelerates less than the airunder the impact of the shock. As a result, vorticity is generated at thebubble interface. The refracted shock can be observed to focus inside thebubble, causing a rise in pressure and resulting in a visible forward jet alongthe center of the bubble. The shear at the boundary interface causes theinterface to roll-up, as the bubble continues to evolve under the inducedvorticity field.

59

60

61

2-D Hughes Pedestrian Flow Model

ρt + f(ρ, φx)x + g(ρ, φy)y = 0

||∇φ|| = 1

u

• ρ: pedestrian density

• u = umax

(1− ρ

ρmax

): isotropic walking speed

• umax: free-flow speed

• ρmax: jam density

• φ: cost potential function satisfying the Eikonal equation

• (f, g)T : flux given by (f, g)T = −ρu ∇φ||∇φ||

= −ρu2∇φ

The pedestrian route choice strategy satisfies the reactive user equilibriumprinciple in which a pedestrian choose a route to minimize the instantaneoustravel cost to the destination

62

Inside the obstacles and at solid wall boundaries:

ρ ≡ 0

φ ≡ φmax, φmax: very large fixed positive number

At exits: φ ≡ 063

Some References

• Introduced as a tool to design waliking facilities in

[Hughes; 2002][Huang, Wong, Zhang, Shu, Lam; 2009]

• Used to study pedestrian flows in the domain with obstacles in

[Xia, Wong, Zhang, Shu, Lam; 2008][Huang, Wong, Zhang, Shu, Lam; 2009]

• Numerical methods have been developed in

[Xia, Wong, Zhang, Shu, Lam; 2008] (DG on triangular meshes)[Huang, Wong, Zhang, Shu, Lam; 2009] (FD 5-order WENO)

64

Three Types of Cells:Interior, Mixed, Obstacle

65

Numerical Challenges

• We update the solution in time in the interior cells only, while the mixedcell data required for numerical flux function evaluation are obtainedusing an interpolation procedure

• Interior cells: the solution is evolved using the second-order semi-discretecentral-upwind (CU) scheme

• The CU scheme, however, cannot be directly applied, since the fluxdepends on the derivatives of the cost potential function φ ⇒ we takeadvantage of the fact that CU schemes are not based on (approximate)Riemann problem solvers and the only upwinding information requiredis the estimate of one-sided local speeds of propagation

• Additional source of difficulty: the flux is implicitly dependent onthe density ρ through the Eikonal equation ⇒ We apply the fastsweeping method to evolve the cost potential in the interior and mixedcells, while keeping its values large in obstacle cells

66

Numerical Examples

• Domain: [0, 100]× [0, 50]

• Upper and lower boundaries: solid walls, we add one layer of obstaclecells, in which we set φ = φmax

• the initial density is ρ(x, y, 0) ≡ 0 and the pedestrians enter the domainfrom the left, exit from the right

67

Numerical Examples

1. We take the solid obstacle to be the disk of radius 10 centered at (50, 20)and the exit is on the right between y = 10 and y = 40.

2. The obstacle is shifted down by 8.5 so that the lower passage gets verynarrow, which is a problematic situation for the naive method, whichextends the obstacle and thus almost blocks the lower passage.

3. We make two substantial modifications to the data from Example 1. First,we take a larger circular obstacle of radius 15 centered at (81.5, 25).Second, we take a more narrow exit on the right being now betweeny = 15 and y = 35. This makes the pedestrians to get substantiallyblocked when the obstacle is extended by the naive method.

68

Example 1

t = 30

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 60

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 120

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 180

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

69

Setting for the “naive” approach

70

Example 2

t = 30

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 30

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 60

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 60

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

We compare the proposed method (left) with the “naive” one (right)

71

t = 90

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 90

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 120

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 120

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

72

t = 150

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 150

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 180

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 180

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

73

Example 3

t = 60

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 60

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 120

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 120

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

We compare the proposed method (left) with the “naive” one (right)

74

t = 180

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 180

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 240

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 240

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

75

t = 300

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 300

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 360

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

t = 360

0 20 40 60 80 1000

10

20

30

40

50

0

2

4

6

8

10

76

THANK YOU!

77