Green’s function for the spacetime gradient (and solution of Maxwell’s equation)

October 28, 2025 math and physics play , , , , , , , , , , , , , , , , ,

[Click here for a PDF version of this post]

Motivation

I’ve been assembling a table of all the Green’s functions that can be used in electrodynamics. There’s one set of those Green’s functions left to fill in, the Green’s functions for the spacetime gradient:
\begin{equation}\label{eqn:spacetimeGradientGreens:20}
\lr{\spacegrad + \inv{c}\PD{t}{}} G(\Bx, \Bx’, t, t’) = \delta(\Bx – \Bx’)\delta(t – t’).
\end{equation}
I’d like to compute the retarded and advanced Green’s function for this operator for the 1D, 2D and 3D cases.

In [2] I use the retarded time Green’s function for the spacetime gradient to derive the Jefimenkos equations. However, in retrospect my handling of that material is sloppy. The starting point is the retarded wave equation Green’s function, but I didn’t even derive it, instead just lazily pointing to other authors that did.
I don’t actually ever state the spacetime gradient Green’s function, instead just using a sequence of intermediate results of that would be derivation. Even worse, all of that is scattered roughshod across both chapter II and III, as well as the appendix.

The idea.

Suppose that we know the Green’s functions for the wave equation
\begin{equation}\label{eqn:spacetimeGradientGreens:40}
\lr{\spacegrad^2 – \inv{c^2}\frac{\partial^2}{\partial t^2}} G_r(\Bx, \Bx’, t, t’) = \delta(\Bx – \Bx’)\delta(t – t’).
\end{equation}
\begin{equation}\label{eqn:spacetimeGradientGreens:60}
\lr{\spacegrad + \inv{c}\frac{\partial}{\partial t}} \lr{\spacegrad – \inv{c}\frac{\partial}{\partial t}} G_r(\Bx, \Bx’, t, t’) = \delta(\Bx – \Bx’)\delta(t – t’).
\end{equation}
This means that the Green’s function for the spacetime gradient, a multivector valued entity, satisfying \ref{eqn:spacetimeGradientGreens:20}, is
\begin{equation}\label{eqn:spacetimeGradientGreens:80}
G(\Bx, \Bx’, t, t’) = \lr{\spacegrad – \inv{c}\frac{\partial}{\partial t}} G_r(\Bx, \Bx’, t, t’).
\end{equation}
So if we have a Green’s function for the wave equation, it’s just a matter of taking derivatives to figure out the Green’s function for the spacetime gradient.

Why do we care? Recall that the multivector form of Maxwell’s equations is just
\begin{equation}\label{eqn:spacetimeGradientGreens:100}
\lr{\spacegrad + \inv{c}\frac{\partial}{\partial t}} F = J,
\end{equation}
so, if we know the Green’s function for this non-homogeneous problem, we may simply invert this equation for \( F \) with a convolution. This is how we can obtain the Jefimenkos equations in one fell swoop.

Now let’s evaluate these derivatives.

3D case.

Retarded case.

I’m going to start with the 3D retarded case, since I know the answer for that, and at least nominally, have all the composite parts of that derivation at hand. Then we can move on and compute the same for the advanced case, and then the 2D and 1D variants for fun. It’s not clear to me that we necessarily care about the 1D and 2D cases. I can imagine that there are circumstances where weird geometries or constraints force 1D and 2D solutions, but perhaps the 1D and 2D solutions will be academic and not practical.

Recall that the 3D retarded Green’s function for the wave equation was found to be
\begin{equation}\label{eqn:spacetimeGradientGreens:120}
G_r = -\inv{4 \pi r} \delta\lr{ t – t’ – r/c },
\end{equation}
where \( \Br = \Bx – \Bx’, r = \Abs{\Br} \).

Lemma 1.1: Gradient of \(\Abs{\Bx – \Bx’} \).

The gradient of the scalar \( r = \Abs{\Bx – \Bx’} \) is
\begin{equation*}
\spacegrad \Abs{\Bx – \Bx’} = \frac{\Br}{r}.
\end{equation*}
This will be written as \( \spacegrad r = \rcap \), with \( \rcap = \Br/r \).

Start proof:

\begin{equation}\label{eqn:spacetimeGradientGreens:140}
\begin{aligned}
\spacegrad \Abs{\Bx – \Bx’}
&=
\sum_m \Be_m \partial_m \sqrt{ \sum_n (x_n – x_n’)^2 } \\
&=
\sum_m \Be_m \inv{2} 2 \frac{x_m – x_m’}{r} \\
&=
\sum_m \Be_m \inv{2} 2 \frac{x_m – x_m’}{r} \\
&= \frac{\Br}{r}.
\end{aligned}
\end{equation}

End proof.

This means, suppressing the arguments of the delta function, that
\begin{equation}\label{eqn:spacetimeGradientGreens:160}
\begin{aligned}
\lr{ \spacegrad -(1/c) \partial_t } G_r
&= -\inv{4 \pi} \lr{
(\spacegrad r) \frac{\partial_r \delta}{r} + (\spacegrad r) \lr{ -\frac{1}{r^2}}\delta
– \inv{c r} \partial_t \delta
} \\
&= -\inv{4 \pi} \lr{ \frac{\rcap}{r} \partial_r \delta -\frac{\rcap}{r^2} \delta – \inv{c r} \partial_t \delta} \\
&= -\inv{4 \pi r} \lr{ \rcap \partial_r \delta – \frac{\rcap}{r} \delta – \inv{c} \partial_t \delta} \\
\end{aligned}
\end{equation}

Lemma 1.2: Derivatives of the delta function.

The derivative of the delta function (with respect to a non-integration variable parameter \( u \)) is
\begin{equation*}
\frac{d}{du} \delta( a u + b – t’ ) = a \delta( a u + b – t’ ) \frac{d}{dt’},
\end{equation*}
where \( t’ \) is the integration parameter for the delta function.

Observe that this is different than the usual identity
\begin{equation}\label{eqn:spacetimeGradientGreens:200}
\frac{d}{dt’} \delta(t’) = -\delta(t’) \frac{d}{dt’}.
\end{equation}

Start proof:

As usual, we figure out the meaning of these delta function derivatives by their action on a test function in a convolution.
\begin{equation}\label{eqn:spacetimeGradientGreens:220}
\int_{-\infty}^\infty \frac{d}{du} \delta( a u + b – t’ ) f(t’) dt’.
\end{equation}

Let’s start with a change of variables \( z = a u + b – t’ \), for which we find
\begin{equation}\label{eqn:spacetimeGradientGreens:240}
\begin{aligned}
t’ &= a u + b – z \\
dz &= – dt’ \\
\frac{d}{du} &= \frac{dz}{du} \frac{d}{dz} = a \frac{d}{dz}.
\end{aligned}
\end{equation}

Substitution back into \ref{eqn:spacetimeGradientGreens:220} gives
\begin{equation}\label{eqn:spacetimeGradientGreens:260}
\begin{aligned}
\int_{-\infty}^\infty \frac{d}{du} \delta( a u + b – t’ ) f(t’) dt’
&=
a \int_{\infty}^{-\infty} \lr{ \frac{d}{dz} \delta( z ) } f( a u + b – z ) (-dz) \\
&=
a \int_{-\infty}^{\infty} \lr{ \frac{d}{dz} \delta( z ) } f( a u + b – z ) dz \\
&=
\evalrange{a \delta(z) f( a u + b – z)}{-\infty}{\infty} \\
&\qquad –
a \int_{-\infty}^{\infty} \delta( z ) \frac{d}{dz} f( a u + b – z ) dz \\
&=
– \evalbar{ a \frac{d}{dz} f( a u + b – z ) }{z = 0} \\
&=
– \evalbar{ a \frac{d}{d(au + b – t’)} f( t’ ) }{t’ = a u + b} \\
&=
+ \evalbar{ a \frac{d}{d(t’ -(au + b))} f( t’ ) }{t’ = a u + b} \\
&=
\evalbar{ a \frac{dt’}{d(t’ – (a u + b))} \frac{d}{dt’} f( t’ ) }{t’ = a u + b} \\
&=
\evalbar{ a \frac{d}{dt’} f( t’ ) }{t’ = a u + b} \\
&=
\int_{-\infty}^\infty a \delta(a u + b – t’) \frac{df(t’)}{dt’} dt’.
\end{aligned}
\end{equation}

End proof.

In particular, this means that
\begin{equation}\label{eqn:spacetimeGradientGreens:280}
\begin{aligned}
\partial_r \delta(t – t’ – r/c) &= -\frac{1}{c} \delta(t – t’ – r/c) \PD{t’}{} \\
\partial_t \delta(t – t’ – r/c) &= \delta(t – t’ – r/c) \PD{t’}{} \\
\end{aligned}
\end{equation}

Application to \ref{eqn:spacetimeGradientGreens:160} gives
\begin{equation}\label{eqn:spacetimeGradientGreens:300}
\begin{aligned}
\lr{ \spacegrad -(1/c) \partial_t } G_r
&=
\inv{4 \pi r} \delta(t – t’ – r/c)
\lr{
\frac{\rcap}{r}
+
\lr{ \rcap + 1} \inv{c} \PD{t’}{}
} \\
\end{aligned}
\end{equation}
With \( t_r = t – r/c \), \ref{eqn:spacetimeGradientGreens:80} is found to be
\begin{equation}\label{eqn:spacetimeGradientGreens:320}
G(\Bx, \Bx’, t, t’) = \inv{4 \pi r} \delta(t_r – t’)
\lr{
\frac{\rcap}{r}
+
\lr{ \rcap + 1} \inv{c} \PD{t_r}{}
}
\end{equation}

Advanced case.

The advanced Green’s function for the wave equation is
\begin{equation}\label{eqn:spacetimeGradientGreens:340}
G_a(\Bx, \Bx’, t, t’) = -\inv{4 \pi r} \delta\lr{ t’ – t – r/c },
\end{equation}
so with \( t_a = t + r/c \), we must evaluate the delta function derivatives
\begin{equation}\label{eqn:spacetimeGradientGreens:360}
\begin{aligned}
\partial_r \delta\lr{ t’ – t – r/c } &= -\inv{c} \delta\lr{ t’ – t_a } \frac{d}{dt_a} \\
\partial_t \delta\lr{ t’ – t – r/c } &= – \delta\lr{ t’ – t_a } \frac{d}{dt_a}.
\end{aligned}
\end{equation}
So the Green’s function for the space time gradient is
\begin{equation}\label{eqn:spacetimeGradientGreens:380}
\begin{aligned}
G(\Bx, \Bx’, t, t’)
&= -\inv{4 \pi r} \lr{ \rcap \partial_r \delta – \frac{\rcap}{r} \delta – \inv{c} \partial_t \delta} \\
&= \inv{4 \pi r} \delta\lr{t’ – t_a} \lr{ \frac{\rcap}{r} + \lr{ \rcap – 1} \inv{c} \frac{d}{d t_a}}.
\end{aligned}
\end{equation}

Application: Maxwell’s equation.

Let’s use this to solve Maxwell’s equation. Finding a specific solution is now trivial. The retarded solution is
\begin{equation}\label{eqn:spacetimeGradientGreens:400}
\begin{aligned}
F(\Bx, t)
&= \int dV’ dt’ \gpgrade{
G(\Bx, \Bx’, t, t’) J(\Bx’, t’)
}{1,2} \\
&= \inv{ 4 \pi } \int d^3 \Bx’ dt’
\delta(t_r – t’)
\gpgrade{
\inv{r}
\lr{
\frac{\rcap}{r}
+
\lr{ \rcap + 1} \inv{c} \PD{t_r}{}
}
J(\Bx’, t’)
}{1,2} \\
&=
\inv{ 4 \pi } \int d^3 \Bx’
\gpgrade{
\inv{r}
\lr{
\frac{\rcap}{r} J(\Bx’, t_r)
+
\lr{ \rcap + 1} \inv{c} J'(\Bx’, t_r)
}
}{1,2},
\end{aligned}
\end{equation}
where \( J'(\Bx’, t_r) = \PDi{t_r}{J(\Bx’, t_r)} \).
Similarly, the advanced solution is
\begin{equation}\label{eqn:spacetimeGradientGreens:520}
F(\Bx, t) =
\inv{ 4 \pi } \int d^3 \Bx’
\gpgrade{
\inv{r}
\lr{
\frac{\rcap}{r} J(\Bx’, t_a)
+
\lr{ \rcap – 1} \inv{c} J'(\Bx’, t_a)
}
}{1,2},
\end{equation}
where derivatives are with respect to \( t_a \). In general, we are free to form a superposition of both the retarded and advanced solutions, as well as any solution of the homogeneous equation for charge and current free space \( \lr{ \spacegrad + (1/c) \partial_t } F = 0 \).

There’s a lot of abstraction baked into these solutions. One is the multivector charge and current density \( J \)
\begin{equation}\label{eqn:spacetimeGradientGreens:420}
J = \eta \lr{ c \rho – \BJ } + I \lr{ c \rho_\txtm – \BM },
\end{equation}
where \( \rho_\txtm, \BM \) are the fictitious magnetic sources that are used in engineering antenna and microwave circuit theory. We can ignore those if we choose. We also have the abstraction of the multivector field \( F = \BE + I \eta \BH = \BE + I c \BB \) itself on LHS.

Let’s unpack this solution into it’s constituent electric and magnetic field components, to see if the result looks more familiar. First note that
\begin{equation}\label{eqn:spacetimeGradientGreens:440}
\begin{aligned}
\gpgrade{\rcap J}{1}
&=
\gpgrade{
\rcap \eta \lr{ c \rho – \BJ } + \rcap I \lr{ c \rho_\txtm – \BM }
}{1} \\
&=
\eta c \rho \rcap
– I \rcap \wedge \BM \\
&=
\frac{\rho}{\epsilon} \rcap
+ \rcap \cross \BM,
\end{aligned}
\end{equation}
and
\begin{equation}\label{eqn:spacetimeGradientGreens:460}
\begin{aligned}
\gpgrade{\rcap J}{2}
&=
\gpgrade{
\rcap \eta \lr{ c \rho – \BJ } + \rcap I \lr{ c \rho_\txtm – \BM }
}{2} \\
&=
I \lr{
– \eta \rcap \cross \BJ
+ \rcap c \rho_\txtm
} \\
&=
I \eta \lr{
\BJ \cross \rcap
+ \rcap \frac{\rho_\txtm}{\mu}
}
\end{aligned}
\end{equation}
Selecting the vector and bivector components of the field \( F = \BE + I \eta \BH \), we have
\begin{equation}\label{eqn:spacetimeGradientGreens:480}
\BE(\Bx, t)
=
\inv{4 \pi \epsilon}
\int d^3 \Bx’
\lr{
\frac{\rho}{r^2} \rcap
+ \frac{\rho’}{c r} \rcap
+ \epsilon \frac{\rcap}{r^2} \cross \BM
+ \frac{\epsilon \rcap}{c r} \cross \BM’
\mp \frac{1}{c^2 r} \BJ’
}
\end{equation}
and
\begin{equation}\label{eqn:spacetimeGradientGreens:500}
\BH(\Bx, t)
=
\inv{4 \pi \mu}
\int d^3 \Bx’
\lr{
\frac{\rho_\txtm}{r^2} \rcap
+ \frac{\rho_\txtm}{c r} \rcap
+ \mu \BJ \cross \frac{\rcap}{r^2}
+ \mu \BJ’ \cross \frac{\rcap}{c r}
\mp \inv{c^2 r} \BM’
},
\end{equation}
where the negative sign is for the retarded solution, with times and derivatives with respect to the retarded time \( t_r = t – \Abs{\Bx – \Bx’}/c \), and the positive case for the advanced solutions where times are evaluated at the advanced time \( t_a = t + \Abs{\Bx – \Bx’}/c \).
For the retarded case, if we zero the fictitious sources, setting \( \rho_\txtm = 0, \BM = 0 \), these are Jefimenko’s equations, as seen in [1]. Griffiths derives them by first solving for the potential functions that solve the 2nd order scalar wave equation problem, and then computing all the derivatives.

1D case.

The Green’s function for the 1D spacetime gradient is easy to compute
\begin{equation}\label{eqn:spacetimeGradientGreens:540}
\begin{aligned}
G
&= -\frac{c}{2} \lr{ \spacegrad – \inv{c} \partial_t } \Theta(\pm (t – t’) – r/c) \\
&=
-\frac{c}{2} \lr{
-\inv{c} \rcap – \inv{c} (\pm 1)
}
\delta(\pm (t – t’) – r/c) \\
&=
\inv{2} \lr{ \rcap \pm 1 } \delta(\pm (t – t’) – r/c).
\end{aligned}
\end{equation}

2D case.

The Green’s function for the 2D spacetime gradient is
\begin{equation}\label{eqn:spacetimeGradientGreens:560}
G = -\inv{2 \pi}
\lr{ \spacegrad – \inv{c} \partial_t }
\frac{\Theta(\pm (t – t’) – r/c) }{
\sqrt{\lr{ \tau^2 – r^2/c^2 }}
}.
\end{equation}

The derivatives of the step are
\begin{equation}\label{eqn:spacetimeGradientGreens:580}
\begin{aligned}
\lr{ \spacegrad – \inv{c} \partial_t } \Theta(\pm (t – t’) – r/c)
&=
\lr{
-\inv{c} \rcap -\inv{c} (\pm 1)
}
\delta(\pm (t – t’) – r/c) \\
&=
-\inv{c} \lr{ \rcap \pm 1 }
\delta(\pm \tau – r/c).
\end{aligned}
\end{equation}
and the derivatives of the denominator is
\begin{equation}\label{eqn:spacetimeGradientGreens:600}
\begin{aligned}
\lr{ \spacegrad – \inv{c} \partial_t }
\lr{(t – t’)^2 – r^2/c^2}^{-1/2}
&=
-\inv{2}(2) \lr{ -\inv{c^2} r \rcap -\inv{c} (t – t’) }
\lr{(t – t’)^2 – r^2/c^2}^{-3/2} \\
&=
\inv{c^2} \lr{ \Br + c \tau }
\lr{\tau^2 – r^2/c^2}^{-3/2}.
\end{aligned}
\end{equation}
so
\begin{equation}\label{eqn:spacetimeGradientGreens:620}
G(r, \tau) =
\frac{
\lr{\tau^2 – r^2/c^2}^{-3/2}
}{2 \pi c^2}
\lr{
c \lr{ \rcap \pm 1 }
\lr{\tau^2 – r^2/c^2}
\delta(\pm \tau – r/c)
-\lr{ \Br + c \tau }
\Theta(\pm \tau – r/c)
}.
\end{equation}

References

[1] David Jeffrey Griffiths and Reed College. Introduction to electrodynamics. Prentice hall Upper Saddle River, NJ, 3rd edition, 1999.

[2] Peeter Joot. Geometric Algebra for Electrical Engineers. Kindle Direct Publishing, Toronto, 2019.

Green’s function for the 3D wave equation.

October 22, 2025 math and physics play , , , , , , , ,

[Click here for a PDF version of this and related posts]

We’ve now evaluated the 1D Green’s function and 2D Green’s function for the wave equation.

For the sake of completeness, now let’s evaluate the Green’s function for the 3D wave equation operator. Again with \( \Br = \Bx – \Bx’, \tau = t – t’ \) we want the \( \epsilon \rightarrow 0 \) limit of
\begin{equation}\label{eqn:waveEquationGreens:1480}
G_\epsilon(\Br, \tau)
=
\inv{\lr{2 \pi}^4} \int d^3 \Bk d\omega \frac{e^{j \Bk \cdot \Br + j \omega \tau}}{(\omega/c – j \epsilon/c)^2 – \Bk^2}.
\end{equation}
For \(\epsilon > 0 \) this will presumably give us the retarded solution, with advanced for \( \epsilon < 0 \). We are using the nice pole displacement that leaves both poles on the same side of the upper or lower half plane, depending on the sign of \( \epsilon \). Let’s only do the \( \epsilon > 0 \) case by hand. Evaluating the \( \omega \) integral first with an upper half plane contour, we have
\begin{equation}\label{eqn:waveEquationGreens:1500}
\begin{aligned}
G_\epsilon(\Br, \tau)
&=
\frac{c^2}{\lr{2 \pi}^4} \int d^3 \Bk e^{j \Bk \cdot \Br}
\frac{e^{j \omega \tau}}{
\lr{\omega – \lr{ j \epsilon – \Abs{\Bk} c}}
\lr{\omega – \lr{ j \epsilon + \Abs{\Bk} c}}
} \\
&=
\frac{j c^2}{\lr{2 \pi}^3} \Theta(\tau) \int d^3 \Bk e^{j \Bk \cdot \Br}
\lr{
\evalbar{\frac{e^{j \omega \tau}}{\omega – \lr{ j \epsilon – \Abs{\Bk} c}}}{\omega = j \epsilon + \Abs{\Bk} c}
+
\evalbar{\frac{e^{j \omega \tau}}{\omega – \lr{ j \epsilon + \Abs{\Bk} c}}}{\omega = j \epsilon – \Abs{\Bk} c}
} \\
&=
\frac{j c^2}{\lr{2 \pi}^3} \Theta(\tau) e^{-\epsilon \tau} \int d^3 \Bk e^{j \Bk \cdot \Br}
\lr{
\frac{e^{j \Abs{\Bk} c \tau}}{2 \Abs{\Bk} c}

\frac{e^{-j \Abs{\Bk} c \tau}}{2 \Abs{\Bk} c}
} \\
&=
-\frac{c}{\lr{2 \pi}^3} \Theta(\tau) e^{-\epsilon \tau} \int \frac{d^3 \Bk}{\Abs{\Bk}} e^{j \Bk \cdot \Br}
\sin\lr{ \Abs{\Bk} c \tau }.
\end{aligned}
\end{equation}
We can evaluate the \( \epsilon \rightarrow 0 \) limit, and switch to spherical coordinates in k-space. Let \( \Br = r \Be_3 \)
\begin{equation}\label{eqn:waveEquationGreens:1520}
G(\Br, \tau)
=
-\frac{c}{\lr{2 \pi}^3} \Theta(\tau)
\int_{k = 0}^\infty \frac{k^2 dk}{k}
\int_{\phi = 0}^{2 \pi} d\phi
\int_{\theta = 0}^{\pi} \sin\theta d\theta
e^{j k r \cos\theta} \sin\lr{ k c \tau }.
\end{equation}
With \( u = \cos\theta \), this gives
\begin{equation}\label{eqn:waveEquationGreens:1540}
\begin{aligned}
G(\Br, \tau)
&=
\frac{c}{\lr{2 \pi}^2} \Theta(\tau)
\int_{k = 0}^\infty k dk \sin\lr{ k c \tau }
\int_{u = -1}^{1} du
e^{j k r u} \\
&=
\frac{c}{\lr{2 \pi}^2} \Theta(\tau)
\int_{k = 0}^\infty k dk \sin\lr{ k c \tau }
\lr{ \frac{e^{-j k r }}{j k r} – \frac{e^{j k r }}{j k r} } \\
&=
-\frac{c}{2 \pi^2 r} \Theta(\tau) \int_{k = 0}^\infty dk \sin\lr{ k c \tau } \sin\lr{ k r} \\
&=
-\frac{c}{4 \pi^2 r} \Theta(\tau) \int_{k = 0}^\infty dk
\lr{
\cos\lr{ k( c \tau – r ) }

\cos\lr{ k( c \tau + r ) }
} \\
&=
-\frac{c}{8 \pi^2 r} \Theta(\tau) \int_{k = -\infty}^\infty dk
\lr{
\cos\lr{ k( c \tau – r ) }

\cos\lr{ k( c \tau + r ) }
} \\
&=
-\frac{c}{8 \pi^2 r} \Theta(\tau) \int_{-\infty}^\infty dk
\lr{
e^{ j k( c \tau – r ) } – e^{ j k( c \tau + r ) }
} \\
&=
-\frac{c}{4 \pi r} \Theta(\tau)
\lr{
\delta( c \tau – r )

\delta( c \tau + r )
} \\
&=
-\frac{1}{4 \pi r} \Theta(\tau)
\lr{
\delta( \tau – r/c )

\delta( \tau + r/c )
}.
\end{aligned}
\end{equation}
Observe that the second delta function only has a value when \( \tau = -r/c \), but \( \Theta(-r/c) = 0 \). Similarly, the first delta function only has a value for \( \tau = r/c \ge 0 \), where the Heaviside step function is unity. That means we can simplify this to just
\begin{equation}\label{eqn:waveEquationGreens:1560}
\boxed{
G(\Br, \tau) = -\frac{1}{4 \pi \Abs{\Br}} \delta( \tau – \Abs{\Br}/c ),
}
\end{equation}
as expected.

Again, sort of sadly, we can skip all the fun and evaluate most of this in Mathematica. It needs only minor hand-holding to extract the delta function semantics. The retarded derivation is shown in fig. 1, and the advanced derivation in fig. 2.

fig. 1. Retarded 3D Green’s function for the wave equation.

fig. 2. Advanced 3D Green’s function for the wave equation.

Derivation of the 2D Green’s function for the wave equation operator.

October 22, 2025 math and physics play , , , , , , ,

[Click here for a PDF version of this post]

While it was difficult to attempt to verify the 2D Green’s function, it actually turns out to be fairly easy to derive it, provided we pick an alternate pole displacement from the 1D evaluation to make our lives easier.

With \( \Br = \Bx – \Bx’ \), and \( \tau = t – t’ \), and \( \epsilon > 0 \), we can form
\begin{equation}\label{eqn:waveEquationGreens:1340}
G_\epsilon(\Br, \tau) = \frac{c^2}{\lr{2 \pi}^3} \int d^2 \Bk d\omega \frac{ e^{j \Bk \cdot \Br + j \omega \tau}}{\lr{\omega -j \epsilon}^2 – \Bk^2 c^2 }
\end{equation}
This pole displacement has the nice property that both poles live in the upper half plane, so for \( \tau > 0 \), we have
\begin{equation}\label{eqn:waveEquationGreens:1360}
\begin{aligned}
G_\epsilon(\Br, \tau)
&= \frac{c^2}{\lr{2 \pi}^3} \int d^2 \Bk d\omega \frac{ e^{j \Bk \cdot \Br + j \omega \tau}}{
\lr{\omega -\lr{ \Abs{\Bk} c – j \epsilon}}
\lr{\omega -\lr{ -\Abs{\Bk} c – j \epsilon}}
} \\
&=
\Theta(\tau) \frac{c^2 j}{\lr{2 \pi}^2} \int d^2 \Bk e^{j \Bk \cdot \Br}
\lr{
\evalbar{
\frac{e^{ j \omega \tau}}{ \lr{\omega -\lr{ -\Abs{\Bk} c – j \epsilon}} }
}
{\omega = \Abs{\Bk} c – j \epsilon}
+
\evalbar{
\frac{e^{ j \omega \tau}}{ \lr{\omega -\lr{ \Abs{\Bk} c – j \epsilon}} }
}
{\omega = -\Abs{\Bk} c – j \epsilon}
}
\\
&=
\Theta(\tau) \frac{c^2 j}{\lr{2 \pi}^2} \int d^2 \Bk e^{j \Bk \cdot \Br} e^{ -j \epsilon \tau }
\lr{
\frac{e^{ j \Abs{\Bk} c \tau}}{ 2 \Abs{\Bk} c }
+
\frac{e^{ -j \Abs{\Bk} c \tau}}{ -2 \Abs{\Bk} c }
} \\
&=
\Theta(\tau) \frac{j^2 c}{\lr{2 \pi}^2} \int_{k=0}^\infty k dk \int_{\phi=0}^{2 \pi} d\phi e^{j k\Abs{\Br} \cos\phi } e^{ -j \epsilon \tau } \frac{\sin\lr{ k c \tau }}{k}.
\end{aligned}
\end{equation}
We’ve now successfully removed the singularity, and can evaluate the \(\epsilon \rightarrow 0 \) limit. We may also evaluate the \( \phi \) integral, remembering that
\begin{equation}\label{eqn:waveEquationGreens:1380}
\int_0^{2 \pi} e^{j \Abs{a} \cos\phi} d\phi = 2 \pi J_0(\Abs{a}),
\end{equation}
to find
\begin{equation}\label{eqn:waveEquationGreens:1400}
G(\Br, \tau) = -\Theta(\tau) \frac{c}{2 \pi} \int_{k=0}^\infty dk J_0(k\Abs{\Br}) \sin\lr{ k c \tau }.
\end{equation}
This integral yields easily to Mathematica, and we find
\begin{equation}\label{eqn:waveEquationGreens:1420}
G(\Br, \tau) = -\Theta(\tau) \frac{c}{2 \pi} \frac{\Theta(c \tau – \Abs{\Br})}{\sqrt{(c\tau)^2 – \Br^2}}.
\end{equation}
However, since \( \Theta(c \tau – \Abs{\Br}) = 1 \) only for \( \tau > \Abs{\Br}/c \), the \( \Theta(\tau) \) factor is redundant, and we find
\begin{equation}\label{eqn:waveEquationGreens:1440}
\boxed{
G(\Br, \tau) = – \frac{1}{2 \pi} \frac{\Theta(c \tau – \Abs{\Br})}{\sqrt{\tau^2 – \Br^2/c^2}},
}
\end{equation}
which matches the retarded Green’s function claimed by Grok.

Repeating this analysis for \( \tau < 0, \epsilon < 0 \), we find
\begin{equation}\label{eqn:waveEquationGreens:1460}
G(\Br, \tau) = -\Theta(-\tau) \frac{c}{2 \pi} \frac{\Theta(-c \tau – \Abs{\Br})}{\sqrt{(c\tau)^2 – \Br^2}},
\end{equation}
which we also see matches the Grok result for the advanced Green’s function. Both of these computations can be trivially performed in Mathematica following the same steps (taking all the fun from the story.) The advanced integral evaluation is shown in fig. 1 as an example.

fig. 1. Advanced 2D Green’s function for wave equation operator.

Bandwidth of some bandpass filters

October 18, 2025 math and physics play , , , , , , , , , , , , ,

[Click here for a PDF version of this post]

Karl had a couple of fun filter problems that he chatted with me about. I didn’t remember how do find the bandwidth, nor the resonant frequency of such a circuit, and after he solved the problems, I tried them for myself.

The circuits, as seen in fig. 1, were RC and RL respectively, and both ended up having the same transfer function.

fig 1a. RC bandpass filter.

fig 1b. RL bandpass filter.

 

For my attempt to solve these circuits, I used the loop current method that Karl recently taught me. Perhaps I once knew that method, but if I had, I’d forgotten. This loop method can be nicer than a standard nodal analysis, since it can automatically eliminate some current variables. Here’s the equations for the RC circuit
\begin{equation}\label{eqn:RLCbandwidth:20}
\begin{aligned}
V_a – V_s &= I_1 (1) \\
V_a &= (I_1 – I_2) \inv{s} \\
V_o – V_a &= I_2 \inv{s} \\
V_o &= I_2 (1).
\end{aligned}
\end{equation}
The equations for the RL circuit are
\begin{equation}\label{eqn:RLCbandwidth:40}
\begin{aligned}
V_a – V_s &= I_1 s \\
V_a &= (I_1 – I_2) (1) \\
V_o – V_a &= I_2 (1) \\
V_o &= I_2 s.
\end{aligned}
\end{equation}
The transfer functions for both is
\begin{equation}\label{eqn:RLCbandwidth:60}
H(s) = \frac{V_o}{V_s} = \frac{1}{1/s + 3 + s}.
\end{equation}
A plot of \( \Abs{H(j\omega)} \) can be found in fig. 2, and peaks at \( \omega = 1 \).

fig. 2. Transfer function.

 

Observe that the denominator of this transfer function looks just like a series RLC impedance. For example, for the circuit of fig. 3, we have
\begin{equation}\label{eqn:RLCbandwidth:80}
\frac{I}{V} = \inv{Z} = \inv{ R + L s + \inv{s C} }.
\end{equation}

fig. 3. RLC circuit.

 

Written out in the frequency domain, that impedance is
\begin{equation}\label{eqn:RLCbandwidth:100}
Z(\omega) = R + j \lr{ \omega L – \inv{\omega C} }.
\end{equation}
Max power transfer through this circuit will be for the specific frequency where the impedance is purely real. In this case, that is the frequency \(\omega_0\) that satisfies
\begin{equation}\label{eqn:RLCbandwidth:120}
\omega_0^2 = \inv{L C}.
\end{equation}
Karl’s textbook didn’t define bandwidth in any general sense, but did do so for an RLC circuit of this form, stating that the bandwidth was \( \omega_2 – \omega_1 \) where these are the frequencies of the half (average) power points.

We need to remind ourselves what the formula for average power is
\begin{equation}\label{eqn:RLCbandwidth:140}
\begin{aligned}
P
&= \inv{T} \int_0^T v(t) i(t) dt \\
&= \inv{T} \int_0^T \textrm{Re} \lr{ V e^{j\omega t} } \Real \lr{ I e^{j\omega t} } dt \\
&= \inv{4 T} \int_0^T
\lr{ V e^{j \omega t} + \bar{V} e^{-j\omega t} }
\lr{ I e^{j \omega t} + \bar{I} e^{-j\omega t} } dt \\
&= \inv{4} \lr{ V \bar{I} + \bar{V} I } \\
&= \inv{2} \textrm{Re} \lr{ V \bar{I} } \\
&= \inv{2} \textrm{Re} \lr{ I Z \bar{I} } \\
&= \inv{2} \Abs{I}^2 R \\
&= \inv{2} \Abs{V}^2 \frac{R}{\Abs{Z}^2}.
\end{aligned}
\end{equation}
The maximum average power is for purely real impedance
\begin{equation}\label{eqn:RLCbandwidth:160}
P = \inv{2 R} \Abs{V}^2,
\end{equation}
so the half power points are when \( \Abs{Z} = \sqrt{2} R \). For the RLC circuit that is when
\begin{equation}\label{eqn:RLCbandwidth:180}
\Abs{R + j \lr{ \omega L – \inv{\omega C} }}^2 = 2 R^2,
\end{equation}
or
\begin{equation}\label{eqn:RLCbandwidth:200}
R^2 = \lr{ \omega L – \inv{\omega C} }^2.
\end{equation}
We seek solutions for
\begin{equation}\label{eqn:RLCbandwidth:220}
\begin{aligned}
R &= \omega L – \inv{\omega C} \\
-R &= \omega L – \inv{\omega C}.
\end{aligned}
\end{equation}
We find the same solutions for either, both leading to
\begin{equation}\label{eqn:RLCbandwidth:240}
B = \Abs{\omega_2 – \omega_1} = \frac{R}{L}.
\end{equation}
This is the (half-power) bandwidth for the RLC circuit. We may now re-express the transfer functions for the filters in terms of the resonant frequency and bandwidth
\begin{equation}\label{eqn:RLCbandwidth:260}
H(s) = \frac{s}{\omega_0^2 + B s + s^2},
\end{equation}
and see by inspection that \( \omega_0 = 1 \) for our circuit (also seen in the plot) and \( B = 3 \,\textrm{rad/s} \).

Deriving the Green’s functions for the 1D wave equation.

October 13, 2025 math and physics play , , , , , , , , ,

[Click here for a PDF version of this (and previous) post]

Having had trouble verifying the 2D Green’s function, let’s try deriving them ourselves.

Setup.

Let’s try solving the forced wave equation
\begin{equation}\label{eqn:waveEquationGreens:860}
\lr{ \spacegrad^2 – \inv{c^2}\frac{\partial^2}{\partial t^2} } f(x,t) = g(x,t),
\end{equation}
using Fourier transform pairs
\begin{equation}\label{eqn:waveEquationGreens:880}
\begin{aligned}
F(\Bx, t) &= \inv{\lr{\sqrt{2 \pi}}^{N+1}} \int e^{j \Bk \cdot \Bx + j \omega t} \hat{F}(\Bk, \omega) d^N \Bk d\omega \\
\hat{F}(\Bk, \omega) &= \inv{\lr{\sqrt{2 \pi}}^{N+1}} \int e^{-j \Bk \cdot \Bx – j \omega t} F(\Bx, t) d^N \Bx dt.
\end{aligned}
\end{equation}
We can now transform \ref{eqn:waveEquationGreens:860}, expressing \(f, g\) in terms of their transforms
\begin{equation}\label{eqn:waveEquationGreens:900}
\lr{ \lr{ j \Bk}^2 – \lr{ j \omega }^2/c^2 } \hat{f} = \hat{g},
\end{equation}
or
\begin{equation}\label{eqn:waveEquationGreens:920}
\hat{f} = \frac{\hat{g}}{(\omega/c)^2 – \Bk^2},
\end{equation}
or
\begin{equation}\label{eqn:waveEquationGreens:940}
\begin{aligned}
f(\Bx, t)
&= \inv{\lr{\sqrt{2 \pi}}^{N+1}} \int e^{j \Bk \cdot \Bx + j \omega t} \frac{\hat{g}(\Bk, \omega)}{(\omega/c)^2 – \Bk^2} d^N \Bk d\omega \\
&= \inv{\lr{2 \pi}^{N+1}} \int e^{j \Bk \cdot \Bx + j \omega t} \frac{g(\Bx’, t’)}{(\omega/c)^2 – \Bk^2} d^N \Bk d\omega e^{-j \Bk \cdot \Bx’ – j \omega t’} d^N \Bx’ dt’ \\
&=
\int d^N \Bx’ dt’ g(\Bx’, t’) G(\Bx, \Bx’, t, t’),
\end{aligned}
\end{equation}
where
\begin{equation}\label{eqn:waveEquationGreens:960}
G(\Bx, \Bx’, t, t’)
=
\inv{\lr{2 \pi}^{N+1}} \int d^N \Bk d\omega \frac{e^{j \Bk \cdot (\Bx-\Bx’) + j \omega (t- t’)}}{(\omega/c)^2 – \Bk^2}.
\end{equation}

Evaluating the 1D Green’s function

For the 1D case we have
\begin{equation}\label{eqn:waveEquationGreens:980}
G(\Bx, \Bx’, t, t’)
=
\inv{\lr{2 \pi}^2} \int dk d\omega \frac{e^{j k (x-x’) + j \omega (t- t’)}}{(\omega/c)^2 – k^2}
\end{equation}
Let’s write \( u = x – x’ \), and \( \tau = t – t’ \), and displace the poles by an imaginary offset \( j \epsilon \)
\begin{equation}\label{eqn:waveEquationGreens:1000}
G_\epsilon(u, \tau)
=
-\inv{\lr{2 \pi}^2} \int dk d\omega \frac{e^{j k u + j \omega \tau }}{\lr{ k – \lr{ \omega/c + j \epsilon}}\lr{ k + \lr{ \omega/c + j \epsilon }}}.
\end{equation}

Let’s start by assuming that \( \epsilon > 0 \). When \( u > 0 \), we can use a upper half plane contour in the k-plane, enclosing \( \omega/c + j \epsilon \), to find
\begin{equation}\label{eqn:waveEquationGreens:1020}
\begin{aligned}
G_\epsilon(u, \tau)
&=
-\frac{2 \pi j}{\lr{2 \pi}^2} \int d\omega \evalbar{\frac{e^{j k u + j \omega \tau }}{k + \lr{ \omega/c + j \epsilon }}}{k = \omega/c + j \epsilon} \\
&=
\frac{1}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau + u/c)}}{\omega/c + j \epsilon }.
\end{aligned}
\end{equation}
However, for \( u < 0 \) we need the lower half plane contour that encloses \( -\omega/c - j \epsilon \). Our residue calculation is \begin{equation}\label{eqn:waveEquationGreens:1040} \begin{aligned} G_\epsilon(u, \tau) &= -\frac{-2 \pi j}{\lr{2 \pi}^2} \int d\omega \evalbar{\frac{e^{j k u + j \omega \tau }}{k - \lr{ \omega/c + j \epsilon }}}{k = -\omega/c - j \epsilon} \\ &= \frac{1}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau - u/c)}}{\omega/c + j \epsilon }. \end{aligned} \end{equation} Merging the two cases, we have \begin{equation}\label{eqn:waveEquationGreens:1060} \begin{aligned} G_\epsilon(u, \tau) &= \frac{1}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau + \Abs{u}/c)}}{\omega/c + j \epsilon } \\ &= \frac{c}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau + \Abs{u}/c)}}{\omega + j \epsilon c } \\ \end{aligned} \end{equation} This can be integrated in the \(\omega\)-plane, with the pole at \( -j \epsilon c \). For \( \tau + \Abs{u}/c > 0 \), we need an upper half plane infinite semicircular contour, but have no enclosed pole. For \( \tau + \Abs{u}/c < 0 \), we have \begin{equation}\label{eqn:waveEquationGreens:1080} \begin{aligned} G_\epsilon(u, \tau) &= \frac{c (-2 \pi j)}{4 \pi j} \evalbar{ e^{j \omega (\tau + \Abs{u}/c)}}{\omega = -j \epsilon c} \\ &= -\frac{c}{2}, \end{aligned} \end{equation} (in the limit.) Putting both pieces together, we have found the advanced Green's function for the 1D wave equation \begin{equation}\label{eqn:waveEquationGreens:1100} \boxed{ G(u, \tau) = -\frac{c}{2} \Theta(-\tau - \Abs{u}/c). } \end{equation} Having found the advanced solution with a positive pole displacement, it is reasonable to assume that we will get the retarded solution, with a negative pole displacement \( \epsilon < 0 \). This time, the upper half plane infinite semicircular contour encloses the \( -\omega/c -j \epsilon \) pole, and the lower half plane contour encloses the \( \omega/c + j \epsilon \) pole. This gives, us, for \( u > 0 \)
\begin{equation}\label{eqn:waveEquationGreens:1120}
\begin{aligned}
G_\epsilon(u, \tau)
&=
-\frac{2 \pi j}{\lr{2 \pi}^2} \int d\omega \evalbar{\frac{e^{j k u + j \omega \tau }}{k – \lr{ \omega/c + j \epsilon }}}{k = -\omega/c – j \epsilon} \\
&=
-\frac{1}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau – u/c)}}{\omega/c + j \epsilon } \\
&=
-\frac{c}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau – u/c)}}{\omega – (-j \epsilon c) } \\
&=
-\frac{2 \pi j c}{4 \pi j} \evalbar{e^{j \omega (\tau – u/c)}}{\omega = -j \epsilon c } \Theta(\tau – u/c) \\
&=
-\frac{c}{2} \Theta(\tau – u/c),
\end{aligned}
\end{equation}
and for \( u < 0 \) \begin{equation}\label{eqn:waveEquationGreens:1140} \begin{aligned} G_\epsilon(u, \tau) &= -\frac{-2 \pi j}{\lr{2 \pi}^2} \int d\omega \evalbar{\frac{e^{j k u + j \omega \tau }}{k + \lr{ \omega/c + j \epsilon }}}{k = \omega/c + j \epsilon} \\ &= \frac{1}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau + u/c)}}{\omega/c + j \epsilon } \\ &= \frac{c}{4 \pi j} \int d\omega \frac{e^{j \omega (\tau + u/c)}}{\omega - (-j \epsilon c) } \\ &= -\frac{-2 \pi j c}{4 \pi j} \evalbar{e^{j \omega (\tau + u/c)}}{\omega = -j \epsilon c } \Theta(\tau + u/c) \\ &= -\frac{c}{2} \Theta(\tau + u/c). \end{aligned} \end{equation} Combining the two cases, we've found the retarded solution \begin{equation}\label{eqn:waveEquationGreens:1160} \boxed{ G(u, \tau) = -\frac{c}{2} \Theta(\tau - \Abs{u}/c). } \end{equation} This matches Grok's claim (which we also verified.)

The convolution integrals.

Let’s write out the convolution integrals for fun. They are
\begin{equation}\label{eqn:waveEquationGreens:1180}
f(x,t) = -\frac{c}{2}
\int_{-\infty}^\infty dt’
\int_{-\infty}^\infty dx’
\Theta(\pm(t – t’) – \Abs{x – x’}/c) g(x’, t’).
\end{equation}

For the retarded case, we need only evaluate the step over the region
\begin{equation}\label{eqn:waveEquationGreens:1220}
t – t’ – \Abs{x – x’}/c > 0,
\end{equation}
or
\begin{equation}\label{eqn:waveEquationGreens:1240}
t – \Abs{x – x’}/c > t’.
\end{equation}
For the advanced case, we want the restriction
\begin{equation}\label{eqn:waveEquationGreens:1260}
-t + t’ – \Abs{x – x’}/c > 0,
\end{equation}
or
\begin{equation}\label{eqn:waveEquationGreens:1280}
t’ > t + \Abs{x – x’}/c,
\end{equation}
so the retarded convolution is
\begin{equation}\label{eqn:waveEquationGreens:1300}
f(x,t) = -\frac{c}{2}
\int_{-\infty}^\infty dx’
\int_{-\infty}^{t – \Abs{x – x’}/c} dt’
g(x’, t’),
\end{equation}
and the advanced convolution is
\begin{equation}\label{eqn:waveEquationGreens:1320}
f(x,t) = -\frac{c}{2}
\int_{-\infty}^\infty dx’
\int_{t + \Abs{x – x’}/c}^\infty dt’
g(x’, t’).
\end{equation}

TODO.

Next up will be an attempt to find the 2D Green’s function, and then for good measure, we should try to find the 3D case ourselves.