Skip to main content
  • Research article
  • Open access
  • Published:

Fast rapidly convergent penetrable scattering computations


We present a fast high-order scheme for the numerical solution of a volume-surface integro-differential equation. Such equations arise in problems of scattering of time-harmonic acoustic and electromagnetic waves by inhomogeneous media with variable density wherein the material properties jump across the medium interface. The method uses a partition of unity to segregate the interior and the boundary regions of the scattering obstacle, enabling us to make use of specially designed quadratures to deal with the material discontinuities in a high-order manner. In particular, the method uses suitable changes of variables to resolve the singularities present in the integrals in conjunction with a decomposition of Green’s function via the addition theorem. To achieve a reduced computational cost, the method employs a Fast Fourier Transform (FFT) based acceleration strategy to compute the integrals over the boundary region. Moreover, the necessary offgrid evaluation of the density and the inter-grid transfer of data is achieved by applying an FFT-based refined-grid interpolation strategy. We validate the performance of the method through multiple scattering simulations. In particular, the numerical experiments demonstrate that the proposed method can handle high-contrast material properties without any adverse effect on the number of GMRES iterations.


In the last few decades, the scattering problem, particularly the computational aspects, has garnered a lot of interest from engineers, scientists, and mathematicians owing to its vast application base. Producing a meaningful numerical solution to this problem still remains computationally challenging, particularly where there is a discontinuity or high contrast in the material properties, and when a high-order accuracy is desired.

In this text, we consider the scatterer \(\Omega \) to be an open bounded set in \(\mathbb R^2\) with a smooth boundary \(\Gamma \), \(\Omega _e\subset \mathbb R^2\) being the homogeneous exterior. The scalar scattering problem is modeled in terms of the Bergmann’s equation [1],

$$\begin{aligned} \rho ({{\varvec{x}}})\nabla \cdot \left[ \frac{1}{\rho ({{\varvec{x}}})}\nabla \psi ({{\varvec{x}}})\right] + \kappa ^2({{\varvec{x}}}) \psi ({{\varvec{x}}}) = 0, \end{aligned}$$

where (for the acoustic case) \(\psi \) denotes the time-harmonic wave field, \(\kappa \) is the wave number in the media, and \(\rho \) is the material density.Footnote 1

The exterior field \(\psi _e=\psi _inc +\psi _s\) satisfies the Helmholtz’s equation

$$\begin{aligned} \Delta \psi _e({{\varvec{x}}}) + \kappa _e^2\psi _e({{\varvec{x}}}) = 0, \text { for } {{\varvec{x}}}\in \Omega _e, \end{aligned}$$

where \(\psi _\textrm{inc}\) is the incident wave, \(\kappa _e\) is the wave number in \(\Omega _e\), and \(\psi _{s}\) is the scattered wave satisfying the Sommerfeld radiation condition [2]. The transmission conditions

$$\begin{aligned} \psi _e&= \psi , \end{aligned}$$
$$\begin{aligned} \frac{1}{\rho _e}\dfrac{\partial \psi _e}{\partial {{\varvec{n}}}}&= \dfrac{1}{\rho }\frac{\partial \psi }{\partial {{\varvec{n}}}}, \end{aligned}$$

are satisfied across the interface \(\Gamma \), where \({{\varvec{n}}}\) denotes the outward normal and \(\rho _e\) is the density in \(\Omega _e\).

For the two dimensional electromagnetic scattering problem where the electric field is given by \({{\varvec{E}}}= (E_x,E_y,E_z)\) and the magnetic field is given by \( {{\varvec{H}}}= (H_x,H_y,H_z)\), the problem can be modeled through transverse magnetic (TM) and transverse electric (TE) modes [3] as below:

$$\begin{aligned} \left. \begin{array}{ll} \psi = E_z,\; \rho = \mu &{} \text { in }{} {\textbf {TM}}\text {-mode, }\\ \psi = H_z,\; \rho = \epsilon &{} \text { in }{} {\textbf {TE}}\text {-mode,} \end{array}\right\} \end{aligned}$$

where \(\epsilon \) and \(\mu \) are the electric permittivity and magnetic permeability, respectively. Note that for the two-dimensional electromagnetic problem, the material properties \(\kappa \), \(\epsilon \) and \(\mu \) depend only on the \(x\) and \(y\) variables.

The main difficulty in numerically solving the wave scattering problem remains the fact that to describe highly oscillatory functions in large domains accurately, a certain fixed number of points are necessary to resolve a wavelength. The central challenge in directly solving the differential equation or its variational formulations lies in constructing an approximating boundary condition to replace the radiation condition, which in itself is a highly active area of research [4,5,6]. Generally, the error associated with such boundary conditions typically dominates the error in the computed solution. Another approach is to solve an equivalent integral equation [2, 7], which is favored for this problem because the solution of the integral equation inherently satisfies the radiation condition. There are two main challenges in obtaining the numerical solution of the equivalent integral equation of the scattering problem, first, singularity present in the kernel of the integral equation, and, second, quadratic cost per iteration of the linear solver.

A couple of volume-surface integral representations for the scalar scattering problem can be found in [1, 8]. The authors in [8] study the well-posedness of the problem for different material properties including the piecewise smooth material properties. In this paper, we solve the equivalent (volume-surface) integral equation (5) presented in  [1, Section 4.3],

$$\begin{aligned} \psi ({{\varvec{x}}}) = \psi _\textrm{inc}({{\varvec{x}}}) + (\mathcal L\psi )({{\varvec{x}}}) = \psi _\textrm{inc}({{\varvec{x}}}) + ({\mathcal {K}}{\mathcal {V}}\psi )({{\varvec{x}}}) + (\mathcal SF\psi )({{\varvec{x}}}), \quad \textrm{for}\quad {{\varvec{x}}}\in \Omega , \end{aligned}$$

where the volume integral operator

$$\begin{aligned} ({\mathcal {K}}{\mathcal {V}}\psi )({{\varvec{x}}}) \,{:}{\,=}\, \int \limits _\Omega G_e({{\varvec{x}}},{\varvec{x'}})(V\psi )({\varvec{x'}})d{\varvec{x'}}, \end{aligned}$$

and, the surface integral operator

$$\begin{aligned} ({\mathcal {S}} F\psi )({{\varvec{x}}}) \,{:}{\,=}\,\int \limits _{\Gamma } G_e({{\varvec{x}}},{\varvec{x'}}) (F\psi )({\varvec{x'}}) ds({\varvec{x'}}), \end{aligned}$$

with \( V\psi = \left( \kappa _e^2 - \kappa ^2\right) \psi + \rho ^{-1}\nabla \rho \cdot \nabla \psi , \)\( F\psi = \left( \frac{\rho _e}{\rho } -1\right) \frac{\partial \psi }{\partial {{\varvec{n}}}}, \) and, the kernel \( G_e({{\varvec{x}}},{\varvec{x'}}) = \frac{i}{4} H_0^1(\kappa _e|{{\varvec{x}}}-{\varvec{x'}}|) \) is the radiating Green’s function of Helmholtz’s equation in two-dimensions.

A significant amount of work addressing the acoustic scattering problem (based on various formulations of the problem) can be found in the literature, to name a few [9,10,11,12,13,14], but most of these studies address the scattering problem where the density remains constant (\(\rho = \rho _e\)). To the best of our knowledge, only a limited number of works directly address the problem with a variable density \(\rho \). In [15], Kriegsmann and Reiss have given a solution to the problem with variable \(\rho \), assuming \(\rho / \rho _e\simeq 1 \). They also assume that \(\rho \) is constant near \(\Gamma \), which, in general, need not be true. Although the authors consider variable material density in [16,17,18], the solution methodologies work only for spherical geometry. In [19], Bleszynski et al. address this problem in a three-dimensional setup and provide a fast algorithm. They also point out the difficulty of the high-contrast problem \((\rho / \rho _e>> 1)\), which they address in a later article [20]. Though fast, the method in [20] is a low-order method. Recently in [21], the authors presented an optimized weak coupling of boundary element and finite element methods to solve acoustic scattering problems in three dimensions for homogeneous and inhomogeneous scatterers. In [22], Colton and Monk have reviewed the progress for the inverse problem with the variable density. This article proposes a fast high-order method to solve the problem with variable and high-contrast material properties. In particular, we investigate the performance of our solver in the high-contrast scenario considered in [20].

The rest of the paper is organized as follows. “Numerical method” presents the proposed solution methodology; in particular, we discuss the numerical schemes used for high-order approximation of the integral operators and the density derivatives. Next, in “Computation examples”, we present a variety of computational examples to showcase the efficacy of the proposed method. A brief discussion on the extension of the methodology for the corresponding three-dimensional acoustic scattering problem follows in “Extension to three dimensions”, wherein we demonstrate its effectiveness via some numerical experiments. Finally, we summarize our conclusions in “Conclusions”.

Numerical method

We base our numerical approximation of the solution of Eq. (5) on the Nyström methodology. Many of the principal components of the proposed method are adaption or modification of the works thereof [9, 13, 23, 24]. The method presented in this paper can be seen as an extension of the work presented in [13] for the solution of the Lippmann-Schwinger equation, which is a special case of the integral equation (5). The main difficulties in the fast and accurate computation of the integrals in (5) are the singular (when \({\varvec{x'}}={{\varvec{x}}}\)) and the near-singular (when \({\varvec{x'}}\) and \({{\varvec{x}}}\) are in close proximity) behavior of the kernel. A specialized integration scheme is designed to resolve these issues in conjunction with appropriate changes of variables. The required offgrid calculations are handled using Fast Fourier Transform (FFT) based high-order interpolation schemes designed in accordance with the underlying grid as described in this section below.

The resulting linear system, arising from the Nyström discretization of (5), is solved using the matrix free GMRES solver [25]. In the following, we describe the numerical scheme for approximating the integral operators and the density derivatives.

Decomposition of integral operator

We split the closure \({{\overline{\Omega }}}\) of the inhomogeneity \(\Omega \) into \(P\) overlapping curvilinear patches, say, \(\{\Omega _p\}_{p=1}^P,\) where the \(p^\text {th}\)-patch is homeomorphic to the set \((0, 1)\times [0, 1)\), via a smooth, invertible parametrization \({\varvec{\xi }}_p = {\varvec{\xi }}_p(u, t)\). By constructing a partition of unity \(\omega _p({{\varvec{x}}})=\omega _p({\varvec{\xi }}_p(u,t))\), \(p=1,\dots ,P\) subordinated to this covering, we rewrite the volume integral (6) as a sum of integrals over \(P\) patches

$$\begin{aligned} (\mathcal K V\psi )({{\varvec{x}}}) = \sum \limits _{p=1}^P (\mathcal K_p\, V\psi )({{\varvec{x}}}) = \sum \limits _{p=1}^P \int \limits _{\Omega _p} G_e({{\varvec{x}}},{\varvec{x'}}) \omega _p({\varvec{x'}}) V\psi ({\varvec{x'}}) d{\varvec{x'}}. \end{aligned}$$
Fig. 1
figure 1

Illustrations of the curvilinear patches and the corresponding POU functions for a three patch cover for a bean shaped scatterer. a Shows the scatterer shape. b Illustrates the POU function for the interior patch whereas (c) and (d) illustrates two boundary patches. e, f Illustrate the collection of both the boundary patches and all of the patches, respectively

Note that when the closure of a patch \(\Omega _p\) does not intersect the the boundary of the domain, that is, when \({{\overline{\Omega }}}_p\cap \Gamma =\emptyset \), the corresponding function \(\omega _p\) and its derivatives vanish to high-order at both ends in every direction. On the other hand, for the case when \({{\overline{\Omega }}}_p\cap \Gamma \ne \emptyset \), the corresponding function \(\omega _p\) vanishes at both ends only in the \(u\)-direction. This distinction allows us to employ different approximation methodologies for integration over these two sets of patches. In particular, for integration over the patches, where the POU functions vanish in every direction, we make use of the addition theorem-based integration methodology [9, 26] for an accurate \(\mathcal O(N\log N)\) approximation (see “Interior integration”).

To facilitate this, we classify the patches into the following two sets of patches and the corresponding indices, namely, \((\Omega _{\mathcal I},\mathcal I) =\{(\Omega _p,p):{{\overline{\Omega }}}_p\cap \Gamma =\emptyset \}\) and \((\Omega _{\mathcal B},\mathcal B) =\{(\Omega _p,p):{{\overline{\Omega }}}_p\cap \Gamma \ne \emptyset \}\). Here onward, the patches in \(\Omega _{\mathcal I}\) are called the interior patches and the patches in \(\Omega _{\mathcal B}\) are called the boundary patches. For \(p\in \mathcal B\), we take the parameter \(t\) to describe the transverse parameter, where the boundary \(\Gamma \) coincides with \(t=0\). In view of this, the set of functions \(\{\omega _p(u,0), \, p\in \mathcal B\}\) serves as a partition of unity for the surface \(\Gamma \), allowing us to decompose the surface integral (7) as

$$\begin{aligned} (\mathcal S F\psi )({{\varvec{x}}}) \,{:}{\,=}\, \sum \limits _{p\in \mathcal B} (\mathcal S_p\, F\psi )({{\varvec{x}}}) = \sum \limits _{p\in \mathcal B} \int \limits _{\Gamma _p} G_e({{\varvec{x}}},{\varvec{x'}}) \omega _p({\varvec{x'}}) F\psi ({\varvec{x'}}) ds({\varvec{x'}}), \end{aligned}$$

where \(\Gamma _p:={{\overline{\Omega }}}_p\cap \Gamma \). Thus, using the above patch classification and the surface integral decomposition, we can write the integral operator \((\mathcal L\psi )({{\varvec{x}}})\) as

$$\begin{aligned} (\mathcal L \psi )({{\varvec{x}}}) = (\mathcal K_{I} V\psi )({{\varvec{x}}}) + \sum \limits _{p\in \mathcal B}(\mathcal K_p V\psi )({{\varvec{x}}}) + \sum \limits _{p\in \mathcal B}(\mathcal S_p F\psi )({{\varvec{x}}}), \end{aligned}$$


$$\begin{aligned} (\mathcal K_{I} V\psi )({{\varvec{x}}}) \,{:}{\,=}\, \sum \limits _{p\in \mathcal I}(\mathcal K_p V\psi )({{\varvec{x}}}) = \int _{\Omega } G_e({{\varvec{x}}},{\varvec{x'}}) E({\varvec{x'}}) V\psi ({\varvec{x'}})d{\varvec{x'}}, \end{aligned}$$

and \(E({{\varvec{x}}})\,{:}{\,=}\,\sum \limits _{p\in \mathcal I}\omega _p({{\varvec{x}}})\) vanishes to the boundary \(\Gamma \) with high-order. Further, the integrals \((\mathcal K_p\, V\psi )({{\varvec{x}}})\) and \((\mathcal S_p F\psi )({{\varvec{x}}})\) for \(p\in \mathcal B\) can be rewritten, in the parametric space, as

$$\begin{aligned} (\mathcal K_p V\psi )({{\varvec{x}}}) = \int \limits _0^1\!\int \limits _0^1 G_e({{\varvec{x}}},{\varvec{\xi }}_p(u',t')) \omega _p({\varvec{\xi }}_p(u',t')) V\psi ({\varvec{\xi }}_p(u',t'))J_p(u',t') du'dt', \end{aligned}$$


$$\begin{aligned} (\mathcal S_p F\psi )({{\varvec{x}}}) = \int \limits _0^1 G_e({{\varvec{x}}},{\varvec{\xi }}_p(u',0)) \omega _p({\varvec{\xi }}_p(u',0)) F\psi ({\varvec{\xi }}_p(u',0)) \frac{\partial }{\partial u'}{\varvec{\xi }}_p(u',0) du', \end{aligned}$$

respectively, where \(J_p\) in (11) denotes the Jacobian of the change of variable \({\varvec{\xi }}_p\).

Clearly, in order to achieve high-order approximation of the operator \((\mathcal L\psi )\), the method requires high-order numerical integration schemes to approximate the integrals \(\mathcal K_I V\psi \), \(\mathcal K_p V\psi \), and \(\mathcal S_p F\psi \) given in (10), (11), and (12), respectively. In addition, the method requires an accurate numerical differentiation scheme to evaluate the expressions \(V\psi \) and \(F\psi \).

Toward this end, we start by placing a uniform parametric grid

$$\begin{aligned} \mathcal {G}_{p}^{\mathcal B} = \{{{\varvec{x}}}^{p}_{ij} = {\varvec{\xi }}_{p}(i/(N_{u}^{\mathcal B}-1),j/(N_{t}^{\mathcal B}-1)) \;|\; 0\le i< N_{u}^{\mathcal B}, 0\le j < N_{t}^{\mathcal B} \}, \text { for } p\in \mathcal B, \end{aligned}$$


$$\begin{aligned} \mathcal {G}_{p}^{\mathcal I} = \{{{\varvec{x}}}^{p}_{ij} = {\varvec{\xi }}_{p}(i/(N_{u}^{\mathcal I}-1),j/(N_{t}^{\mathcal I}-1)) \;|\; 0\le i< N_{u}^{\mathcal I}, 0\le j < N_{t}^{\mathcal I} \}, \text { for } p\in \mathcal I, \end{aligned}$$

for each overlapping patch as illustrated in Figure 2.

We denote the set of all the Nyström nodes (that is, the points where the method computes the unknown) on the whole domain \({\overline{\Omega }}\) by \(\mathcal {G} := \mathcal {G}^{\mathcal B} \cup \mathcal {G}^{\mathcal I},\) where \(\mathcal {G}^{\mathcal B} :=\cup _{p\in \mathcal B}\mathcal {G}_{p}^{\mathcal B},\) and \(\mathcal {G}^{\mathcal I} :=\cup _{p\in \mathcal I}\mathcal {G}_{p}^{\mathcal I}.\) Thus, the number of unknowns for the iterative solver is \(N=\text {card}(\mathcal G)=N_u^{\mathcal B}\times N_t^{\mathcal B}\times card(\mathcal B) + N_u^{\mathcal I}\times N_t^{\mathcal I} \times card(\mathcal I)\). Note that a separate grid placement for the surface calculation is not required; instead, the \(u\)-direction grid at \(t=0\) for \(p\in \mathcal B\) does the job, restricting the total number of unknowns to \(N\). Before we describe the numerical strategy in detail, we point out that the method also uses an “auxiliary” grid in polar coordinates to approximate the integral in Eq. (10) as described in detail in “Interior integration”. Note that these auxiliary polar grid points do not contribute to the number of unknowns \(N\) in the iterative solver.

Fig. 2
figure 2

An illustration of the grid placement for a three patch decomposition of a bean shaped domain (given by, e.g., the blue curve in the top-right subfigure.) The figure shows on the top left—the grid over two boundary patches; at the top right— grid over the interior-patch region; at the bottom left—union of the grids over the boundary- and interior-patches; and at the bottom right—the auxiliary polar grid encompassing the domain

In what follows, we first present the approximation strategy for the surface integral (12), then extend this strategy to approximate the boundary-patch integral (11). In both cases, a local floating POU around the target point is used to isolate the singularity, which localizes the otherwise expensive singular integration calculation and facilitates the use of the FFT-based equivalent source acceleration strategy [13, 27]. For approximation of the integral (10) over the interior patches, the method relies on a suitable decomposition of the Green’s function \(G_e\) via the addition theorem of the Hankel function [9] to speed up the otherwise bulky calculation. To efficiently transfer of the data \(E({{\varvec{x}}})V\psi ({{\varvec{x}}})\) back and forth between the polar grid and the uniform parametric mesh on the interior patches, we set up two fast high-order FFT-based interpolation schemes discussed later in the text.

Approximation of the surface integral

The difficulties in numerical approximation of the surface integral (12) are similar for each \(p\in \mathcal B\); hence it is sufficient to discuss the method for a particular \(p\). First, when the target point \({{\varvec{x}}}\) is sufficiently away from the surface \(\Gamma _p\), the integrand is smooth and periodic (owing to the vanishing properties at both end). Thus, an application of the trapezoidal rule can effect a high-order approximation. On the other hand, when \({{\varvec{x}}}\in \Gamma _p\) or \({{\varvec{x}}}\) is close to the surface patch \(\Gamma _p\), the kernel \(G_e\) has a singular or a near-singular (due to the rapid change in the kernel value) behavior, respectively. To achieve a high-order accuracy without compromising efficiency, as mentioned above, the method localizes the singularity using a smooth cutoff function \(\eta ^u\) centered at \(u\); in our computation we used

$$\begin{aligned} \eta ^u(u') = {\left\{ \begin{array}{ll} 1 &{} \text{ for } \gamma \leqslant \gamma _0, \\ \exp \left( \frac{2 \textrm{e}^{-1 / x}}{x-1}\right) &{} \text{ for } \gamma _0<d<\gamma _1 \quad \text{ where } x=\left( d-\gamma _0\right) /\left( \gamma _1-\gamma _0\right) ,\\ 0 &{} \text{ for } d \geqslant \gamma _1, \end{array}\right. } \end{aligned}$$

for \(\gamma _1 > \gamma _0 \ge 0\) and \(d = |u-u'|\). Using \(\eta ^u\) we rewrite Eq. (12) as a sum of two integrals

$$\begin{aligned} (\mathcal S_p F\psi )({{\varvec{x}}})&= \int \limits _0^1 G_e({{\varvec{x}}},{\varvec{\xi }}_p(u', 0)){\widetilde{F}}_p\psi (u') (1-\eta ^u(u')) du'\nonumber \\&+ \int \limits _{u-\gamma _1}^{u+\gamma _1}\!\! G_e({{\varvec{x}}},{\varvec{\xi }}_p(u', 0)){\widetilde{F}}_p\psi (u') \eta ^u(u') du', \end{aligned}$$

where \({\widetilde{F}}_p\psi (u')=\omega _p({\varvec{\xi }}_p(u',0)) F\psi ({\varvec{\xi }}_p(u',0)) \frac{\partial }{\partial u'}{\varvec{\xi }}_p(u',0)\). The first integral on the right hand side (r.h.s.) of (16) has a smooth periodic integrand, and can be effected to a high-order approximation using the trapezoidal rule. On the other hand, the integrand of the second integral on r.h.s. of (16) contains a singularity. In order to resolve the singularity, we utilize a change of variable

$$\begin{aligned} u'(\tau ) = u + \upsilon (\tau ), \end{aligned}$$

where \(\upsilon (\tau )\) is an odd function that vanishes at \(\tau =0\) along with \(M\) (\(M\ge 1\)) of its derivatives. One such “change of variable” is

$$\begin{aligned} \upsilon (\tau ) = \tau ^{M + 1} \end{aligned}$$

for an even, non-negative integer \(M\). This change of variable renders the integrand in (19) below

$$\begin{aligned} \int \limits _{-\tau _1}^{\tau _1} G_e({{\varvec{x}}},{\varvec{\xi }}_p(u'(\tau ),0)) {\widetilde{F}}_p\psi (u'(\tau )) \eta ^u(u'(\tau )) \upsilon '(\tau ) d\tau \end{aligned}$$

smooth with uniformly bounded \(M\) derivatives, which vanishes to high-order at the endpoints \(\tau =-\tau _1\) and \(\tau =\tau _1\), where \(\tau _1=\upsilon ^{-1}(\gamma _1)\). Thus, a high-order integration is possible using the trapezoidal rule (cf. Remark 1). Moreover, the change of variable given by (17) also resolves the near singularity [11]. Notably, this change of variable necessitates density values at some offgrid points, which we obtain via the one-dimensional version of the high-order TrigPoly interpolation introduced in [23].

Approximation of the boundary-patch integral

The present section provides a concise description of the numerical strategy employed to approximate the boundary-patch integrals. Similar to the surface calculation, it is sufficient to discuss the methodology for a particular \(p\in \mathcal B\). The difficulties in numerical approximation of these integrals significantly depend on the position of the target point, leading to the following three different instances.

Non-singular integral

In case, the target point \({{\varvec{x}}}\) resides outside the integrating patch \(\Omega _p\), the integrand is smooth and vanishes at two ends in the \(u\)-direction; see Figure 1. A combination of the trapezoidal rule in the \(u\)-variable, and a high-order Newton-Cotes quadrature in the transverse \(t\)-variable, effects a rapid convergence in this case.

Singular integral

Second, we consider the case where the target point \({{\varvec{x}}}\) resides within the integrating patch \(\Omega _p\) and it coincides with a quadrature point \({{\varvec{x}}}_{ij}^p\) in \(\mathcal G_p^{\mathcal B}\) (see (13)). Here, we encounter a singularity at \({\varvec{\xi }}_p(u',t')={{\varvec{x}}}\) and a near singularity when these points are in close proximity. In order to treat the singularity, the method utilizes a one-dimensional floating POU \(\eta _{{\varvec{x}}}(u';t')\) in the \(u\)-variable centered at the target point \({{\varvec{x}}}\), leading to

$$\begin{aligned} (\mathcal K_p V\psi )({{\varvec{x}}})&= \int \limits _0^1\int \limits _0^1 G_e({{\varvec{x}}},{\varvec{\xi }}_p(u',t')) {\widetilde{V}}_p\psi (u',t') (1-\eta _{{{\varvec{x}}}}(u';t')) du' dt'\nonumber \\&+ \int \limits _0^1 I_p(t';{{\varvec{x}}},u) dt', \end{aligned}$$

where \({\widetilde{V}}_p\psi (u',t') = \omega _p({\varvec{\xi }}_p(u',t')) V\psi ({\varvec{\xi }}_p(u',t'))J_p(u',t')\), and

$$\begin{aligned} I_p(t';{{\varvec{x}}},u) = \int _{-\tau _1}^{\tau _1} G_e({{\varvec{x}}},{\varvec{\xi }}_p(u',t')) {\widetilde{V}}_p\psi (u',t') \eta _{{{\varvec{x}}}}(u';t') du'. \end{aligned}$$

The first integral on the r.h.s. of (20) is free of singularity and can be treated to a high-order approximation following the non-singular case described above in “Non-singular integral”. On the other hand, \(I_p(t';{{\varvec{x}}},u)\) has a corner type singularity at \(t'=t\), which can be resolved by splitting the second integral in the r.h.s. of (20) at \(t'=t\) [13], where each integral piece is approximated to high-order using Newton-Cotes quadrature. The values of \(I_p(t';{{\varvec{x}}},u)\) as required at the transverse Newton-Cotes quadrature points are obtained in a high-order manner using the trapezoidal rule in conjunction with the change of variable \(u'=u'(\tau )\) given by Eq. (17).

Offgrid boundary-patch evaluation

Finally we consider the case, when a target point resides in the integrating patch, but not a quadrature point, that is, \({{\varvec{x}}}\in \Omega _p\) and \({{\varvec{x}}}\notin \mathcal G_p^{\mathcal B}\); which only happens when the target point comes from the overlapping region. Such offgrid evaluations are dealt by interpolation of the precomputed integral values \(\mathcal K_{B}V\psi \,{:}{\,=}\, \sum \limits _{p\in \mathcal B}\mathcal K_p V\psi \) at the quadrature points in \(\mathcal G_p^{\mathcal B}\) for \(p\in \mathcal B\). Using the properties of a partitions of unity \(\{W_p:p\in \mathcal B\}\) set over the boundary patches (where the functions \(W_p\) vanishes only in the \(u\)-direction), we can express \(\mathcal K_{B}V\psi = \sum \limits _{p\in \mathcal B} W_p\mathcal K_{B} V\psi .\) Clearly, \(W_p\mathcal K_{B}V\psi \) is periodic in the \(u\)-direction, and the precomputed values of \(\mathcal K_{B}V\psi \) can be used to set up an FFT-refined polynomial interpolation [14] for every boundary patch making accurate and efficient evaluations of \(\mathcal K_{B}V\psi \) at offgrid points.

FFT-based equivalent source acceleration of the non-singular surface and boundary-patch integrals

It is straightforward to see that while the method discussed above for the non-singular integrals converges with high-order, it has a \(\mathcal O(N_B N) + \mathcal O(NN_S)\) computational complexity, where \(N_B\) and \(N_S\) are the number of the boundary-patch and the surface unknowns, respectively. To improve the complexity to \(\mathcal O(N\log N)\), the method utilizes the two-face equivalent source acceleration strategy introduced in [27] for three dimensional surface computation and later adapted for volumetric calculation in [11]. Below we provide a concise description of this acceleration strategy.

We consider a square \(\mathcal C\) of side \(A\) containing the domain \(\Omega \), which is then further partitioned into \(L^2\) identical non-overlapping squares \(\mathcal C_{ij}\;(i, j = 1,\ldots , L)\) of side \(H=A/L\) such that the cells \(\mathcal C_{ij}\) do not admit inner resonance. To accelerate the non-singular integrals, we split the boundary-patch and the surface integral in (9) into two, namely, “adjacent” and “non-adjacent” interactions. To precisely define the adjacency, for a grid point \({{\varvec{x}}}\in \mathcal C_{ij}\) which we refer as a “true source” point, we first define the neighbourhood set \(\mathcal N(\varvec{x})\)

$$\begin{aligned} \mathcal N({{\varvec{x}}}) = \{{{\varvec{x}}}' \, |\, {{\varvec{x}}}'\in \mathcal C_{kl}:|k - i|\le 1, |l - j|\le 1\}, \end{aligned}$$

which contain at most eight neighbouring cells. Two source points \({{\varvec{x}}}\) and \({{\varvec{x}}}'\) are considered to be adjacent if \({{\varvec{x}}}' \in \mathcal N({{\varvec{x}}})\), and to be non-adjacent if otherwise. Utilising the definition of neighbourhood set and by ensuring that the support of the cut-off functions \(\eta _{{\varvec{x}}}(u';t')\) and \(\eta ^u(u')\) (see (15)) are contained within the neighbourhood set \(\mathcal N({{\varvec{x}}})\), the boundary-patch and the surface integrals can be rewritten as sum of the adjacent and non-adjacent interaction as follows:

$$\begin{aligned}&\left( \mathcal {K}_{B}^{\text {reg}} V \psi \right) ({{\varvec{x}}})\nonumber \\&=\sum _{p\in \mathcal B}\left( \iint _{{\varvec{\xi }}_p^{-1}\left( \Omega _p \cap \mathcal {N}({{\varvec{x}}})\right) }\!\!\!\!\! G_e\left( {{\varvec{x}}}, {\varvec{\xi }}_p(u',t')\right) {\widetilde{V}}_p\psi (u',t') \left( 1-\eta _{{{\varvec{x}}}}\left( u^{\prime } ; t^{\prime }\right) \right) d u^{\prime } d t^{\prime }\right) \nonumber \\&+\sum _{p\in \mathcal B}\left( \iint _{\Omega _p \cap \mathcal {N}({{\varvec{x}}})^c} G_e\left( {{\varvec{x}}}, {\varvec{\xi }}_p(u',t')\right) {\widetilde{V}}_p\psi (u',t') d{{\varvec{x}}}'\right) , \end{aligned}$$
$$\begin{aligned}&\left( \mathcal {S}^\text {reg} F\psi \right) ({{\varvec{x}}}) \nonumber \\&=\sum _{p\in \mathcal B}\left( \int _{{\varvec{\xi }}_p^{-1}\left( \Gamma _p \cap \mathcal {N}({{\varvec{x}}})\right) } G_e\left( {{\varvec{x}}}, {\varvec{\xi }}_p\left( u^{\prime }, 0\right) \right) {\widetilde{F}}_p\psi (u') \left( 1-\eta ^u\left( u^{\prime }\right) \right) du^{\prime } \right) \nonumber \\&+\sum _{p\in \mathcal B}\left( \int _{\Gamma _p \cap \mathcal {N}({{\varvec{x}}})^c} G_e\left( {{\varvec{x}}}, {\varvec{\xi }}_p\left( u^{\prime }, 0\right) \right) {\widetilde{F}}_p\psi (u') ds({{\varvec{x}}}^{\prime }) \right) . \end{aligned}$$

The adjacent interactions above in Eqs. (22) and (23) can be approximated to high-order by employing the quadrature schemes discussed above for the non-singular integrals in \(\mathcal O(N)\) complexity. The non-adjacent interactions, free of the cutoff functions, take a simpler form of the discrete convolution that reads

$$\begin{aligned} \mathcal K_{\text {na}, B}^{\text {reg}} ({{\varvec{x}}}) = \sum _{{{\varvec{x}}}_l \in \mathcal G^{B}\setminus {\mathcal {N}}({{\varvec{x}}})} w_{l} G_{e}({{\varvec{x}}},{{\varvec{x}}}_{l}) \varphi ({{\varvec{x}}}_{l}), \end{aligned}$$

where \(\varphi ({{\varvec{x}}}_{l})=F\psi ({{\varvec{x}}}_{l})+V\psi ({{\varvec{x}}}_{l})\) if \({{\varvec{x}}}_{l}\in \mathcal G^{B}\cap \Gamma \), and \(\varphi ({{\varvec{x}}}_{l}) = V\psi ({{\varvec{x}}}_{l})\) otherwise. We point out that the true source values in (24) includes contributions from the non-adjacent surface calculations. Note that the convolution in (24) can not be computed directly using FFT as the trues source points \({{\varvec{x}}}_{l}\in \mathcal G^{B}\) are irregularly distributed. We also note that while the contributing sources range only in \({{\varvec{x}}}_{l}\in \mathcal G^{B}\), but the convolution (24) needs to be computed at additional points which will not lie in the boundary region. We call these extra points as “virtual source point”, and include them in summation (24) with zero weight \(w_{l}\), which facilitates an efficient evaluation of the non-adjacent interactions at all these virtual source locations using FFT-based acceleration strategy that we briefly describe next for completeness.

The key idea of the acceleration technique is to compute (24) by replacing the true sources with a certain set of “equivalent sources” distributed uniformly on the two parallel faces of the cell \(\mathcal C_{ij}\) (see Fig. 3). Let \(\sigma _{i j, l}^m\) and \(\sigma _{i j, l}^d \left( l=1, \cdots , N^{e q}\right) \) denote the acoustic monopoles and dipoles at the Cartesian grid \({{\varvec{x}}}_{i j, l}\), respectively. Then, the field induced by these equivalent sources is

$$\begin{aligned} {\mathcal {K}}_{i j, B}^{\textrm{reg,eq}} ({{\varvec{x}}})=\sum _{l=1}^{N^{\textrm{eq}}}\left( \sigma _{i j, l}^m G_e \left( {{\varvec{x}}},{{\varvec{x}}}_{i j, l}\right) + \sigma _{i j, l}^d \frac{\partial G_e\left( {{\varvec{x}}},{{\varvec{x}}}_{i j, l}\right) }{\partial {\varvec{v}}\left( {{\varvec{x}}}_{i j, l}\right) } \right) . \end{aligned}$$

Let \({\mathcal {K}}_{i j, B}^{\textrm{reg, true }}({{\varvec{x}}})\) denotes the field induced by true sources, say, given by

$$\begin{aligned} {\mathcal {K}}_{i j, B}^{\text{ reg,true } }({{\varvec{x}}})=\sum _{{{\varvec{x}}}_l \in \mathcal C_{i j}} w_l G_e\left( {{\varvec{x}}}, {{\varvec{x}}}_l\right) \varphi ({{\varvec{x}}}_{l}). \end{aligned}$$

The unknowns \(\sigma _{i j, l}^m\) and \(\sigma _{i j, l}^d\) in (25) are obtained by solving a over determinant linear system \({\varvec{A}} \varvec{\sigma }={\varvec{b}}\), where the matrix \({\varvec{A}}\) is obtained by evaluating (25) at \(n^{\text {coll }}=4 N^{\text {eq}}\) points located on the boundary of the adjacent set \({\mathcal {N}}({{\varvec{x}}})\), and the vector \({\varvec{b}}\) is obtained by evaluating (26) at \(n^{\text {coll }}\) points. It is well known (see [27]) that the quantity \({\mathcal {K}}_{i j, B}^{\text {reg, eq}}({{\varvec{x}}})\) provides an accurate approximation to the field \({\mathcal {K}}_{i j, B}^{\text{ reg,true } }({{\varvec{x}}})\) generated by true sources in cell \(\mathcal C_{ij}\). Owing to the identical geometry of each cell \(\mathcal C_{i j}\), the \({\varvec{Q}} {\varvec{R}}\) decomposition of matrix \({\varvec{A}}\) is obtained once and stored for repeated use. This whole process requires \(\mathcal O\left( N^{3 / 2} / L^3\right) +\mathcal O\left( N^{3 / 2} / L^2\right) \) operations in total, see [13].

For any \({{\varvec{x}}}\in \mathcal C_{ij}\), the non-adjacent interaction induced by all Cartesian grids can be obtained by subtracting the adjacent interaction from the whole convolution. To be more precise, for any \({{\varvec{x}}}\in \mathcal C_{ij}\), the quantity

$$\begin{aligned} {\mathcal {K}}_B^{\text {reg,eq}}({{\varvec{x}}})=\sum _{k=1}^L \sum _{l=1}^L {\mathcal {K}}_{k l, B}^{\text {reg,eq}}({{\varvec{x}}})-\sum _{k=i-1}^{i+1} \sum _{l=j-1}^{j+1} {\mathcal {K}}_{k l, B}^{\text {reg,eq}}({{\varvec{x}}}) \end{aligned}$$

provides an accurate approximation of the non-adjacent interactions defined in (24). The convolution on the right-hand side is described over an equidistant Cartesian grid, hence can be computed using FFT.

Finally, to obtain the field values at the true source and the virtual source locations within each cell \(\mathcal C_{ij}\), a Dirichlet problem for the free space Helmholtz equation is solved. Owing to the non-resonance of each cell this problem is uniquely solvable. The solution to all these well-posed problems can be obtained efficiently by discretized the plane wave expansion in a coordinate system local to cell \(\mathcal C_{i j}\) of the form

$$\begin{aligned} {\mathcal {K}}_B^{\text {reg,eq}}({{\varvec{x}}}) \approx \sum _{l=1}^{n^{\text{ coll } }} \beta _l \exp \left( i \kappa {\textbf{d}}_l\cdot \left( {\varvec{x}}-{\varvec{x}}_{i j, c}\right) \right) , \end{aligned}$$

where \({\varvec{d}}_l\) is the unit vector on the surface of the unit disc centred at \({{\varvec{x}}}_{i j, c}\), the centre of the cell \(\mathcal C_{i j}\). The coefficients \(\beta _l\) are computed by solving an overdetermined linear system constructed by matching (28) on the Cartesian grid points of the parallel faces of cell \(\mathcal C_{ij}\). It was shown in [13] that the acceleration strategy has a computational complexity of \(\mathcal O(N \log N)\).

Fig. 3
figure 3

An illustration for the acceleration of the non-singular calculations of the boundary-patch integrals, namely, the boundary-patch non-adjacent interactions presented in “FFT-based equivalent source acceleration of the non-singular surface and boundary-patch integrals”. The locations \(\varvec{x}_{ij, \ell }\) of the equivalent sources on the parallel faces of cells \(\mathcal C_{ij}\) are depicted by solid black circles. The true source points are shown as red diamonds. The virtual source points (with zero weights) are shown as green stars. The image also depicts the neighbourhood \(\mathcal N(\varvec{x} )\) for a target point \(\varvec{x}\)

Interior integration

We first note that the integration over the interior patches can be re-written as

$$\begin{aligned} (\mathcal K_{I} V\psi )({{\varvec{x}}}) := \sum \limits _{p\in \mathcal I}(\mathcal K_p V\psi )({{\varvec{x}}}) = \int \limits _{B_R}G_e({{\varvec{x}}},{\varvec{x'}}) E({\varvec{x'}}) V\psi ({\varvec{x'}})d{\varvec{x'}}, \end{aligned}$$

where \(B_R\supset \Omega \) is a circular region of radius \(R\) containing \(\Omega \) and \(E({{\varvec{x}}})\,{:}{\,=}\,\sum \limits _{p\in \mathcal I}\omega _p({{\varvec{x}}})\) vanishes to the boundary \(\Gamma \). As mentioned earlier in “Numerical method” to approximate the integral over \(B_R\) in Eq. (29), we employ a quadrature that relies upon decomposition of the kernel. In particular, using the addition theorem for the Hankel function \(H^1_0(\kappa _e |{{\varvec{x}}}- {\varvec{x'}}| )\) [2], in polar coordinates \({{\varvec{x}}}=(r\cos \theta ,r\sin \theta )\) and \({\varvec{x'}}=(r'\cos \theta ',r'\sin \theta ')\), the Eq. (29) yields

$$\begin{aligned} (\mathcal K_{I} V\psi )({{\varvec{x}}})&= \sum \limits _{\ell =-\infty }^\infty \int \limits _{0}^R \mathcal J_{\kappa _e,\ell }(r,r') \Bigg [\int \limits _{0}^{2\pi } EV\psi (r',\theta ') e^{-i\ell \theta '} d\theta ' \Bigg ]r'dr' e^{i\ell \theta }\\&\approx \sum \limits _{\ell =-F}^F \int \limits _{0}^R \mathcal J_{\kappa _e,\ell }(r,r') \Bigg [\int \limits _{0}^{2\pi } EV\psi (r',\theta ') e^{-i\ell \theta '} d\theta ' \Bigg ]r'dr' e^{i\ell \theta }, \end{aligned}$$

where, denoting the \(\ell \)-th order Bessel and Hankel function of the first kind by \(J_\ell \) and \(H^ 1_\ell \), respectively, and \(\mathcal J_{\kappa _e,\ell }(r,r') = \frac{i}{4}H_\ell ^1(\kappa _e\max (r,r')) J_\ell (\kappa _e\min (r,r'))\). Clearly, we have a logarithmic singularity as \(r\rightarrow 0\) and a jump discontinuity at \(r'=r\) due to the presence of \(\mathcal J_{\kappa _e,\ell }(r,r')\) in the integrand. Note that, owing to the presence of the factor \(E({{\varvec{x}}})\), the integrand \(EV\psi (r,\theta )\) is smooth in \(\mathbb R^2\).

For any fixed \(r\in [0,R]\), the evaluation of the angular integral amounts to computing the \(\ell ^{th}\) Fourier coefficients of a smooth and \(2\pi \) periodic function. An accurate and high-order approximation can be effected using the trapezoidal quadrature rule, which can be accomplished by one time application of the FFT. Thus, we place a uniform grid along the angular direction whereas we place a piecewise Chebyshev grid (see Fig. 2) for the radial integration as described in below.

Denoting the \(\ell ^{th}\) Fourier coefficient of \(\textsf {g}\) by \({(\textsf {g})}_\ell \), we have

$$\begin{aligned} (\mathcal K_{I} V\psi )({{\varvec{x}}}) \approx \frac{-i}{4}\sum \limits _{\ell =-F}^F \left[ \frac{J_\ell (\kappa _e r)}{Y_\ell (\kappa _e R)}\mathcal I^1_\ell (R) + i \mathcal I^1_\ell (r) + i \mathcal I^{2,\text {polar}}_\ell (r)+i\mathcal I^{2,\log }_\ell (r)\right] , \end{aligned}$$


$$\begin{aligned} \mathcal I^1_\ell (r)&= \int \limits _0^r Y_\ell (\kappa _e r)J_\ell (\kappa _e r') {(EV\psi )}_\ell (r') r' dr',\end{aligned}$$
$$\begin{aligned} \mathcal I_\ell ^{2,\text {polar}}(r)&= \int \limits _r^R J_\ell (\kappa _e r) Y_\ell ^\text {polar}(\kappa _e r') {(EV\psi )}_\ell (r') r' dr',\end{aligned}$$
$$\begin{aligned} \mathcal I_\ell ^{2,\log }(r)&= \int \limits _r^R J_\ell (\kappa _e r) Y_{\ell }^{\log }(r') {(EV\psi )}_\ell (r') r' dr', \end{aligned}$$

and \(Y_\ell (\kappa _e r') = Y_\ell ^\text {polar}(\kappa _e r') + Y_{\ell }^{\log }(r') \) with \(Y_{\ell }^{\log }(r) = (2/\pi ) \log (r/2) J_{\ell }(r)\) and \(Y_{\ell }^\text {polar}(r)=\mathcal {O}(r^{-\ell })\) as \(r\rightarrow 0\). Clearly, the integrands in \(\mathcal I^1_\ell (r)\) and \(\mathcal I^{2,\text {polar}}_\ell (r)\) are smooth, except the logarithmic singularity present in \(Y_\ell ^{\log }\) at the origin.

For approximation of the integrals \(\mathcal I_\ell ^1(r)\) and \(\mathcal I_\ell ^{2,\text {polar}}(r)\), the radial interval \([0,R]\) is broken into \(N_i\) equilength subintervals and a Chebyshev grid is set on each of these subintervals. Let \([a,b]\) be one such subinterval and \(z(r) \,{:}{\,=}\, (2r-a-b)/(b-a)\) maps the interval \([a,b]\) to the standard interval \([-1,1]\). We approximate \({(EV\psi )}_\ell (r)\) via a truncated Chebyshev series

$$\begin{aligned} {(EV\psi )}_\ell (r) = \sum _{n=0}^{N_c-1} c_{n\ell }T_n(z(r)), \end{aligned}$$

where \(c_{n\ell }\in \mathbb C\) are the corresponding Chebyshev coefficients. An \(\mathcal O(N_c \log N_c)\) computation of the coefficients \(c_{n\ell }\) is possible via an implementation of discrete cosine transform (DCT). The procedure requires the values \({(EV\psi )}_\ell (r)\) at the points \(r_{j} = z^{-1}(\beta _j)\), where \(z^{-1}(\beta ) = ((b-a)\beta +b+a)/2\) maps the standard Chebyshev interval \([-1,1]\) to the interval \([a,b]\) and \(\beta _j = \cos \left( \pi (j+0.5)/N_c\right) \), for \(j=0,1,\ldots ,N_c-1\), are the Chebyshev points in the standard interval \([-1,1]\). Using (34) we reexpress (31) and (32) as

$$\begin{aligned} \mathcal I^1_\ell (r_j)&= \sum \limits _{n=0}^{N_c-1} c_{n\ell } P_{nj\ell }, \end{aligned}$$
$$\begin{aligned} \mathcal I^{2, \text {polar}}_\ell (r_j)&= \sum \limits _{n=0}^{N_c-1} c_{n\ell } Q^\text {polar}_{nj\ell }, \end{aligned}$$

where the integral moments

$$\begin{aligned} P_{nj\ell }&= \int \limits _0^{r_{j}} Y_\ell (\kappa _e r_{j}) J_\ell (\kappa _e r') T_n(z(r'))r' dr',\end{aligned}$$
$$\begin{aligned} Q^\text {polar}_{nj\ell }&= \int \limits _{r_{j}}^{R} J_\ell (\kappa _e r_{j}) Y ^\text {polar}_\ell (\kappa _e r') T_n(z(r'))r' dr', \end{aligned}$$

need to be computed only once at the beginning of each run and stored for future use as the integrands are known analytically. Storing these moments requires \(\mathcal O(N_c N_r F N_i)\) memory, where \(N_r=N_c+1\) (see [26]). One can use a high-order quadrature, for example, Clenshaw-Curtis quadrature, to approximate the moments in Eqs. (37) and (38). Once the moments are available, an accurate approximation of the radial integral can be obtained by adding and subtracting scaled values of these moments. The integral \(\mathcal I^{2, \log }_\ell \) can be approximated efficiently by first, resolving the logarithmic singularity present in \(Y_\ell ^{\log }\) using integration by parts and then, utilizing the approximated values of \(\mathcal I^1_\ell (r_{j})\) [9].

Transfer of data between the polar grid and the uniform parametric grid. The method uses two FFT-based interpolation strategies to evaluate the density \(V\psi \) on the polar grid as required by the integration strategy described above in this section and to transfer the computed integral values to the solver on the uniform parametric grid. First, (for interpolation of \(V\psi \) onto the polar grid)—since the POU is smoothly vanishing in every direction for each interior patch, we use an FFT-refined local polynomial interpolation strategy in both \(u\)- and \(v\)-directions. And secondly, (for interpolating the computed integral values \(\mathcal K_I V\psi \) onto the parametric grid)—we set a piecewise Chebyshev interpolation along the radial direction and a refined FFT-based polynomial interpolation along the angular direction. Since the local polynomial interpolation scheme has an \(\mathcal O(1)\) cost, the interpolation strategies described above have the same computational complexity of \(\mathcal O(N\log N)\) as the FFT procedure.

Computation of density derivatives

The last important component of the algorithm we discuss is the computation of the density derivatives. We have utilized the Lower Degree Chebyshev (LDC) method proposed in [24] for efficient computation of the density derivatives without significant degradation in accuracy. The basic idea of the LDC algorithm is to first, approximate the function via a low order Chebyshev polynomial expansion from the given approximated data, then compute the Chebyshev coefficients for the derivative iteratively. The data on the corresponding Chebyshev grid point are again computed by use of FFT refined polynomial interpolation. A suitable degree is used in the polynomial interpolation to obtain desired accuracy in the density values at the underlying Chebyshev points. Once these values are obtained, the Chebyshev coefficients are evaluated by one application of Discrete Cosine Transform (DCT) and the Chebyshev coefficients for the derivative are then obtained by the recurrence formula [28]. For a detailed discussion and rigorous theoretical analysis of the LDC algorithm we refer the readers to [24].

Remark 1

(Expected convergence rate) The rate of convergence depends on several parameters including the degree of interpolating polynomial, the degree of approximating Chebyshev polynomial, the order of the Newton-Cotes quadrature, the value of \(M\) (cf. Eq. 18) etc.

Computational examples

This section demonstrates the performance of the method through several computational examples. The relative error reported in the tables are obtained using the following formulae

$$\begin{aligned} \epsilon _\infty (\psi ) = \frac{\max \limits _{1\le n\le N} \left| \psi ^\text {exact}({{\varvec{x}}}_n) - \psi ^ \text {approx}({{\varvec{x}}}_n)\right| }{\max \limits _{1\le n\le N} \left| \psi ^\text {exact}({{\varvec{x}}}_n)\right| }, \end{aligned}$$


$$\begin{aligned} \epsilon _2(\psi ) = \left( \frac{\sum \limits _{n = 1} ^ N \left| \psi ^\text {exact}({{\varvec{x}}}_n) - \psi ^\text {approx}({{\varvec{x}}}_n)\right| ^2}{\sum \limits _{n=1}^N|\psi ^\text {exact}({{\varvec{x}}}_n)|^2}\right) ^{\frac{1}{2}}, \end{aligned}$$

where \(\psi ^\textrm{exact}({{\varvec{x}}})\) and \(\psi ^\textrm{approx}({{\varvec{x}}})\) denotes the analytical/refined-grid solution and the computed solution at the point \({{\varvec{x}}}\), respectively. The numerical “Order” of convergence presented in the tables in this document is obtained as– \( \text {Order} = \log _2(\epsilon ^ {N}/\epsilon ^ {2N}), \) where \(\epsilon ^N\) denote the relative error corresponding to \(N\) number of discretization points. “Iter” denotes the number of iteration required for the linear solver to converge up to the given tolerance level.

Unless mentioned otherwise, in all the examples presented in this section, we used

—a three patch covering of the obstacle, that is, \(P=3\) in (8),

—a \(5\)-point Newton-Cotes quadrature for integration over the boundary-patch region, and

—the plane wave incident field \(\exp (i\kappa _e{{\varvec{x}}}\cdot \varvec{d})\) with \(\varvec{d}=(1,0)\).

All of the numerical experiments reported in this paper were run on a computer with 2.6 Ghz Intel Xeon Processor with 256 Gb of memory. The two-dimensional results were run on a single thread, whereas for the three-dimensional computations multi-threading was used.

Remark 2

Note that the sizes of the polar grid are suppressed in the convergence studies as addition theorem based calculation in this case, due to vanishing density \(E V\psi \), converges super-algebraically [29] and significantly faster than the convergence rate of the other components of the method. The size of the polar grid need not be increased with the same ratio as the parametric grid to maintain the polynomial convergence rate.

Example 1

(Forward map convergence) For our first numerical experiment, we consider the convergence study of the forward map computation (i.e. convergence study for the proposed quadrature for approximation of the operator \(\mathcal L\psi \)). In this example, we consider a unit disc scatterer centered at the origin with constant material properties, namely \(\kappa =\sqrt{2},\) \(\kappa _e = 1\), and \(\rho = \rho _e = 1.0\) in which case the integration can be evaluated analytically. The convergence study presented in the Table 1 demonstrate a high-order convergence rates.

Table 1 Convergence study for the forward map of the operator \(\mathcal L\psi \) for a unit disc with \(\kappa /\kappa _e = \sqrt{2.0}\) and \(\rho /\rho _e = 1.0\) using \(5\)-point Newton-Cotes quadrature for integration in the \(t\)-direction over the boundary region

Example 2

(Scattering by a lossy medium.) For the second exercise, we consider a circular inhomogeneity of radius one centered at the origin with lossy medium (modeled using complex valued material properties), namely, \(\kappa = \sqrt{3}+i\sqrt{2}\) with \(\kappa _e = 1\), \(\rho = 2\) and \(\rho _e=1\). Table 2 presents a convergence study by comparing the approximated solution against the Mie series solution. The results presented in Table 2 demonstrate a high-order convergence of the approximated solution.

Table 2 Convergence study for scattering in the setting of Example 2. The 5-point Newton-Cotes quadrature is used for integration in the \(t\)-direction over the boundary region

Example 3

(High contrast medium) For this experiment, we consider an example with a high-contrast between the material values across the interface of the unit disk scattering obstacle. In particular, we consider \(\kappa /\kappa _e = 10 ^ {-04}\) (with \(\kappa =10^{-04}\) and \(\kappa _e=1\)) and \(\rho /\rho _e = 10^ 3\) ( with \(\rho =10^{3}\) and \(\rho _e=1\)); the same ratios as in the article [20]. We present the convergence study in Table 3. A quick comparison between Tables 2 and 3 shows that the two scenarios presented by these tables require a similar number of GMRES iterations to converge and produce similar errors in the solution. This exemplifies the robustness of the method presented above.

Table 3 Convergence study for scattering by a disc centered at origin with radius 1

Example 4

(Tempered growth in computational cost.) We showcase the efficiency of the method by demonstrating a tempered growth in the computational cost of the proposed algorithm while maintaining a fixed error level by comparing the approximated operator against the continuous operator in Eq. (5). In every step while we double our grid size, we also double the wave number \(\kappa _e\) to keep the number of points per wavelength unchanged and avoid any deterioration in the accuracy level. The times required per iteration, as presented in Table 4, indicate almost an \(\mathcal O(N\log N)\) computational complexity. The \(3\)-point Newton-Cotes quadrature is used for this experiment.

Table 4 Tempered growth in computational cost in the setting of Example 4

Example 5

[(High contrast medium for (relatively) complex geometry.)]  In this example, we consider a bean shaped scatterer described by the parametric representation

$$\begin{aligned} x_1(\theta ) = r\cos \theta + \frac{r^2 a^2}{b^2}\cos 2\theta - \frac{r^2 a^2}{b^2},\quad x_2(\theta ) = r\sin \theta \end{aligned}$$

with \(a = 0.65\), \(b = 1.5\), \(r = 1\) and \(0\le \theta \le 2\pi \). In this experiment, we consider \(\kappa _e = 1\), \(\kappa = 10^{ - 4}\), \(\rho _e=1\) and \(\rho = 10 ^ {3}\). The convergence study presented in Table 5 demonstrates a high-order convergence.

Table 5 Convergence study for scattering by a bean shaped scatterer of acoustic size \(\kappa _e a = 3\), with \(\kappa /\kappa _e = 10 ^ { - 4}\) and \(\rho /\rho _e = 10 ^ {3}\) in the setting of Example 5

Example 6

(Variable material properties)  So far in this article, we have considered only constant material properties inside the scatterer, although, as mentioned previously it is not necessarily so. Toward this, we demonstrate the convergence results for variable material properties in Tables 6 and 7 for the bean shaped scatterer (given by Eq. 39). In the convergence study presented in Tables 6, only the wave number \(\kappa \) varies within the scatterer while the interior density \(\rho \) remains constant. In Tables 7, on the other hand, both the wave number and the density vary within the scatterer.

Table 6 Convergence study for scattering by a bean shape with \(\kappa _i = \sin (\pi x_1)\cos (\pi x_2)\) and \(\rho _i/\rho _e = 5\), where \(5\)-point Newton-Cotes quadrature is used for integration in the \(t\)-direction
Table 7 Convergence study for scattering by a bean shaped scatterer with \(\kappa _e a = 6.0\), \(\kappa _i = \sin (\pi x_1)\cos (\pi x_2)\) and \(\rho _i = 2.0 + \sin (\pi x_1)\cos (\pi x_2)\) where 5-point Newton-Cotes quadrature is used for integration in \(t\)-direction over the boundary region

Example 7

(Graphical presentation) In this example, we visualize the scattering for the plane wave incident field \(\exp (i\kappa _e{{\varvec{x}}}\cdot \varvec{d})\) with \(\varvec{d}=(1/\sqrt{2},1/\sqrt{2})\) by a bean shaped scatterer given by (39) in the setting of Example 5. We consider a lossy medium with exterior wave number \(\kappa _e = 10\). The real and absolute value of the computed scattering field is plotted in the left and the right graph of Figure 4.

Fig. 4
figure 4

Figures for the scattering computation in the setting of Example 7 for the plane wave incident field \(\exp (i\kappa _e \varvec{d}\cdot {{\varvec{x}}})\) with \(\varvec{d} = (1 / \sqrt{2}, 1 / \sqrt{2})\), acoustic size \(\kappa _e a = 20\) and \(\rho / \rho _e = 2\)

Example 8

(Variable material properties) As a last example of this section, we simulate the scattering by a bean shaped inhomogeneity given by Eq. (39) with variable material properties for a plane wave incident field \(\exp (i\kappa _e \varvec{d}\cdot {{\varvec{x}}})\) with \(\varvec{d} = (1, 0)\) and acoustic size \(\kappa _e a= 20\). We consider the interior wave number \(\kappa = (\sin (\pi x_1), \cos (\pi x_2))\) and density \(\rho = 2.0 + \sin (\pi x_1) \cos (\pi x_2)\). The real and absolute value of the computed solution are plotted in Figure 5.

Fig. 5
figure 5

Visualization of the scattering simulation in the setting of Example 8 for a plane wave incident field \(\exp (i\kappa _e \varvec{d}\cdot {{\varvec{x}}})\) with \(\varvec{d} = (1, 0)\) by a scatterer of acoustic size \(\kappa _e a = 20\). The interior wave number \(\kappa = \sin (\pi x_1) + i\cos (\pi x_2)\), and the interior density \(\rho = 2 + \sin (\pi x_1)\cos (\pi x_2)\)

Extension to three dimensions

The solution methodology presented in “Numerical method” for the two-dimensional scattering problem has an algorithmic extension that allows for an approximation of the solution to the scattering problem in three dimensions. The difficulties in high-order approximation of the integral operators and evaluating the density derivative in three dimensions are largely analogous with Spherical Harmonic Transformation replacing the Fourier transformation to approximate the angular integral (cf. Eq. 46) in the interior computation. Below we succinctly describe some of the salient points of the extension.

Fig. 6
figure 6

An illustration of the uniform grid placement for a three patch decomposition of a bean shaped domain in three dimensions. The figure shows on the top left—the domain; top center and top right—the grid over two boundary patches; at the bottom left—the grid over the interior-patch; and, at the bottom right—union of the grids over the boundary- and interior-patches

As in the two-dimensional case, we begin with a decomposition of the scatterer \(\Omega \) into boundary and interior patches. For instance, Figure 6 provides an illustration for a three patch decomposition of a bean shaped domain. Subsequently, the integral operator is decomposed over the boundary and the interior patches as in (9). We note that one can write the integral \((\mathcal K_p V\psi )\) over a boundary patch (i.e., \(p\in \mathcal B\)) as

$$\begin{aligned} (\mathcal K_p V\psi )(\varvec{x}) = \int \limits _0^1\!\int \limits _0^1\!\int \limits _0^1\!G_e(\varvec{x},{\varvec{\xi }}_p') {\widetilde{V}}_p\psi ({\varvec{\xi }}_p') du'dv'dt', \end{aligned}$$

where \({\varvec{\xi }}_p'={\varvec{\xi }}_p(u',v', t'), {\widetilde{V}}_p\psi ({\varvec{\xi }}_p') = V\psi ({\varvec{\xi }}_p')J_p({\varvec{\xi }}_p')\omega _p({\varvec{\xi }}_p') \) and \(J_p\) is the Jacobian of the transformation \({\varvec{\xi }}_p:\Omega _p\rightarrow (0,1)^2\times [0,1)\). Again, \(\{\omega _p(\varvec{x}|_{t=0}),\, p\in \mathcal B\}\) serves as a partition of unity for the surface \(\Gamma \). Thus, the planar surface integral can be written as

$$\begin{aligned} (\mathcal SF\psi )(\varvec{x}) = \sum \limits _{p\in \mathcal B}(\mathcal S_p F_p\psi )(\varvec{x}), \end{aligned}$$


$$\begin{aligned} (\mathcal S_p F_p\psi )({{\varvec{x}}}) = \int \limits _0^1\!\int \limits _0^1 G_e({{\varvec{x}}}, {\varvec{\xi }}'_p) {\widetilde{F}}_p\psi ({\varvec{\xi }}'_p) du'dv', \end{aligned}$$

\({\widetilde{F}}_p\psi ({\varvec{\xi }}_p') = F\psi ({\varvec{\xi }}_p')\omega _p({\varvec{\xi }}_p') J^s_p({\varvec{\xi }}_p')\), and \(J^s_p\) is the surface Jacobian. In order to approximate the integral (42), we again segregate the singular integral using a floating POU centered at the target point with a circular support. The method then approximates the regular part of the surface integral using the trapezoidal rule in \(u\) and \(v\) variable; whereas the singular integral over the localized circular domain is treated with first, going to the polar coordinates \((r,\theta )\) centered at \((u,v)\), and then a polynomial change of variable \(r=\tau ^M\). The non-singular integral over a boundary-patch is approximated using a combination of the trapezoidal rule in the \((u,v)\) variables, and a high-order Newton-Cotes quadrature in \(t\) variable. To approximate the singular integral, first, we change to polar coordinates \((r,\theta )\) centered at projection of \({\varvec{\xi }}_p^{-1}({{\varvec{x}}})\) onto the integration plane \((u',v',t')\), and then make a polynomial change of variable \(r=\tau ^M\) to resolve the singularity. The corner singularity in \(t\)-direction is again treated by splitting the integral in two at \(t=t'\); see [11] for detail.

For approximation of the interior integral \(\mathcal K_I V\psi \), the method relies upon use of the addition theorem [30] (in spherical coordinates) of Green’s function of the Helmholtz’s equation in three dimensions [31]. The truncated sum

$$\begin{aligned} (\mathcal K_I V\psi ) ^ F(r, \theta , \phi ) = \sum _{\ell =0}^F\sum _{m=-\ell }^\ell (\mathcal K_IV\psi )_\ell ^m(r) Y_\ell ^m(\theta ,\phi ) \end{aligned}$$

approximates the operator

$$\begin{aligned} (\mathcal K_I V\psi )(r, \theta , \phi ) =\sum _{\ell =0}^\infty \sum _{m=-\ell }^\ell (\mathcal K_I V\psi )_\ell ^m(r) Y_\ell ^m(\theta ,\phi ), \end{aligned}$$

with high-order [31], where

$$\begin{aligned}{} & {} (\mathcal K_I V\psi )_\ell ^m(r) = i\kappa _e\int \limits _0^R h_\ell ^{(1)}(\kappa _e \max (r,r')) j_\ell (\kappa _e \min (r,r')) (V\psi )_\ell ^m(r') r'^2\,dr', \end{aligned}$$
$$\begin{aligned}{} & {} (V\psi )_\ell ^m(r') = \int _0^{2\pi }\!\!\!\int _0^\pi V(r',\theta ',\phi ') Y_\ell ^m(\theta ',\phi ') \sin (\theta ') d\theta 'd\phi ', \end{aligned}$$

and \(Y_\ell ^m\) are the spherical harmonics of degree \(\ell \) and order \(m\) with \(h_\ell ^{(1)}\) and \(j_\ell \) denoting the first kind spherical Hankel and Bessel functions, respectively. The integrals \((V\psi )_\ell ^m(r')\) can be seen as the spherical harmonic coefficients of \(V\psi \), and can be computed by an application of the spherical harmonic transforms [31]. The radial integral can then be expressed in the form of Eq. (30) using spherical Bessel functions and the spherical harmonic coefficients \((V\psi )_\ell ^m(r')\). Finally, the radial integral can be approximated by expanding the spherical harmonic coefficients in Chebyshev series and utilizing the precomputed integral moments as in the two-dimensional case; see [31].

In order to demonstrate the high-order convergence of the three dimensional counterpart of the method, we present a convergence study in Tables 8 for the scattering of plane wave \(\psi _\textrm{inc}=\exp (i\kappa _e x_3)\) by a penetrable spherical inhomogeneity. The material properties for this study are—\(\kappa = 10^{-04},\) \(\kappa _e=1,\) \(\rho = 10^3\) and \(\rho _e=1\). The errors presented in Tables 8 are obtained by comparing the computed solutions against the Mie series solution. The study clearly exhibits rapid convergence of the computed solutions.

Table 8 Convergence study for scattering by a sphere of unit radius and centered at origin, with \(\kappa _i/\kappa _e= 10^{-4}\) and \(\rho _i/\rho _e=10^{ 3}\)

As a final example, we consider simulation of scattering by a bean shaped obstacle in Figure 7 of the incident wave \(\psi _\textrm{inc}=\exp (i\kappa _e x_3)\). The boundary of the scatterer is given by

$$\begin{aligned} \frac{x_1^2}{a_1^2(1-b_3\cos (\pi x_3/R))} + \frac{(b_1 R\cos (\pi x_3/R) + x_2)^2}{a_2^2(1 - b_2\cos (\pi ))} + \frac{x_3^2}{a_3^2} = R^2. \end{aligned}$$

In our example, \(a_1=0.8\), \(a_2=0.8\), \(a_3=1\), \(b_1=0.3\), \(b_2=0.4\), \(b_3=0.1\) and \(R=1\). The largest dimension of the geometry is \(2R\), along the \(x_3\)-axis. The absolute value of the computed solution is displayed in Fig. 7.

Fig. 7
figure 7

Visualization of the simulation of scattering by a bean shaped scatterer for the plane wave incident field \(\exp (i\kappa _e x_3)\) propagating along \(x_3\)-axis with \(\kappa / \kappa _e =10^{-4}\) with \(\kappa _e=5\) and \(\rho / \rho _e =10^{3}\) with \(\rho _e=1\). Acoustic size of the scatterer is \(10\)


In this paper, we present a fast high-order method for solving an integro-differential equation that arise in problems of wave scattering by penetrable inhomogeneity with variable density with possible jump in the material properties across the boundary of the geometry. High-order convergence is achieved using a specialized quadrature for integration over boundary patches in conjunction with the use of addition theorem (for the Green’s function) based approximation of the interior integration. The performance of the method is demonstrated through a variety of numerical examples including the scattering problem for high-contrast medium.

Availability of data and materials

Not applicable.


  1. In [1] the author shows that it is erroneous to consider the Lippmann-Schwinger equation to solve the above scattering problem. For a constant \(\rho \) though the Eq. (1) reduces to the Helmholtz’s equation, which leads to the Lippmann-Schwinger integral equation.


  1. Martin PA. Acoustic scattering by inhomogeneous obstacles. SIAM J Appl Math. 2003;64:297–308.

    Article  MathSciNet  Google Scholar 

  2. Colton D, Kress R. Inverse acoustic and electromagnetic scattering theory. 3rd ed. Applied mathematical series. New York: Springer; 2013.

    Book  Google Scholar 

  3. Chew WC. Waves and fields in inhomogeneous media. The Institute of Electrical and Electronics Engineers Inc, New York: IEEE Press Series on Electromagnetic Waves. IEEE Press; 1994.

  4. Givoli D. High-order local non-reflecting boundary conditions: a review. Wave Motion. 2004;39(4):319–26.

    Article  MathSciNet  Google Scholar 

  5. Hagstrom T, Warburton T. A new auxiliary variable formulation of high-order local radiation boundary conditions: corner compatibility conditions and extensions to first-order systems. Wave Motion. 2004;39(4):327–38.

    Article  MathSciNet  Google Scholar 

  6. Gan H, Levin PL, Ludwig R. Finite element formulation of acoustic scattering phenomena with absorbing boundary condition in the frequency domain. J Acoust Soc Am. 1993;94(3):1651–62.

    Article  MathSciNet  Google Scholar 

  7. Martin PA. Multiple scattering. Encyclopedia of Mathematics and its Applications, vol. 107. Cambridge University Press, Cambridge 2006.

  8. Costabel M. On the spectrum of volume integral operators in acoustic scattering. In: Constanda C, Kirsch A, editors. Integral methods in science and engineering. Cham: Springer; 2015. p. 119–27.

    Chapter  Google Scholar 

  9. Bruno OP, Hyde EM. Higher-order Fourier approximation in scattering by two-dimensional, inhomogeneous media. SIAM J Numer Anal. 2005;42(6):2298–319.

    Article  MathSciNet  Google Scholar 

  10. Duan R, Rokhlin V. High-order quadratures for the solution of scattering problems in two dimensions. J Comput Phys. 2009;228:2152–74.

    Article  MathSciNet  Google Scholar 

  11. Anand A, Reitich F. An efficient high-order algorithm for acoustic scattering from penetrable thin structures in three dimensions. J Acoust Soc Am. 2007;121:2503–14.

    Article  Google Scholar 

  12. Gillman A, Barnett AH, Martinsson P. A spectrally accurate direct solution technique for frequency-domain scattering problems with variable media. BIT Numer Math. 2015;55:141–70.

    Article  MathSciNet  Google Scholar 

  13. Anand A, Pandey A, Kumar BVR, Paul J. An efficient high-order nyström scheme for acoustic scattering by inhomogeneous penetrable media with discontinuous material interface. J Comput Phys. 2016;311:258–74.

    Article  MathSciNet  Google Scholar 

  14. Pandey A, Anand A. Improved convergence of fast integral equation solvers for acoustic scattering by inhomogeneous penetrable media with discontinuous material interface. J Comput Phys. 2019;376:767–85.

    Article  MathSciNet  Google Scholar 

  15. Kriegsmann GA, Reiss EL. Low frequency scattering by local inhomogeneities. J SIAM Appl Math. 1983;43(4):923–34.

    Article  MathSciNet  Google Scholar 

  16. Kokkorakis GC, Fikioris JG. Acoustic field induced in spheres with inhomogeneous density by external sources. J Acoust Soc Am. 2004;115(2):478–87.

    Article  Google Scholar 

  17. Kokkorakis GC. A unified approach to acoustic fields induced in inhomogeneous spheres by external sources. J Sound Vib. 2008;312(3):496–508.

    Article  Google Scholar 

  18. Kolezas GD, Zouros GP, Kokkorakis GC. Acoustic scattering from inhomogeneous spheres with impenetrable cores. J Appl Phys. 2016;119(1): 014902.

    Article  Google Scholar 

  19. E. Bleszynski MB, Jaroszewicz T. Fast volumetric integral solver for acoustic wave propagation through inhomogeneous media. J Acoust Soc Am. 2008;124:396–408.

    Article  Google Scholar 

  20. Bleszynski E, Bleszynski M, Jaroszewicz T. Fast volumetric integral-equation solver for high-contrast acoustics. J Acoust Soc Am. 2008;124(6):3684–93.

    Article  Google Scholar 

  21. Caudron B, Antoine X, Geuzaine C. Optimized weak coupling of boundary element and finite element methods for acoustic scattering. J Comput Phys. 2020;421: 109737.

    Article  MathSciNet  Google Scholar 

  22. Colton D, Monk P. Mathematical and numerical methods in inverse acoustic scattering theory. ZAMM J Appl Math Mech. 2001;81(11).

  23. Bruno OP, Kunyansky LA. A fast, high-order algorithm for the solution of surface scattering problems: basicimplementation, tests, and applications. J Comput Phys. 2001;169:80–110.

    Article  MathSciNet  Google Scholar 

  24. Bruno O, Hoch D. Numerical differentiation of approximated functions with limited order-of-accuracy deterioration. SIAM J Numer Anal. 2012;50(3):1581–603.

    Article  MathSciNet  Google Scholar 

  25. Saad Y. Iterative methods for sparse linear system. Philadelphia: SIAM; 2003.

    Book  Google Scholar 

  26. Bruno OP, Hyde EM. An efficient, preconditioned, high-order solver for scattering by two-dimensional inhomogeneous media. J Comput Phys. 2004;200(2):670–94.

    Article  MathSciNet  Google Scholar 

  27. Bruno OP, Kunyansky LA. Surface scattering in three dimensions: an accelerated high-order solver. Proc R Soc London A. 2001;457:2921–34.

    Article  MathSciNet  Google Scholar 

  28. Press WH, Teukolsky WTVSA, Flannery BP. Numerical Recipes in C++, Third edition edn. Cambridge University Press, Cambridge 2007.

  29. Hyde EM. Fast, high-order methods for scattering by inhomogeneous media. PhD thesis, California Institute of Technology, Pesadena, California 2003.

  30. Colton D, Kress R. Integral equation methods in scattering theory. Philadelphia: SIAM; 2013.

    Book  Google Scholar 

  31. Han Y. An efficient solver for problems of scattering. PhD thesis, University of Minnesota 2004.

Download references


Akash Anand gratefully acknowledges support from SERB-DST through contract No. SERB/F/5152/2013-2014.


As mentioned in Acknowledgements.

Author information

Authors and Affiliations



JP: Methodology, Development, Implementation, Writing-original draft, reviewing, editing. AP: Implementation, Writing—reviewing, editing. BVRK: Discussion, Writing—reviewing,editing. AA: Methodology, Development, Writing—reviewing, editing.

Corresponding author

Correspondence to Jagabandhu Paul.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Paul, J., Pandey, A., Rathish Kumar, B.V. et al. Fast rapidly convergent penetrable scattering computations. Adv. Model. and Simul. in Eng. Sci. 11, 2 (2024).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: