Domain decomposition preconditioners for high-order discretisations of the heterogeneous Helmholtz equation

Research output: Contribution to journalArticlepeer-review

Abstract

We consider one-level additive Schwarz domain decomposition preconditioners for the Helmholtz equation with variable coefficients (modelling wave propagation in heterogeneous media), subject to boundary conditions that include wave scattering problems. Absorption is included as a parameter in the problem. This problem is discretized using H1-conforming nodal finite elements of fixed local degree p on meshes with diameter h=h(k)⁠, chosen so that the error remains bounded with increasing k⁠. The action of the one-level preconditioner consists of the parallel solution of problems on subdomains (which can be of general geometry), each equipped with an impedance boundary condition. We prove rigorous estimates on the norm and field of values of the left- or right-preconditioned matrix that show explicitly how the absorption, the heterogeneity in the coefficients and the dependence on the degree enter the estimates. These estimates prove rigorously that, with enough absorption and for k large enough, GMRES is guaranteed to converge in a number of iterations that is independent of k,p and the coefficients. The theoretical threshold for k to be large enough depends on p and on the local variation of coefficients in subdomains (and not globally). Extensive numerical experiments are given for both the absorptive and the propagative cases; in the latter case, we investigate examples both when the coefficients are nontrapping and when they are trapping. These experiments support (i) our theory in terms of dependence on polynomial degree and the coefficients; and (ii) the sharpness of our field of values estimates in terms of the level of absorption required.
Original languageEnglish
Pages (from-to)2139–2185
JournalIMA Journal of Numerical Analysis
Volume41
Issue number3
Early online date11 Dec 2020
DOIs
Publication statusPublished - 31 Jul 2021

Cite this