โ† Part II: Magnetostatics
Chapter 6

Magnetic Vector Potential

6.1 The Vector Potential A

Since $\nabla \cdot \mathbf{B} = 0$, we can always write $\mathbf{B} = \nabla \times \mathbf{A}$for a vector potential $\mathbf{A}$. Substituting into Ampere's law:

$$\nabla \times (\nabla \times \mathbf{A}) = \mu_0 \mathbf{J}$$$$\nabla(\nabla \cdot \mathbf{A}) - \nabla^2 \mathbf{A} = \mu_0 \mathbf{J}$$

Choosing the Coulomb gauge $\nabla \cdot \mathbf{A} = 0$:

$$\boxed{\nabla^2 \mathbf{A} = -\mu_0 \mathbf{J}}$$

This is a vector Poisson equation โ€” identical in form to the scalar Poisson equation for $V$. The solution is:

$$\mathbf{A}(\mathbf{r}) = \frac{\mu_0}{4\pi}\int \frac{\mathbf{J}(\mathbf{r}')}{|\mathbf{r} - \mathbf{r}'|}\,d\tau'$$

Derivation: Existence of the Vector Potential A

Starting from $\nabla \cdot \mathbf{B} = 0$, we prove that a vector potential $\mathbf{A}$ with $\mathbf{B} = \nabla \times \mathbf{A}$ always exists.

Step 1: The mathematical theorem (Helmholtz decomposition)

Any vector field can be decomposed into a curl-free part and a divergence-free part. The Helmholtz theorem states that a divergence-free field ($\nabla \cdot \mathbf{B} = 0$) can always be written as the curl of some other vector field.

Step 2: Direct construction from Biot-Savart

From the Biot-Savart law, write $\hat{\mathscr{r}}/\mathscr{r}^2 = -\nabla(1/\mathscr{r})$:

$$\mathbf{B} = \frac{\mu_0}{4\pi}\int \mathbf{J}(\mathbf{r}') \times \frac{\hat{\mathscr{r}}}{\mathscr{r}^2}\,d\tau' = -\frac{\mu_0}{4\pi}\int \mathbf{J}(\mathbf{r}') \times \nabla\!\left(\frac{1}{\mathscr{r}}\right)d\tau'$$

Step 3: Use the product rule for curl

Since $\mathbf{J}(\mathbf{r}')$ does not depend on $\mathbf{r}$, apply $\mathbf{F} \times \nabla g = \nabla \times (g\mathbf{F}) - g(\nabla \times \mathbf{F})$. With $\nabla \times \mathbf{J}(\mathbf{r}') = 0$ (since $\mathbf{J}$ depends on $\mathbf{r}'$, not $\mathbf{r}$):

$$\mathbf{J} \times \nabla\!\left(\frac{1}{\mathscr{r}}\right) = -\nabla \times \left(\frac{\mathbf{J}}{\mathscr{r}}\right)$$

Step 4: Factor the curl out of the integral

Since the curl acts on $\mathbf{r}$ but the integration is over $\mathbf{r}'$:

$$\mathbf{B} = \frac{\mu_0}{4\pi}\nabla \times \int \frac{\mathbf{J}(\mathbf{r}')}{\mathscr{r}}\,d\tau'$$

Step 5: Identify A

This is precisely $\mathbf{B} = \nabla \times \mathbf{A}$ with:

$$\boxed{\mathbf{A}(\mathbf{r}) = \frac{\mu_0}{4\pi}\int \frac{\mathbf{J}(\mathbf{r}')}{|\mathbf{r} - \mathbf{r}'|}\,d\tau'}$$

The existence of $\mathbf{A}$ is guaranteed whenever $\nabla \cdot \mathbf{B} = 0$, which is always true in electrodynamics.

Derivation: Coulomb Gauge and Poisson's Equation for A

Starting from $\nabla \times \mathbf{B} = \mu_0\mathbf{J}$ and $\mathbf{B} = \nabla \times \mathbf{A}$, we derive the Coulomb gauge condition and Poisson's equation for $\mathbf{A}$.

Step 1: Substitute B = curl A into Ampere's law

$$\nabla \times (\nabla \times \mathbf{A}) = \mu_0 \mathbf{J}$$

Step 2: Expand using the BAC-CAB identity

The vector identity $\nabla \times (\nabla \times \mathbf{A}) = \nabla(\nabla \cdot \mathbf{A}) - \nabla^2\mathbf{A}$ gives:

$$\nabla(\nabla \cdot \mathbf{A}) - \nabla^2\mathbf{A} = \mu_0 \mathbf{J}$$

Step 3: Exploit gauge freedom

The potential $\mathbf{A}$ is not unique: if $\mathbf{A}$ works, so does $\mathbf{A}' = \mathbf{A} + \nabla\lambda$ for any scalar $\lambda$, since $\nabla \times (\nabla\lambda) = 0$. Under this transformation:

$$\nabla \cdot \mathbf{A}' = \nabla \cdot \mathbf{A} + \nabla^2\lambda$$

Step 4: Choose the Coulomb gauge

We can always find a $\lambda$ such that $\nabla^2\lambda = -\nabla \cdot \mathbf{A}$ (a Poisson equation for $\lambda$, which always has a solution). This makes:

$$\boxed{\nabla \cdot \mathbf{A} = 0} \qquad \text{(Coulomb gauge)}$$

Step 5: Simplify Ampere's law in the Coulomb gauge

With $\nabla \cdot \mathbf{A} = 0$, the first term vanishes and we obtain:

$$\boxed{\nabla^2\mathbf{A} = -\mu_0\mathbf{J}}$$

Step 6: Solution by analogy with Poisson's equation for V

This is three uncoupled scalar Poisson equations ($\nabla^2 A_x = -\mu_0 J_x$, etc.). By direct analogy with $\nabla^2 V = -\rho/\epsilon_0$ whose solution is $V = \frac{1}{4\pi\epsilon_0}\int\frac{\rho}{\mathscr{r}}\,d\tau'$, the solution is:

$$\mathbf{A}(\mathbf{r}) = \frac{\mu_0}{4\pi}\int \frac{\mathbf{J}(\mathbf{r}')}{|\mathbf{r}-\mathbf{r}'|}\,d\tau'$$

Step 7: Verify the Coulomb gauge is satisfied

Taking the divergence of $\mathbf{A}$: $\nabla \cdot \mathbf{A} = \frac{\mu_0}{4\pi}\int \mathbf{J}(\mathbf{r}') \cdot \nabla\!\left(\frac{1}{\mathscr{r}}\right)d\tau'$. Integrating by parts and using $\nabla' \cdot \mathbf{J} = 0$ (steady currents), this vanishes, confirming self-consistency.

6.1.1 Gauge Freedom

The vector potential is not unique: we can add the gradient of any scalar function$\lambda$ without changing $\mathbf{B}$:

$$\mathbf{A} \to \mathbf{A} + \nabla\lambda, \qquad V \to V - \frac{\partial\lambda}{\partial t}$$

Physical quantities ($\mathbf{E}$, $\mathbf{B}$) are gauge-invariant. Common gauge choices:

Coulomb gauge

$$\nabla \cdot \mathbf{A} = 0$$

Natural for magnetostatics and radiation

Lorenz gauge

$$\nabla \cdot \mathbf{A} + \mu_0\epsilon_0\frac{\partial V}{\partial t} = 0$$

Manifestly relativistic; best for wave equations

6.2 Magnetic Multipole Expansion

For a localized current loop, the vector potential at large distances expands as:

$$\mathbf{A}(\mathbf{r}) = \frac{\mu_0}{4\pi}\left[\frac{\mathbf{m} \times \hat{r}}{r^2} + \cdots\right]$$

The leading term is the magnetic dipole with moment:

$$\mathbf{m} = I\int d\mathbf{a} = I\mathbf{a}$$

The magnetic field of a pure magnetic dipole $\mathbf{m} = m\hat{z}$ at large distances is:

$$\mathbf{B}_{\rm dip} = \frac{\mu_0 m}{4\pi r^3}(2\cos\theta\,\hat{r} + \sin\theta\,\hat{\theta})$$

Note: there is no magnetic monopole term (since $\nabla \cdot \mathbf{B} = 0$ always). The dipole is the lowest non-vanishing term.

Derivation: Vector Potential for a Magnetic Dipole

Starting from the general expression for $\mathbf{A}$, we perform a multipole expansion for a localized current distribution viewed from far away ($r \gg r'$).

Step 1: Expand 1/|r - r'| for r >> r'

Using the standard multipole expansion of the separation distance:

$$\frac{1}{|\mathbf{r}-\mathbf{r}'|} = \frac{1}{r}\sum_{n=0}^{\infty}\left(\frac{r'}{r}\right)^n P_n(\cos\alpha)$$

where $\alpha$ is the angle between $\mathbf{r}$ and $\mathbf{r}'$, and $P_n$ are Legendre polynomials.

Step 2: Write A as a multipole series (for a line current)

For a current loop, $\mathbf{A} = \frac{\mu_0 I}{4\pi}\oint \frac{d\boldsymbol{\ell}'}{|\mathbf{r}-\mathbf{r}'|}$. Substituting the expansion:

$$\mathbf{A} = \frac{\mu_0 I}{4\pi}\sum_{n=0}^{\infty}\frac{1}{r^{n+1}}\oint (r')^n P_n(\cos\alpha)\,d\boldsymbol{\ell}'$$

Step 3: The monopole term (n = 0) vanishes

For $n = 0$: $P_0 = 1$, so the integral is $\oint d\boldsymbol{\ell}' = 0$ for any closed loop. There is no magnetic monopole contribution to $\mathbf{A}$.

Step 4: The dipole term (n = 1)

For $n = 1$: $P_1(\cos\alpha) = \cos\alpha = \hat{r}\cdot\hat{r}' = \hat{r}\cdot\mathbf{r}'/r'$. The integral becomes:

$$\mathbf{A}_{\text{dip}} = \frac{\mu_0 I}{4\pi r^2}\oint (\hat{r}\cdot\mathbf{r}')\,d\boldsymbol{\ell}'$$

Step 5: Apply the vector identity for closed loop integrals

There is a useful identity: for any closed loop, $\oint(\mathbf{c}\cdot\mathbf{r}')d\boldsymbol{\ell}' = -\mathbf{c} \times \int d\mathbf{a}' = \mathbf{a} \times \mathbf{c}$, where $\mathbf{a} = \int d\mathbf{a}'$ is the vector area of the loop. With $\mathbf{c} = \hat{r}$:

$$\oint(\hat{r}\cdot\mathbf{r}')d\boldsymbol{\ell}' = -\hat{r} \times \int d\mathbf{a}'$$

Step 6: Identify the magnetic dipole moment

Defining $\mathbf{m} = I\int d\mathbf{a}' = I\mathbf{a}$ (current times the vector area of the loop):

$$\mathbf{A}_{\text{dip}} = \frac{\mu_0 I}{4\pi r^2}(-\hat{r} \times \mathbf{a}) = \frac{\mu_0}{4\pi}\frac{\mathbf{m} \times \hat{r}}{r^2}$$

Step 7: Final result

$$\boxed{\mathbf{A}_{\text{dip}}(\mathbf{r}) = \frac{\mu_0}{4\pi}\frac{\mathbf{m} \times \hat{r}}{r^2}}$$

In spherical coordinates with $\mathbf{m} = m\hat{z}$: $\mathbf{A}_{\text{dip}} = \frac{\mu_0 m \sin\theta}{4\pi r^2}\hat{\phi}$.

Derivation: The Magnetic Dipole Moment

Starting from the definition for a current loop, we generalize the magnetic dipole moment to an arbitrary volume current distribution.

Step 1: Flat current loop

For a planar loop carrying current $I$ enclosing area $\mathbf{a}$ (vector area with direction given by the right-hand rule):

$$\mathbf{m} = I\mathbf{a} = IA\,\hat{n}$$

Step 2: Generalize to volume currents

Replace $I\,d\boldsymbol{\ell}' \to \mathbf{J}\,d\tau'$. The dipole term in the multipole expansion of $\mathbf{A}$ for a volume current is:

$$\mathbf{A}_{\text{dip}} = \frac{\mu_0}{4\pi r^2}\int (\hat{r}\cdot\mathbf{r}')\,\mathbf{J}(\mathbf{r}')\,d\tau'$$

Step 3: Use the vector identity for volume integrals

For a steady current distribution ($\nabla \cdot \mathbf{J} = 0$), one can show that:

$$\int (\mathbf{c}\cdot\mathbf{r}')\mathbf{J}\,d\tau' = -\frac{1}{2}\mathbf{c}\times\int(\mathbf{r}'\times\mathbf{J})\,d\tau'$$

for any constant vector $\mathbf{c}$. This identity requires integration by parts and the continuity equation.

Step 4: Substitute with c = r-hat

Setting $\mathbf{c} = \hat{r}$:

$$\mathbf{A}_{\text{dip}} = \frac{\mu_0}{4\pi r^2}\left(-\frac{1}{2}\hat{r}\times\int \mathbf{r}'\times\mathbf{J}\,d\tau'\right) = \frac{\mu_0}{4\pi}\frac{\mathbf{m}\times\hat{r}}{r^2}$$

Step 5: Identify the general magnetic dipole moment

$$\boxed{\mathbf{m} = \frac{1}{2}\int \mathbf{r}' \times \mathbf{J}(\mathbf{r}')\,d\tau'}$$

Step 6: Verify consistency with the loop formula

For a thin wire carrying current $I$, replace $\mathbf{J}\,d\tau' \to I\,d\boldsymbol{\ell}'$:

$$\mathbf{m} = \frac{I}{2}\oint \mathbf{r}' \times d\boldsymbol{\ell}' = I\mathbf{a}$$

since $\frac{1}{2}\oint \mathbf{r}' \times d\boldsymbol{\ell}'$ is precisely the vector area enclosed by the loop.

Derivation: Force and Torque on a Magnetic Dipole

Starting from the Lorentz force on a current loop in a non-uniform external field, we derive the torque $\mathbf{N} = \mathbf{m}\times\mathbf{B}$ and force $\mathbf{F} = \nabla(\mathbf{m}\cdot\mathbf{B})$.

Step 1: Torque on a rectangular current loop in a uniform field

Consider a rectangular loop (sides $a$ and $b$) carrying current $I$ in a uniform field $\mathbf{B}$. The forces on opposite sides are equal and opposite, but they create a couple. For sides of length $a$ perpendicular to $\mathbf{B}$, each experiences force $F = IaB$. The lever arm is $(b/2)\sin\theta$ on each side, so:

$$N = 2 \cdot IaB \cdot \frac{b}{2}\sin\theta = Iab\,B\sin\theta = mB\sin\theta$$

Step 2: Write the torque in vector form

The torque tends to align $\mathbf{m}$ with $\mathbf{B}$. In vector notation:

$$\boxed{\mathbf{N} = \mathbf{m} \times \mathbf{B}}$$

This result generalizes to any shape of loop and any orientation.

Step 3: Energy of a dipole in an external field

The work done rotating the dipole from angle $\theta_0$ to $\theta$ against the torque gives the potential energy:

$$U = -\int N\,d\theta = -mB\cos\theta = -\mathbf{m}\cdot\mathbf{B}$$

Step 4: Force from a non-uniform field

In a non-uniform field, the force is the negative gradient of the potential energy. For a rigid dipole (fixed $\mathbf{m}$):

$$\mathbf{F} = -\nabla U = \nabla(\mathbf{m}\cdot\mathbf{B})$$

Step 5: Expand using the vector identity

Using $\nabla(\mathbf{m}\cdot\mathbf{B}) = (\mathbf{m}\cdot\nabla)\mathbf{B} + \mathbf{m}\times(\nabla\times\mathbf{B}) + \cdots$. Since $\mathbf{m}$ is constant and in free space $\nabla\times\mathbf{B} = 0$ (away from free currents):

$$\mathbf{F} = (\mathbf{m}\cdot\nabla)\mathbf{B}$$

Step 6: Component form

For a dipole $\mathbf{m} = m\hat{z}$ in an axially symmetric field:

$$F_z = m\frac{\partial B_z}{\partial z}$$

$$\boxed{\mathbf{F} = \nabla(\mathbf{m}\cdot\mathbf{B})}$$

The dipole is attracted toward regions of stronger field if $\mathbf{m}$ is parallel to $\mathbf{B}$ (paramagnets), and repelled if antiparallel (diamagnets).

Simulation: Magnetic Dipole Vector Potential

Computes the vector potential $\mathbf{A}$ of a magnetic dipole, derives $\mathbf{B} = \nabla \times \mathbf{A}$numerically, and verifies against the analytic dipole field.

Vector Potential of a Magnetic Dipole

Visualizes A_y for a magnetic dipole, computes B = curl A numerically, and compares with the analytic result.

Click Run to execute the Python code

First run will download Python environment (~15MB)

Video Lectures & Demonstrations

MIT lecture on the magnetic vector potential โ€” why we need it, gauge freedom, and its role in quantum mechanics (Aharonov-Bohm effect).

Intuitive explanation of gauge invariance โ€” why adding a gradient to A doesn't change the physics, and why this freedom is deeply connected to symmetry principles.

Fortran Implementation

Fortran computation of the magnetic vector potential for an ideal solenoid โ€” a key example illustrating that $\mathbf{A}$ exists even where $\mathbf{B} = 0$ (outside the solenoid). This has profound implications in quantum mechanics through the Aharonov-Bohm effect.

Solenoid Vector Potential

Fortran

Computes the magnetic vector potential inside and outside an ideal solenoid

solenoid_vector_potential.f9038 lines

Click Run to execute the Fortran code

Code will be compiled with gfortran and executed on the server

Griffiths Problem Solutions

Video walkthroughs of Griffiths problems on potential formulations, Laplace equation in various coordinate systems, and boundary value problems.

Problem 3.13

Problem 3.14

Problem 3.15

Problem 3.16

Problem 3.17

Problem 3.18

Rate this chapter: