A high-order unstaggered constrained transport method for the 3D - - PowerPoint PPT Presentation

a high order unstaggered constrained transport method for
SMART_READER_LITE
LIVE PREVIEW

A high-order unstaggered constrained transport method for the 3D - - PowerPoint PPT Presentation

A high-order unstaggered constrained transport method for the 3D ideal magnetohydrodynamic equations based on the method of lines Bertram Taetz (joint work with C. Helzel & J.A. Rossmanith) Department of Numerical Mathematics


slide-1
SLIDE 1

A high-order unstaggered constrained transport method for the 3D ideal magnetohydrodynamic equations based

  • n the method of lines

Bertram Taetz

(joint work with C. Helzel & J.A. Rossmanith)

Department of Numerical Mathematics Ruhr-University Bochum Research unit 1048: “Instabilities, turbulence and transport in cosmic magnetic fields”

June 28, 2012

1 / 24

slide-2
SLIDE 2

Contents

1

Short introduction to the ideal Magnetohydrodynamic (MHD) equations and the numerical challenge related to ∇ · B = 0

2

A constrained transport method in 3D

3

Numerical Tests

2 / 24

slide-3
SLIDE 3

Motivation

Ball mapping taken from [Calhoun et al., 2008] Observation of Coronal mass ejection (CME) taken from [SOHO,2002]

3 / 24

slide-4
SLIDE 4

The ideal MHD equations in conservation form

[Brackbill & Barnes, 1980]

    ρ ρu E B    

t

+ ∇ ·     ρu ρuu +

  • p + 1

2|B|2

Id − BB u

  • E + p + 1

2|B|2

− B(u · B) uB − Bu     = 0 ∇ · B = 0 the thermal pressure is related via the ideal gas law: p = (γ − 1)(E − 1 2||B||2 − 1 2ρ||u||2)

4 / 24

slide-5
SLIDE 5

Problems due to insufficient control of ∇ · B

Figure: taken from [Rossmanith, 2006].

5 / 24

slide-6
SLIDE 6

Approaches to control ∇ · B

Numerical methods for ideal MHD must in general satisfy (or at least control) some discrete version of the divergence free condition on the magnetic field. Some known methods to control ∇ · B on the discrete level: projection methods, e.g. [T´

  • th, 2000]

8-wave-formulation, [Powell, 1994] divergence cleaning, [Dedner et al.,2002] flux-distribution methods, [Torrilhon,2003],[Mishra & Tadmor, 2012] contrained transport (CT) methods, e.g. [Evans and Hawley, 1988, Rossmanith, 2006]

6 / 24

slide-7
SLIDE 7

The idea of CT in 3D

Consider the induction equation Bt + ∇ × (B × u) = 0 and assume that u is a given vector valued function. Set B = ∇ × A to obtain ∇ × (At + (∇ × A) × u) = 0 ⇒ At + (∇ × A) × u = −∇ψ ψ is an arbitrary scalar function taken to be ψ = 0 (Weyl gauge) in the following. Different choices of ψ represent different gauge conditions. See e.g. [C.Helzel, J.A.Rossmanith & B.Taetz, 2011] for discussions on different choices.

7 / 24

slide-8
SLIDE 8

The evolution of the magnetic potential

At + N1(u) Ax + N2(u) Ay + N3(u) Az = 0, with N1 =   −u2 −u3 u1 u1   , N2 =   u2 −u1 −u3 u2   , N3 =   u3 u3 −u1 −u2   . This system is weakly hyperbolic, which means that we do not have a full set of linearly independent eigenvectors in all directions.

8 / 24

slide-9
SLIDE 9

The evolution of the magnetic potential

At + N1(u) Ax + N2(u) Ay + N3(u) Az = 0, with N1 =   −u2 −u3 u1 u1   , N2 =   u2 −u1 −u3 u2   , N3 =   u3 u3 −u1 −u2   . This system is weakly hyperbolic, which means that we do not have a full set of linearly independent eigenvectors in all directions.

8 / 24

slide-10
SLIDE 10

Weak hyperbolicity of the system matrix

The system matrix in an arbitrary direction n ∈ S2 is n1N1 +n2N2 +n3N3 =   n2u2 + n3u3 −n1u2 −n1u3 −n2u1 n1u1 + n3u3 −n2u3 −n3u1 −n3u2 n1u1 + n2u2   the eigenvalues are λ =

  • 0, n · u, n · u
  • ;

the eigenvectors read R =   n1 n2u3 − n3u2 u1 (u · n) − n1u2 n2 n3u1 − n1u3 u2 (u · n) − n2u2 n3 n1u2 − n2u1 u3 (u · n) − n3u2   ; the determinant of R can be written as det(R) = −u3 cos(α) sin2(α), α is the angle between n and u. → Thus we do not have a full set of linearly independent eigenvectors in all directions n.

9 / 24

slide-11
SLIDE 11

Weak hyperbolicity of the system matrix

The system matrix in an arbitrary direction n ∈ S2 is n1N1 +n2N2 +n3N3 =   n2u2 + n3u3 −n1u2 −n1u3 −n2u1 n1u1 + n3u3 −n2u3 −n3u1 −n3u2 n1u1 + n2u2   the eigenvalues are λ =

  • 0, n · u, n · u
  • ;

the eigenvectors read R =   n1 n2u3 − n3u2 u1 (u · n) − n1u2 n2 n3u1 − n1u3 u2 (u · n) − n2u2 n3 n1u2 − n2u1 u3 (u · n) − n3u2   ; the determinant of R can be written as det(R) = −u3 cos(α) sin2(α), α is the angle between n and u. → Thus we do not have a full set of linearly independent eigenvectors in all directions n.

9 / 24

slide-12
SLIDE 12

Weak hyperbolicity of the system matrix

The system matrix in an arbitrary direction n ∈ S2 is n1N1 +n2N2 +n3N3 =   n2u2 + n3u3 −n1u2 −n1u3 −n2u1 n1u1 + n3u3 −n2u3 −n3u1 −n3u2 n1u1 + n2u2   the eigenvalues are λ =

  • 0, n · u, n · u
  • ;

the eigenvectors read R =   n1 n2u3 − n3u2 u1 (u · n) − n1u2 n2 n3u1 − n1u3 u2 (u · n) − n2u2 n3 n1u2 − n2u1 u3 (u · n) − n3u2   ; the determinant of R can be written as det(R) = −u3 cos(α) sin2(α), α is the angle between n and u. → Thus we do not have a full set of linearly independent eigenvectors in all directions n.

9 / 24

slide-13
SLIDE 13

Weak hyperbolicity of the system matrix

The system matrix in an arbitrary direction n ∈ S2 is n1N1 +n2N2 +n3N3 =   n2u2 + n3u3 −n1u2 −n1u3 −n2u1 n1u1 + n3u3 −n2u3 −n3u1 −n3u2 n1u1 + n2u2   the eigenvalues are λ =

  • 0, n · u, n · u
  • ;

the eigenvectors read R =   n1 n2u3 − n3u2 u1 (u · n) − n1u2 n2 n3u1 − n1u3 u2 (u · n) − n2u2 n3 n1u2 − n2u1 u3 (u · n) − n3u2   ; the determinant of R can be written as det(R) = −u3 cos(α) sin2(α), α is the angle between n and u. → Thus we do not have a full set of linearly independent eigenvectors in all directions n.

9 / 24

slide-14
SLIDE 14

An operator splitting approach (dimensional splitting)

Sub-problem 1: A1

t − u2A2 x − u3A3 x = 0,

A2

t + u1A2 x = 0,

A3

t + u1A3 x = 0,

Sub-problem 2: A1

t + u2A1 y = 0,

A2

t − u1A1 y − u3A3 y = 0,

A3

t + u2A3 y = 0,

Sub-problem 3: A1

t + u3A1 z = 0,

A2

t + u3A2 z = 0,

A3

t − u1A1 z − u2A2 z = 0.

developed for Cartesian grids to 2nd order of accuracy using Strang splitting.

10 / 24

slide-15
SLIDE 15

A high-order unsplit spatial discretization for weakly hyperbolic systems

Consider the integral form of a weakly hyperbolic system: qt + N(x)qx = 0. We write the semi-discrete form for the cell-averages Qi(t) as: ∂tQi(t) = − 1 ∆x(A+∆Qi−1/2 + A−∆Qi+1/2 + A∆Qi) with A∆Qi := xi+ 1

2

xi− 1

2

˜ Ni(x) ˜ qi,x dx, A−∆Qi− 1

2 + A+∆Qi− 1 2

= lim

ε→0

xi− 1

2 +ǫ

xi− 1

2 −ε

˜ N(x)

i− 1

2 (t, x)

  • x dx.

11 / 24

slide-16
SLIDE 16

A high-order unsplit spatial discretization for weakly hyperbolic systems

Consider the integral form of a weakly hyperbolic system: qt + N(x)qx = 0. We write the semi-discrete form for the cell-averages Qi(t) as: ∂tQi(t) = − 1 ∆x(A+∆Qi−1/2 + A−∆Qi+1/2 + A∆Qi) with A∆Qi := xi+ 1

2

xi− 1

2

˜ Ni(x) ˜ qi,x dx, A−∆Qi− 1

2 + A+∆Qi− 1 2

= lim

ε→0

xi− 1

2 +ǫ

xi− 1

2 −ε

˜ N(x)

i− 1

2 (t, x)

  • x dx.

11 / 24

slide-17
SLIDE 17

A high-order unsplit spatial discretization for weakly hyperbolic systems

Consider the integral form of a weakly hyperbolic system: qt + N(x)qx = 0. We write the semi-discrete form for the cell-averages Qi(t) as: ∂tQi(t) = − 1 ∆x(A+∆Qi−1/2 + A−∆Qi+1/2 + A∆Qi) with A∆Qi := xi+ 1

2

xi− 1

2

˜ Ni(x) ˜ qi,x dx, A−∆Qi− 1

2 + A+∆Qi− 1 2

= lim

ε→0

xi− 1

2 +ǫ

xi− 1

2 −ε

˜ N(x)

i− 1

2 (t, x)

  • x dx.

11 / 24

slide-18
SLIDE 18

Definition of fluctuations

Use regularization Qε

i− 1

2 (t, x) with a straight-line path

Ψi− 1

2 = Q−

i− 1

2 + l

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

0 ≤ l ≤ 1 to derive A−∆Qi− 1

2 + A+∆Qi− 1 2

= N

  • Ψi− 1

2 1 2 (N− i−1/2+N+ i−1/2)

(Q+

i− 1

2 − Q−

i− 1

2 ).

Use generalized Rusanov-flux similar to [Castro et al., 2010]: A−∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 −

αi−1/2

≥|λp

i−1/2| ∀p

Id

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

A+∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 + αi−1/2 Id
  • Q+

i− 1

2 − Q−

i− 1

2

  • .

12 / 24

slide-19
SLIDE 19

Definition of fluctuations

Use regularization Qε

i− 1

2 (t, x) with a straight-line path

Ψi− 1

2 = Q−

i− 1

2 + l

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

0 ≤ l ≤ 1 to derive A−∆Qi− 1

2 + A+∆Qi− 1 2

= N

  • Ψi− 1

2 1 2 (N− i−1/2+N+ i−1/2)

(Q+

i− 1

2 − Q−

i− 1

2 ).

Use generalized Rusanov-flux similar to [Castro et al., 2010]: A−∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 −

αi−1/2

≥|λp

i−1/2| ∀p

Id

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

A+∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 + αi−1/2 Id
  • Q+

i− 1

2 − Q−

i− 1

2

  • .

12 / 24

slide-20
SLIDE 20

Definition of fluctuations

Use regularization Qε

i− 1

2 (t, x) with a straight-line path

Ψi− 1

2 = Q−

i− 1

2 + l

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

0 ≤ l ≤ 1 to derive A−∆Qi− 1

2 + A+∆Qi− 1 2

= N

  • Ψi− 1

2 1 2 (N− i−1/2+N+ i−1/2)

(Q+

i− 1

2 − Q−

i− 1

2 ).

Use generalized Rusanov-flux similar to [Castro et al., 2010]: A−∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 −

αi−1/2

≥|λp

i−1/2| ∀p

Id

  • Q+

i− 1

2 − Q−

i− 1

2

  • ,

A+∆Qi−1/2 := 1 2

  • N
  • Ψi−1/2 + αi−1/2 Id
  • Q+

i− 1

2 − Q−

i− 1

2

  • .

12 / 24

slide-21
SLIDE 21

A numerical example

Consider the weakly hyperbolic system: q1 q2

  • t

+ 1 1 1

  • N

q1 q2

  • x

= 0 with initial data: q1(x, 0) = q2(x, 0) = e−(10x)2.

−1 −0.8 −0.6 −0.4 −0.2 0.2 0.4 0.6 0.8 1 −6 −4 −2 2 4 6 q1 x Current time = 0.200000 −1 −0.8 −0.6 −0.4 −0.2 0.2 0.4 0.6 0.8 1 −6 −4 −2 2 4 6 q2 x −1 −0.8 −0.6 −0.4 −0.2 0.2 0.4 0.6 0.8 1 −6 −4 −2 2 4 6 q1 x Current time = 0.500000 −1 −0.8 −0.6 −0.4 −0.2 0.2 0.4 0.6 0.8 1 −6 −4 −2 2 4 6 q2 x

13 / 24

slide-22
SLIDE 22

High-order 3D extension for mapped grids

The semi-discrete form reads: ∂tQi,j,k(t) = −1 |Ci,j,k|( A∆Qi,j,k

  • inner integral

+

3

  • n=1

[(|A|( ˘ A+∆Q))In + (|A|( ˘ A−∆Q))In+en]). E.g. on the x-lower face with index I1 = (i − 1/2, j, k), we have: (|A| ˘ A±∆Q)I1 = 1 1 [ ˘ A±∆Q( X(0, η, ζ)

  • local trilinear map

)

  • a(η, ζ)]I1 dηdζ
  • area element

On a Gaussian point Il,m

1

with corresponding n, Q+, Q− the fluctuations are: ˘ A+∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m + α(Q+, Q−)Id)(Q+ − Q−)

˘ A−∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m − α(Q+, Q−)Id)(Q+ − Q−).

14 / 24

slide-23
SLIDE 23

High-order 3D extension for mapped grids

The semi-discrete form reads: ∂tQi,j,k(t) = −1 |Ci,j,k|( A∆Qi,j,k

  • inner integral

+

3

  • n=1

[(|A|( ˘ A+∆Q))In + (|A|( ˘ A−∆Q))In+en]). E.g. on the x-lower face with index I1 = (i − 1/2, j, k), we have: (|A| ˘ A±∆Q)I1 = 1 1 [ ˘ A±∆Q( X(0, η, ζ)

  • local trilinear map

)

  • a(η, ζ)]I1 dηdζ
  • area element

On a Gaussian point Il,m

1

with corresponding n, Q+, Q− the fluctuations are: ˘ A+∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m + α(Q+, Q−)Id)(Q+ − Q−)

˘ A−∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m − α(Q+, Q−)Id)(Q+ − Q−).

14 / 24

slide-24
SLIDE 24

High-order 3D extension for mapped grids

The semi-discrete form reads: ∂tQi,j,k(t) = −1 |Ci,j,k|( A∆Qi,j,k

  • inner integral

+

3

  • n=1

[(|A|( ˘ A+∆Q))In + (|A|( ˘ A−∆Q))In+en]). E.g. on the x-lower face with index I1 = (i − 1/2, j, k), we have: (|A| ˘ A±∆Q)I1 = 1 1 [ ˘ A±∆Q( X(0, η, ζ)

  • local trilinear map

)

  • a(η, ζ)]I1 dηdζ
  • area element

On a Gaussian point Il,m

1

with corresponding n, Q+, Q− the fluctuations are: ˘ A+∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m + α(Q+, Q−)Id)(Q+ − Q−)

˘ A−∆Ql,m

i−1/2,j,k

= 1 2(N

  • Ψ(n)l,m − α(Q+, Q−)Id)(Q+ − Q−).

14 / 24

slide-25
SLIDE 25

The discretization of ∇ × A to high-order and on mapped grids

1 |Ci,j,k|

  • Ci,j,k

B dC = 1 |Ci,j,k|

  • Ci,j,k

∇ × A dC = 1 |Ci,j,k|

  • ∂Ci,j,k

ν × A dA. Conservative computation of B:

15 / 24

slide-26
SLIDE 26

Temporal discretization of the CT method using a SSP Runge Kutta method

Stage 1. Q(1∗)

mhd = Qn mhd + ∆t L1 (Qn mhd) ,

Q(1)

A = Qn A + ∆t L2 (Qn A, Qn mhd) ,

Replace B(1∗) with ∇ × Q(1)

A → Q(1) mhd.

Stage 2. Q(2∗)

mhd = 3

4Qn

mhd + 1

4Q(1)

mhd + 1

4∆t L1(Q(1)

mhd),

Q(2)

A = 3

4Qn

A + 1

4Q(1)

A + 1

4∆t L2(Q(1)

A , Q(1) mhd),

Replace B(2∗) with ∇ × Q(2)

A → Q(2) mhd.

Stage 3. Q(∗)

mhd = 1

3Qn

mhd + 2

3Q(2)

mhd + 2

3∆t L1(Q(2)

mhd),

Qn+1

A

= 1 3Qn

A + 2

3Q(2)

A + 2

3∆t L2(Q(2)

A , Q(2) mhd),

Replace B(∗) with ∇ × Qn+1

A

→ Qn+1

mhd.

16 / 24

slide-27
SLIDE 27

Temporal discretization of the CT method using a SSP Runge Kutta method

Stage 1. Q(1∗)

mhd = Qn mhd + ∆t L1 (Qn mhd) ,

Q(1)

A = Qn A + ∆t L2 (Qn A, Qn mhd) ,

Replace B(1∗) with ∇ × Q(1)

A → Q(1) mhd.

Stage 2. Q(2∗)

mhd = 3

4Qn

mhd + 1

4Q(1)

mhd + 1

4∆t L1(Q(1)

mhd),

Q(2)

A = 3

4Qn

A + 1

4Q(1)

A + 1

4∆t L2(Q(1)

A , Q(1) mhd),

Replace B(2∗) with ∇ × Q(2)

A → Q(2) mhd.

Stage 3. Q(∗)

mhd = 1

3Qn

mhd + 2

3Q(2)

mhd + 2

3∆t L1(Q(2)

mhd),

Qn+1

A

= 1 3Qn

A + 2

3Q(2)

A + 2

3∆t L2(Q(2)

A , Q(2) mhd),

Replace B(∗) with ∇ × Qn+1

A

→ Qn+1

mhd.

16 / 24

slide-28
SLIDE 28

Temporal discretization of the CT method using a SSP Runge Kutta method

Stage 1. Q(1∗)

mhd = Qn mhd + ∆t L1 (Qn mhd) ,

Q(1)

A = Qn A + ∆t L2 (Qn A, Qn mhd) ,

Replace B(1∗) with ∇ × Q(1)

A → Q(1) mhd.

Stage 2. Q(2∗)

mhd = 3

4Qn

mhd + 1

4Q(1)

mhd + 1

4∆t L1(Q(1)

mhd),

Q(2)

A = 3

4Qn

A + 1

4Q(1)

A + 1

4∆t L2(Q(1)

A , Q(1) mhd),

Replace B(2∗) with ∇ × Q(2)

A → Q(2) mhd.

Stage 3. Q(∗)

mhd = 1

3Qn

mhd + 2

3Q(2)

mhd + 2

3∆t L1(Q(2)

mhd),

Qn+1

A

= 1 3Qn

A + 2

3Q(2)

A + 2

3∆t L2(Q(2)

A , Q(2) mhd),

Replace B(∗) with ∇ × Qn+1

A

→ Qn+1

mhd.

16 / 24

slide-29
SLIDE 29

Limiting with respect to the derivative

Consider the 1D scalar advection equation: qt + qx = 0 qt + qx = ǫ(x)qxx Here ǫ(x) is chosen with respect to steep gradients in the derivative. (diffusive limiter inspired by [Persson et al., 2006]) WENO limiter on solution: Diffusive limiter w.r.t. derivative: TVD limiting of

[Rossmanith, 2006]:

17 / 24

slide-30
SLIDE 30

2.5-dimensional accuracy test on mapped grid

0.5 1 0.5 1 1.5 2

Scaled version of [Collela et al., 2011]

x y 0.5 1 0.5 1 1.5 2

B3 at time t=1.0

x y

3rd order of accuracy can be confirmed on mapped grid.

18 / 24

slide-31
SLIDE 31

2.5-dimensional accuracy test on mapped grid

0.5 1 0.5 1 1.5 2

Scaled version of [Collela et al., 2011]

x y 0.5 1 0.5 1 1.5 2

B3 at time t=1.0

x y

3rd order of accuracy can be confirmed on mapped grid.

18 / 24

slide-32
SLIDE 32

2.5-dimensional cloud-shock interaction problem

0.2 0.4 0.6 0.8 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Scaled version of [Collela et al., 2011]

x y 0.2 0.4 0.6 0.8 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Inclusion grid [Calhoun et al., 2008]

x y

19 / 24

slide-33
SLIDE 33

Numerical experiments in 2.5-dimensions

The 2.5-dimensional cloud-shock interaction problem. Mesh: 512×512 (Left hand side) scheme of [Rossmanith, 2006] that only uses A3 (scalar equation) (Right hand side) the unsplit scheme using 2-step SSP-RK time stepping and diffusive limiting on derivative on full vector potential A.

20 / 24

slide-34
SLIDE 34

Numerical experiments 3D (Orzag-Tang vortex)

2 4 6 8 2 4 6 8 1 2 3 4 5 6 7 y x z

21 / 24

slide-35
SLIDE 35

Conclusions

unsplit and unstaggered CT method → suitable for high-order on smooth solutions and high-resolution in the presence of shocks the scheme works on general (possibly non-smoothly varying) mapped grids in 2D and 3D scheme should be suitable for adaptive mesh refinement and parallel computing due to unstaggered and hyperbolic nature.

22 / 24

slide-36
SLIDE 36

Outlook

application using 3D spherical grids of [Calhoun et al., 2008] extension to high-order one-step schemes (ADER schemes) extension to more general MHD models (two-fluid MHD)

23 / 24

slide-37
SLIDE 37

References

  • C. Helzel, J.A. Rossmanith, and B. Taetz. An unstaggered constrained

transport method for the 3D ideal magnetohydrodynamic equations. J.

  • Comp. Phys., 227: 9527–9553, 2011.
  • C. Helzel, J.A. Rossmanith, B. Taetz, A high-order unstaggered

constrained transport method for the 3d ideal magnetohydrodynamic equations based on the method of lines, arXiv:2203.3760, [http://arxiv.org/abs/1203.3760]

24 / 24