Chapter 33
30 min read
Section 280 of 353

Green's Functions for Poisson's Equation

Poisson's Equation

The Big Idea: One Point at a Time

Suppose someone hands you a complicated charge distribution — a smudge of charge that varies smoothly in space, like fog. You want the electric potential ϕ(r)\phi(\mathbf{r}) it produces. The equation you must solve is Poisson's,

2ϕ(r)=f(r)\nabla^2 \phi(\mathbf{r}) = f(\mathbf{r})

and the source term f(r)f(\mathbf{r}) is whatever your physics dictates (charge density, mass density, heat sources, etc.). Solving this from scratch for every new source shape sounds painful. Here is the escape hatch.

The Green's function trick. Solve the problem once for the simplest possible source — a single mathematical "pinprick" at one point. Call that solution G(r,r)G(\mathbf{r}, \mathbf{r}'). Then any other source is just a weighted sum of pinpricks, so its potential is the corresponding weighted sum of GG's. We never have to solve the PDE again.

Think of it like the impulse response of a loudspeaker. Tap the cone once with a hammer and record the sound: that's the impulse response. Any music played through that speaker is a sum of tiny hammer-taps, so the speaker's output is the music convolved with the impulse response. The Green's function is the impulse response of the Laplacian operator. Once you know it, every Poisson problem is solved by a single integral.

Why this works: Poisson's equation is linear. If ϕ1\phi_1 solves the problem for source f1f_1 and ϕ2\phi_2 solves it for f2f_2, then ϕ1+ϕ2\phi_1 + \phi_2 solves it for f1+f2f_1 + f_2. Build any source out of point sources, and you build its potential out of point-source potentials.

The Dirac Delta: A Pinprick of Mass

What does "a point source" mean mathematically? A point source has zero size but finite total "stuff" (charge, mass, heat). No ordinary function can do this, so we use a generalized function called the Dirac delta:

δ(rr)={if r=r0otherwise,δ(rr)d3r=1\delta(\mathbf{r} - \mathbf{r}') = \begin{cases} \infty & \text{if } \mathbf{r} = \mathbf{r}' \\ 0 & \text{otherwise} \end{cases}, \qquad \int \delta(\mathbf{r} - \mathbf{r}') \, d^3r = 1

The delta is zero everywhere except at one point, and infinite there in exactly the right way that its total integral is 1. You shouldn't imagine it as a function so much as an instruction: "sample the integrand at the point r\mathbf{r}'." That's its key property, the sifting property:

f(r)δ(rr)d3r=f(r)\int f(\mathbf{r}) \, \delta(\mathbf{r} - \mathbf{r}') \, d^3r = f(\mathbf{r}')

Picture a smooth source f(r)f(\mathbf{r}) as a continuous sum (an integral) of tiny point-mass deltas:

f(r)=f(r)δ(rr)d3rf(\mathbf{r}) = \int f(\mathbf{r}') \, \delta(\mathbf{r} - \mathbf{r}') \, d^3r'

That equation reads: at every location r\mathbf{r}' in space, place a point source whose strength is f(r)f(\mathbf{r}'). The whole source field is the integral of all those point sources. This rewriting is the key that unlocks the Green's function machinery.


Defining Green's Function

The Green's function G(r,r)G(\mathbf{r}, \mathbf{r}') for the Laplacian is defined as the potential of a single unit point source located at r\mathbf{r}':

2G(r,r)=δ(rr)\nabla^2 G(\mathbf{r}, \mathbf{r}') = \delta(\mathbf{r} - \mathbf{r}')

Read out loud: "The Laplacian of G, taken with respect to r\mathbf{r}, equals a delta function spike at r\mathbf{r}'." The first argumentr\mathbf{r} is the observation point ("where am I measuring?"). The second argument r\mathbf{r}' is the source point ("where is the pinprick?").

Sign convention warning. Some books define 2G=δ\nabla^2 G = -\delta instead of +δ+\delta — these differ only in a sign on G. Always check the convention before plugging numbers. We'll use 2G=δ\nabla^2 G = \delta below; the result is G3D=1/(4πr)G_{3D} = -1/(4\pi r).

Free-Space Green's Function in 3D

For an infinite empty 3D space with no boundaries ("free space"), the Green's function only depends on the distance from the source. That gives us a beautiful closed form:

  G(r,r)=14πrr  \boxed{\; G(\mathbf{r}, \mathbf{r}') = -\frac{1}{4\pi\, |\mathbf{r} - \mathbf{r}'|} \;}

This is the most important formula in the chapter. It says: the potential of a unit point source at r\mathbf{r}', observed at r\mathbf{r}, is inversely proportional to the distance between them, with a coefficient of 1/(4π)-1/(4\pi).

Deriving the 3D Result Step by Step

The reasoning is short and worth seeing once. By translation symmetry of empty space, place the source at the origin: r=0\mathbf{r}' = 0. By rotational symmetry, GG depends only on r=rr = |\mathbf{r}|. So G=G(r)G = G(r). The Laplacian in spherical coordinates of a function of rr alone is

2G=1r2ddr ⁣(r2dGdr)=0for r>0\nabla^2 G = \frac{1}{r^2} \frac{d}{dr}\!\left( r^2 \frac{dG}{dr} \right) = 0 \quad \text{for } r > 0

(The right-hand side δ\delta is zero away from the origin.) Multiply through by r2r^2 and integrate once:

r2dGdr=C1dGdr=C1r2r^2 \frac{dG}{dr} = C_1 \quad \Longrightarrow \quad \frac{dG}{dr} = \frac{C_1}{r^2}

Integrate again:

G(r)=C1r+C2G(r) = -\frac{C_1}{r} + C_2

We set C2=0C_2 = 0 so that G0G \to 0 at infinity (a natural boundary condition for free space). Only C1C_1 is left, and we fix it by enforcing the delta. Integrate 2G=δ\nabla^2 G = \delta over a small ball of radius RR centered at the source and apply the divergence theorem:

B2GdV=SGdS=1\int_{B} \nabla^2 G \, dV = \oint_{S} \nabla G \cdot d\mathbf{S} = 1

The flux integral on the right is the surface area of the sphere (4πR24\pi R^2) times the radial derivative on the sphere (dG/dr=C1/R2dG/dr = C_1 / R^2), so

4πR2C1R2=4πC1=1C1=14π4\pi R^2 \cdot \frac{C_1}{R^2} = 4\pi C_1 = 1 \quad \Longrightarrow \quad C_1 = \frac{1}{4\pi}

Plugging back: G(r)=1/(4πr)G(r) = -1/(4\pi r). Restoring a general source location:

G(r,r)=14πrrG(\mathbf{r}, \mathbf{r}') = -\frac{1}{4\pi\, |\mathbf{r} - \mathbf{r}'|}
Three lessons baked into this derivation.
  1. The comes from the surface area of a 3D unit sphere — it's a geometric fact, not a quirk.
  2. The 1/r shape comes from solving Laplace's equation away from the source — anything radial that satisfies 2G=0\nabla^2 G = 0 off the source must look like this.
  3. The sign and the magnitude are entirely fixed by demanding that the integral of the singularity equals one. That is the only place the "delta" enters.

Green's Function in 2D

In two dimensions the geometry is different — a 2D "sphere" is a circle, whose circumference is 2πr2\pi r instead of 4πr24\pi r^2. Repeat the same derivation with the 2D Laplacian 2G=(1/r)(d/dr)(rdG/dr)=0\nabla^2 G = (1/r)(d/dr)(r\,dG/dr) = 0:

G2D(r,r)=12πlnrrG_{2D}(\mathbf{r}, \mathbf{r}') = \frac{1}{2\pi} \ln |\mathbf{r} - \mathbf{r}'|

Notice that in 2D the Green's function grows logarithmically at infinity rather than decaying to zero. That is why physicists call the 2D Poisson problem "a different beast": there is no natural "potential at infinity" to anchor against. We'll see this in the playground below — switching the toggle from 3D to 2D changes the shape of the field dramatically.

DimensionGreen's Function G(r)Behavior near sourceBehavior at infinity
1D(1/2)|x − x'|Continuous, kinkGrows linearly
2D(1/2π) ln|r − r'|Logarithmic singularityGrows logarithmically
3D−1 / (4π|r − r'|)1/r singularityDecays to 0
nD (n ≥ 3)−Γ(n/2) / [(n−2) · 2π^(n/2) · r^(n−2)]1/r^(n−2)Decays to 0

Superposition: Solving Poisson for Any Source

Here is the payoff. Given the Green's function, the solution to 2ϕ=f\nabla^2 \phi = f for any source ff is the integral

  ϕ(r)=G(r,r)f(r)d3r  \boxed{\; \phi(\mathbf{r}) = \int G(\mathbf{r}, \mathbf{r}') \, f(\mathbf{r}') \, d^3r' \;}

Let's verify this is correct. Apply the Laplacian (with respect to r\mathbf{r}) to both sides. The Laplacian passes inside the integral because the integration is over a different variable r\mathbf{r}':

2ϕ(r)=2G(r,r)f(r)d3r=δ(rr)f(r)d3r=f(r)\nabla^2 \phi(\mathbf{r}) = \int \nabla^2 G(\mathbf{r}, \mathbf{r}') \, f(\mathbf{r}') \, d^3r' = \int \delta(\mathbf{r} - \mathbf{r}') \, f(\mathbf{r}') \, d^3r' = f(\mathbf{r})

The last step used the sifting property of the delta. So ϕ\phi indeed solves Poisson's equation. We have converted a partial differential equation into a single integral that we can evaluate (analytically or numerically) for any source ff.

Analogy time. If you want to know the smell of a soup, you don't solve a diffusion PDE for every ingredient. You smell each ingredient alone (Green's function), then mentally combine — "a pinch of garlic + a dash of basil + a lot of tomato." The integral above is the recipe for "smell of the soup" from "smell of each ingredient."

Interactive: The Green's Function Playground

Click anywhere on the canvas to drop a new source. Drag the "charge" slider to set whether the next click places a + or − source and how strong. Toggle 2D vs 3D to feel the difference between lnr\ln r and 1/r1/r Green's functions. Enable field arrows to see ϕ-\nabla \phi — the direction a test charge would actually move.

Green's Function Playground
Click to drop a source. The potential is the sum of Green's functions of all sources.
What you are seeing. The colored field is ϕ(r)=iqiG(r,ri)\phi(\mathbf{r}) = \sum_i q_i\, G(\mathbf{r}, \mathbf{r}_i). Red is positive potential, blue is negative. Each click adds one term to the sum — this is superposition, the heart of why Green's functions exist.

Try this in order:

  1. Clear and place one positive source. The whole space becomes a smooth red hill — that is one Green's function.
  2. Add a negative source far away. The potential is now the sum of a red hill and a blue valley — superposition is working before your eyes.
  3. Switch from 3D to 2D. The colors look different because lnr\ln r doesn't decay — it keeps growing outward. The 2D world is "noisier" at infinity.
  4. Drop four positives in a square, then a negative in the middle. The resulting bowl-shaped potential is the kind of thing you'd compute analytically only with great pain — and it's here in one click.

Worked Example: Two Point Charges

Let's do one full computation by hand so the integral above stops being abstract. Place a unit positive source at r1=(a,0,0)\mathbf{r}_1 = (-a, 0, 0) and a unit negative at r2=(+a,0,0)\mathbf{r}_2 = (+a, 0, 0), with a=1a = 1. What is ϕ\phi at a point r=(0,2,0)\mathbf{r} = (0, 2, 0) on the y-axis?

Click to walk through the calculation by hand

Step 1. Write the source as a sum of deltas:

f(r)=(+1)δ(rr1)+(1)δ(rr2)f(\mathbf{r}') = (+1)\,\delta(\mathbf{r}' - \mathbf{r}_1) + (-1)\,\delta(\mathbf{r}' - \mathbf{r}_2)

Step 2. Apply the superposition integral ϕ(r)=G(r,r)f(r)d3r\phi(\mathbf{r}) = \int G(\mathbf{r}, \mathbf{r}') f(\mathbf{r}') d^3r'. By the sifting property each delta picks out the integrand at one location:

ϕ(r)=(+1)G(r,r1)+(1)G(r,r2)\phi(\mathbf{r}) = (+1)\, G(\mathbf{r}, \mathbf{r}_1) + (-1)\, G(\mathbf{r}, \mathbf{r}_2)

Step 3. Plug in G=1/(4πrr)G = -1/(4\pi |\mathbf{r} - \mathbf{r}'|):

ϕ(r)=14πrr1+14πrr2\phi(\mathbf{r}) = -\frac{1}{4\pi |\mathbf{r} - \mathbf{r}_1|} + \frac{1}{4\pi |\mathbf{r} - \mathbf{r}_2|}

Step 4. Compute the two distances. With r=(0,2,0)\mathbf{r} = (0, 2, 0),r1=(1,0,0)\mathbf{r}_1 = (-1, 0, 0),r2=(+1,0,0)\mathbf{r}_2 = (+1, 0, 0):

rr1=(0(1))2+(20)2=1+4=5|\mathbf{r} - \mathbf{r}_1| = \sqrt{(0-(-1))^2 + (2-0)^2} = \sqrt{1 + 4} = \sqrt{5}
rr2=(01)2+(20)2=1+4=5|\mathbf{r} - \mathbf{r}_2| = \sqrt{(0-1)^2 + (2-0)^2} = \sqrt{1 + 4} = \sqrt{5}

Step 5. Symmetric distances. So ϕ(r)=1/(4π5)+1/(4π5)=0\phi(\mathbf{r}) = -1/(4\pi\sqrt 5) + 1/(4\pi\sqrt 5) = 0. The potential is exactly zero on the entire perpendicular bisecting plane x=0x = 0. Open the playground above, place a +1 and a −1 at symmetric locations, and look at the white strip running between them — that's the zero set you just computed.

Step 6. Try an asymmetric point: r=(1,1,0)\mathbf{r} = (1, 1, 0).

rr1=(1(1))2+12=5,rr2=02+12=1|\mathbf{r} - \mathbf{r}_1| = \sqrt{(1-(-1))^2 + 1^2} = \sqrt{5}, \quad |\mathbf{r} - \mathbf{r}_2| = \sqrt{0^2 + 1^2} = 1
ϕ=14π5+14π114π(10.447)0.044\phi = -\frac{1}{4\pi\sqrt 5} + \frac{1}{4\pi \cdot 1} \approx \frac{1}{4\pi}(1 - 0.447) \approx 0.044

Positive. Makes sense — we're closer to the +1 source than to the −1 source, so the net potential leans positive. Every Poisson problem with point sources reduces to arithmetic of distances and a 1/(4π) bookkeeping factor.


Python Implementation

Time to move from pencil to silicon. Below is a complete, runnable Python program that builds a 2D slice of 3D space, places a dipole, and renders the potential as a heatmap. The explanation walks through every line — every function call, every numpy shape, every loop iteration — so you understand exactly what is happening.

Computing Poisson Potentials with Green's Functions
🐍greens_function_dipole.py
1Import numpy

We need vectorized arithmetic to evaluate the Green's function on every grid point at once. The hand formula is φ(r) = q/(4πr) at a single point; numpy lets us evaluate this for a 200×200 array of points in one expression instead of writing two nested for-loops in Python (which would be ~1000× slower).

EXAMPLE
np.linalg.norm on a (200,200,3) array returns a (200,200) array of distances in milliseconds.
2Import matplotlib

Used only for the final visualization. The mathematics doesn't need it — we could just save the array and inspect it numerically — but the heatmap is what makes the dipole 'click' visually.

4Define G_3d

This is the formula the entire chapter is built around. It takes the point where we want the potential (r), and the location of the point source (r_source). It returns G(r, r') = -1 / (4π |r - r'|). Memorize this shape — the function falls off as 1/r in 3D.

EXAMPLE
G_3d([0,0,0], [1,0,0]) returns -1/(4π) ≈ -0.0796.
11Compute the displacement r − r'

Pure subtraction. Because of numpy broadcasting, if r has shape (200,200,3) and r_source has shape (3,), the result is (200,200,3) — the displacement vector from the source to every grid point. No loop needed.

EXECUTION STATE
r.shape = (200, 200, 3)
r_source.shape = (3,)
diff.shape = (200, 200, 3)
12Distance |r − r'|

np.linalg.norm with axis=-1 reduces the last axis (the 3 spatial components) by computing sqrt(dx² + dy² + dz²). The output drops one dimension: (200,200,3) → (200,200). Each cell now holds the Euclidean distance from that grid point to the source.

EXAMPLE
At the source itself, dist is 0 — the 1/r in line 13 will blow up. Real code adds a tiny softening ε.
13Return -1 / (4π r)

The free-space Green's function. Negative sign comes from the sign convention ∇²G = δ (positive delta on the right). At the source, this is -∞; far away, it tends to 0. The 4π factor comes from the surface area of the unit sphere — see the derivation section above.

15potential_from_sources — the superposition step

This is where Green's functions earn their keep. The Poisson equation is linear, so the potential of N sources is the sum of N single-source Green's functions. Instead of re-solving the PDE for each new arrangement of charges, we evaluate the same closed-form once per source and add.

20Initialize phi as zeros

We start with a clean potential field. grid.shape[:-1] drops the trailing length-3 axis, so phi has shape (200,200) — one scalar per grid point. The loop will add a contribution from each source.

EXECUTION STATE
phi.shape = (200, 200)
21Loop over sources

zip pairs each source location r_i with its charge q_i so we can iterate them together. For our dipole, the loop runs twice: once for the +1 charge at (-0.3, 0, 0), once for the -1 charge at (0.3, 0, 0).

LOOP TRACE · 2 iterations
Iteration 1
r_i = [-0.3, 0.0, 0.0]
q_i = +1.0
phi += -(+1)*G_3d(...) means phi gets a HILL near (-0.3, 0) =
Iteration 2
r_i = [+0.3, 0.0, 0.0]
q_i = -1.0
phi += -(-1)*G_3d(...) means phi gets a VALLEY near (+0.3, 0) =
22Add q · G to the running sum

The sign convention: we are solving ∇²φ = −ρ/ε₀ for electrostatics, so the potential of a positive charge q is +q/(4πr). That's why the loop adds -q_i * G_3d (because G itself carries the minus sign). The net effect of one loop step: a +q charge creates a red 'hill', a −q charge creates a blue 'valley'.

23Return phi

After both iterations, phi(r) for every grid point r is the exact superposition φ = Σ q_i / (4π|r − r_i|). One closed-form expression, no PDE solver, no iteration. That is the entire point of Green's functions.

26Set the resolution n = 200

200 × 200 = 40,000 grid points. Coarse enough to render in a fraction of a second, fine enough that the dipole's near-field detail is visible. Try changing this to 50 (blocky) or 600 (slow but crisp) to feel the trade-off.

27Build the x coordinate axis

np.linspace(-1, 1, n) produces 200 evenly spaced values from -1 to +1. These are the x-coordinates of the columns of our grid. Same idea for y on the next line.

EXAMPLE
x[0] = -1.0, x[99] = -0.005, x[199] = 1.0.
29Build the y axis

Identical to the x axis, but for the rows.

30Tile into a 2D mesh with np.meshgrid

meshgrid takes two 1D arrays and returns two 2D arrays of the same shape, where X[i,j] = x[j] and Y[i,j] = y[i]. Now every grid cell has both its x and y coordinate available simultaneously — essential for vectorized evaluation.

EXECUTION STATE
X.shape = (200, 200)
Y.shape = (200, 200)
31Stack into 3D coordinate triples

We need the position as a 3-vector (x, y, z) to feed into G_3d. np.stack along axis=-1 glues X, Y, and a zero-array together so that grid[i, j] = [x[j], y[i], 0]. We're looking at the z = 0 plane of 3D space.

EXECUTION STATE
grid.shape = (200, 200, 3)
34Place the two source positions

A dipole: one positive source at x = -0.3 and one negative source at x = +0.3. They're separated by 0.6 units along the x-axis. This is the canonical 'electric dipole' setup whose far-field falls off as 1/r² (faster than a single 1/r charge) — a fact you'll see in the rendered heatmap.

36Their charges

Equal-magnitude, opposite-sign. The total charge is zero, so the potential decays faster than a monopole. If you change them both to +1.0, you get a 'doublet' whose potential is twice as strong as a single charge — superposition in action.

38Evaluate the potential

One function call. Under the hood: 2 sources × 200 × 200 grid points = 80,000 evaluations of 1/r, all vectorized. On a laptop this returns in well under 50 ms.

EXAMPLE
phi.min() ≈ -8.0  (near the -charge),  phi.max() ≈ +8.0  (near the +charge),  phi at the origin ≈ 0.
41Render with imshow

extent=(-1,1,-1,1) tells matplotlib the data spans x and y in [-1, 1]. origin='lower' puts y=-1 at the bottom (default would put it at the top, flipping the image). cmap='RdBu_r' is a diverging red-white-blue colormap that highlights positive vs negative potential symmetrically.

42Color bar

Adds the legend on the right so the reader can read off the actual potential value at any color. Without it, the picture is just decoration.

43Title and show

plt.show() opens the figure. In a Jupyter notebook this renders inline. The result is a textbook-perfect dipole field: red lobe on the left, blue lobe on the right, with a sharp gradient between them.

20 lines without explanation
1import numpy as np
2import matplotlib.pyplot as plt
3
4def G_3d(r, r_source):
5    """Free-space Green's function for the 3D Poisson equation.
6
7    Solves:   nabla^2 G(r, r') = delta(r - r')
8    Result:   G(r, r') = -1 / (4 * pi * |r - r'|)
9    """
10    diff = r - r_source
11    dist = np.linalg.norm(diff, axis=-1)
12    return -1.0 / (4.0 * np.pi * dist)
13
14def potential_from_sources(grid, sources, charges):
15    """Superpose Green's-function responses from many point sources.
16
17    phi(r) = - sum_i  q_i / (4 * pi * |r - r_i|)
18    """
19    phi = np.zeros(grid.shape[:-1])
20    for r_i, q_i in zip(sources, charges):
21        phi += -q_i * G_3d(grid, r_i)   # note: source term f = -q rho/eps form
22    return phi
23
24# Build a 2D slice (z = 0) of 3D space, 200 x 200 points in [-1, 1]^2
25n = 200
26x = np.linspace(-1, 1, n)
27y = np.linspace(-1, 1, n)
28X, Y = np.meshgrid(x, y)
29grid = np.stack([X, Y, np.zeros_like(X)], axis=-1)  # shape (n, n, 3)
30
31# A dipole: +1 on the left, -1 on the right
32sources = [np.array([-0.3, 0.0, 0.0]),
33           np.array([ 0.3, 0.0, 0.0])]
34charges = [+1.0, -1.0]
35
36phi = potential_from_sources(grid, sources, charges)
37
38# Plot the potential as a heatmap
39plt.imshow(phi, extent=(-1, 1, -1, 1), origin='lower', cmap='RdBu_r')
40plt.colorbar(label='phi (potential)')
41plt.title("Potential of a dipole via Green's functions")
42plt.show()
Try this: change the sources to four corners of a square (alternating signs) and you get the field of a quadrupole — the next term in the so-called multipole expansion. Each new arrangement is one new sourcessources list; the function above never changes.

Bounded Domains: The Method of Images

Free-space Green's functions handle infinite empty space. What if you need the potential above a grounded metal plane, where the boundary condition is ϕ=0\phi = 0 on the plane? The free-space Green's function does not satisfy that condition by itself.

The trick — invented by Lord Kelvin in 1848 — is breathtakingly clever. Place an imaginary mirror charge below the plane, equal and opposite to the real charge above. By symmetry, the potential of the pair vanishes on the plane. Because the image charge sits outside the physical region of interest, the differential equation in the physical region (the half-space above the plane) is unchanged. We have constructed a Green's function that automatically satisfies the boundary condition:

Ghalf-space(r,r)=14πrr+14πrrimageG_{\text{half-space}}(\mathbf{r}, \mathbf{r}') = -\frac{1}{4\pi |\mathbf{r} - \mathbf{r}'|} + \frac{1}{4\pi |\mathbf{r} - \mathbf{r}'_{\text{image}}|}

where rimage\mathbf{r}'_{\text{image}} is the reflection of r\mathbf{r}' across the plane. Two free-space Green's functions, one of them outside the domain, conspire to enforce the boundary condition.

Interactive: Charge Above a Plane

Charge Above a Grounded Plane
The image charge enforces ϕ=0\phi = 0 on the conductor by symmetry.
Toggle off the image charge to see the asymmetric, non-physical field of a lone charge. Toggle it back on: the field becomes perpendicular to the plane everywhere on it — exactly the Dirichlet boundary condition ϕ=0\phi = 0.

Slide the height. Toggle the image charge off and on. With the image off you see the asymmetric field of a single real charge — it doesn't respect the boundary. With it on, the field arrows become perpendicular to the conductor everywhere on it, which is precisely what ϕ=0\phi = 0 on a surface enforces (the tangential component of E=ϕ\mathbf{E} = -\nabla\phi must vanish on an equipotential).

The method generalizes. For two parallel planes you get an infinite chain of image charges. For a sphere there is a single image charge at the "inverse point" with a rescaled magnitude. The same idea — "build a Green's function that respects the boundary by reflecting" — solves a surprising number of textbook problems.

Properties of Green's Functions

Five facts you should internalize. They are all consequences of the definition 2G=δ\nabla^2 G = \delta and the linearity of the Laplacian.

PropertyStatementWhy it matters
Symmetry (reciprocity)G(r, r') = G(r', r)Source and observation point are interchangeable — a deep statement about time-reversibility.
Singularity at the sourceG ~ -1/(4π|r - r'|) as r → r' in 3DEncodes the delta function — the entire 'point-source' content of G lives in this singularity.
Harmonicity off the source∇²G = 0 for r ≠ r'Away from the source, G is a perfectly smooth harmonic function.
Boundary behaviorDecays to 0 at infinity (3D); grows like ln(r) at infinity (2D)Determines what 'free-space' even means in each dimension.
Linearity / superpositionG of a sum of sources = sum of G'sThe single reason Green's functions are useful at all.

Symmetry in particular is worth pausing on. It says: the potential at r\mathbf{r} due to a unit source at r\mathbf{r}' equals the potential at r\mathbf{r}' due to a unit source at r\mathbf{r}. Swap the roles of source and detector, and the answer is the same. This is called reciprocity, and it shows up everywhere: in acoustics (a microphone here hears a speaker there the same as if their roles were swapped), in seismology, in antenna theory.


Where This Shows Up

FieldWhat G representsWhat the integral computes
ElectrostaticsPotential of a unit point charge: V = q/(4πε₀ r)Total potential of a charge distribution
Newtonian gravityGravitational potential of a unit point mass: Φ = -Gm/rPotential of a mass distribution (planet, galaxy)
Heat conduction (steady)Steady temperature from a unit point heat sourceTemperature field of a distributed source
Image processingInpainting kernel — how one missing pixel propagatesReconstructed image given Laplacian constraints
Machine learningKernel of a Gaussian process / RBF basis functionSmoothed regression on scattered data
Computer graphicsSurface reconstruction from oriented points (Poisson reconstruction)Implicit surface representation
One equation, many disguises. Whenever you hear "potential of a point source," "impulse response," "fundamental solution," or "propagator," you're hearing "Green's function" in another language. The math is identical; only the physical interpretation changes.

Summary

  • A Green's function is the potential of a single point source — the impulse response of the Laplacian. Defined by 2G(r,r)=δ(rr)\nabla^2 G(\mathbf{r}, \mathbf{r}') = \delta(\mathbf{r} - \mathbf{r}').
  • In free 3D space, G=1/(4πrr)G = -1 / (4\pi |\mathbf{r} - \mathbf{r}'|) — a 1/r decay with a 4π geometric factor.
  • In free 2D space, G=(1/2π)lnrrG = (1/2\pi)\ln|\mathbf{r} - \mathbf{r}'| — a logarithmic growth, not a decay.
  • Superposition: ϕ(r)=G(r,r)f(r)d3r\phi(\mathbf{r}) = \int G(\mathbf{r}, \mathbf{r}') f(\mathbf{r}') \, d^3 r' solves 2ϕ=f\nabla^2 \phi = f for any source ff.
  • Method of images adapts free-space G's to bounded domains by reflecting source points across symmetric boundaries.
  • Green's functions satisfy reciprocity G(r,r)=G(r,r)G(\mathbf{r}, \mathbf{r}') = G(\mathbf{r}', \mathbf{r}) — a statement of fundamental physical symmetry.
  • They unify electrostatics, gravitation, steady heat flow, image inpainting, and Gaussian process regression — all are Poisson problems wearing different costumes.
Looking ahead. The next section applies all of this to electrostatics proper — capacitors, conductors, dielectric boundaries. You'll see how a Green's function written down in this section becomes Coulomb's law in disguise, and how the method of images solves real engineering problems like ground planes in printed circuit boards.
Loading comments...