Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

See

discussions, stats, and author profiles for this publication at:


http://www.researchgate.net/publication/243360851

A perfectly matched layer for the


Helmholtz equation in a semi-infinite
strip
ARTICLE in JOURNAL OF COMPUTATIONAL PHYSICS DECEMBER 2004
Impact Factor: 2.49 DOI: 10.1016/j.jcp.2004.06.010

CITATIONS

DOWNLOADS

VIEWS

44

51

95

2 AUTHORS, INCLUDING:
Eli Turkel
Tel Aviv University
194 PUBLICATIONS 6,554 CITATIONS
SEE PROFILE

Available from: Eli Turkel


Retrieved on: 15 July 2015

Journal of Computational Physics 201 (2004) 439465


www.elsevier.com/locate/jcp

A perfectly matched layer for the Helmholtz equation


in a semi-innite strip
I. Singer, E. Turkel

Department of Mathematics, Sackler Faculty of Exact Sciences, School of Mathematical Sciences, Tel Aviv University,
69978 Ramat Aviv, Tel Aviv, Israel
Received 22 December 2003; received in revised form 3 June 2004; accepted 3 June 2004
Available online 31 July 2004

Abstract
The perfectly matched layer (PML) has become a widespread technique for preventing reections from far eld
boundaries for wave propagation problems in both the time dependent and frequency domains. We develop a discretization to solve the Helmholtz equation in an innite two-dimensional strip. We solve the interior equation using highorder nite dierences schemes. The combined Helmholtz-PML problem is then analyzed for the parameters that give
the best performance. We show that the use of local high-order methods in the physical domain coupled with a specic
second order approximation in the PML yields global high-order accuracy in the physical domain. We discuss the impact of the parameters on the eectiveness of the PML. Numerical results are presented to support the analysis.
 2004 Elsevier Inc. All rights reserved.
MSC: 65N06
Keywords: Helmholtz; PML; Finite dierence

1. Introduction
The Helmholtz equation,
Du k 2 u 0;

describes a wide variety of wave propagation phenomena including electromagnetic waves and acoustics.
To solve this equation in an unbounded domain on a computer is dicult [12]. One approach is to truncate
the unbounded domain and introduce a boundary condition on the articial outer surface. For many years
*

Corresponding author. Fax: +972-3-6409357.


E-mail addresses: turkel@post.tau.ac.il, turkel@math.tau.ac.il (E. Turkel).

0021-9991/$ - see front matter  2004 Elsevier Inc. All rights reserved.
doi:10.1016/j.jcp.2004.06.010

440

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

the standard boundary condition was a local absorbing condition that was a generalization of the Sommerfeld radiation condition e.g. [4], but in recent years a number of models based on the perfectly matched
layers (PMLs) scheme have become popular. These layers minimize the reections caused by the articial
boundary.
Berenger [5,6] was the rst to introduce a PML for the time dependent Maxwell equations. Abarbanel
and Gottlieb [1] proved that this approach is not well posed and since then several other approaches generalizing the ideas of Berenger have been suggested. A survey of PML layers is to be found in [7]. Turkel
and Yefet [14] showed that several of these approaches are linearly equivalent. The solvability and the
uniqueness of the PML equation for the Helmholtz equation was analyzed by Turkel and Tsynkov [11].
In their paper, the decaying function inside the PML was assumed to be, for convenience of the analysis,
a constant. This choice is not suitable for numerical computations.
We are interested in obtaining high accuracy for the approximation to the Helmholtz equation. In particular, we shall consider both fourth and sixth order accurate approximations in the physical domain
[9,10]. Hence, we shall use a PML in the far eld to minimize reections and so hopefully maintain the high
accuracy of the interior scheme. We extend [11] and search for a practical set of parameters in the PML
layer based on an analysis of the error in the combined problem. We also analyze the solvability and accuracy of the PML schemes for this problem. The physical PML-Helmholtz scheme, which we develop,
is then solved by using high order nite dierences schemes specially designed for the Helmholtz equation.
For a constant value of k in (1) we developed a sixth order accurate scheme (and a fourth order accurate
scheme for a variable k [8]). We analyze the eect of the use of these schemes on the solution and we nd
conditions required for convergence. We also verify the assumption made in [11] that the overall accuracy
of the Helmholtz-PML scheme depends only of the order of accuracy inside the physical domain where we
solve the pure Helmholtz equation. We support our analysis with numerical results.
In order to invert the linear system one frequently uses iterative solvers. In the last section we construct a
preconditioner specially tailored for the combined problem. This preconditioner can be used with any Krylov space method.
In designing and analyzing the PML-Helmholtz equation, we use the two-dimensional notation of
acoustics [11,14] for a waveguide. In two space dimensions this is equivalent to the TE version of Maxwells
equations. Denoting u as the pressure, we get (see for example [14])




o Sy
o Sx
ux
uy k 2 S x S y u 0;
2
ox S x
oy S y
where
Sx 1

rx
;
ik

Sy 1

ry
ik

and rx and ry are functions of only x,y, respectively. When rx = ry = 0 this reduces to the Helmholtz equation (1). In the rest of the paper we only consider the strip so ry = 0 and hence Sy = 1.

2. The innite strip problem


We consider a semi-innite x-aligned waveguide from x = 0 to x = 1 with width p in the y direction, see
Fig. 1. We wish to solve the Helmholtz equation (1) in this semi-innite strip with the boundary conditions:
ux; 0 ux; p 0;
and
u0; y f y;

0 6 y 6 p;

f 0 f p 0

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

441

Fig. 1. The x-aligned semi-innite waveguide.

and specify that u is outgoing at +1. Using the sine Fourier series expansion in the y direction we get
Z p
 p
1
X
2
2
2
f y sinny dy ei k n x sin ny:
ux; y
p
0
n1
To simplify the analysis of the PML layer we assume the boundary condition at the entrance to the waveguide is
f y sinmy;

where m is an integer. Then we get the exact solution which we label uexact
p
2
2
uexact x; y ei k m x sin my:

In the case m > k (evanescent wave) we get


p
2
2
uexact x; y e m k x sin my:

3. Constructing the PML


Since we cannot solve the semi-innite problem on a computer we instead solve in a bounded domain:
[0,L1] [0,p] , and construct a PML. We rst analyze an innite PML and then a PML with width L2  L1,
see Fig. 2.

Fig. 2. The PML layer in the strip.

442

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

In the interior of the strip (vacuum) we solve the Helmholtz equation and in the PML we solve Eq. (2).
In this case we choose ry = 0 in the PML and so Sy = 1 and (2) becomes


o 1
o
ux S x uy k 2 S x u 0;
S x S x x:
5
ox S x
oy
Using the Fourier series expansion in y we get


d 1 d^
ux; n
ux; n 0:
S x k 2  n2 ^
dx S x dx
We set

S x x

1;

0 6 x 6 L1 ;

rx
ik

; x > L1 :

We generalize this by considering Sx(x) = A + (rx/(B + ik)). Our computational results show that the error
deteriorates when A diers appreciably from 1. Choosing B non-zero only slightly improves the accuracy.
Eq. (6) represents u in the entire space (vacuum + PML). Substituting
Z x
t
S x r dr
0

and labeling
ux; n
Y n t ^
we get for Yn(t) an equation with constant coecients
d2
Y n t k 2  n2 Y n t 0:
dt2
The solution is
^
ux; n c e

p R x
k 2 n2

S x r dr

c e

i

p R x
k 2 n2

S x r dr

where c+ and c are arbitrary constants. The solution for (6) in an innite PML is found when we add the
condition that only the right-traveling waves are present in addition to the condition in x = 0.
Using (3) we get the solution for (5) which we label uI-pml (Innite-PML):
8 p R x
< ei k2 m2 0 S x r dr sin my if m < k;
9
uI-pml x; y
p R
:  m2 k2 x S x r dr
0
e
sin my if m > k:
Comparing (4) with (9) we get for 0 6 x 6 L1:
uI-pml x; y uexact x; y
which shows that the PML is perfectly non-reecting.
When solving the problem on a computer we need to truncate the semi-innite domain at L2. We
choose the boundary condition as u = 0 at x = L2. Choosing other types of boundary conditions at
x = L2 does not signicantly change the solution. Hence, instead of c+ = 0 in (8) we need to solve
(6) with the boundary condition u(L2,n) = 0. For our choice of f(y) = sin(my), with n 6 m, u(x,n) = 0
and boundary conditions
^
u0; m 1;

^
uL2 ; m 0;

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

443

we get
^
ux; m c e

p R x
k 2 m2

S x r dr

c e

i

p R x
k 2 m2

S x r dr

Solving for c+ and c


c

1
;
g1

c

g
;
g1

where
ge

2i

p R L2
k 2 m2

S x r dr

10

Uniqueness is not guaranteed when g = 1. Otherwise



Z
p
1 L2
k 2  m 2 L2
rx r dr
ik L1
0
p R L
since rx(x) > 0 for x 2 (L1,L2], then for k 6 m it follows that Re2i k 2  m2 0 2 S x r dr 6 0 and g 6 1 and
uniqueness follows. Henceforth, we assume that k 6 m.
Labeling this unique solution uF-pml (Finite PML) we nd


p R
p R
1 i k2 m2 x S x r dr
g i k2 m2 x S x r dr
0
0
e
e
uF-pml

sin my
11
g1
g1
p Z
2i k 2  m2

L2

S x r dr 2i

and for the case m < k (traveling)

 p R x

p R x
1
i k 2 m2
S x r dr
i k 2 m2
S x r dr
0
0
e
e
errorx; y uI-pml  uF-pml
sinmy
g1
p Z x

2i
2
2
sin
k m
S x r dr  sinmy:

g1
0

We are interested in the solution in the interior and so we examine the error when 0 6 x 6 L1


 
p 
 2i
  2 
2
2 x  sinmy 


sin
k
max

m
kerrorx; yk1
  g  1 :
0 6 x 6 L1 ; 0 6 y 6 p g  1

12

Our goal is to minimize the error and so we choose a suitable function rx(x) that will minimize the value of
j2/(g  1)j. We wish g in (10) to satisfy jgj  1. For the case m > k (evanescent) we get
 p R x

p R x
g
 m2 k 2
S x r dr
m2 k 2
S x r dr
0
0
e
errorx; y uI-pml  uF-pml
e
sinmy
g1
p Z x

2g
sinh
m2  k 2
S x r dr  sinmy

g1
0
and in the interior



 g p
m2 k 2 L1 

e
kerrorx; yk1 
:
g1

In this case we wish in (10) that jgj  1.

13

444

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

4. Minimizing the error


The function rx : [L1,L2] ! R is chosen so that it has the following properties:
rx x > 0

for x 2 L1 ; L2 ;

rx L1 0;
rx x is smooth in L1 ; L2 :
A suitable choice for this function is

p
x  L1
rx x r
;
L2  L1

14

where r is a positive constant and p P 1. When evanescent waves are present it may be more advantageous
to use an exponential t for rx. In this study we shall only consider the polynomial t. Integrating
we get

p1
Z x
rL2  L1 x  L1
rx r dr
p1
L2  L1
L1
and

uF-pml

8
p
p
g
>
1 i k 2 m2 x
i k 2 m2 x
>
e

e
;
>
g1
g1
>
>
>

p1
>
p

prL2 L1 xL


<
1
i k 2 m2 L1 1e p1
L2 L1
1
sin my  g1
e
>
>
>
p prL L  xL p1
>
>
2
2 1
1
>
2
>
: g ei k m L1  1e p1 L2 L1
;
g1

0 < x 6 L1 ;
15
L1 < x 6 L2 ;

where e = (m/k)2 and


p R L2
p 2rp
1eL2 L1
2
2
2i k 2 m2
S x r dr
0
e2i k m L2 p1
:
ge

16

For m < k we get


p
2r 1eL2 L1
1
jgj e p1
and for m > k
jgj e2

m2 k 2 L2

 1;

which are the desired results for (12) and (13). Using the estimate (12) we get for m < k

  
p
2r 1eL L
 2   2
   2e p12 1
kerrorx; yk1 
g  1  g

17

and for m > k using (13) we get



  p 
p
 g p
m2 k 2 L1 

ge m2 k2 L1  e m2 k2 2L2 L1 :
e

kerrorx; yk1 
 

g1
We see that for evanescent waves, m > k, the norm of the error does not depend on rx. To decrease the
error we can only increase the length of the PML region, i.e. 2L2  L1. When m < k the error depends exponentially on the value of 2r(L2  L1)/(p + 1). From this continuous analysis we conclude that the param-

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

445

eters should be chosen to satisfy the following criteria. A large value of r, a wide PML (extend L2  L1) and
p = 1. Further analysis (below) for the numerical algorithm demonstrates that one should be more careful
when choosing these parameters especially p.
We need a scheme to approximate the uF-pml solution. We use high-order nite dierences schemes in the
interior. To reduce the size of the matrices we wish to minimize the number of points in the articial perfectly matched layer. In the next sections we present these schemes and analyze their inuence on the error.
We will also see that the choice of a large value of r and a small value of p is inaccurate.
5. Finite dierences
Let /i,j be the numerical approximation to the uF-pml(xi,yj) solution. We wish to have a symmetric stencil
in both directions x and y. A scheme having this property has the form
A0 /i;j As rs Ac rc 0;
where
rs /i;j1 /i1;j /i;j1 /i1;j
is the sum of the values of the mid-side points and
rc /i1;j1 /i1;j1 /i1;j1 /i1;j1
is the sum of the values at the corner points.
In the PML we need to solve a variable coecient problem
o
o
Aux Buy k 2 Cu 0:
ox
oy

18

In our strip problem


A

1
;
Sx

B C Sx:

We have not found a compact formula which keeps the self-adjoint form of Eq. (18) and is also more than
second order accurate for non-constant A,B,C. Instead, we use high-order accurate self-adjoint schemes in
the interior and automatically switch to a second order accurate scheme in the PML layer while preserving
the self-adjoint property. Since the PML is articial we are only interested in preserving the global high
accuracy in the interior domain. Using a general second order accurate scheme in the PML usually corrupts
the high order accuracy used in the interior, and yields an overall low accuracy. Thus, matching the schemes
between the interior and the PML is very important.
We start with the standard second order three point symmetric approximation
Dx Aux j

Ai12;j ui1;j  ui;j  Ai12;j ui;j  ui1;j


h2

19

We construct a more general divergence free form by averaging this approximation in the j direction. So we
take [Aux]x = aDx(Aux)j + ((1  a)/2)(Dx(Aux)j + 1 + Dx(Aux)j  1) and a similar formula in the y direction. The
approximation to Cu is a general nine point formula




C i1;j ui1;j C i1;j ui1;j
C i1;j1 ui1;j1 C i1;j1 ui1;j1
Cu 1  4bs  4bc C i;j ui;j bs
bc
:
C i;j1 ui;j1 C i;j1 ui;j1
C i1;j1 ui1;j1 C i1;j1 ui1;j1
20

446

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Thus, for A = B = C = 1 we get


2

A0 4a 1  4bs  4bc kh ;


2

As 2a  1 bs kh ;

Ac 1  a bc kh ;

21

where h is the grid-size of the stencil. This approximation is guaranteed to be O(h2) for all values of a, bs, bc.
Choosing a = 1, bs = 0, bc = 0 recovers the standard pointwise representation which is second order accurate
with
A0 4 kh2 ;

As 1;

Ac 0:

22

We use higher-order schemes for the pure Helmholtz equation. Choosing


5
1
c
c
 ; bc
a ; bs
6
12 72
144
for an arbitrary constant c we achieve an O(h4) scheme yielding


10
c
2 2

A0  kh
;
3
3 36


2
1
c
1
2
2 c

:
; Ac kh
As kh
3
12 72
6
144

23

This stencil is fourth-order accurate also for variable k(x,y) as proved in [8]. Choosing c = 14/5 and adding
O((kh)4) terms to the coecients one can achieve sixth order accuracy [10]. In particular, for arbitrary d,
choosing
5
a ;
6

bs

2 3  2d
2

kh ;
45
720

bc

7
d
2

kh ;
360 720

10 67
d3
2
4
kh
kh ;
3 90
180
2 2
3  2d
2
4
kh ;
As kh
3 45
720
1
7
d
kh2
kh4
Ac
6 360
720
A0 

24

yields a O(h6) scheme for constant k.


Hence, when we use one of the schemes ((22), (23) or (24)) for the combined problem, the scheme is locally high order accurate in the interior and is second order accurate in the PML layer. The accuracy in the
PML is physically irrelevant. Hence, we wish that the use of the low-order accuracy in the PML will not
destroy the global high-order accuracy in the interior.
6. Exploring the numerical error
Using a Taylor expansion in the approximation (19) we get


o
h2 o3
o
Dx Aux j Aux
Aux Auxxx Oh4 :
ox
ox
24 ox3
Averaging in the y direction yields
Aux x aDx Aux j

1a
o
Dx Aux j1 Dx Aux j1 Aux mh2 Oh4 ;
2
ox

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

447

where


1 o3
o
o2 o
Aux :
Aux Auxxx 121  a 2
m
24 ox3
ox
oy ox
Using the Taylor expansion we nd that approximation (20) satises


Cu Cu h2 bs 2bc Cuxx Cuyy Oh4 :
Therefore, the nite dierence formula is equivalent to
 
o ux
o
S x uy k 2 S x u Hh2 h2 Oh4 ;
ox S x
oy

25

where


  
 

 
1 o3 ux
o uxxx
1  a o2 o ux
o2
Hh2

2S x uyyyy
2 S x uyy
24 ox3 S x
ox S x
2
oy 2 ox S x
ox
k 2 bs 2bc S x uxx S x uyy :

26

In order for the approximation to be accurate we require that h2Hh2  1.


Using u = uF-pml in (26), assuming for the analysis m  k and k  1, and collecting the O(k4) terms we
get


p R x
1
 k 2 m2
S x r dr
2
0
 l S 3x e
Hh2 c k 2  m2
;
27
12
where
l

bs 2bc
;
1e

m2
k

Using the choice of rx (14), the exact values of the constants c in the solution uF-pml (15) and denoting
z

x  L1
; 0 6 z 6 1;
L2  L1

28

we get inside the PML the approximation



 p

r2 3=2
rL2 L1 p1

2 1
 l e 1e p1 z
1
z2p
:
jHh2 j k 2  m2
12
k
We see in Figs. 37 the behavior of jHh2j for various values of p. In these gures the x-axis of the graph is
the variable z, dened in (28). We set bs + 2bc = 0 which is what is used in the standard pointwise representation (22). In most cases p should be set as 2 or 4. Increasing the value of r increases also the value of jHh2j.
These two facts contradict our desire to decrease the error (17). Increasing L2L1 decreases the value of
jHh2j as well as the error, but increases the work. A thick PML requires more storage and CPU and also
means a harder task for the linear solvers.
An interesting result is found when examining the value of jHh2j near the intersection between the vacuum and the PML layer, i.e. z ! 0+. At this point we can nd a lower bound of jHh2j and get


1
2
l :
29
jHh2 j k 2  m2
12

448

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Fig. 3. Value of jHh2j for k = 8, m = 1, r = 50, L2  L1 = p/4.

Fig. 4. Value of jHh2j for k = 8, m = 1, r = 150, L2  L1 = p/4.

Fig. 5. Value of jHh2j for k = 8, m = 1, r = 50, L2  L1 = p/8.

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

449

Fig. 6. Value of jHh2j for k = 12, m = 1, r = 50, L2  L1 = p/4.

Fig. 7. Value of jHh2j for k = 8, m = 3, r = 50, L2  L1 = p/4.

Combining this result with Figs. 6 and 7 we conclude that as (k2  m2)2 increases, the schemes become
more inaccurate independent of the values of the other parameters, r, p and L2  L1. This requires one to
rene the grid.
We can also decrease the value of jHh2j by choosing l ! 1/12. When we examine the value of l in the
high-order schemes (23) and (24) we get
1
1
m2
l
:
2
12
12 k  m2
Hence, for high order accurate schemes, (27) is not valid and we get instead
r
r2
prL L p1
p 2
2 1 z
rp
2  1e p1
p1
1  ek  4m e
j Hh2 j
z
z2p :
1
12L2  L1
k

30

450

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Fig. 8. Value of jHh2j in the high-order schemes for k = 8, m = 1, r = 50, L2  L1 = p/4.

Fig. 9. Value of jHh2j in the high-order schemes for k = 8, m = 1, r = 150, L2  L1 = p/4.

Fig. 10. Value of jHh2j in the high-order schemes for k = 8, m = 1, r = 50, L2  L1 = p/8.

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

451

Fig. 11. Value of jHh2j in the high-order schemes for k = 12, m = 1, r = 50, L2  L1 = p/4.

In Figs. 811 we nd similar results to the ones we found in the case of the second order schemes. We
see that the dependence on the value of (k2  m2) is reduced, which means better performance for large values of k (compare Figs. 6 and 11). Another quality, which we see from these gures and also from (30), is
that p = 1 is a very poor choice, because jHh2j achieves its maximum when z ! 0+. This does not occur when
p > 1.

7. The modied equation


Another approach to analyze the numerical solution is the modied equation. We start with (25) and
(26), nd the analytical solution for the equation
 
 1
0  3 
ux
1
o
o uxxx
u

2S
x
yyyy
3
24
ox
S
S
ox
x
x
 
B
C

 
o ux
o

 C
B
S x uy k 2 S x u h2 B 1a o22 o ux o22 S x uyy
C 0:
2
oy ox S x
ox
@
A
ox S x
oy


2
k bs 2bc S x uxx S x uyy
When the input boundary condition is sin(my) then the only Fourier coecient that does not vanish is
U = u(x,m). We recover the ODE
0  000  0
1

1
U0
U 000
4

2m
S
U
x
Sx
B 24 S x
C
 0 0
B
C
 0

U
2
2B
2
C0
0
00
k  m S x U h B  1a m2 U S U
31
C
x
Sx
2
Sx
@
A


00
k 2 bs 2bc S x U  m2 S x U
with the boundary conditions
U 0 1;

U L2 0:

Because our main interest is in the high-order schemes we choose


5
a ;
6

bs 2bc

1
12

452

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

(for the O(h6) we take bs + 2bc = (1/12) + O(k2h2)). So, (31) becomes
0  000  0
1
U0
U 000
 0 0
2

Sx
U
h B Sx
C
k 2  m2 S x U  @
A:
 0


0
Sx
24
00
2
2m2 US x 2k  m2 S x U  m2 S x U

32

If p = 1 then Sx is not dierentiable near x = L1. Hence, we assume that p P 2. In the interior Sx = 1 and the
right-hand side of the equation becomes


h2
h2 d 2
2
2
00
2
2
00
2
U

k

m
U


m
U

k

m
U

 U 4  m2 U 00 k 2  m2 U 00  m2 U 
12
12 dx2
and we can rewrite (32)



 00

h2 d2
2
1

m
U k 2  m2 U 0
2
12 dx
which leads to
U 00 k 2  m2 U 0
which is the Fourier expansion of the Helmholtz equation and so in the interior, we solve the Helmholtz
equation through O(h2). Unlike (6) we have not found the exact solution to (32). When h2  1 we look
for a perturbed solution in the form of
p R x
i k 2 m2
S x r1h2 q r dr
0
U e
:
33
Inserting this into (32) and collecting all the terms with O(h2) yields a dierential equation for q

 00 0 
p
p
k 2  m2
1
S
x
2i k 2  m2 S 0x S x 3S 00x p
i k 2  m2 q0  2k 2  m2 q S x
:
2
2
24
i k  m S x
In the interior the right-hand side of this equation vanishes.
ThisRemphasizes that only the O(h2) factor
p
x
2
comes from the PML approximation. Labeling g x i k  m2 S x r dr and multiplying the equation
2g(x)
with the integrating factor e
we get

 000 0 
 2g 0
1
g
2g00 g0 3g000
q e  

e2g :

24
g0
Integrating by parts yields
 p

p R x
1
S 00
2i k 2 m2
S x r dr
0
i k 2  m2 S 0x x d  e
q
24
Sx
with constants d. Inserting into (33) we obtain an estimate for the numerical solution using the high-order
schemes
p R x
p R x
2
2
i k 2 m2
S x r drh48 W x
i k 2 m2
S x r drh48 W x
0
0
^
c e
;
34
ux; m c e
where d are constants and

p R x
p
2i k 2 m2
S x r dr
x
0
k 2  m2 2S 0x rj0 d e
;
p

R
p
x
2i k 2 m2
S x r dr
x
x
0
W x k 2  m2 S 2x rj0  i k 2  m2 2S 0x rj0 d e
x

W x k 2  m2 S 2x rj0 i

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

453

In the interior Sx = 1 and so S 2x and S 00x vanish. So for x 2 [0,L1]


^
ux; m c ei

k 2 m2 xh48 d e2i

k 2 m2 x

c ei

k 2 m2 xh48 d e2i

k 2 m2 x

35

To nd the constants c and d we use the boundary conditions


^
u0; m 1 0  h2 ;

^
uL2 ; m 0 0  h2

and the approximation




2
eaxh bx eax 1 h2 bx :

36

Using (34) and (35) near the boundaries






h2
h2
h2
h2
^
u0; m c e48d c e48d c 1  d c 1  d
48
48
and
^
uL2 ; m c e

p R L2

c e

p R L2

k 2 m2

k 2 m2

S x r drh48 W L2
S x r dr

c e

i

p R L2
k 2 m2

S x r drh48 W L2





p R L2
h2
h2
i k 2 m2
S x r dr
0
1  W L2 c e
1  W L2 :
48
48

Solving these equations we nd that the values of c+ and c are the same as in the formula for uF-pml (11),
and
p
p
g
1
L
L
; d 4i k 2  m2 S 0x j0 2
;
d 4i k 2  m2 S 0x j0 2
g1
g1
where the value of g is given in (16). Inserting into (35), approximating using (36) and rearranging, we get
the approximate solution of the high-order schemes in the interior, which we label uN-pml
0
B
uN-pml @

1 i
e
g1

k 2 m2 x

h2
i 12

uF-pml

g
g1
ei

k 2 m2 x

p  A sin my
 p
p L
2
g
0 2
i k 2 m2 x
i k 2 m2 x
2
k  m S x j0 g12 e
e

p 

h2 p
g
L
k 2  m2 S 0x j0 2
sin
k 2  m2 x sin my:
2
6
g  1

37

Using our choice for Sx:




p 

h2 p
rp
g


j uN-pml  uF-pml j
k 2  m2 
sin
k 2  m2 x 
2


ik L2  L1 g  1
6
p

p
L2 L1
h2 r 1  ep 2r 1ep1

e
:
6 L2  L1

38

One of our goals was to show that the use of the second order approximation inside the PML layer does not
4
corrupt the high-order accuracy in the interior.
p(23) from the error
pWe can prove this for the O(h ) schemes
estimate (38). Taking a large value of 2r 1  eL2  L1 =p 1 then the term 2e2r 1eL2 L1 =p1 is expo-

454

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

nentially small and so is negligible compared with O(hr) for all integers r. As r becomes large the exponential term dominates and the accuracy improves. However, we should not choose r large that rh2 is large.
Thus, in the interior
uN-pml uF-pml Oh4 uexact Oh4 Oh2 e

p
2r 1eL2 L1
p1

39

where O(h4) comes from the accuracy of the scheme. For the O(h6) scheme numerical computations demonstrate a similar error estimate
uN-pml uexact Oh6 :

8. Numerical results
We present computational results for the Helmholtz equation in the semi-innite strip. The region to the
right of L1 is replaced by a PML equation which is then truncated at L2. In each computation we wish to
demonstrate one of the properties that has been analyzed. For all the results we use a uniform grid-size,
where n denotes the number of gridpoints along the y axis, so h = p/n. We measure the error in the maximum
norm in the square [0,p] [0,p] and so L1 P p. The numerical approximation is denoted by /. We use a
standard LU factorization to solve the linear systems that arise from the nite dierences schemes. For ne
grids a LU solver is not ecient.
8.1. The case m > k: evanescent waves
p
2
2
We wish to verify our error estimate e m k 2L2 L1 . For the test case we consider
6
m 5; k 4:5; L1 p; L2 p; p 2; r 20; n 32:
5
In this case
p
2
2
e m k 2L2 L1 6:87  105 :

40

We solve the problem with the O(h6) solver (24) with the parameter c = 1. The computed solution / approximates uN-pml and satises:
err kuexact  /k 6:53  105 :
Rening the gridsize, taking n = 64 we get computationally
err 7:19  105
which shows that we cannot improve the accuracy of the computation because we reached our desired level
of accuracy.
Choosing instead L2 = 1.6p in (40) we get
p
 m2 k 2 2L2 L1
4:29  107
e
and with n = 32 we get computationally
err 1:09  106

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

455

Table 1
The Case m > k
No.

Parameter changed

Value of err

1
2
3
4
5
6
7
8
9
10
11

p=1
p=4
r = 100
n = 64
n = 128
O(h6) scheme with c = 3
O(h4) scheme with c = 1, n = 32
O(h4) scheme with c = 1, n = 64
m = 7, k = 5
L1 = (5/4)p, L2 = (13/8)p
k = 0.0000001

errbase
errbase
errbase
1.28 108 . (1/2)6 errbase
1.99 1010 . ((1/2)6)2 errbase
8.06 107
6.16 106
3.46 107 . (1/2)4 #7
3.58 106
errbase
8.51 107

with n = 64
err 2:01  107 ;
and with n = 128
err 2:13  107 :
Now, the rst renement of the grid improves the result, but we cannot improve it further, as we can see
in the second renement. That is because we again reached our lower bound.
For a second test case we choose default values
m 5;

k 1;

L1 p;

3
L2 p;
2

p 2;

r 20;

n 32;

Oh6 scheme with c 1:

We have the lower error bound


p
2
2
e m k 2L2 L1 4:28  1014
and choose as our base error
errbase 8:18  107
which is far from the lower error bound. In Table 1 we see the eect of parameter changes from the base
case. We list only the changes from the default.
The independence of the error on the values of p (results 1,2), r (result 3) and 2L2  L1 (result 10).We see
(result 9) that if we change m,k in such a way that we preserve the value of m2  k2, the error changes. We
can explain this by the assumption that as m increases the accuracy of the numerical schemes decreases.
The eciency of our high-order scheme for these problems. We can clearly verify the O(h6) behavior versus the O(h4) one (results 48).
The value of c in the high order schemes is of minor importance and aects the parameter c in the leading
order of the error ch4 or ch6.
We maintain the same behavior even for k ! 0 (result 11).
In a real problem we cannot control the value of m (the input boundary condition). In the Fourier series
expansion we have a complete set of non-zero values. We concentrate on the leading mode value.

456

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

8.2. The case m < k: traveling waves


8.2.1. The dependence on the accuracy of the scheme
We wish to computationally verify our proof that the global behavior in the interior depends only on the
local accuracy used in the interior. We examine the high-order schemes as well as the standard O(h2) scheme
on a test case. To check
arise
from
other approximations.
Thus,
pthis behavior we have to exclude errors that p
p

we take in (17) 2e2r 1eL2 L1 =p1 ! 0 and make sure that h2 =6r 1  ep=L2  L1 e2r 1eL2 L1 =p1 in
(38) is negligible.
We take as our base test case
5
7
m 6; k 8; L1 p; L2 p; p 2; r 25:
4
4
In this case
p
2r 1eL2 L1

p1
2e
6:03  108
and

p
r 1  ep
3:5
6L2  L1

and if n P 16
p2  p 2
6
3:8  102
h2
n
16
and
p
r 1  ep
6 0:14:
h
6L2  L1
2

Thus, our high-order schemes should yield good results. In Table 2 we see the value of err = iuexact  /i1
resulting from the use of the schemes: PT (22), HO-4 (23) and HO-6 (24). Increasing the value of n decreases
the value of the gridsize h in both directions. We assume that for small values of h,
Ck
err Cknr r hr ;
p
where r is the order of the scheme, i.e.
8
>
< 2 for PT scheme;
r 4 for the schemes EB; HO;
>
:
6 for the schemes EB-6; HO-6:
Table 2
err = iuexact  /i1 for m = 6, k = 8, L1 = (5/4)p, L2 = (7/4)p, p = 2, r = 25
n

PT

HO-4, c = 0

HO-4, c = 2

HO-6, c = 0

HO-6, c = 2

16
32
48
64
80
96
112
128

1.72 100
4.85 101
2.17 101
1.23 101
7.86 102
5.46 102
4.02 102
3.08 102

5.91 102
4.21 103
8.54 104
2.73 104
1.13 104
5.45 105
2.95 105
1.73 105

3.15 101
1.97 102
3.93 103
1.25 103
5.12 104
2.47 104
1.34 104
7.85 105

4.25 102
6.86 104
6.98 105
1.49 105
4.74 106
1.93 106
9.07 107
4.71 107

1.46 101
2.32 103
2.07 104
3.72 105
9.89 106
3.38 106
1.38 106
6.47 107

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

457

Fig. 12. log(err) by log(n) for the nite dierences schemes.

Hence, if n = 2l
log2 err l  r  log2 Ck:
We calculate r, the order of accuracy, by measuring the slope of the curve (see Fig. 12). This computationally veries our hypothesis.
The computing time required for all of these scheme, applied on a given problem, is the same when we
use Gaussian elimination. This fact emphasizes the benet of using the high order schemes.
8.2.2. Convergence to the modied solution
We wish to conrm the modied equations solution (37) which we labeled uN-pml. We start with the
O(h4) approximation with c = 0, and solve the problem with
m 1;

k 5;

5
L1 p;
4

3
L2 p;
2

p 2;

r 20:

In this case the lower error bound is rather poor and we get
p
2r 1eL2 L1
2e p1
7  105 :
Let / be the computational approximation, uexact be the exact solution to the combined Helmholtz-PML
problem and uNPML given by (37). We measure two kinds of errors
errex kuexact  /k1
and



errho uN-pml  / 1 :

Table 3
Convergence to uho for m = 1, k = 5, L1 = (5/4)p, L2 = (3/2)p, p = 2, r = 20 with HO-4 scheme
n

errex

errho

16
32
64
128

3.05 102
2.00 103
1.85 104
7.67 105

3.04 102
1.93 103
1.19 104
7.41 106

458

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Table 4
Convergence to uho for m = 1, k = 5, L1 = (5/4)p, L2 = (3/2)p, p = 2, r = 20 with HO-6 scheme
n
16
32
64
128

errex

errho
3

6.12 103
4.93 104
2.88 105
1.76 106

6.19 10
5.64 104
9.91 105
7.18 105

Our goal is to show that the scheme converges to the uN-pml solution with O(h4). We collect the results in
Table 3. We see that the scheme approximates the uN-pml solution and
 4
errho n 32 errho n 64 errho n 128
1

errho n 16 errho n 32
errho n 64
2
which is consistent with our analysis.
analytic solution is uexact. To converge to uexact we set the parampThe

eters such that the exponent 2e2r 1eL2 L1 =p1 is small enough.
We solve the same problem with the O(h6) scheme with c = 0 (results in Table 4). Again, we see that we
approach uN-pml and not uexact, but this time we do not get a O(h6) approximation. For instance errho(n = 64)/errho(n = 32) . (1/2)4 and not (1/2)6. To nd the cause we change L2 to 2p, to achieve better
damping in the PML (Table 5). This time errho(n = 64)/errho(n = 32) . (1/2)4.48, and in other problems (last
subsection) we do get O(h6). The problem is that the evaluated uN-pml is not what we are approximating in
the O(h6) scheme. In the analysis of the modied equation we approximated the O(h2) term and neglected
the O(h4) term. However, this high order term is signicant in some problems and in others is negligible.
Choosing p = 2 can be accurate for some problems (see Table 2), however, we should choose p P 4 for
the O(h6) scheme. For instance in Table 6, we do get the desired approximation
 6
errho n 64 errho n 128
1

:
errho n 32
errho n 64
2

Table 5
Convergence to uho for m = 1, k = 5, L1 = (5/4)p, L2 = 2p, p = 2, r = 20 with HO-6 scheme
n

errex = errho

16
32
64
128

1.81 103
6.29 105
3.33 106
1.99 107

Table 6
Convergence to uho for m = 1, k = 5, L1 = (5/4)p, L2=(7/4)p, p = 4, r = 200 with HO-6 scheme
n

errex = errho

16
32
64
128

4.77 103
1.15 105
1.87 107
2.98 109

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

459

Table 7
The error dependance on the value of L1
j2/(g  1)j

L1

err

14

3.01 103
3.33 103
2.85 103
3.44 103
2.68 103
3.54 103
2.50 103

4.91 10
4.73 1014
4.53 1014
4.30 1014
4.03 1014
3.75 1014
3.44 1014

1
1.25
1.5
1.75
2
2.25
2.5

8.2.3. Selecting the parameters in the function rx


We wish to check the inuence of the parameters we choose in the approximation, L1, L2  L1, p and r,
on a given problem.
8.2.3.1. Value of L1. The error estimates we obtained imply that the value of L1 is relatively unimportant
(we approximated j2/(g  1)j that depends on L1 by j2/gj). We check this with the test case
p
m 1; k 10; L1  L2 ; p 4; r 100; n 32; Oh6 scheme with c 0:
4
p
2r 1eL2 L1 =p1
5:36  1014 . We summarize the results in Table 7.
The value of j 2=g j 2e
8.2.3.2. Width of the PML, L2L1. To support our theory we show that the accuracy increases as we take a
thicker PML layer. Taking
m 1;

k 10;

L1

5p
;
4

p 4;

r 100;

Oh6

scheme with c 0;

Table 8
The error in the HO-6 scheme as a function of the width of the PML
p
L2  L1
2e2r 1eL2 L1 =p1
p/16
p/8
p/4
p/2
p

8.08 104
3.26 107
5.31 1014
1.41 1027
9.98 1055

41

err n = 32

err n = 64

3.13 101
5.92 102
3.33 103
2.16 103
2.16 103

8.53 103
6.08 105
3.34 105
3.33 105
3.33 105

Table 9
The error in the HO-6 scheme as a function of width of PML and k, for n = 32
L2  L1
p/16
p/8
p/4
p/2
p

k = 2.5

k=5
1

1.68 10
1.34 102
5.16 105
1.03 107
1.80 108

k = 13
1

2.42 10
2.16 102
1.78 104
1.23 105
1.24 105

4.21 101
1.10 101
1.26 102
1.44 102
1.44 102

460

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Table 10
p
The error in the HO-6 scheme for a constant value of 2e2r 1eL2 L1 =p1
L2  L1

err n = 32

9.73 104
3.36 105
3.33 105
3.33 105

1.7 10
5.04 103
2.16 103
2.16 103

400
200
100
50

p/8
p/4
p/2
p

err n = 64

1

we summarize the results in Table 8. We verify that as the mesh becomes ner we maintain the O(h6) accuracy if the PML is thick enough. Increasing the width of the PML beyond a certain limit does not improve the accuracy while requiring more storage and computational time. For small values of h we
obtain more accurate results, but need a thicker PML as seen in Table 9.
Our main interest is to take a thin PML,
p while maintaining the accuracy. We control this by increasing
the value of r. In Table 10 we set 2e2r 1eL2 L1 =p1 1:41  1027 for the test problem (41). We conclude
that as long as the PML is not too thin and we have enough points in the PML, we get the desired accuracy.
8.2.3.3. Fixed number of points in the PML. Computational practice is to set a xed number of points inside
the PML. Thus, when we decrease the gridsize, we change the physical width of the PML. In the above
computations we choose the physical width of the PML as constant. We want to see if this inuences
our results. To check the behavior we set a problem with
m 2;

k 10;

L1

5p
4

Table 11
Results for 8 points inside the PML with m = 2, k = 10, L1 = 5p/4, p = 2, r(L2  L1)/(p + 1) = 25p/8
n

L2  L1

HO-4

HO-6

16
32
64

18.75
37.5
75

p/2
p/4
p/8

9.66 101
5.15 102
3.62 104

1.40 101
3.02 103
9.16 104

Table 12
Results for 8 points inside the PML m = 2, k = 10, L1 = 5p/4, p = 4, r(L2  L1)/(p + 1) = 25p/8
n

L2  L1

HO-4

HO-6

16
32
64

31.25
62.5
125

p/2
p/4
p/8

1.06 100
5.14 102
3.14 103

1.08 101
1.79 103
7.83 105

Table 13
Results for 8 points inside the PML with m = 2, k = 10, L1 = 5p/4, p = 4, r(L2  L1)/(p + 1) = 15p/8
n
16
32
64

r
18.75
37.5
75

L2  L1
p/2
p/4
p/8

HO-4

HO-6
0

1.01 10
5.16 102
3.17 103

1.34 101
1.64 103
3.06 105 (2.55 105 towards uN-pml)

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

461

Table 14
Results for 16 points inside PML with m = 2, k = 10, L1 = 5p/4, p = 2, r(L2  L1)/(p + 1) = 25p/8
n

L2  L1

16
32
64

9.375
18.75
37.5

HO-4

HO-6
1

1.23 101
1.67 103
1.19 104

9.94 10
5.16 102
3.21 103

p
p/2
p/4

Table 15
Results for 16 points inside the PML with m = 2, k = 10, L1 = 5p/4, p = 4, r(L2  L1)/(p + 1) = 25p/8
n

L2  L1

16
32
64

15.625
31.25
62.5

HO-4

HO-6
1

1.24 101
1.65 103
2.52 105

9.94 10
5.17 102
3.17 103

p
p/2
p/4

and for dierent values of gridsize h, use the same number of points inside the PML. In the rst test (Tables
1113) we use 8 points in the PML, and in the second test (Table 14 and 15) 16 points. We see that we lose
the O(h6) accuracy when p = 2 (Tables 11 and 14), but maintain the O(h4) behavior. This is because for the
O(h6) scheme we have to choose p P 4 and have a suciently wide layer (compare with the results in the
last section). For thin PML layers it is noticed (Table 12) that we cannot maintain the O(h6) behavior if we
choose a large r, but by taking smaller value of r we lose the approximation to uexact and maintain the O(h6)
accuracy towards the modied equation solution uN-pml. Thus, if we wish
p to work with a xed number of
points inside the PML we should set the parameters such that 2e2r 1eL2 L1 =p1 is small enough and
choose p P 4 for HO-6 and p = 2 for HO-4.
We denote n_pml as the number of points in the PML
p
p
2r 1eL2 L1
2hn pmlr 1e
2e p1
2e p1 :

Table 16
m = 6 and k approaches m with L1 = 5p/4, L2 = 7p/4, r = 25 with 32 points
k
Error

7
04

6.86 10

6.5
04

2.44 10

04

1.16 10

6.25

6.1

6.05

0.00138

0.0182

0.069

Table 17
Results for dierent values of p for m = 1, k = 10, L1 = 5p/4, L2 = 7p/4, r = 100, O(h6) with c = 0
p
1
2
3
4
5
10
30

Estimate (17)
68

1.32 10
1.12 1045
2.30 1034
1.41 1027
4.74 1023
4.56 1013
8.35 105

err n = 32
1

1.19 10
1.98 103
2.22 103
2.16 103
2.16 103
2.02 103
7.23 102

err n = 64
2

2.08 10
7.70 105
3.50 105
3.33 105
3.33 105
3.33 105
5.24 104

err n = 128
3

4.86 10
7.59 106
6.21 107
5.21 105
5.21 105
5.21 105
7.69 104

err32/err64

err64/err128

5.7
25.7
63.4
64.9
64.9
61.2
138.0

2.1
25.1
56.3
63.9
63.9
63.9
<1

462

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

Table 18
Results for dierent values of r for m = 1, k = 10, L1 = 5p/4, L2 = 3p/2, p = 4, O(h6) with c = 0
r
10
20
40
80
160
320
103

Estimate (17)

err n = 32

2

err n = 64

2

8.77 10
3.85 103
7.43 106
2.75 1011
3.81 1022
7.25 1044
1.31 10136

err n = 128

2

9.54 10
4.59 103
2.03 103
3.24 103
9.28 103
1.20 102
3.63 102

2

9.23 10
3.94 103
3.39 105
3.34 105
3.35 105
3.42 105
4.21 105

9.16 10
3.88 103
7.43 106
5.21 107
5.21 107
5.30 107
5.89 107

err32/err64

err64/err128

1.0
1.2
59.8
97
277
350
86.6

1.0
1.0
4.6
64.1
64.3
64.5
71.5

Table 19
Error varying g in Sx = 1 + (rx/(g + ik)), L1 = 5p/4, L2 = 7p/4, m = 6, k = 8, 32 points, r = 25
g

10

6
3

4
4

3
4

1
4

0
4

6.86 104

err

2.73 10

10

err

6.87 104

6.83 104

6.76 104

6.68 104

6.72 104

2.72 103

6.75 10

6.66 10

6.70 10

6.81 10

If we know the minimal value pofh a priori (in Tables 1115 it is p/64), we can set n_pml and r to satisfy a
desired estimate for 2e2hn pmlr 1e=p1 . Hence, when we rene the interior grid to increase the accuracy we
also need more points in the PML.
As m and k get closer we approach the evanescent limit and the PML is less eective. The error is shown
in Table 16.
8.2.3.4. Value of p. We solve the test problem with various values of p (Table 17) with
m 1;

k 10;

L1

5p
;
4

L2

7p
;
4

r 100;

Oh6 scheme with c 0:

We clearly see the bad behavior of the case p = 1 and the need for sucient derivatives in Sx as seen in Figs.
811. In the O(h6) case we should choose p P 4. Moreover, we do not benet from taking larger values of p
than four.
8.2.3.5. Value of r. Taking as a test problem with various values of r,
m 1;

k 10;

L1

5p
;
4

L2

3p
;
2

p 4;

Oh6

scheme with c 0:

We present the results in Table p18.


We conclude that the value of r does not inuence the accuracy of the
approximation as long as 2e2r 1eL2 L1 =p1 is small enough. Thus, a natural choice of r should be r > k
such that
p
2r 1eL2 L1

p1
2e

10q ;
where q is the number of the desired signicant digits accuracy. We choose the smallest r that satises this.
We next consider a more general formula for Sx given by Sx = 1 + (rx/(g + ik)). The original formula corresponds to g = 0. In Table 19 we present the error as a function of g. We consider L1 = 5p/4, L2 = 7p/4,
m = 6, k = 8 with 32 points and r = 25. We see that indeed the smallest error occurs for g = 5.0. However,
the dierences are so small that there is no practical purpose in trying to choose a non-zero g. Hence, we
continue to use the original g = 0.

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

463

9. Iterative techniques
For very ne meshes in two dimensions and coarser meshes in three dimensions an LU decomposition
becomes very expensive. Hence, we consider the use of an iterative solver, e.g. [2]. We examine Krylov subspaces methods such as CGNR, GMRES, QMR and BiCG on the combined problem and found that they
converge to the solution very slowly. Hence, we need to use a preconditioner for the problem. A preconditioner for the pure Helmholtz equation was constructed in [3]. The preconditioner was based on the inverse of the Laplacian operator computed with one sweep of SSOR.
The major diculty of this preconditioner on the combined problem is that the PML introduces a
dierent equation. k = 0 in the PML does not give the Laplace equation. Instead, we construct a preconditioner, that will act as the inverse Laplacian operator in the interior, and behave as an approximate inverse
in the PML. We do not calculate M1 but we approximate the solution of My = z, by applying a few sweeps
of SSOR or damped Jacobi (DJ). In the PML we cannot choose k = 0 because of the denition of Sx. For
the Helmholtz equation with small but non-zero k the operator is still positive denite. Thus, to apply the
preconditioner M we use the standard approximation of the combined problem with a small value of k
which we denote ~k.
1a
1a
Dx Aux j1 Dx Aux j1 aDy Buy i
Dy Auy i1 Dy Auy i1
2
2




C i1;j ui1;j C i1;j ui1;j
C i1;j1 ui1;j1 C i1;j1 ui1;j1
1  4bs  4bc C i;j ui;j bs
bs
;
C i;j1 ui;j1 C i;j1 ui;j1
C i1;j1 ui1;j1 C i1;j1 ui1;j1

aDx Aux j

2
is complex and cannot be applied as a precondiwhere A = 1/Sx, B = Sx, C ~k S x . The resulting matrix M
tioner for two reasons. It is not symmetric and it is not real and positive denite. It does have these two
properties in the interior, but not in the PML.
To overcome these two diculties we set the PT values: a = 1, bs = bc = 0 in the preconditioner. This
choice makes the approximation complex-symmetric. It is also useful because it involves only 5 unknowns
in each equation instead of 9. To change the matrix to a real symmetric positive denite matrix we make the
change:
(
^ i;j j;
jM
i j;
M i;j
for every 1 6 i; j 6 N :
^ i;j j; i 6 j
jM

Table 20
Number of iterations in the left preconditioned CGNR with diagonal scaling using 4 sweeps of DJ with x = 0.7 applied on the
combined preconditioner with ~k 0:1
n

~ 10; ~
r
p1

~ 10; ~p 2
r

~ 1; ~p 4
r

~ 10; ~p 4
r

~ 100; ~p 4
r

~ 10; ~p 6
r

16
32
64

211
832
4022

206
811
3911

208
927
4683

200
807
3766

204
807
3857

204
871
4421

Table 21
Number of iterations non-preconditioned CGNR with and without diagonal scaling
n

With diagonal scaling

Without diagonal scaling

16
32
64

351
1732
8646

877
12,823
116,744

464

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

^ i;j . Because ~k is small in the interior, the approximation is a small perturbation of the
In the interior M i;j M
Laplacian. We call this preconditioner the combined preconditioner. Note, that as in the pure Laplacian
operator preconditioner, this preconditioner corresponds to a second order accurate operator even when
the scheme in the interior is higher order accurate.
Table 20 shows the number of iterations for the CGNR preconditioned algorithm with the new combined preconditioner. We choose ~k 0:1. The best value of p in the preconditioner is the same as used
~ should be small, but not too small. The benet of the preconditioner is demonfor the approximation. r
strated comparing the convergence with that of the non-preconditioned algorithm in Table 21. As shown in
[3] as k gets larger the preconditioner is less eective. This can be improved as in [13].

10. Conclusions
We construct a PML for the two-dimensional Helmholtz equation in a strip. We prove that the combined Helmholtz and PML layer has a unique solution and that this solution is a good approximation
to the interior Helmholtz equation. We nd a bound for this error and show that one can control the error
by changing the PML parameters. We describe high-order nite dierences schemes for the combined
Helmholtz PML equation and apply them on the strip problem. We analyze the numerical error governed
by the use of these schemes and show that for a proper choice of parameters, the combined scheme maintains the high-order accuracy of the interior approximation. A variety of numerical results is presented to
support the analysis.
We also investigate the use of iterative methods to solve the resultant linear equations. We develop a
preconditioner Krylov algorithms to solve the combined problem. We conclude that the parameters should
be chosen so that:
The length of the interior, L1, should be as small as the physical problem permits because it does not
inuence the accuracy but has a signicant impact on the size of the linear system.
The width of the PML, L2  L1, should be as thin as possible to decrease the size of the linear system.
Numerical tests show that we cannot make the layer too thin relative to the interior grid. For the interior
grids used in this study we could use 16 grid points in the PML and still get high order accuracy. If the
grid is rened than one needs more points in the PML.
The degree of the polynomial in the PML, p (see (14)) should be 2 for the fourth order accurate scheme
and 4 for the sixth order accurate scheme.
r, the maximum of pr
x(x)
(see (14)) should be set to the lowest value which maintains the desired accuracy
determined by e2r 1eL2 L1 =p1 (see (17)).
If both traveling and evanescent waves are present then the size of the PML should be chosen to damp
the evanescent waves. Then the other parameters are chosen to eciently damp the traveling waves. The
dicult situation is traveling waves near resonance.

References
[1] S. Abarbanel, D. Gottlieb, A mathematical analysis of the PML method, J. Comput. Phys. 134 (1997) 357363.
[2] A. Bayliss, C.I. Goldstein, E. Turkel, An iterative method for the Helmholtz equation, J. Comput. Phys. 49 (1983) 443457.
[3] A. Bayliss, C.I. Goldstein, E. Turkel, Preconditioned conjugate-gradient methods for the Helmholtz equation, Elliptic Problem
Solvers II (1984) 233243.
[4] A. Bayliss, M. Gunzburger, E. Turkel, Boundary conditions for the numerical solution of elliptic equations in exterior regions,
SIAM J. Appl. Math. 42 (1982) 430451.

I. Singer, E. Turkel / Journal of Computational Physics 201 (2004) 439465

465

[5] J.-P. Berenger, A perfectly matched layer for the absorption of electromagnetic waves, J. Comput. Phys. 114 (1994) 185200.
[6] J.-P. Berenger, Three dimensions perfectly matched layer for the absorption of electromagnetic waves, J. Comput. Phys. 127
(1996) 363379.
[7] S. Gedney, The perfectly matched layer absorbing media, in: A. Taove (Ed.), Advances in Computational Electrodynamics: The
Finite-Dierence Time-Domain Method, Artech House, 1998, pp. 263343.
[8] I. Harari, E. Turkel, Accurate nite dierence methods for time-harmonic wave propagation, J. Comput. Phys. 119 (1995) 252270.
[9] I. Singer, E. Turkel, High order nite dierence methods for the Helmholtz equation, Comput. Methods Appl. Mech. Eng. 163
(1998) 343358.
[10] I. Singer, E. Turkel, Sixth order accurate nite dierence schemes for the Helmholtz equation, J. Comput. Acoust. (submitted).
[11] S. Tsynkov, E. Turkel, A Cartesian perfectly matched layer for the Helmholtz equation, in: Loic Tourrette (Ed.), Articial
Boundary Conditions with Applications to CEM, Novascience Publishing, 2001.
[12] E. Turkel, Numerical diculties solving time harmonic equations, in: A. Brandt, J. Bernholc, K. Binder (Eds.), Multiscale
Computational Methods in Chemistry and Physics, IOS Press, Ohmsha, 2001, pp. 319337.
[13] C. Vuik, Y.A. Erlangaa, C.W. Oosterlee, Shifted Laplace preconditioners for the Helmholtz equation, ENUMATH, 2003.
[14] E. Turkel, A. Yefet, Absorbing PML boundary layers for wave-like equations, Appl. Numer. Math. 27 (1998) 533557.

You might also like