A Fast Forth-Order Method for 3 D Helmholtz Equation with Neumann Boundary

We present fast fourth-order finite difference scheme for 3D Helmholtz equation with Neumann boundary condition. We employ the discrete Fourier transform operator and divide the problem into some independent subproblems. By means of the Gaussian elimination in the vertical direction, the problem is reduced into a small system on the top layer of the domain. The procedure for solving the numerical solutions is accelerated by the sparsity of Fourier operator under the space complexity of ( ) 3 O M . Furthermore, the method makes it possible to solve the 3D Helmholtz equation with large grid number. The accuracy and efficiency of the method are validated by two test examples which have exact solutions.


Introduction
Helmholtz equation appears from general conservation laws of physics and can be interpreted as wave equations.Helmholtz equation is widely applied in the scientific and engineering design problem.Many methods have been proposed for solving the Helmholtz equations, such as finite difference method [1], finite element method [2] [3] [4], spectral method [5] [6] and other methods [7] [8] [9].However, the computational cost of the finite element method increases greatly for large wave number problems.Additionally, boundary element method is limited to constant-coefficients problems.Finite difference schemes provide the simplest and least expensive avenue for achieving high-order accuracy.Some high order algorithms are proposed in [10] [11] [12] [13].In this paper, we derive a fourth-order finite difference scheme using 19 points for solving the three-dimensional Helmholtz equation.
The discretization of the fully three-dimensional Helmholtz equation contains a large number of unknowns and requires considerable memory space.The time and space complexity increase exponentially as the grid number increases.In the meantime, to maintain a given accuracy, the mesh must be refined as the wave number increases.Some parallel algorithms are presented in [14] [15].However, this kind of parallel algorithms cannot settle the conflict between the grid number and the performance of the computer hardware.
Fast Fourier transform is a powerful technique for solving the Helmholtz equation both in two and three dimensions [16] [17].However, fast algorithm in [18] requires much computational cost.In light of this, we propose a fast algorithm for solving the three-dimensional Helmholtz equation.The fast operator applies inexpensive transformation to break the large discretization matrix into small and independent systems.Therefore, the equation in the whole region is divided into some small equations in the vertical direction.Meanwhile, the algorithm saves much memory space and requires less computational time due to the sparsity of the fast operator.The problem is reduced on the aperture by introducing a Gaussian elimination and the Neumann boundary condition in the vertical direction.
The paper is outlined as follows.In Section 2, a fourth-order finite difference method for the Helmholtz equation is derived.In Section 3 and Section 4, a fast algorithm is proposed by the Fourier transformation and Gaussian elimination.
Two numerical experiments of the fast fourth-order algorithm are presented in Section 5.The paper is concluded in Section 6.

Fourth-Order Finite Difference Method
The model problem is described as follows in the cubic domain Ω with Neumann boundary condition ( ) where k is the wave number and Γ is one of the planes of domain.

( ) ( )
, , , , , x y z The 19-points finite difference stencil with h yields the following linear system where ) the symbol ⊗ represents the Kronecker product., ,

M
A and N A are all tridiagonal Toeplitz matrices.Fourier-sine transformation can be applied to these matrices for accelerating the algorithm.Multiplying discrete Fourier-sine transformation matrices M S and N S on the both side of M A and N A , we have ( ) ( )  can be defined in the similar way.
Therefore, multiplying on both side of Equation ( 4), we have where , .
is given in Figure 1 when American Journal of Computational Mathematics , 1, 2, , ; 1, 2, , .12 In this paper, we take Γ as the top surface of the domain and it can be extended to the general situations.Since the solutions on the other surfaces are already known, we need to extract top B S which contains the parts of , , 1 , 2 , , 0, 0, ,1 2 6 . 1 Next, we use the Gaussian elimination with a row partial pivoting to solve Equation (7).American Journal of Computational Mathematics First of all, constructing a LU-decomposition for ij P , i.e. ij ij ij

Discretization of Neumann Boundary Condition
The fourth-order finite difference discretization of Equation ( 2) can be expressed as Using the fourth-order substitution of zzz φ we can derive ( ) where , , on both side of Equation ( 12), we can obtain where Moreover, replacing l with , 12 and the matrix form , :,:, .
on both side of Equation ( 15), there follows Combining Equation (11) and Equation ( 17) and derive a linear system where

Numerical Experiments
sin π sin π , , 2sinh 2π sinh 2π 1 sinh 2π Table 1 fully corroborates the theoretical design rate of the convergence for the proposed method.We can see that a good accuracy (10 −7 ) is achieved with a small number of grid points (16 -32 in each direction).In the case of space complexity of ( )   ( ) ( ) ( ) ( )

Conclusion
We propose a fast-high order method for solving the 3D Helmholtz equation with Neumann boundary condition.Fourier operator is used to generate block-tridiagonal structure of the discretization of the Helmholtz equation.
Moreover, by using the Gaussian elimination in the vertical direction, the Helmholtz equation is reduced into a linear system in the layer of the domain.
The validity and efficiency of the method are tested by two numerical experiments.
x y z b x y z and ( ) , g x y are known function.The Helmholtz equation is approximated by a fourth-order finite difference discretization with N L I I I and MNL I are identity matrices, the subscripts denote their dimension., M N A A and L A are , M M N N × × and L L × tridiagonal matrices respectively.B Φ and B F are the boundary parts of Φ and F.

Figure 1 .
Figure 1.The sparse structure of M

Finally
we can get the numerical solution of the 3D Helmholtz equation.
In this section, two numerical experiments are presented to test the validity and efficiency of the proposed method.Both experiments are implemented on MATLAB.All the equations are solved by the BiCG method.Equations in the two examples are solved in a cube [ ] [ ] [ ]

3 OM
, the sparsity of Fourier operator accelerates the speed for solving the three-dimensional Helmholtz equation.Moreover, the comparison of the computational time of three times Fourier transformation and twice Fourier transformation are given in figures of the numerical solutions U with different wave number in Figure4and Figure5.As shown in Figure4and Figure5, the solutions of the Helmholtz equation are highly oscillating for large wave number.

Table 1 .
Here M American Journal of Computational Mathematics represent two different transform operators.As we can see from Table1, the algorithm proposed in this paper saves much computational time and makes it possible to solve the equation with large grid number.Meanwhile, we give the numerical solutions of Equation (19) in the whole domain and numerical solution on the face

Table 1 .
Convergence rate and comparisons of computational time (s) for solving Example 1 with different operators.