Recent methods for solving the high-frequency Helmholtz equation on a regular mesh
Chris Stolk
- Univ. of Amsterdam
Recent methods for solving the high-frequency Helmholtz equation on - - PowerPoint PPT Presentation
Recent methods for solving the high-frequency Helmholtz equation on a regular mesh Chris Stolk Univ. of Amsterdam ICERM, November 9, 2017 Overview We study the Helmholtz equation ! ( k ( x ) 2 ) u ( x ) = f ( x ) , k ( x ) = c ( x
I An FD method very small numerical dispersion on coarse meshes I Improved two-grid and multigrid methods I Domain decomposition
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 2 / 29
5 10 15 20 25 −0.2 0.2 exact solution and solution with 1 % phase slowness error 5 10 15 20 25 −0.2 0.2 error in solution 2
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 3 / 29
I QS-FEM (2-D), is optimal in 2-D, (Babuska et al. 1995) I 6-th order FD (Sutmann, 2007; Turkel et al., 2013) I Optimized FD (Jo, Shin, Suh 1998; Operto et al 2007; ...)
I A new optimized compact stencil method I Comparison of phase errors (except unstructured FE) I Geometrical optics analysis and numerical example Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 4 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 5 / 29
2 e (d−1)πi 4
2
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 6 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 7 / 29
2π) depends on hk 2π = 1 ppw via Hermite interpolation on 9 control points.
hk 2π for 2.5 points per wavelength
hk 2π
α1
∂α1 ∂(1/G)
α2
∂α2 ∂(1/G)
α3
∂α3 ∂(1/G)
α4
∂α4 ∂(1/G)
α5
∂α5 ∂(1/G)
0.0000 0.635413
0.210638 0.016303 0.172254
0.710633
0.245303 0.019576 0.0500 0.635102
0.210152
0.171912
0.709821
0.245148 0.021398 0.1000 0.634166
0.208167
0.171146
0.707374
0.244762 0.007493 0.1500 0.632093
0.205348
0.170031
0.703359
0.245160 0.009937 0.2000 0.628341
0.201605
0.169740 0.001893 0.698813
0.245687 0.012201 0.2500 0.622526
0.197423
0.169475
0.694726
0.246454 0.016791 0.3000 0.614611
0.192414
0.168690
0.692615
0.247743 0.029213 0.3500 0.603680
0.186819
0.167581
0.694109 0.077605 0.250098 0.059733 0.4000 0.588498
0.180737
0.166640
0.700902 0.199685 0.254352 0.106049
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 8 / 29
FE1 FE2 FE3 FE4 FE6 FE8 FD2 FD4 FD6 FD8 OPT4 CHO6 QS-FEM(2-D) IOFD(2-D) IOFD(3-D)
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 9 / 29
1 c(x)2 we find the equations
j
H,Φ)j
H,Φ)A + (t 1/2)
j
H,Φ
H ∂ξj (x, rΦ) (Duistermaat, 1996)
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 10 / 29
γ fγ(hk(x))eihγ·ξ
def
y∈(hZ)d
[−π/h,π/h]d P(x+t(yx), ⇠)ei(x−y)·ξu(y) d⇠
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 11 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 12 / 29
2 4 6 1 2 3 4 5 6 7 x y theta r 0.2 0.4 0.6 6 6.2 6.4 6.6 6.8
theta r polar plot FD2 at 10 ppw 0.2 0.4 0.6 20 20.2 20.4 20.6 20.8
theta r polar plot CHO6 at 6 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot CHO6 at 5 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot CHO6 at 4 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot IOFD at 6 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot IOFD at 5 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot IOFD at 4 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot IOFD at 3 ppw 0.2 0.4 0.6 500 500.2 500.4 500.6 500.8
theta r polar plot IOFD at 2.5 ppw 0.2 0.4 0.6 100 100.2 100.4 100.6 100.8
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 13 / 29
smoothed Marmousi velocity model x(m) y(m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 500 1000 1500 2000 2500 3000 2000 3000 4000 5000
solution at 50 Hz x(m) y(m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 500 1000 1500 2000 2500 3000
x(m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 y(m) 500 1000 1500 2000 2500 3000 reference amplitude at 50 Hz
0.02 0.04 0.06 0.08 0.1
x(m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 y(m) 500 1000 1500 2000 2500 3000 relative error at 50 Hz
0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 14 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 15 / 29
I Local Fourier analysis to choose parameters and compare
I analyze weakly damped Helmholtz operators on infinite domain
I A numerical example with damping only at the boundary
I Simple iterative solver (smoother) (3 times !-Jacobi, ! ⇡ 0.7) I Compute residual, restrict to coarse mesh, solve on coarse mesh,
I Simple iterative solver again I Apply this as a preconditioner for GMRES Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 16 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 17 / 29
2h , π 2h ]2 SpectralRadius(M2h
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 18 / 29
2−D slice of the SEG−EAGE salt model x(m) y(m) 2000 4000 6000 8000 10000 12000 1000 2000 3000 4000 1500 2000 2500 3000 3500 4000
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 19 / 29
I subdomains with PML layers on both sides (cf. Schadle, 2007) I coupling via source terms involving single and double potentials I Forward and backward sweep with shifted domain boundaries Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 20 / 29
1
+ v (j−1)
+ v (j−1) =
2
j=1 Ix∈[bj−1,bj](x) v (j)(x)
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 21 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 22 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 23 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 24 / 29
c(x,y) for Marmousi (m/s) x (m) y (m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 500 1000 1500 2000 2500 3000 1500 2000 2500 3000 3500 4000 4500 5000 5500 wavefield for Marmousi (om/(2π) = 50) x (m) y (m) 1000 2000 3000 4000 5000 6000 7000 8000 9000 500 1000 1500 2000 2500 3000
ω 2π (Hz)
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 25 / 29
I Linux cluster with 64 GB per node, 16 cores/node, up to 16
I Cartesian mesh decomposition for multigrid I Subdomain solves done on 8 to 32 cores using MUMPS I Subdomains must be solved consecutively: Pipeline solution
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 26 / 29
x z SEG EAGE salt model 2000 4000 6000 8000 10000 12000 500 1000 1500 2000 2500 3000 3500 4000 1500 2000 2500 3000 3500 4000 y z SEG EAGE salt model 2000 4000 6000 8000 10000 12000 500 1000 1500 2000 2500 3000 3500 4000 1500 2000 2500 3000 3500 4000
x z Wavefield in SEG EAGE salt model 2000 4000 6000 8000 10000 12000 500 1000 1500 2000 2500 3000 3500 4000 y z Wavefield in SEG EAGE salt model 2000 4000 6000 8000 10000 12000 500 1000 1500 2000 2500 3000 3500 4000
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 27 / 29
I fine sampling for accurate discretization I very coarse sampling in the costly part of the solver
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 28 / 29
Chris Stolk (Univ. of Amsterdam) The high-frequency Helmholtz equation ICERM, 11/9/2017 29 / 29