Day: September 20, 2025

Part 3/3. 2D Green’s functions for the Helmholtz (wave equation) operator.

September 20, 2025 math and physics play , , , , , , , , ,

[Click here for a PDF version of this post]

Having found the 1D and 3D Green’s function for the wave equation (Helmholtz) operator, we are now ready to attempt the harder 2D case again.

2D Green’s function.

Our starting place is
\begin{equation}\label{eqn:helmholtzGreens:680}
G(\Br) = -\inv{(2 \pi)^2} \int \frac{e^{j \Bp \cdot \Br}}{\Bp^2 – k^2} d^2 p.
\end{equation}
With a change of variables to polar coordinates, letting
\begin{equation}\label{eqn:helmholtzGreens:700}
\begin{aligned}
\Bp &= p \lr{ \cos\phi, \sin\phi } \\
\Br &= \Abs{\Br} \Be_2,
\end{aligned}
\end{equation}
we can make the integral explicit
\begin{equation}\label{eqn:helmholtzGreens:720}
G(\Br) = -\inv{(2 \pi)^2} \int_0^\infty \frac{p dp}{p^2 – k^2} \int_0^{2 \pi} d\phi e^{j p \Abs{\Br} \sin\phi}.
\end{equation}
Unlike the 3D case, where the angular dependence could be trivially evaluated, we are no longer so lucky. What on earth can we do with the \( \phi \) integral? Just like Hilter’s lament about “undoable integrals in Jackson”, we are faced with the same enemy. As it turns out, due to the cylindrical symmetry of the problem, we are also staring down the gun of Bessel functions. Both Mathematica and Grok point out that we can evaluate integrals of this form, like so:
\begin{equation}\label{eqn:helmholtzGreens:740}
\int_0^{2 \pi} d\phi e^{j a \sin\phi} = 2 \pi J_0(a).
\end{equation}

From [2] we have two representations of \( J_n \), a series representation and integral representation
\begin{equation}\label{eqn:helmholtzGreens:760}
J_n(z) = \sum_{m=0}^\infty \frac{(-1)^m (z/2)^{2m + n}}{(n + m)!m!} = \inv{\pi} \int_0^\pi \cos(n \theta – z \sin\theta) d\theta.
\end{equation}

In particular, this means that
\begin{equation}\label{eqn:helmholtzGreens:800}
J_0(z) = \sum_{m=0}^\infty \frac{(-1)^m (z/2)^{2m}}{(m!)^2} = J_0(z) = \inv{\pi} \int_0^\pi \cos(z \sin\theta) d\theta.
\end{equation}
This is a damped sine like function, as illustrated in fig. 4.

fig. 4. Bessel function of zeroth order.

 

In section 6.9, both of these are derived from a generating function representation of the Bessel functions, and one of the intermediate steps in that construction has
\begin{equation}\label{eqn:helmholtzGreens:840}
J_n(z) = \inv{2\pi} \int_{-\pi}^\pi e^{-j(n\theta – z \sin\theta)} d\theta,
\end{equation}
where the \( [-\pi, \pi] \) range was the result of a contour integration using a unit circle parameterization, which could have also used \( [0, 2 \pi] \). That means, sure enough, that we have
\begin{equation}\label{eqn:helmholtzGreens:860}
J_0(z) = \inv{2\pi} \int_{0}^{2\pi} e^{j z \sin\theta} d\theta,
\end{equation}
as claimed by both Grok and Mathematica.

This means that the evaluation of the Green’s function is now reduced to the limit of one final integral
\begin{equation}\label{eqn:helmholtzGreens:880}
G(\Br) = -\inv{2 \pi} \int_0^\infty \frac{p J_0(p \Abs{\Br} ) dp}{p^2 – \lr{k + j \epsilon}^2},
\end{equation}
where we’ve also displaced the problematic pole by a small imaginary amount as before. Grok incorrectly claimed that this was an even integral, and then argued that the end result is a Hankel function (that may be the case, but it’s reasoning to get there was clearly wrong.) Mathematica, on the other hand, can evaluate this integral
\begin{equation}\label{eqn:helmholtzGreens:900}
G(\Br) = -\inv{2 \pi} K_0\lr{\frac{\Abs{\Br}}{\sqrt{\frac{1}{(\epsilon – j k)^2}}}}, \epsilon \neq 0.
\end{equation}
It’s not clear to me why Mathematica writes the argument as 1 over a reciprocal root. Perhaps that has something to do with the branch cut that Mathematica uses for it’s square root function? If I plug in representitive numeric values, it simplifies in the expected way, as illustrated in fig. 5.

fig. 5. Mathematica weird Bessel argument.

The take away appears to be that the limiting form of the 2D Green’s function, for \( k > 0 \), is
\begin{equation}\label{eqn:helmholtzGreens:920}
G(\Bx, \Bx’) = -\inv{2 \pi} K_0\lr{-j k \Abs{\Bx – \Bx’} }.
\end{equation}
A peek at [1] shows that \( K_0 \) can be expressed in terms of a Hankel function of the first kind (order 0) \( H_0^{(1)}(z) = J_0(z) + j Y_0(z) \), plotted in fig. 6.

fig. 6. Hankel function of the first kind (order 0).

For real positive \( \alpha \), we have
\begin{equation}\label{eqn:helmholtzGreens:940}
K_0(-j \alpha) = \frac{j\pi}{2} H_0^{(1)}(\alpha),
\end{equation}
so
\begin{equation}\label{eqn:helmholtzGreens:960}
\boxed{
G(\Bx, \Bx’) = -\frac{j}{4} H_0^{(1)}(k \Abs{\Bx – \Bx’}).
}
\end{equation}

References

[1] M. Abramowitz and I.A. Stegun. Handbook of mathematical functions with formulas, graphs, and mathematical tables, volume 55. Dover publications, 1964.

[2] F.W. Byron and R.W. Fuller. Mathematics of Classical and Quantum Physics. Dover Publications, 1992.

Part 2. 3D Green’s function for the Helmholtz (wave equation) operator

September 20, 2025 math and physics play , , , , , , , ,

[Click here for a PDF version of this post]

This is a continuation of yesterday’s post on wave function Green’s functions. We derived the 1D Green’s function, now it’s time for the 3D.

Next up after this will be the 2D Green’s function, which looks harder to evaluate than the 1D or 3D versions.

3D Green’s function.

The 3D Green’s function that we wish to try to evaluate is
\begin{equation}\label{eqn:helmholtzGreens:540}
G(\Br) = -\inv{(2 \pi)^3} \int \frac{e^{j \Bp \cdot \Br}}{\Bp^2 – k^2} d^3 p.
\end{equation}
We will have to displace the pole again, but we will get to that in a bit. First let’s make a spherical change of variables to evaluate the integral, with
\begin{equation}\label{eqn:helmholtzGreens:560}
\begin{aligned}
\Bp &= p \lr{ \sin\alpha \cos\phi, \sin\alpha \sin\phi, \cos\alpha } \\
\Br &= \Abs{\Br} \Be_3.
\end{aligned}
\end{equation}
This gives
\begin{equation}\label{eqn:helmholtzGreens:580}
G(\Br)
= -\inv{(2 \pi)^3} \int_0^\infty p^2 dp \int_0^\pi \sin\alpha d\alpha \int_0^{2 \pi} d\phi \frac{e^{j p \Abs{\Br} \cos\alpha}}{p^2 – k^2}.
\end{equation}
Let \( t = \cos\alpha \), to find
\begin{equation}\label{eqn:helmholtzGreens:600}
\begin{aligned}
G(\Br)
&= -\inv{(2 \pi)^2} \int_0^\infty p^2 dp \int_1^{-1} (-dt) \frac{e^{j p \Abs{\Br} t}}{p^2 – k^2} \\
&= \inv{(2 \pi)^2} \int_0^\infty p^2 dp \evalrange{\frac{e^{j p \Abs{\Br} t}}{\lr{p^2 – k^2} j p \Abs{\Br}}}{1}{-1} \\
&= \inv{j (2 \pi)^2 \Abs{\Br}} \int_0^\infty p dp \frac{e^{-j p \Abs{\Br}} – e^{j p \Abs{\Br}} }{p^2 – k^2} \\
&= -\inv{j (2 \pi)^2 \Abs{\Br}} \int_{-\infty}^\infty p dp \frac{e^{j p \Abs{\Br}} }{p^2 – k^2} \\
&\sim -\inv{j (2 \pi)^2 \Abs{\Br}} \int_{-\infty}^\infty p dp \frac{e^{j p \Abs{\Br}} }{p^2 – \lr{k + j \epsilon}^2}.
\end{aligned}
\end{equation}
In the last step, we’ve displaced the pole so that we can evaluate it using an infinite upper half plane semicircular contour, as illustrated in fig 3.

fig 3. Contours for 3D Green’s function evaluation

Which pole we choose depends on the sign we pick for the “small” pole displacement \( \epsilon \). For the \( \epsilon > 0 \) case, we find
\begin{equation}\label{eqn:helmholtzGreens:620}
\begin{aligned}
G(\Br)
&= -\inv{j (2 \pi)^2 \Abs{\Br}} \int_{-\infty}^\infty p dp \frac{e^{j p \Abs{\Br}} }{\lr{p – (k + j \epsilon)}\lr{p – (-k – j \epsilon)}} \\
&= -\frac{2 \pi j}{j (2 \pi)^2 \Abs{\Br}} \evalbar{\frac{p e^{j p \Abs{\Br}} }{p + k + j \epsilon}}{p = k + j \epsilon} \\
&= -\frac{1}{2 \pi \Abs{\Br}} (k + j \epsilon) \frac{e^{j (k + j \epsilon) \Abs{\Br}} }{2 (k + j \epsilon)} \\
&= -\frac{1}{4 \pi \Abs{\Br}} e^{j k \Abs{\Br}} e^{-\epsilon \Abs{\Br}} \\
&\rightarrow -\frac{e^{j k \Abs{\Br}} }{4 \pi \Abs{\Br}}.
\end{aligned}
\end{equation}
whereas for \( \epsilon < 0 \), we have
\begin{equation}\label{eqn:helmholtzGreens:640}
\begin{aligned}
G(\Br)
&= -\inv{j (2 \pi)^2 \Abs{\Br}} \int_{-\infty}^\infty p dp \frac{e^{j p \Abs{\Br}} }{\lr{p – (k + j \epsilon)}\lr{p – (-k – j \epsilon)}} \\
&= -\frac{2 \pi j}{j (2 \pi)^2 \Abs{\Br}} \evalbar{\frac{p e^{j p \Abs{\Br}} }{p – k – j \epsilon}}{p = -k – j \epsilon} \\
&= -\frac{1}{2 \pi \Abs{\Br}} (-k – j \epsilon) \frac{e^{j (-k – j \epsilon) \Abs{\Br}} }{2 (-k – j \epsilon)} \\
&= -\frac{1}{4 \pi \Abs{\Br}} e^{-j k \Abs{\Br}} e^{\epsilon \Abs{\Br}} \\
&\rightarrow -\frac{e^{-j k \Abs{\Br}} }{4 \pi \Abs{\Br}}.
\end{aligned}
\end{equation}

The Green’s function has the structure of either an outgoing or incoming spherical wave, with inverse radial amplitude:
\begin{equation}\label{eqn:helmholtzGreens:660}
\boxed{
G(\Bx, \Bx’) = -\frac{e^{\pm j k \Abs{\Br}} }{4 \pi \Abs{\Br}}.
}
\end{equation}