Exact Finite Difference Scheme For Solving Helmholtz Equation
Exact Finite Difference Scheme For Solving Helmholtz Equation
Abstract. In this study, we consider new finite difference schemes for solving the Helmholtz
equation. Novel difference schemes which do not introduce truncation error are presented, consequently the exact solution for the Helmholtz equation can be computed numerically. The most
important features of the new schemes are that while the resulting linear system has the same
simple structure as those derived from the standard central difference method, the technique is
capable of solving Helmholtz equation at any wavenumber without using a fine mesh. The proof
of the uniqueness for the discretized Helmholtz equation is reported. The power of this technique
is illustrated by comparing numerical solutions for solving one- and two-dimensional Helmholtz
equations using the standard second-order central finite difference and the novel finite difference
schemes.
Key words. Helmholtz equation, wavenumber, radiation boundary condition, finite difference
schemes, exact numerical solution.
1. Introduction
The study of wave phenomena is important in many areas of science and engineering. The Helmholtz equation arises from time-harmonic wave propagation, and the
solutions are frequently required in many applications such as aero-acoustic, underwater acoustics, electromagnetic wave scattering, and geophysical problems. Finite
difference methods are commonly used to solve the Helmholtz equation. In addition
to the standard central finite difference, Sutmann [16] derived a new compact finite
difference scheme of sixth order for the Helmholtz equation and the convergence
characteristics and accuracy were compared for a broad range of wavenumbers.
Accurate high order finite difference methods were reported in Singer and Turkel
[14, 15], Harari and Turkel [10]. A new nine-point sixth-order accurate compact
finite-difference method for solving the Helmholtz equation in one and two dimensions was developed and analyzed in [13]. Other numerical techniques such as finite
element and spectral methods have been applied to solve the problem. Babuska
and Ihlenburg [11] used the h-version of the finite element method with piecewise
linear approximation to solve a one-dimensional model problem, Babuska et al. [3]
presented a systematic analysis of a posteriori estimation for finite element solutions . Harari and Magoules [9] considered the Least-Squares stabilization of finite
element computation for the Helmholtz equation. Babuska and Sauter [4] found
that the solution of the Galerkin finite element method differs significantly from the
best approximation with increasing wavenumber and claimed that it is impossible
to eliminate the so-called pollution effect. A coupled finite-infinite element method
was described, formulated and analyzed for parallel computations by Autrique and
Magoules [2]. Bao et. al. [5] considered the the pollution effect and explored the
feasibility of a local spectral method, the discrete singular convolution algorithm
for solving the Helmholtz equation with high wavenumbers. Recently, Gitteson et.
Received by the editors November 15, 2010.
2000 Mathematics Subject Classification. 65N06, 65N15, 65N22.
This work is supported by the Natural Sciences and Engineering Research Council of Canada.
91
92
Y. S. WONG AND G. LI
al. [8] proposed discontinous Galerkin finite element methods to capture the oscillatory behavior of the wave solution. It should be pointed out that all numerical
methods require a very fine mesh in order to ensure the accuracy of the computed
solutions at high wavenumbers.
The mathematical formulation for time harmonic wave propagation in the homogeneous media is given by the Helmholtz equation:
(1)
U + k 2 U = 0.
93
continuous problem. The proof of uniqueness for the discrete problems are presented. Numerical simulations for one-dimensional and two-dimensional problems
are reported in Section 3. Finally, we conclude the paper with a short remark in
Section 4.
2. Finite difference schemes
In this section, we first recall the standard finite difference scheme, then we
present the novel finite difference schemes for one- and two-dimensional Helmholtz
equations.
2.1. One-dimensional problem. Consider a one-dimensional Helmholtz equation,
Uxx k 2 U = 0, x (0, 1)
U (0) = 1,
(2)
U (1) = ikU (1).
It should be note that in many applications dealing with wave scattering problems,
the Helmholtz equation is defined in an unbounded physical domain. To avoid computation on infinite domain, artificial numerical boundary condition is commonly
imposed so that the solution is sought in a finite computational domain. The artificial boundary condition (ABC) is constructed so that the nonphysical numerical
reflection is eliminated or reduced in the computational domain. Sommerfelds radiation condition can be considered as a first-order ABC, other high-order ABC
schemes are studied by Engquist and Majda [7]. Berenger [6] reported the development of the perfectly matched layer method, and the approach has been applied to
electromagntic waves. For the model problems investigated in this paper, we consider Helmholtz equation with mixed boundary condition, in which a Dirichlet is
given at one end and Sommerfelds radiation condition is imposed at the other end.
Similar models have been used in the study of numerical solution for the Helmholtz
equation.
The simplest numerical discretization scheme is the use of the standard finite
difference scheme, which can be derived by the Taylors expansion. To approximate
the first-order derivative, let 0x and x denote the central difference operator and
the backward difference operator, respectively. Using a straightforward Taylors
expansion, it can easily be verified that 0x is second-order accurate and x is
first-order accurate. Here,
U (x + h) U (x h)
,
2h
U (x) U (x h)
,
x U (x) =
h
where h is the spatial step size.
Similarly, a central difference operator x2 for a second order derivative is secondorder accurate, where
0x U (x) =
U (x + h) 2U (x) + U (x h)
.
h2
Now, applying the second order schemes for the Helmholtz equation and the
boundary condition, we expect to have a second-order accurate numerical scheme
O(h2 ) for the problem, and the truncation error is given by c1 h2 + c2 h4 + c3 h6 +
..., where ci are constant. However, numerical simulations presented in the next
section clearly indicate that the second-order accuracy is only achieved when the
x2 U (x) =
94
Y. S. WONG AND G. LI
wavenumber k and kh close to zero. Even when kh = 0.5, the standard difference
scheme could produce enormous error when k is large.
It has already been accepted that solving Helmholtz equation at high wavenumbers is a difficult task. To the best of our knowledge, to ensure accurate numerical
solutions, one would require k 2 h to be small, but this will imply a very fine mesh
is needed for large k. Consequently, considerable computing resource is needed to
solve the resulting large system of equations. Is it possible to construct a numerical
scheme such that the accuracy does not depend on kh and k 2 h? For the model
equation consider in this paper, the answer is yes.
We now present a novel finite difference scheme for the Helmholtz equation proposed by Lambe et al. [12]. The scheme is developed by replacing the coefficient of
U (x) in the standard finite difference operator by a weight such that it minimizes
U (x + h) U (x) + U (x h)
|.
h2
It can be shown by Taylors expansion that
(3)
(4)
|U (x)
h2
h4
+ u(4) (x)
+ . . .].
2!
4!
Hence, using the relation U (2n) = (1)n k 2n U for n = 1, 2, ... and the Taylors series
of cos(x), it gives
U (x + h) U (x) + U (x h)
.
h2
Therefore, using = 2 cos(kh) + (kh)2 , the new difference formula satisfies the
equation exactly. Since there is no truncation error resulting from the numerical
approximations, one would expect that it will produce exact numerical solution.
Unfortunately, this attractive finite difference scheme is not widely known in the
computational science or engineering community. One of the reasons may be due
to the fact that the major contribution of that paper was to illustrate the power of
using symbolic computation to compute optimal weights which involve complicated
manipulations with the integral formulas for two- and three-dimensional Helmholtz
equations. While the new difference formula is exact for the interior points, there
is no discussion on how to treat the boundary condition.
For the Sommerfelds radiation boundary condition at x = 1, we have
(5)
(6)
k 2 U (x) = U (x) =
and the second-order accurate standard finite difference scheme with a truncation
error O(h2 ) is given by
U (x + h) U (x h)
= ikU (x).
2h
It will be demonstrated that although the solution at the interior points can be
computed exactly using the new difference scheme, a numerical error at the boundary point can lead to an unacceptable solution for the problem at high wavenumbers.
To ensure an accurate numerical solution, it is important to construct difference
schemes which do not admit truncation errors at the interior points and at the
boundary points.
By applying a similar idea presented in [12], we now develop a novel scheme for
the radiation boundary condition U
x = ikU . From the Taylors expansion, we have
(7)
U (x + h) = U (x) + hU (x) +
h2
h3
U (x) + U (3) (x) + . . .
2!
3!
U (x h) = U (x) hU (x) +
95
h2
h3
U (x) U (3) (x) + . . .
2!
3!
Hence,
(8)
h2 (3)
h4
U (x)) + U (5) (x)) + . . .
3!
5!
= ikU , it follows that
U (x + h) U (x h) = 2h(U (x) +
U
x
nU
= (ik)n U.
nx
Substituting these values into equation (8), we obtain
(9)
U (x + h) U (x h)
U (x)
=
sin(kh).
2h
kh
Thus, the new difference scheme for the radiation condition can be written as
(10)
(11)
U (x + h) 2isin(kh)U (x) U (x h) = 0.
It is important to note that the novel boundary scheme has no truncation error and
satisfies the radiation boundary condition exactly. Hence, for a one-dimensional
Helmholtz equation considered here, the use of equations (5) and (11) produces
exact numerical solution if the effect due to round-off error is ignored.
To prove the uniqueness of the resulting linear system using the new difference
schemes, we first introduce the discretized integration by parts.
Lemma 2.1 (Discretized integration by parts). For any ui and vi , i = 0, 1, , n+1,
we have
n
n
X
X
1
1
(12)
x2 ui vi =
x ui x vi 2 (u1 u0 )
v0 + 2 (un+1 un )
vn
h
h
i=1
i=1
Proof: the proof is trivial.
Theorem 2.1 (Uniqueness of the discretized solution). By using the novel finite
difference schemes, namely equation (5) and equation (11), the problem has a unique
discretized solution.
Proof: Assuming there are two solutions w and v, let u = w v then u satisfies
the equation
uj+1 uj +uj1
k 2 uj = 0, j = 1, 2, . . . , n
h2
(13)
u =0
0
un+1 2i sin(kh)un un1 = 0.
Using Taylors expansion for un1 and the relation (9), it yields
2
x2 uj ( 2
h2 + k )uj = 0, j = 1, 2, . . . , n
u0 = 0
96
Y. S. WONG AND G. LI
n
X
j=1
x uj x uj
n
X
2
( 2 + k 2 )uj u
j (1 cos(kh))un u
n + i sin(kh)un u
n = 0
h
j=1
Since the right-hand side of equation(14) is real, it follows that un = 0. Hence for
any vj , j = 1, 2, . . . , n,
n
X
(15)
n
X
2 2 cos(kh)
)uj vj
(
h2
j=1
x uj x vj =
j=1
(16)
0 = un u0 =
2 2 cos(kh) X
uj (jh)
h2
j=1
Consequently,
n
X
(17)
uj (jh) = 0
j=1
If we assume
n
X
j=1
0=
n
X
uj (jh)l
j=1
n
1 X
x uj (jh)l+1
l + 1 j=1
n
X
1
2 uj (jh)l+2
(l + 1)(l + 2) j=1 x
n
X
k2
2 uj (jh)l+2
(l + 1)(l + 2) j=1 x
Thus,
n
X
uj (jh)l+2 = 0
j=1
n
X
uj (jh)l = 0, l = 1, 3, 5, . . .
j=1
uj = 0, j = 1, 2, . . . , n
97
(20)
Due to the existence of the incident angles and the cross derivative terms such as
Uxxyy and Uxxyyyy appearing in the two-dimensional problem, it is not straightforward to extend the novel difference scheme from one-dimensional to two-dimensional
Helmholtz equations. However, for a planar wave solution, Lambe et al. [12] considered a clever way to resolve the difficulty.
For U (x, y) = ei(k1 x+k2 y) with (k1 , k2 ) = (k cos , k sin ), a direct computation
gives
U (x + h, y) + U (x h, y) + U (x, y + h) + U (x, y h)
(22)
(23)
(24)
where J0 (kh) =
R
0
cos(khsin()))d.
Thus, the new finite difference scheme for a two-dimensional equation is given
by
(25) U (x + h, y) U (x h, y) + 4J0 (kh)U (x, y) U (x, y + h) U (x, y h) = 0
Adopting the idea for the boundary points and extending to the radiation condiU
U
tion, the new finite difference approximations for
= ik1 U and
= ik2 U are
x
y
given by
(26)
and
(27)
To treat the terms sin(k1 h) and sin(k2 h), we can apply similar procedure for dealing with cos(k1 h) and cos(k2 h) in the interior domain. For the two-dimensional
problem, we have the following uniqueness theorem.
Theorem 2.2 (Uniqueness of the discretized solution). By the novel finite difference
schemes (25), (26) and (27), the discretized system has a unique solution under the
condition max(k1 h, k2 h) < .
98
Y. S. WONG AND G. LI
Proof: Assuming there are two solutions w and v, let u = w v, then u satisfies
the equation
ui+1,j +ui1,j ui,j +ui,j1 +ui,j+1
k 2 ui,j = 0, i, j = 1, 2, . . . , n
h2
u0,j = uj,0 = 0, j = 1, 2, , n
(28)
u
2i sin(k1 h)un,j un1,j = 0, j = 1, 2, , n
n+1,j
uj,n+1 2i sin(k2 h)uj,n uj,n1 = 0, j = 1, 2, , n
2
x2 ui,j y2 ui,j ( 4
h2 + k )ui,j = 0, i, j = 1, 2, . . . , n
u0,j = uj,0 = 0, j = 1, 2, , n
un+1,j un,j = i sin(k1 h)un,j + (1 cos(k1 h))un,j , j = 1, 2, , n
By multiplying the equation by vi,j and summing-up the equation for i, j from 1
to n, we get
n X
n
n X
n
X
X
4
2
2
vi,j
( 2 + k 2 )ui,j vi,j = 0.
(x ui,j y ui,j )
h
i=1 j=1
i=1 j=1
Next, the discrete integration by parts is applied to x2 and y2 . For
n X
n
X
i=1 j=1
x2 , we
have
h2
n X
n
X
i=1 j=1
(x2 ui,j )
vi,j =
n X
n
X
i=1 j=1
i=2 j=1
n X
n
X
i=2 j=1
i=1 j=1
(ui1,j ui,j )
vi,j +
n X
n
X
n X
n
X
n+1
n
XX
k=2 j=1
(ui1,j ui,j )
vi,j
(uk1,j uk,j )
vk1,j +
= h2
n X
n
X
i=1 j=1
(uk1,j uk,j )
vk1,j
n
X
j=1
n
X
j=1
x ui,j x vi,j h
(u0,j u1,j )
v1,j
(un,j un+1,j )
vn,j
n
X
x un,j vn,j
j=1
Hence,
(29)
n X
n
X
(x2 ui,j )
vi,j =
i=1 j=1
Similarly, for
i=1 j=1
(30)
n X
n
X
x ui,j x vi,j
1X
x un,j vn,j .
h j=1
n X
n
X
y ui,j y vi,j
1X
y ui,n vi,n .
h i=1
i=1 j=1
n X
n
X
y2 ,
(y2 ui,j )
vi,j =
i=1 j=1
i=1 j=1
Consequently,
n X
n
X
i=1 j=1
n X
n
X
x ui,j x vi,j
XX
1X
x un,j vn,j +
y ui,j y vi,j
h j=1
i=1 j=1
(31)
99
XX 4
1X
y ui,n vi,n
( 2 + k 2 )ui,j vi,j = 0.
h i=1
h
i=1 j=1
(32)
n
1 X
((1 cos(k1 h))un,j + i sin(k1 h)un,j )
un,j
h2 j=1
n
1 X
((1 cos(k2 h))uj,n + i sin(k2 h)uj,n )
uj,n = 0.
h2 j=1
(33)
(sin(k1 h)un,j u
n,j + sin(k2 h)uj,n u
j,n ) = 0.
j=1
un,j = uj,n = 0,
j = 1, 2, , n
n X
n
X
x ui,j x vi,j +
i=1 j=1
n X
n
X
y ui,j y vi,j =
i=1 j=1
( j1
n
If we take vi,j =
+ i)h,
equation(35) , we have
n X
n
X
i, j = 1, 2, , n 1 and vi,j = 0, i, j = 0 or n in
x ui,j x vi,j =
i=1 j=1
n X
n
X
4
( 2 + k 2 )ui,j vi,j .
h
i=1 j=1
n X
n
X
x ui,j x ((
i=1 j=1
n X
n
X
x ui,j =
i=1 j=1
n
X
j=1
j1
+ i)h)
n
(un,j u0,j ) = 0.
Therefore,
(36)
n X
n
X
x ui,j x vi,j = 0.
n X
n
X
y ui,j y vi,j = 0.
i=1 j=1
i=1 j=1
with 6= 4 + k 2 h2 , we have
n X
n
X
j1
(38)
(
+ i)hui,j = 0.
n
i=1 j=1
100
Y. S. WONG AND G. LI
(39)
n X
n
X
j1
+ i)h)l ui,j
((
n
i=1 j=1
n
1 XX j 1
((
+ i)h)l+1 x ui,j
l + 1 i=1 j=1
n
n
(40)
XX j 1
1
((
+ i)h)l+2 x2 ui,j .
(l + 1)(l + 2) i=1 j=1
n
Similarly,
n
(41)
XX j 1
1
((
+ i)h)l+2 y2 ui,j = 0.
(l + 1)(l + 2) i=1 j=1
n
Using the finite difference equation and equations (40) and (41), we can easily verify
n X
n
X
j1
((
+ i)h)l+2 ui,j = 0.
n
i=1 j=1
n X
n
X
j1
+ i)h)l ui,j = 0.
((
n
i=1 j=1
We conclude that
(43)
ui,j = 0, for i, j = 1, 2, , n
Remark: If the value of in J0 (kh) (see equation(24)) is known, the exact solution
can be computed numerically using the novel finite difference schemes. However,
generally speaking, the value of is not available, and thus the optimal which
depend on the incident angle can not be determined. It should be noted that unlike
many high order methods such as the compact difference scheme or the spectral
method, an attractive feature of the novel difference schemes is that exact numerical
solution is achieved while the structure and the bandwidth of the corresponding
matrix is the same as those derived from a second-order central difference scheme.
Hence, the use of the novel difference schemes does not increase the complexity and
the storage requirement for solving the resulting linear system.
3. Numerical simulations
To demonstrate the effectiveness of the novel finite difference schemes presented
in the previous section, we carry out the following numerical simulations. Here, we
consider two mathematical models, Mode l and Model 2, which have been studied
in [4, 5, 17]. Let SFD and NFD denote the standard second-order central finite
difference and the novel finite difference schemes applying to the interior points,
respectively. To investigate the effect due to the radiation boundary condition, let
SBC denote the use of the standard central difference scheme for the boundary
101
points and NBC denote the application of the new finite difference scheme for the
boundary. The numerical error is defined in the discrete l norm,
E =
max
max |ui,j u
i,j |,
i=1,...,nx j=1,...,ny
=
.
h
kh
The above equation indicates the importance of kh, and to ensure P P W 12, we
need kh 0.5.
(45)
PPW =
3.1. Model 1: Uniaxial Propagation of a Plane Wave. Consider a onedimensional Helmohtz equation which models the propagation of a time-harmonic
plane wave along the x-axis,
x (0, 1)
Uxx k 2 U = 0,
U (0) = 1,
(46)
U (1) ikU (1) = 0.
The exact solution for this problem is given by eikx . Using the finite difference
approximations, the solution of the Helmohtz equation is obtained by solving the
resulting system of linear difference equations
(47)
AU = b,
NBC
SFD
NFD
0.0040 4.29e-14
0.1148 1.26e-14
0.5274 9.55e-15
1.3856 1.28e-14
2.0216 5.60e-15
2.0043 5.66e-16
In Table 1 and Table 2, we compare the performance using the standard central difference and the new finite difference schemes when the step-size h and the
wavenumber k is fixed. From the results presented here, we observe that the NFD
provides more accurate numerical solutions for all cases. When h is fixed, the error increases as k increases. However, for a fixed k, the error is reduced when h
102
Y. S. WONG AND G. LI
kh
h
2.0
0.04
1.0
0.02
0.5
0.01
0.25 0.005
0.125 0.0025
NBC
SFD
NFD
1.8623 5.6e-16
1.8740 2.9e-15
0.5274 9.6e-15
0.1314 4.3e-14
0.0328 1.5e-13
is decreasing. Even though the radiation boundary is imposed only at one point
x=1, the overall numerical solution is strongly depended on whether the boundary
condition is computed by SBC or NBC. When the new finite difference schemes
are employed for the interior and boundary points (i.e., using NFD and NBC), the
exact solution is obtained. It is important to note that using NFD and NBC, the
exact solution can be obtained even when kh > 1.
Table 3. E for SFD and NFD with NBC and kh = 0.5
k
h
SFD
NFD
10
50
100
200
500
0.05
0.01
0.005
0.0025
0.001
0.1229
0.5371
1.0353
1.7602
2.0263
1.77e-15 9.56e-15 1.93e-15 3.65e-14 9.35e-13
Table 3 compares the numerical solutions of SFD and NFD using NBC and with
kh = 0.5. Recall that using kh = 0.5, it provides about 12 points per wavelength.
It clearly demonstrates that with P P W 12, the standard difference scheme can
not resolve the oscillatory behavior for cases at high wavenumbers.
k=10
SFD
SBC
x 10
x 10
x 10
NFD
SBC
2
3
NBC
NBC
x 10
0.01
0.01
0.01
0.01
0.02
0.02
0.02
k=50
k=100
0.02
0
0.02
0.02
0.05
0.05
0.04
0.1
1
k=150
0.1
1
0.1
4
2
0.05
0.06
1
0
0.05
0.04
0.06
1
0.1
2
103
kh = 0.1, 0.5, 1 and 1.5. The profiles of the eigenvalue plots are similar when kh is
small. However, for large value of kh, the eigenvalue profiles are significantly difference when the radiation boundary condition is approximated by SBC or NBC. It
is of interest to note the eigenvalue distribution of SFD and NFD is siimilar when
the boundary condition is approximated by the same type of difference approximations. A careful investigation shows that the main difference is due to the shifting
as displayed in the eigenvalue plots, and this is verified that the large error in the
numerical solutions between SFD and NFD is indeed due to the phase shift of the
wave solution.
From the numerical simulations presented for the one-dimensional problems,
it is obvious that solving the Helmholtz equation numerically for cases with high
wavenumbers are more difficult than those with low wavenumbers. Since problems with high wavenumbers are ill-conditioned, it is naturally to expect that the
condition numbers of the resulting linear system increases as k increases.
Table 4. Condition numbers with h = 0.01
scheme k=5
k=25 k=50 k=100 k=125
SFD
5080.1 1016.9 503.4 229.6
252.3
NFD 5081.5 1014.5 499.8 243.2
199.0
Let the condition number be defined as max (AH A)/min (AH A). For h = 0.01,
Table 4 lists the condition numbers corresponding to the wavenumber k in the range
of 5 to 125. The values of the condition numbers for SFD and NFD are similar,
but it decreases from 5000 to about 200 as the wavenumber increases from 5 to
125. This unexpected results can be explained by the fact that as k increases the
smallest eigenvalue actually is moving away from zero as shown in Table 5. Thus
in solving the Helmholtz equation numerically, small condition number does not
imply the problem is well-conditioned.
Table 5. Min and Max eigenvalues of with h = 0.01
k
SFD
NFD
min
max
5
25
50
100
125
5
25
50
100 125
6.2e-7 1.5e-5 5.6e-5 2.0e-4 1.7e-4 16.0 15.5 14.1 10.7 10.7
6.2e-7 1.5e-5 5.7e-5 1.8e-4 2.2e-4 16.0 15.5 14.2 10.3 8.8
(48)
U + k 2 U = 0,
U (x, y) = f1 (x),
U (x, y) = f (y),
2
(x, y)
y=0
x=0
U
= ik2 U,
y=1
y
U
= ik1 U.
x=1
x
The exact solution U = ei(k1 x+k2 y) where (k1 , k2 ) = (k cos , k sin ), f1 and f2 are
determined such that the exact solution is a given plane wave.
104
Y. S. WONG AND G. LI
kh
0.8485
0.7071
0.5657
0.4243
0.2828
0.1414
k
302
252
202
152
10 2
5 2
E
SFD
NFD
1.70661 3.21431
2.60665 0.79162
0.71042 0.25167
0.20008 0.10524
0.13488 0.07627
0.04299 0.00349
J0 (kh)
[0, ]
Exact
3.645368 3.648019
3.752593 3.753879
3.841065 3.841593
3.910337 3.910505
3.960067 3.960099
3.990004 3.990006
In Table 6, we report the error norm E using the SFD and NFD for various
value of k and the step-size is kept at h = 0.02. Although the numerical solutions
using NFD are more accurate compared to those based on SFD for most cases, we
note that NFD does not produce exact numerical solutions as in one-dimensional
cases. This is due to the fact that in calculation of the matrix coefficient involved
J0 (kh), the exact angle of incident is not known. Hence, J0 (kh) is actually
computed by taking average of all angles in the range of [0, ] in equation(24).
Recall that in our test model = 4 , and it has been verified numerically that
instead of using the range [0, ], NFD will produce more accurate numerical solution
if J0 (kh) is determined using the angle in the range [ 8 , 3
8 ]. Moreover, when exact
value of is employed, exact solution can be computed numerically. It should also
mentioned when solving the resulting linear systems by GMRES for the test cases
reported in Table 6, the residual norm is decreasing as the iteration is increased, and
it will be terminated when the prescribed tolerance < 106 is reached. However,
the error norm could remain large for problems with high wavenumbers as reported
in Table 6.
Thus for two-dimensional problems, the NFD is not effective unless information
about the angle is known. In the following, assuming that the angle is in the
range of [0, 2 ], we present an algorithm using nonlinear least-squares to improve
the estimate for .
Least-square Algorithm:
1 Determine the coefficients of the linear system Ax = b by calculating J0 (kh) in
[0, 2 ]
105
m
X
j=1
where A(j) are the data from xtemp and x(j, ) are the exact solution of plane wave
(ek(x cos()+y sin()) ) with parameter .
4 Estimate using a nonlinear least-square such as the Levenberg-Marquardt algorithm. Using different initial approximations in Step 4, we determine 1 and 2 .
5 Update the coefficients of the system Ax = b by recomputing J0 (kh) in [1 , 2 ]
6 Repeat steps 2-5 until converges.
Remark: When applying the nonlinear least-square method to estimate , we
need an initial approximation for the Levenberg-Marquardt algorithm. Suppose
several initial approximations i are used, then we may have several possible solutions for . Now, let 1 and 2 be selected such that they are in the range of [0, 2 ].
Other solutions which are outside the range will be ignored.
Table 7. Estimating
1 and 2 in least-square process for h =
1/200 and k = 60 2
step
1
2
3
4
5
interval
initial data
16
2
16
3
16
4
16
5
16
[0,/2]
10.21 1.245 0.097 0.785 1.474
[0.097,1.474] -6.032 -5.370 1.245 0.785 0.326
[0.326,1.245] -5.205 1.551 0.658 0.785 0.913
[0.658,0.913] 0.568 0.785 0.785 0.785 0.785
[0.785,0.785] 0.785 0.785 0.785 0.785 0.785
6
16
0.326
6.941
0.020
0.785
0.785
7
16
8.636
7.196
7.069
1.003
0.785
k = 60 2
0, 2
0.09722302,1.47357316
0.32611235,1.24468426
0.65759956,0.91319670
0.78537393,0.78542241
k = 200
0, 2
0.19743746,1.37335858
0.61556731,0.95522921
0.68625372,0.88454261
0.73077586,0.84002050
0.78538820,0.78540815
k = 300
0, 2
0.39838750,1.17240883
0.49217431,1.07862160
0.61416985,0.95662640
0.78539812,0.78539821
106
Y. S. WONG AND G. LI
The least-square algorithm can be incorporated with the NFD scheme, so that
the solution of the Helmholtz equation is obtained through solving a sequence of
linear systems. At each step, the angle is estimated. When converges to a
constant value, very accurate numerical solutions are obtained. This procedure has
been tested for large wavenumbers and for cases where
kh > 1. In Table 8, we report
the estimated 1 and 2 for wavenumbers k = 60 2, 200, 300, respectively. Since
h = 1/200, kh = 0.424, 1.0 and 1.5. It is noted that even when kh is large and > 1,
the number of steps in the least-square estimations does not increase significantly.
When the values of k and kh are small, rapid convergent is observed. Table 9 shows
the corresponding error norms in using the combined NFD and the least-square.
It confirms that when is accurately estimated, NFD produces accurate numerical
solution. The accuracy can be further improved if we adjust the stopping condition
in the GMRES iterations.
Table 9. NFD Error norm at various steps with h = 1/200
step
1
2
3
4
5
6
k = 60 2
0.21359839
0.18440064
0.10184648
0.00925021
0.00000120
E
k=200
1.91769813
1.66355707
0.22103007
0.07679778
0.02345849
0.00000220
k=300
2.02601222
2.01655199
1.76463131
0.77773616
0.00000121
least-square (NDF-LS) for k = 60 2 and k = 300 are shown in Fig. 2 and Fig. 3.
We clearly observe that even when the error norm remains large, the residual norm
in the GMRES is decreasing as the number of iterations increased. Hence, we may
obtain poor numerical solution by checking only the residual norm. The power of
the NFD-LS is clearly demonstrated in Fig. 3.
1
1
SFD
0
NFD(1)
NFD(2)
1
log (Error)
NFD(4)
NFD(5)
10
10
log (Residual)
NFD(3)
2
2
SFD
3
NFD(1)
NFD(2)
5
6
20
40
60
80
Iteration number
100
120
NFD(3)
NFD(4)
NFD(5)
0
20
40
60
80
Iteration number
100
120
1
SFD
NFD(1)
NFD(2)
NFD(3)
NFD(4)
NFD(5)
10
log10(Residual)
log (Error)
2
3
SFD
NFD(1)
NFD(2)
NFD(3)
NFD(4)
NFD(5)
6
7
107
20
40
60
80
Iteration number
100
120
20
40
60
80
Iteration number
100
120
Figure 3. Error and Residual norms for SFD and NFD-LS for
h = 1/200 and k = 300
4. Conclusion
Novel finite difference schemes for solving the Helmholtz equation are presented
in this study. It has been shown that the new difference schemes satisfy the
Helmholtz equation and the radiation boundary conditions exactly. Since there
is no truncation error, exact numerical solutions are expected for problems at any
wavenumber. The most attractive features of this method are that it can be applied
to high frequency cases without the common requirement of using a fine step size.
Moreover, the high accurate numerical solutions are obtained while the resulting
linear system has the same simple sparse structure as those derived from the standard second order central difference approximation. The proofs of the uniqueness
of the discretized systems resulting for one- and two-dimensional Helmholtz equations are given. Numerical simulations are carried out to verify exact numerical
solutions are obtained for one-dimensional problems at any wavenumber. For a
two-dimensional problem, the new finite difference scheme requires good estimate
of the angle. A simple lease-square algorithm is proposed so that the angle and
hence the accuracy of the Helmholtz solutions can be improved iteratively. Incorporating the new difference schemes and the least-square method, the solution of
a two-dimensional Helmholtz equation can be accurately and efficiently computed.
The power of this technique has been demonstrated by comparing the performance
of the standard difference and the new difference schemes to two test models considered in this paper. It is of interest to extend the applications to other models,
and to investigate the effectiveness when solving the Helmholtz equation with a
perfectly matched layer method.
References
[1] O. Axelsson. Iterative Solution Methods, Cambridge University Press, Cambridge, New York,
Oakleigh, 1994
[2] J. Autrique and F. Magoul
es. Numerical analysis of a coupled finite- infinite element method
for exterior helmholtz problems. Journal of Computational Acoustics, 14:2143, 2006.
[3] I. Babuska, F. Ihlenburg, T. Strouboulis, and S. K. Gangaraj. A posteriori error estimation
for nite element solutions of helmholtz equation. part i: The quality of local indicators and
estimators. International Journal For Numerical Methods In Engineering, 40:34433462, 1997.
108
Y. S. WONG AND G. LI
[4] I. Babuska and S. A. Sauter. Is the pollution effect of the fem avoidable for the helmholtz
equation considering high wave. SIAM J. Numer. Anal., 34:23922423, 1997.
[5] G. Bao, G. W. Wei, and S. Zhao. Numerical solution of the helmholtz equation with high
wavenumbers. Int. J. Numer. Meth. Engng, 59:389408, 2004.
[6] J. P. Berenger. A perfectly matched layer for the absorption of elec- tromagnetic waves.
Journal of Computational Physics, 114:185200, 1994.
[7] B. Engquist and A. Majda. Absorbing boundary conditions for the numerical simulation of
waves. Math. Comp, 31:629651, 1977.
[8] C. J. Gittelson, R. Hiptmair, I. Perugia. Plane wave discontinuous galerkin methods: analysis
of the hversion, Mathematical Modelling and Numerical Analysis, 43, 297331, 2009
[9] I. Harari and F. Magoul
es. Numerical investigations of stabilized finite element computations
for acoustics. Wave Motion, 39:339349, 2004.
[10] I. Harari and E. Turkel. Accurate finite difference methods for time- harmonic wave propagation. Journal of Computational Physics, 119:252270, 1995
[11] F. Ihlenburg and I. Babuska. Finite element solution of the helmholtz equation with high wave
number part i: The h-version of the FEM. Computers & Mathematics with Applications,
30:937, 1995.
[12] L. A. Lambe, R. Luczak, and J. W. Nehrbass. A new finite difference method for the helmholtz
equation using symbolic computation. International Journal of Computational Engineering
Science, 4:121144, 2003.
[13] M. Nabavia, M.H. K. Siddiqui, and J. Dargahi. A new 9-point sixth-order accurate compact
finite-difference method for the helmholtz equation. Journal of Sound and Vibration, 307:972
982, 2007.
[14] I. Singer and E. Turkel. High-order finiite difference methods for the helmholtz equation.
Comput. Methods Appl. Mech. Engrg., 163:343358, 1998.
[15] I. Singer and E. Turkel. Sixth order accurate finite difference schemes for the helmholtz
equation. J. Comput. Acourstics, 14:339351, 2006.
[16] G. Sutmann. Compact finite difference schemes of sixth order for the helmholtz equation.
Journal of Computational and Applied Mathematic, 203:1531, 2007.
[17] I. Tsukerman. A class of difference schemes with flexible local approximation. Journal of
Computational Physics, 211:659699, 2006.
Department of Mathematical and Statistical Sciences, University of Alberta, Edmonton, Alberta, T6G 2G1, Canada
E-mail : [email protected]