An Optimal Algorithm for the Solution of the Helmholtz Equation
Aims/Objectives: The Helmholtz equation is a partial differential equation which is used in numerical weather prediction. Angwenyi et. al., used a five point finite difference stencil in discretizing the partial differential equation and solved the resulting square system of equations using eight iterative methods and concluded that the BICGSTAB was the most computationally efficient using just one example. However, based on a comparison of the norm of the residual and CPU time of four methods presented in this work on the same example in their paper and others; we not only discovered that the Gauss Seidel method out performed the BICGSTAB contradicting the claim of the authors but also the Thomas Block Tridiagonal Algorithm (TBTA)in the absence of round off errors.Methodology: We compared the performance of the Gauss Seidel Method, BICGSTAB, Matlab backslash, and the Thomas Block Tridiagonal Algorithm (TBTA) for the numerical solution of the Helmholtz equation with different step sizes. Results: We discovered that in the absence of round off errors, not only did the Gauss Seidel method but also the Thomas Block Tridiagonal Algorithm (TBTA) out performed the BICGSTAB contradicting the claim of Angwenyi et. al.Conclusion: We do not recommend the BICGSTAB for the solution of the linear system of equations arising from the discretization of the Helmholtz equation as claimed by Angwenyi et al. Rather, the Thomas Block Tridiagonal Algorithm should be used and if one is thinking of an iterative method for the numerical solution of the Helmholtz equation, the Gauss-Seidel method should be the method of choice rather than the BICGSTAB.