Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck...

39
Finite Difference vs. Discontinuous Galerkin: Efficiency in Smooth Models Mario Bencomo TRIP Review Meeting 2014 1

Transcript of Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck...

Page 1: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

Finite Difference vs. Discontinuous Galerkin:Efficiency in Smooth Models

Mario Bencomo

TRIP Review Meeting 2014

1

Page 2: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

PROBLEM STATEMENT

Acoustic Equations (pressure-velocity form):

ρ(x)∂v∂ t

(x, t) + ∇p(x, t) = 0 (1a)

β (x)∂p∂ t

(x, t) + ∇ ·v(x, t) = f (x, t) (1b)

for x = [x ,z]T ∈ Ω and t ∈ [0,T ],

p = pressurev = [vx ,vz ]T = velocity fieldsρ = densityβ = compressibility = 1/κ

Boundary and initial conditions:

p = 0, on ∂ Ω× [0,T ]

p(x,0) = 0 and v(x,0) = 0

2

Page 3: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

MOTIVATION

Why DG?viable numerical method for forward modeling(discontinuous media)outperforms FD methods when using mesh aligningtechniques for complex discontinuous media

Why smooth media?smooth trends in bulk modulus and density are observed inreal dataforward map applied to smooth background model ininversion

Comparison between FD and DG in smooth media has notbeen done before!

3

Page 4: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

FOCUS OF RESEARCH

Disclaimer: limited comparison

will not incorporate HPC architectures (stuck with Matlabfor DG code)FD code in IWAVE (implemented in C)

What kind of comparison?counting FLOPs for a prescribed accuracy

4

Page 5: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

OUTLINE

1 Backgroundliterature reviewmotivate study

2 Methodsstaggered finite difference methoddiscontinuous Galerkin method

3 Numerical Experiments and Results

4 Conclusions

5 Future Work

5

Page 6: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:Finite Difference (FD) Method

Will be considering 2-2 and 2-4 staggered grid finite differenceschemes (Virieux 1986, Levander 1988). Numerical properties wellknown:

Stability criterion:

∆t <1√2Vp

h (2-2 FD)

∆t <0.606

Vph (2-4 FD)

where h = grid size, and Vp = compressional velocity.Common rule of thumb for small grid dispersion:10 or 5 grid points per wavelength, for the shortestwavelength (2-2 and 2-4 resp.)

6

Page 7: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:Discontinuous Galerkin (DG) Method

First introduced for the neutron transport problem (Lesaint andRaviart 1974):

gained popularity due to geometric flexibility and mesh andpolynomial order adaptivity (hp adaptivity)can yield explicit schemes after inverting block diagonalmatrix

Stability criterion:will be considering Runge-Kutta DG (RK-DG) scheme withupwind flux (Hesthaven and Warburton, 2002, 2007):

∆t ≤ CFLvmax

minΩ

h

where CFL = O(N−2)

7

Page 8: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:Discontinuous Galerkin (DG) Method

Grid dispersion and dissipation errors:

dissipation due to upwind flux

Ainsworth (2004):

study of dissipation and dispersion error under hp refinement,applied to linear advection equation

polynomial order N can be chosen such that dispersion errordecays super-exponentially if 2p + 1≈ chN, for given mesh sizeh, wavenumber k , and some constant c > 1

Hu et al. (1999):

anisotropic dispersion and dissipation errors in quadrilateral andtriangular uniform meshes for DG applied to 2D wave problems

8

Page 9: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:RK-DG and Seismic Modeling

Wang (2009), and Wang et al.(2010)comparison of FD and DG in 2D acoustic wave propagation withdiscontinuous media

interface error over discontinuities reduce convergence rates ofFD methods to 1st order while DG scheme with aligned meshyields sub-optimal second order rates

Figure: Dome model from Wang (2009). 9

Page 10: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:RK-DG ans Seismic Modeling

Simonaho et al. (2012), Applied Acoustics journal:DG simulations of 3D acoustic wave propagation compared toreal data; pulse propagation and scattering from a cylinder

Figure: Snapshots of (a) simulated and (b) measured reassure field. 10

Page 11: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:RK-DG and Seismic Modeling

Zhebel et al. (2013):perform study on parallel scalability of FD and finite elementmethods (mass lumped finite elements and DG) for 3D acousticwave propagation with piecewise constant media with dippinginterface

hardware: Intel Sandy Bridge dual 8-core machine and Intel’s61-core Xeon Phi

11

Page 12: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:RK-DG and Seismic Modeling

Zhebel et al. (2013)

12

Page 13: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

BACKGROUND:DG and Smooth Coefficients

Quadrature-free implementations (Shu 1998, Hesthaven andWarburton 2007):

assumes that media is piecewise constant on mesh

lower memory cost associated with storing DG operators

Quadrature based implementations (Ober et al. 2010, Collis et al.2010):

weighted inner products between basis functions computed viaquadrature

This study will compare both implementations, along withFD methods for smoothly varying coefficients.

13

Page 14: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Finite Difference (FD)

2-2k staggered FD method applied to 2D acoustic waveequation in first order form:

(vx )n+1i+ 1

2 ,j= (vx )n

i+ 12 ,j

+ ∆t1

(ρ)i+ 12 ,j

−Dh,(k)

x (p)n+ 1

2

i+ 12 ,j

(vy )n+1

i ,j+ 12

= (vy )ni ,j+ 1

2+ ∆t

1(ρ)i ,j+ 1

2

−Dh,(k)

y (p)n+ 1

2

i ,j+ 12

(p)

n+ 12

ij = (p)n− 1

2ij + ∆t

1(β )ij

−Dh,(k)

x (vx )ni ,j −Dh,(k)

y (vy )ni ,j + (f )n

i ,j

,

where pn+ 12

i ,j = p(ih, jh,(n + 12)∆t), and

Dh,(k)x f (x0) :=

1h

k

∑n=1

a(k)n

f(

x0 +(

n− 12

)h)− f(

x0−(

n− 12

)h)

.

14

Page 15: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Method Introduction

Definition: For a given triangulation Th, define approximationspace Wh,

Wh = w : w |τ ∈ PN(τ),∀τ ∈T Nodal DG: Use nodal basis, i.e.,

PN(τ) = span`j(x)N∗j=1 ∀τ ∈T ,

whereLagrange polynomials `j(xi) = δij for given nodal setxiN

∗i=1 ⊂ τ

N∗ = 12(N + 1)(N + 2), a.k.a., degrees of freedom per

triangular element

15

Page 16: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Method Introduction

Example of nodal sets xjN∗

j=1 :

(a) N = 1,N∗ = 3 (b) N = 2,N∗ = 6 (c) N = 3,N∗ = 10

16

Page 17: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Method Introduction

Strong-formulation: find p,vx ,vz ∈Wh such that∫τ

ρ∂vx

∂ tw dx +

∫τ

∂p∂x

w dx +∫

∂τ

nx (p∗−p)w dσ = 0

...

for all w ∈Wh and all τ ∈Th.

Flux term (p∗−p):how “information” propagates from element tot elementplays role in stability of methodderivation of numerical fluxes p∗,v∗ for this case stem fromRiemmann solvers

17

Page 18: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Nodal Coefficient Vectors

Note Wh is finite dimensional space =⇒ need only to solve fornodal coefficients p(xj , t):

p|τ =N∗

∑j=1

p(xj , t)`j (x)

Nodal coefficient vectors:

RN∗

p(t) := [p(x1, t),p(x2, t), . . . ,p(xN∗ , t)]T

vx (t) := · · ·vz(t) := · · ·

RN+1

p(e)(t) := [p(xm1 , t),p(x2, t), . . . ,p(xmN+1 , t)]T

...

18

Page 19: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Semi-Discrete Scheme

From strong formulation: find p,vx ,vz ∈Wh such that∫τ

ρ∂vx

∂ tw dx +

∫τ

∂p∂x

w dx +∫

∂τ

nx (p∗−p)w dσ = 0

...

for all w ∈Wh and all τ ∈Th.

To DG semi-discrete scheme:

M[ρ]ddt

vx (t) + Sx p(t) + ∑e∈∂τ

nx M(e)(

(p(e))∗−p(e))

(t) = 0,

...

for each τ ∈Th.

19

Page 20: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Semi-Discrete Scheme

DG operators:

weighted mass matrix M[ω]ij :=∫

τ

ω`i`j dx, in RN∗×N∗

edge mass matrix M(e)ij :=

∫e`i`mj dσ , in RN∗×(N+1)

α-stiffness matrix Sαij :=

∫τ

`i∂`j

∂αdx, in RN∗×N∗

for ω ∈ ρ,β and α ∈ x ,z.

20

Page 21: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:DG Semi-Discrete Scheme

Explicit Scheme:

ddt

vx (t) =−Dx [ 1ρ

]p(t) + ∑e∈∂τ

nx L(e)[ 1ρ

](

(p(e))∗−p(e))

(t)

...

for each τ ∈Th, where

Dα [ 1ω

] = M[ω]−1Sα , L(e)[ 1ω

] = M[ω]−1M(e)

...

for ω ∈ α,β and α ∈ x ,z.

21

Page 22: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Visualizing DG

After time discretization (leapfrog):

vn+1/2x = vn−1/2

x −∆t

[Dx [ 1

ρ]pn + ∑

e∈∂τ

nxL(e)(

(p(e))∗−p(e))n]

tn+1/2

tn

tn−1/222

Page 23: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Visualizing DG

After time discretization (leapfrog):

vn+1/2x = vn−1/2

x −∆t [Dx [ 1ρ

]pn+ ∑e∈∂τ

nxL(e)(

(p(e))∗−p(e))n

]

tn+1/2

tn

tn−1/2

23

Page 24: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

Visualizing DG

After time discretization (leapfrog):

vn+1/2x = vn−1/2

x −∆t [Dx [ 1ρ

]pn+ ∑e∈∂τ

nxL(e)(

(p(e))∗−p(e))n

]

tn+1/2

tn

tn−1/2

24

Page 25: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Handling Varying Coefficients: Quadrature-Free Approach

Idea: assume ω ∈ ρ,β are constant within τ =⇒ media ispiecewise constant

mass matrix computations∫τ

ω`j`i dx = ω(τ)J(τ)∫

τ

ˆj ˆi d x =⇒M[ω] = ω(τ)J(τ)M

for variable media (LeVeque 2002):

ω(τ) =1|τ|∫

τ

ω dx

25

Page 26: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Handling Varying Coefficients: Quadrature-Free Approach

Compute

Dα [ 1ω

] = 1ω

(c1Dx + c2Dz

), L(e)[ 1

ω] = 1

ωc3L(e),

at run time, and only need to store geometric factors andone copy of operators defined on some reference element(Hesthaven and Warburton 2007).memory storage: K triangular elements, using polynomialorder N,

memory ≈ c1K + c2(N∗×N∗) + c3(N∗× (N + 1))

≈ O(K + N4)

26

Page 27: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

METHODS:Handling Varying Coefficients: With Quadrature

Idea: Compute integrals up to accuracy 2N + Q∫τ

ω`i`j dx

higher accuracyoperators Dx [ 1

ω],Dz [ 1

ω],L(e)[ 1

ω] are computed offline and

storedmemory storage: K triangular elements, using polynomialorder N,

memory ≈ c1K (N∗×N∗) + c2K (N∗× (N + 1))

≈ O(KN4)

27

Page 28: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

NUMERICAL EXPERIMENTS

For all simulations:source term f (x, t) = χ(x)Ψ(t), where

Ψ(t) = Ψ(t ; fpeak ) = Ricker wavelet

χ(x) = χ(x;xc ,δx ) = cosine bump function

with fpeak = 10 Hz and δx = [50 m,50 m]

28

Page 29: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

NUMERICAL EXPERIMENTS:Estimating Convergence Rates

Estimating convergence rates using Richardson extrapolation:

R ≈ log2|ph−ph/2||ph/2−ph/4|

Setuphomogenous model: ρ = 2.3 g/cm3,c = 3 km/suniform triangulation for DG methodfinal time T = 350 ms

29

Page 30: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

NUMERICAL EXPERIMENTS:Estimating Convergence Rates

−100

−200

−400

0

0 200 300

receiver

source

100

−300

−100

−200

−400

0

0 200 300100

−300

h

30

Page 31: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

RESULTS:Estimating Convergence Rates

Figure: Estimated convergence rates for 2-2 and 2-4 FD methods.31

Page 32: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

RESULTS:Estimating Convergence Rates

Figure: Estimated convergence rates for DG methods. 32

Page 33: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

NUMERICAL EXPERIMENTS:Calibration

Idea: compare numerical p from DG and FD to highlydiscretized FD solution

Setup:similar to convergence test, i.e., homogeneous modelfinal time T = 350 ms

fine FD FD 2-2 FD 2-4 DG N = 2 DG N = 4h [m] 0.5 7 10 30 80

33

Page 34: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

RESULTS:Calibration

34

Page 35: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

NUMERICAL EXPERIMENTS:Accuracy and Efficiency

Idea: compare accuracy of methods after traveling multiplewavelengths

Setup:similar to convergence test, i.e., homogeneous modelfinal time T = 750 msfree-surface boundary conditions at top and bottom ofdomain

−300

−600

−1200

0

0 200 300100

−900

35

Page 36: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

RESULTS:Accuracy and Efficiency

36

Page 37: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

RESULTS:Accuracy and Efficiency

fine FD FD 2-2 FD 2-4 DG N = 2 DG N = 4h [m] 0.5 7 10 30 80

GFLOPSruntime [min.]

37

Page 38: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

Pending Work and Future Directions

Pending work:numerical experiments with other smooth models,e.g., Gaussian lens, sinusoidal in depth velocitymodelsfinish implementing staggered DG method (Chung &Engquist, 2009)

energy conservative and optimally convergent

Future directions:incorporate parallel programming

38

Page 39: Finite Difference vs. Discontinuous Galerkin: … Difference vs. Discontinuous Galerkin: ... (stuck with Matlab for DG code) ... Estimated convergence rates for 2-2 and 2-4 FD methods.

References

Brezzi, F., Marini, L., and Sïli, E. (2004). “Discontinuous galerkin methods for first-order hyperbolic problems.”Mathematical models and methods in applied sciences, 14(12):1893-1903.

Chung, E. and Engquist, B. (2009). “Optimal discontinuous galerkin methods for the acoustic wave equation inhigher dimensions.” SIAM Journal on Numerical Analysis, 47(5):3820-3848.

Chung, E. T. and Engquist, B. (2006). “Optimal discontinuous galerkin methods for wave propagation.” SIAM Journalon Numerical Analysis, 44(5):2131-2158.

Cockburn, B. (2003). “Discontinuous Galerkin methods.” ZAMM-Journal of Applied Mathematics and Mechanics/Zeitschrift für Angewandte Mathematik und Mechanik, 83(11):731-754.

Wilcox, Lucas C., et al. “A high-order discontinuous Galerkin method for wave propagation through coupledelasticÐacoustic media.” Journal of Computational Physics 229.24 (2010): 9373-9396.

Hesthaven, J. S. and Warburton, T. (2007). “Nodal discontinuous Galerkin methods: algorithms, analysis, andapplications,” volume 54. Springer.

Wang, X. (2009). “Discontinuous Galerkin Time Domain Methods for Acoustics and Comparison with FiniteDifference Time Domain Methods.” Master’s thesis, Rice University, Houston, Texas.

Warburton, T. and Embree, M. (2006). “The role of the penalty in the local discontinuous Galerkin method forMaxwell’s eigenvalue problem.” Computer methods in applied mechanics and engineering, 195(25):3205-3223.

39