current density

Gauge freedom and four-potentials in the STA form of Maxwell’s equation.

March 27, 2022 math and physics play , , , , , , , , , , , , , , , , , , , , ,

[If mathjax doesn’t display properly for you, click here for a PDF of this post]

Motivation.

In a recent video on the tensor structure of Maxwell’s equation, I made a little side trip down the road of potential solutions and gauge transformations. I thought that was worth writing up in text form.

The initial point of that side trip was just to point out that the Faraday tensor can be expressed in terms of four potential coordinates
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:20}
F_{\mu\nu} = \partial_\mu A_\nu – \partial_\nu A_\mu,
\end{equation}
but before I got there I tried to motivate this. In this post, I’ll outline the same ideas.

STA representation of Maxwell’s equation.

We’d gone through the work to show that Maxwell’s equation has the STA form
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:40}
\grad F = J.
\end{equation}
This is a deceptively compact representation, as it requires all of the following definitions
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:60}
\grad = \gamma^\mu \partial_\mu = \gamma_\mu \partial^\mu,
\end{equation}
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:80}
\partial_\mu = \PD{x^\mu}{},
\end{equation}
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:100}
\gamma^\mu \cdot \gamma_\nu = {\delta^\mu}_\nu,
\end{equation}
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:160}
\gamma_\mu \cdot \gamma_\nu = g_{\mu\nu},
\end{equation}
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:120}
\begin{aligned}
F
&= \BE + I c \BB \\
&= -E^k \gamma^k \gamma^0 – \inv{2} c B^r \gamma^s \gamma^t \epsilon^{r s t} \\
&= \inv{2} \gamma^{\mu} \wedge \gamma^{\nu} F_{\mu\nu},
\end{aligned}
\end{equation}
and
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:140}
\begin{aligned}
J &= \gamma_\mu J^\mu \\
J^\mu &= \frac{\rho}{\epsilon} \gamma_0 + \eta (\BJ \cdot \Be_k).
\end{aligned}
\end{equation}

Four-potentials in the STA representation.

In order to find the tensor form of Maxwell’s equation (starting from the STA representation), we first split the equation into two, since
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:180}
\grad F = \grad \cdot F + \grad \wedge F = J.
\end{equation}
The dot product is a four-vector, the wedge term is a trivector, and the current is a four-vector, so we have one grade-1 equation and one grade-3 equation
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:200}
\begin{aligned}
\grad \cdot F &= J \\
\grad \wedge F &= 0.
\end{aligned}
\end{equation}
The potential comes into the mix, since the curl equation above means that \( F \) necessarily can be written as the curl of some four-vector
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:220}
F = \grad \wedge A.
\end{equation}
One justification of this is that \( a \wedge (a \wedge b) = 0 \), for any vectors \( a, b \). Expanding such a double-curl out in coordinates is also worthwhile
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:240}
\begin{aligned}
\grad \wedge \lr{ \grad \wedge A }
&=
\lr{ \gamma_\mu \partial^\mu }
\wedge
\lr{ \gamma_\nu \partial^\nu }
\wedge
A \\
&=
\gamma^\mu \wedge \gamma^\nu \wedge \lr{ \partial_\mu \partial_\nu A }.
\end{aligned}
\end{equation}
Provided we have equality of mixed partials, this is a product of an antisymmetric factor and a symmetric factor, so the full sum is zero.

Things get interesting if one imposes a \( \grad \cdot A = \partial_\mu A^\mu = 0 \) constraint on the potential. If we do so, then
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:260}
\grad F = \grad^2 A = J.
\end{equation}
Observe that \( \grad^2 \) is the wave equation operator (often written as a square-box symbol.) That is
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:280}
\begin{aligned}
\grad^2
&= \partial^\mu \partial_\mu \\
&= \partial_0 \partial_0
– \partial_1 \partial_1
– \partial_2 \partial_2
– \partial_3 \partial_3 \\
&= \inv{c^2} \PDSq{t}{} – \spacegrad^2.
\end{aligned}
\end{equation}
This is also an operator for which the Green’s function is well known ([1]), which means that we can immediately write the solutions
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:300}
A(x) = \int G(x,x’) J(x’) d^4 x’.
\end{equation}
However, we have no a-priori guarantee that such a solution has zero divergence. We can fix that by making a gauge transformation of the form
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:320}
A \rightarrow A – \grad \chi.
\end{equation}
Observe that such a transformation does not change the electromagnetic field
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:340}
F = \grad \wedge A \rightarrow \grad \wedge \lr{ A – \grad \chi },
\end{equation}
since
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:360}
\grad \wedge \grad \chi = 0,
\end{equation}
(also by equality of mixed partials.) Suppose that \( \tilde{A} \) is a solution of \( \grad^2 \tilde{A} = J \), and \( \tilde{A} = A + \grad \chi \), where \( A \) is a zero divergence field to be determined, then
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:380}
\grad \cdot \tilde{A}
=
\grad \cdot A + \grad^2 \chi,
\end{equation}
or
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:400}
\grad^2 \chi = \grad \cdot \tilde{A}.
\end{equation}
So if \( \tilde{A} \) does not have zero divergence, we can find a \( \chi \)
\begin{equation}\label{eqn:gaugeFreedomAndPotentialsMaxwell:420}
\chi(x) = \int G(x,x’) \grad’ \cdot \tilde{A}(x’) d^4 x’,
\end{equation}
so that \( A = \tilde{A} – \grad \chi \) does have zero divergence.

References

[1] JD Jackson. Classical Electrodynamics. John Wiley and Sons, 2nd edition, 1975.

Maxwell’s equation Lagrangian (geometric algebra and tensor formalism)

November 1, 2020 math and physics play , , , , , , , , , , , , , , , , , , , , , ,

[Click here for a PDF of this post with nicer formatting]

Maxwell’s equation using geometric algebra Lagrangian.

Motivation.

In my classical mechanics notes, I’ve got computations of Maxwell’s equation (singular in it’s geometric algebra form) from a Lagrangian in various ways (using a tensor, scalar and multivector Lagrangians), but all of these seem more convoluted than they should be.
Here we do this from scratch, starting with the action principle for field variables, covering:

  • Derivation of the relativistic form of the Euler-Lagrange field equations from the covariant form of the action,
  • Derivation of Maxwell’s equation (in it’s STA form) from the Maxwell Lagrangian,
  • Relationship of the STA Maxwell Lagrangian to the tensor equivalent,
  • Relationship of the STA form of Maxwell’s equation to it’s tensor equivalents,
  • Relationship of the STA Maxwell’s equation to it’s conventional Gibbs form.
  • Show that we may use a multivector valued Lagrangian with all of \( F^2 \), not just the scalar part.

It is assumed that the reader is thoroughly familiar with the STA formalism, and if that is not the case, there is no better reference than [1].

Field action.

Theorem 1.1: Relativistic Euler-Lagrange field equations.

Let \( \phi \rightarrow \phi + \delta \phi \) be any variation of the field, such that the variation
\( \delta \phi = 0 \) vanishes at the boundaries of the action integral
\begin{equation}\label{eqn:maxwells:2120}
S = \int d^4 x \LL(\phi, \partial_\nu \phi).
\end{equation}
The extreme value of the action is found when the Euler-Lagrange equations
\begin{equation}\label{eqn:maxwells:2140}
0 = \PD{\phi}{\LL} – \partial_\nu \PD{(\partial_\nu \phi)}{\LL},
\end{equation}
are satisfied. For a Lagrangian with multiple field variables, there will be one such equation for each field.

Start proof:

To ease the visual burden, designate the variation of the field by \( \delta \phi = \epsilon \), and perform a first order expansion of the varied Lagrangian
\begin{equation}\label{eqn:maxwells:20}
\begin{aligned}
\LL
&\rightarrow
\LL(\phi + \epsilon, \partial_\nu (\phi + \epsilon)) \\
&=
\LL(\phi, \partial_\nu \phi)
+
\PD{\phi}{\LL} \epsilon +
\PD{(\partial_\nu \phi)}{\LL} \partial_\nu \epsilon.
\end{aligned}
\end{equation}
The variation of the Lagrangian is
\begin{equation}\label{eqn:maxwells:40}
\begin{aligned}
\delta \LL
&=
\PD{\phi}{\LL} \epsilon +
\PD{(\partial_\nu \phi)}{\LL} \partial_\nu \epsilon \\
&=
\PD{\phi}{\LL} \epsilon +
\partial_\nu \lr{ \PD{(\partial_\nu \phi)}{\LL} \epsilon }

\epsilon \partial_\nu \PD{(\partial_\nu \phi)}{\LL},
\end{aligned}
\end{equation}
which we may plug into the action integral to find
\begin{equation}\label{eqn:maxwells:60}
\delta S
=
\int d^4 x \epsilon \lr{
\PD{\phi}{\LL}

\partial_\nu \PD{(\partial_\nu \phi)}{\LL}
}
+
\int d^4 x
\partial_\nu \lr{ \PD{(\partial_\nu \phi)}{\LL} \epsilon }.
\end{equation}
The last integral can be evaluated along the \( dx^\nu \) direction, leaving
\begin{equation}\label{eqn:maxwells:80}
\int d^3 x
\evalbar{ \PD{(\partial_\nu \phi)}{\LL} \epsilon }{\Delta x^\nu},
\end{equation}
where \( d^3 x = dx^\alpha dx^\beta dx^\gamma \) is the product of differentials that does not include \( dx^\nu \). By construction, \( \epsilon \) vanishes on the boundary of the action integral so \ref{eqn:maxwells:80} is zero. The action takes its extreme value when
\begin{equation}\label{eqn:maxwells:100}
0 = \delta S
=
\int d^4 x \epsilon \lr{
\PD{\phi}{\LL}

\partial_\nu \PD{(\partial_\nu \phi)}{\LL}
}.
\end{equation}
The proof is complete after noting that this must hold for all variations of the field \( \epsilon \), which means that we must have
\begin{equation}\label{eqn:maxwells:120}
0 =
\PD{\phi}{\LL}

\partial_\nu \PD{(\partial_\nu \phi)}{\LL}.
\end{equation}

End proof.

Armed with the Euler-Lagrange equations, we can apply them to the Maxwell’s equation Lagrangian, which we will claim has the following form.

Theorem 1.2: Maxwell’s equation Lagrangian.

Application of the Euler-Lagrange equations to the Lagrangian
\begin{equation}\label{eqn:maxwells:2160}
\LL = – \frac{\epsilon_0 c}{2} F \cdot F + J \cdot A,
\end{equation}
where \( F = \grad \wedge A \), yields the vector portion of Maxwell’s equation
\begin{equation}\label{eqn:maxwells:2180}
\grad \cdot F = \inv{\epsilon_0 c} J,
\end{equation}
which implies
\begin{equation}\label{eqn:maxwells:2200}
\grad F = \inv{\epsilon_0 c} J.
\end{equation}
This is Maxwell’s equation.

Start proof:

We wish to apply all of the Euler-Lagrange equations simultaneously (i.e. once for each of the four \(A_\mu\) components of the potential), and cast it into four-vector form
\begin{equation}\label{eqn:maxwells:140}
0 = \gamma_\nu \lr{ \PD{A_\nu}{} – \partial_\mu \PD{(\partial_\mu A_\nu)}{} } \LL.
\end{equation}
Since our Lagrangian splits nicely into kinetic and interaction terms, this gives us
\begin{equation}\label{eqn:maxwells:160}
0 = \gamma_\nu \lr{ \PD{A_\nu}{(A \cdot J)} + \frac{\epsilon_0 c}{2} \partial_\mu \PD{(\partial_\mu A_\nu)}{ (F \cdot F)} }.
\end{equation}
The interaction term above is just
\begin{equation}\label{eqn:maxwells:180}
\gamma_\nu \PD{A_\nu}{(A \cdot J)}
=
\gamma_\nu \PD{A_\nu}{(A_\mu J^\mu)}
=
\gamma_\nu J^\nu
=
J,
\end{equation}
but the kinetic term takes a bit more work. Let’s start with evaluating
\begin{equation}\label{eqn:maxwells:200}
\begin{aligned}
\PD{(\partial_\mu A_\nu)}{ (F \cdot F)}
&=
\PD{(\partial_\mu A_\nu)}{ F } \cdot F
+
F \cdot \PD{(\partial_\mu A_\nu)}{ F } \\
&=
2 \PD{(\partial_\mu A_\nu)}{ F } \cdot F \\
&=
2 \PD{(\partial_\mu A_\nu)}{ (\partial_\alpha A_\beta) } \lr{ \gamma^\alpha \wedge \gamma^\beta } \cdot F \\
&=
2 \lr{ \gamma^\mu \wedge \gamma^\nu } \cdot F.
\end{aligned}
\end{equation}
We hit this with the \(\mu\)-partial and expand as a scalar selection to find
\begin{equation}\label{eqn:maxwells:220}
\begin{aligned}
\partial_\mu \PD{(\partial_\mu A_\nu)}{ (F \cdot F)}
&=
2 \lr{ \partial_\mu \gamma^\mu \wedge \gamma^\nu } \cdot F \\
&=
– 2 (\gamma^\nu \wedge \grad) \cdot F \\
&=
– 2 \gpgradezero{ (\gamma^\nu \wedge \grad) F } \\
&=
– 2 \gpgradezero{ \gamma^\nu \grad F – \gamma^\nu \cdot \grad F } \\
&=
– 2 \gamma^\nu \cdot \lr{ \grad \cdot F }.
\end{aligned}
\end{equation}
Putting all the pieces together yields
\begin{equation}\label{eqn:maxwells:240}
0
= J – \epsilon_0 c \gamma_\nu \lr{ \gamma^\nu \cdot \lr{ \grad \cdot F } }
= J – \epsilon_0 c \lr{ \grad \cdot F },
\end{equation}
but
\begin{equation}\label{eqn:maxwells:260}
\begin{aligned}
\grad \cdot F
&=
\grad F – \grad \wedge F \\
&=
\grad F – \grad \wedge (\grad \wedge A) \\
&=
\grad F,
\end{aligned}
\end{equation}
so the multivector field equations for this Lagrangian are
\begin{equation}\label{eqn:maxwells:280}
\grad F = \inv{\epsilon_0 c} J,
\end{equation}
as claimed.

End proof.

Problem: Correspondence with tensor formalism.

Cast the Lagrangian of \ref{eqn:maxwells:2160} into the conventional tensor form
\begin{equation}\label{eqn:maxwells:300}
\LL = \frac{\epsilon_0 c}{4} F_{\mu\nu} F^{\mu\nu} + A^\mu J_\mu.
\end{equation}
Also show that the four-vector component of Maxwell’s equation \( \grad \cdot F = J/(\epsilon_0 c) \) is equivalent to the conventional tensor form of the Gauss-Ampere law
\begin{equation}\label{eqn:maxwells:320}
\partial_\mu F^{\mu\nu} = \inv{\epsilon_0 c} J^\nu,
\end{equation}
where \( F^{\mu\nu} = \partial^\mu A^\nu – \partial^\nu A^\mu \) as usual. Also show that the trivector component of Maxwell’s equation \( \grad \wedge F = 0 \) is equivalent to the tensor form of the Gauss-Faraday law
\begin{equation}\label{eqn:maxwells:340}
\partial_\alpha \lr{ \epsilon^{\alpha \beta \mu \nu} F_{\mu\nu} } = 0.
\end{equation}

Answer

To show the Lagrangian correspondence we must expand \( F \cdot F \) in coordinates
\begin{equation}\label{eqn:maxwells:360}
\begin{aligned}
F \cdot F
&=
( \grad \wedge A ) \cdot
( \grad \wedge A ) \\
&=
\lr{ (\gamma^\mu \partial_\mu) \wedge (\gamma^\nu A_\nu) }
\cdot
\lr{ (\gamma^\alpha \partial_\alpha) \wedge (\gamma^\beta A_\beta) } \\
&=
\lr{ \gamma^\mu \wedge \gamma^\nu } \cdot \lr{ \gamma_\alpha \wedge \gamma_\beta }
(\partial_\mu A_\nu )
(\partial^\alpha A^\beta ) \\
&=
\lr{
{\delta^\mu}_\beta
{\delta^\nu}_\alpha

{\delta^\mu}_\alpha
{\delta^\nu}_\beta
}
(\partial_\mu A_\nu )
(\partial^\alpha A^\beta ) \\
&=
– \partial_\mu A_\nu \lr{
\partial^\mu A^\nu

\partial^\nu A^\mu
} \\
&=
– \partial_\mu A_\nu F^{\mu\nu} \\
&=
– \inv{2} \lr{
\partial_\mu A_\nu F^{\mu\nu}
+
\partial_\nu A_\mu F^{\nu\mu}
} \\
&=
– \inv{2} \lr{
\partial_\mu A_\nu

\partial_\nu A_\mu
}
F^{\mu\nu} \\
&=

\inv{2}
F_{\mu\nu}
F^{\mu\nu}.
\end{aligned}
\end{equation}
With a substitution of this and \( A \cdot J = A_\mu J^\mu \) back into the Lagrangian, we recover the tensor form of the Lagrangian.

To recover the tensor form of Maxwell’s equation, we first split it into vector and trivector parts
\begin{equation}\label{eqn:maxwells:1580}
\grad \cdot F + \grad \wedge F = \inv{\epsilon_0 c} J.
\end{equation}
Now the vector component may be expanded in coordinates by dotting both sides with \( \gamma^\nu \) to find
\begin{equation}\label{eqn:maxwells:1600}
\inv{\epsilon_0 c} \gamma^\nu \cdot J = J^\nu,
\end{equation}
and
\begin{equation}\label{eqn:maxwells:1620}
\begin{aligned}
\gamma^\nu \cdot
\lr{ \grad \cdot F }
&=
\partial_\mu \gamma^\nu \cdot \lr{ \gamma^\mu \cdot \lr{ \gamma_\alpha \wedge \gamma_\beta } \partial^\alpha A^\beta } \\
&=
\lr{
{\delta^\mu}_\alpha
{\delta^\nu}_\beta

{\delta^\nu}_\alpha
{\delta^\mu}_\beta
}
\partial_\mu
\partial^\alpha A^\beta \\
&=
\partial_\mu
\lr{
\partial^\mu A^\nu

\partial^\nu A^\mu
} \\
&=
\partial_\mu F^{\mu\nu}.
\end{aligned}
\end{equation}
Equating \ref{eqn:maxwells:1600} and \ref{eqn:maxwells:1620} finishes the first part of the job. For the trivector component, we have
\begin{equation}\label{eqn:maxwells:1640}
0
= \grad \wedge F
= (\gamma^\mu \partial_\mu) \wedge \lr{ \gamma^\alpha \wedge \gamma^\beta } \partial_\alpha A_\beta
= \inv{2} (\gamma^\mu \partial_\mu) \wedge \lr{ \gamma^\alpha \wedge \gamma^\beta } F_{\alpha \beta}.
\end{equation}
Wedging with \( \gamma^\tau \) and then multiplying by \( -2 I \) we find
\begin{equation}\label{eqn:maxwells:1660}
0 = – \lr{ \gamma^\mu \wedge \gamma^\alpha \wedge \gamma^\beta \wedge \gamma^\tau } I \partial_\mu F_{\alpha \beta},
\end{equation}
but
\begin{equation}\label{eqn:maxwells:1680}
\gamma^\mu \wedge \gamma^\alpha \wedge \gamma^\beta \wedge \gamma^\tau = -I \epsilon^{\mu \alpha \beta \tau},
\end{equation}
which leaves us with
\begin{equation}\label{eqn:maxwells:1700}
\epsilon^{\mu \alpha \beta \tau} \partial_\mu F_{\alpha \beta} = 0,
\end{equation}
as expected.

Problem: Correspondence of tensor and Gibbs forms of Maxwell’s equations.

Given the identifications

\begin{equation}\label{eqn:lorentzForceCovariant:1500}
F^{k0} = E^k,
\end{equation}
and
\begin{equation}\label{eqn:lorentzForceCovariant:1520}
F^{rs} = -\epsilon^{rst} B^t,
\end{equation}
and
\begin{equation}\label{eqn:maxwells:1560}
J^\mu = \lr{ c \rho, \BJ },
\end{equation}
the reader should satisfy themselves that the traditional Gibbs form of Maxwell’s equations can be recovered from \ref{eqn:maxwells:320}.

Answer

The reader is referred to Exercise 3.4 “Electrodynamics, variational principle.” from [2].

Problem: Correspondence with grad and curl form of Maxwell’s equations.

With \( J = c \rho \gamma_0 + J^k \gamma_k \) and \( F = \BE + I c \BB \) show that Maxwell’s equation, as stated in \ref{eqn:maxwells:2200} expand to the conventional div and curl expressions for Maxwell’s equations.

Answer

To obtain Maxwell’s equations in their traditional vector forms, we pre-multiply both sides with \( \gamma_0 \)
\begin{equation}\label{eqn:maxwells:1720}
\gamma_0 \grad F = \inv{\epsilon_0 c} \gamma_0 J,
\end{equation}
and then select each grade separately. First observe that the RHS above has scalar and bivector components, as
\begin{equation}\label{eqn:maxwells:1740}
\gamma_0 J
=
c \rho + J^k \gamma_0 \gamma_k.
\end{equation}
In terms of the spatial bivector basis \( \Be_k = \gamma_k \gamma_0 \), the RHS of \ref{eqn:maxwells:1720} is
\begin{equation}\label{eqn:maxwells:1760}
\gamma_0 \frac{J}{\epsilon_0 c} = \frac{\rho}{\epsilon_0} – \mu_0 c \BJ.
\end{equation}
For the LHS, first note that
\begin{equation}\label{eqn:maxwells:1780}
\begin{aligned}
\gamma_0 \grad
&=
\gamma_0
\lr{
\gamma_0 \partial^0 +
\gamma_k \partial^k
} \\
&=
\partial_0 – \gamma_0 \gamma_k \partial_k \\
&=
\inv{c} \PD{t}{} + \spacegrad.
\end{aligned}
\end{equation}
We can express all the the LHS of \ref{eqn:maxwells:1720} in the bivector spatial basis, so that Maxwell’s equation in multivector form is
\begin{equation}\label{eqn:maxwells:1800}
\lr{ \inv{c} \PD{t}{} + \spacegrad } \lr{ \BE + I c \BB } = \frac{\rho}{\epsilon_0} – \mu_0 c \BJ.
\end{equation}
Selecting the scalar, vector, bivector, and trivector grades of both sides (in the spatial basis) gives the following set of respective equations
\begin{equation}\label{eqn:maxwells:1840}
\spacegrad \cdot \BE = \frac{\rho}{\epsilon_0}
\end{equation}
\begin{equation}\label{eqn:maxwells:1860}
\inv{c} \partial_t \BE + I c \spacegrad \wedge \BB = – \mu_0 c \BJ
\end{equation}
\begin{equation}\label{eqn:maxwells:1880}
\spacegrad \wedge \BE + I \partial_t \BB = 0
\end{equation}
\begin{equation}\label{eqn:maxwells:1900}
I c \spacegrad \cdot B = 0,
\end{equation}
which we can rewrite after some duality transformations (and noting that \( \mu_0 \epsilon_0 c^2 = 1 \)), we have
\begin{equation}\label{eqn:maxwells:1940}
\spacegrad \cdot \BE = \frac{\rho}{\epsilon_0}
\end{equation}
\begin{equation}\label{eqn:maxwells:1960}
\spacegrad \cross \BB – \mu_0 \epsilon_0 \PD{t}{\BE} = \mu_0 \BJ
\end{equation}
\begin{equation}\label{eqn:maxwells:1980}
\spacegrad \cross \BE + \PD{t}{\BB} = 0
\end{equation}
\begin{equation}\label{eqn:maxwells:2000}
\spacegrad \cdot B = 0,
\end{equation}
which are Maxwell’s equations in their traditional form.

Problem: Alternative multivector Lagrangian.

Show that a scalar+pseudoscalar Lagrangian of the following form
\begin{equation}\label{eqn:maxwells:2220}
\LL = – \frac{\epsilon_0 c}{2} F^2 + J \cdot A,
\end{equation}
which omits the scalar selection of the Lagrangian in \ref{eqn:maxwells:2160}, also represents Maxwell’s equation. Discuss the scalar and pseudoscalar components of \( F^2 \), and show why the pseudoscalar inclusion is irrelevant.

Answer

The quantity \( F^2 = F \cdot F + F \wedge F \) has both scalar and pseudoscalar
components. Note that unlike vectors, a bivector wedge in 4D with itself need not be zero (example: \( \gamma_0 \gamma_1 + \gamma_2 \gamma_3 \) wedged with itself).
We can see this multivector nature nicely by expansion in terms of the electric and magnetic fields
\begin{equation}\label{eqn:maxwells:2020}
\begin{aligned}
F^2
&= \lr{ \BE + I c \BB }^2 \\
&= \BE^2 – c^2 \BB^2 + I c \lr{ \BE \BB + \BB \BE } \\
&= \BE^2 – c^2 \BB^2 + 2 I c \BE \cdot \BB.
\end{aligned}
\end{equation}
Both the scalar and pseudoscalar parts of \( F^2 \) are Lorentz invariant, a requirement of our Lagrangian, but most Maxwell equation Lagrangians only include the scalar \( \BE^2 – c^2 \BB^2 \) component of the field square. If we allow the Lagrangian to be multivector valued, and evaluate the Euler-Lagrange equations, we quickly find the same results
\begin{equation}\label{eqn:maxwells:2040}
\begin{aligned}
0
&= \gamma_\nu \lr{ \PD{A_\nu}{} – \partial_\mu \PD{(\partial_\mu A_\nu)}{} } \LL \\
&= \gamma_\nu \lr{ J^\nu + \frac{\epsilon_0 c}{2} \partial_\mu
\lr{
(\gamma^\mu \wedge \gamma^\nu) F
+
F (\gamma^\mu \wedge \gamma^\nu)
}
}.
\end{aligned}
\end{equation}
Here some steps are skipped, building on our previous scalar Euler-Lagrange evaluation experience. We have a symmetric product of two bivectors, which we can express as a 0,4 grade selection, since
\begin{equation}\label{eqn:maxwells:2060}
\gpgrade{ X F }{0,4} = \inv{2} \lr{ X F + F X },
\end{equation}
for any two bivectors \( X, F \). This leaves
\begin{equation}\label{eqn:maxwells:2080}
\begin{aligned}
0
&= J + \epsilon_0 c \gamma_\nu \gpgrade{ (\grad \wedge \gamma^\nu) F }{0,4} \\
&= J + \epsilon_0 c \gamma_\nu \gpgrade{ -\gamma^\nu \grad F + (\gamma^\nu \cdot \grad) F }{0,4} \\
&= J + \epsilon_0 c \gamma_\nu \gpgrade{ -\gamma^\nu \grad F }{0,4} \\
&= J – \epsilon_0 c \gamma_\nu
\lr{
\gamma^\nu \cdot \lr{ \grad \cdot F } + \gamma^\nu \wedge \grad \wedge F
}.
\end{aligned}
\end{equation}
However, since \( \grad \wedge F = \grad \wedge \grad \wedge A = 0 \), we see that there is no contribution from the \( F \wedge F \) pseudoscalar component of the Lagrangian, and we are left with
\begin{equation}\label{eqn:maxwells:2100}
\begin{aligned}
0
&= J – \epsilon_0 c (\grad \cdot F) \\
&= J – \epsilon_0 c \grad F,
\end{aligned}
\end{equation}
which is Maxwell’s equation, as before.

References

[1] C. Doran and A.N. Lasenby. Geometric algebra for physicists. Cambridge University Press New York, Cambridge, UK, 1st edition, 2003.

[2] Peeter Joot. Quantum field theory. Kindle Direct Publishing, 2018.

Generalizing Ampere’s law using geometric algebra.

March 16, 2018 math and physics play , , , , , , , , , , , , , , , , , , , ,

[Click here for a PDF of this post with nicer formatting, and oriented integrals. All oriented integrals in this post have a clockwise direction.].

The question I’d like to explore in this post is how Ampere’s law, the relationship between the line integral of the magnetic field to current (i.e. the enclosed current)
\begin{equation}\label{eqn:flux:20}
\oint_{\partial A} d\Bx \cdot \BH = -\int_A \ncap \cdot \BJ,
\end{equation}
generalizes to geometric algebra where Maxwell’s equations for a statics configuration (all time derivatives zero) is
\begin{equation}\label{eqn:flux:40}
\spacegrad F = J,
\end{equation}
where the multivector fields and currents are
\begin{equation}\label{eqn:flux:60}
\begin{aligned}
F &= \BE + I \eta \BH \\
J &= \eta \lr{ c \rho – \BJ } + I \lr{ c \rho_\txtm – \BM }.
\end{aligned}
\end{equation}
Here (fictitious) the magnetic charge and current densities that can be useful in antenna theory have been included in the multivector current for generality.

My presumption is that it should be possible to utilize the fundamental theorem of geometric calculus for expressing the integral over an oriented surface to its boundary, but applied directly to Maxwell’s equation. That integral theorem has the form
\begin{equation}\label{eqn:flux:80}
\int_A d^2 \Bx \boldpartial F = \oint_{\partial A} d\Bx F,
\end{equation}
where \( d^2 \Bx = d\Ba \wedge d\Bb \) is a two parameter bivector valued surface, and \( \boldpartial \) is vector derivative, the projection of the gradient onto the tangent space. I won’t try to explain all of geometric calculus here, and refer the interested reader to [1], which is an excellent reference on geometric calculus and integration theory.

The gotcha is that we actually want a surface integral with \( \spacegrad F \). We can split the gradient into the vector derivative a normal component
\begin{equation}\label{eqn:flux:160}
\spacegrad = \boldpartial + \ncap (\ncap \cdot \spacegrad),
\end{equation}
so
\begin{equation}\label{eqn:flux:100}
\int_A d^2 \Bx \spacegrad F
=
\int_A d^2 \Bx \boldpartial F
+
\int_A d^2 \Bx \ncap \lr{ \ncap \cdot \spacegrad } F,
\end{equation}
so
\begin{equation}\label{eqn:flux:120}
\begin{aligned}
\oint_{\partial A} d\Bx F
&=
\int_A d^2 \Bx \lr{ J – \ncap \lr{ \ncap \cdot \spacegrad } F } \\
&=
\int_A dA \lr{ I \ncap J – \lr{ \ncap \cdot \spacegrad } I F }
\end{aligned}
\end{equation}

This is not nearly as nice as the magnetic flux relationship which was nicely split with the current and fields nicely separated. The \( d\Bx F \) product has all possible grades, as does the \( d^2 \Bx J \) product (in general). Observe however, that the normal term on the right has only grades 1,2, so we can split our line integral relations into pairs with and without grade 1,2 components
\begin{equation}\label{eqn:flux:140}
\begin{aligned}
\oint_{\partial A} \gpgrade{d\Bx F}{0,3}
&=
\int_A dA \gpgrade{ I \ncap J }{0,3} \\
\oint_{\partial A} \gpgrade{d\Bx F}{1,2}
&=
\int_A dA \lr{ \gpgrade{ I \ncap J }{1,2} – \lr{ \ncap \cdot \spacegrad } I F }.
\end{aligned}
\end{equation}

Let’s expand these explicitly in terms of the component fields and densities to check against the conventional relationships, and see if things look right. The line integrand expands to
\begin{equation}\label{eqn:flux:180}
\begin{aligned}
d\Bx F
&=
d\Bx \lr{ \BE + I \eta \BH }
=
d\Bx \cdot \BE + I \eta d\Bx \cdot \BH
+
d\Bx \wedge \BE + I \eta d\Bx \wedge \BH \\
&=
d\Bx \cdot \BE
– \eta (d\Bx \cross \BH)
+ I (d\Bx \cross \BE )
+ I \eta (d\Bx \cdot \BH),
\end{aligned}
\end{equation}
the current integrand expands to
\begin{equation}\label{eqn:flux:200}
\begin{aligned}
I \ncap J
&=
I \ncap
\lr{
\frac{\rho}{\epsilon} – \eta \BJ + I \lr{ c \rho_\txtm – \BM }
} \\
&=
\ncap I \frac{\rho}{\epsilon} – \eta \ncap I \BJ – \ncap c \rho_\txtm + \ncap \BM \\
&=
\ncap \cdot \BM
+ \eta (\ncap \cross \BJ)
– \ncap c \rho_\txtm
+ I (\ncap \cross \BM)
+ \ncap I \frac{\rho}{\epsilon}
– \eta I (\ncap \cdot \BJ).
\end{aligned}
\end{equation}

We are left with
\begin{equation}\label{eqn:flux:220}
\begin{aligned}
\oint_{\partial A}
\lr{
d\Bx \cdot \BE + I \eta (d\Bx \cdot \BH)
}
&=
\int_A dA
\lr{
\ncap \cdot \BM – \eta I (\ncap \cdot \BJ)
} \\
\oint_{\partial A}
\lr{
– \eta (d\Bx \cross \BH)
+ I (d\Bx \cross \BE )
}
&=
\int_A dA
\lr{
\eta (\ncap \cross \BJ)
– \ncap c \rho_\txtm
+ I (\ncap \cross \BM)
+ \ncap I \frac{\rho}{\epsilon}
-\PD{n}{} \lr{ I \BE – \eta \BH }
}.
\end{aligned}
\end{equation}
This is a crazy mess of dots, crosses, fields and sources. We can split it into one equation for each grade, which will probably look a little more regular. That is
\begin{equation}\label{eqn:flux:240}
\begin{aligned}
\oint_{\partial A} d\Bx \cdot \BE &= \int_A dA \ncap \cdot \BM \\
\oint_{\partial A} d\Bx \cross \BH
&=
\int_A dA
\lr{
– \ncap \cross \BJ
+ \frac{ \ncap \rho_\txtm }{\mu}
– \PD{n}{\BH}
} \\
\oint_{\partial A} d\Bx \cross \BE &=
\int_A dA
\lr{
\ncap \cross \BM
+ \frac{\ncap \rho}{\epsilon}
– \PD{n}{\BE}
} \\
\oint_{\partial A} d\Bx \cdot \BH &= -\int_A dA \ncap \cdot \BJ \\
\end{aligned}
\end{equation}
The first and last equations could have been obtained much more easily from Maxwell’s equations in their conventional form more easily. The two cross product equations with the normal derivatives are not familiar to me, even without the fictitious magnetic sources. It is somewhat remarkable that so much can be packed into one multivector equation:
\begin{equation}\label{eqn:flux:260}
\oint_{\partial A} d\Bx F
=
I \int_A dA \lr{ \ncap J – \PD{n}{F} }.
\end{equation}

References

[1] A. Macdonald. Vector and Geometric Calculus. CreateSpace Independent Publishing Platform, 2012.

Magnetostatic force and torque

October 18, 2016 math and physics play , , , , , , ,

[Click here for a PDF of this post with nicer formatting]

In Jackson [1], the following equations for the vector potential, magnetostatic force and torque are derived

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:20}
\Bm = \inv{2} \int \Bx’ \cross \BJ(\Bx’) d^3 x’
\end{equation}
\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:40}
\BF = \spacegrad( \Bm \cdot \BB ),
\end{equation}
\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:60}
\BN = \Bm \cross \BB,
\end{equation}

where \( \BB \) is an applied external magnetic field and \( \Bm \) is the magnetic dipole for the current in question. These results (and a similar one derived earlier for the vector potential \( \BA \)) all follow from
an analysis of localized current densities \( \BJ \), evaluated far enough away from the current sources.

For the force and torque, the starting point for the force is one that had me puzzled a bit. Namely

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:80}
\BF = \int \BJ(\Bx) \cross \BB(\Bx) d^3 x
\end{equation}

This is clearly the continuum generalization of the point particle Lorentz force equation, which for \( \BE = 0 \) is:

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:100}
\BF = q \Bv \cross \BB
\end{equation}

For the point particle, this is the force on the particle when it is in the external field \( BB \). i.e. this is the force at the position of the particle. My question is what does it mean to sum all the forces on the charge distribution over all space.
How can a force be applied over all, as opposed to a force applied at a single point, or against a surface?

In the special case of a localized current density, this makes some sense. Considering the other half of the force equation \( \BF = \ddt{}\int \rho_m \Bv dV \), where \( \rho_m \) here is mass density of the charged particles making up the continuous current distribution. The other half of this \( \BF = m\Ba \) equation is also an average phenomena, so we have an average of sorts on both the field contribution to the force equation and the mass contribution to the force equation. There is probably a centre-of-mass and centre-of-current density interpretation that would make a bit more sense of this continuum force description.

It’s kind of funny how you can work through all the detailed mathematical steps in a book like Jackson, but then go right back to the beginning and say “Hey, what does that even mean”?

Force

Moving on from the pondering of the meaning of the equation being manipulated, let’s do the easy part, the derivation of the results that Jackson comes up with.

Writing out \ref{eqn:magnetostaticsJacksonNotesForceAndTorque:80} in coordinates

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:320}
\BF = \epsilon_{ijk} \Be_i \int J_j B_k d^3 x.
\end{equation}

To first order, a slowly varying (external) magnetic field can be expanded around a point of interest

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:120}
\BB(\Bx) = \BB(\Bx_0) + \lr{ \Bx – \Bx_0 } \cdot \spacegrad \BB,
\end{equation}

where the directional derivative is evaluated at the point \( \Bx_0 \) after the gradient operation. Setting the origin at this point \( \Bx_0 \) gives

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:340}
\begin{aligned}
\BF
&= \epsilon_{ijk} \Be_i
\lr{
\int J_j(\Bx’) B_k(0) d^3 x’
+
\int J_j(\Bx’) (\Bx’ \cdot \spacegrad) B_k(0) d^3 x’
} \\
&=
\epsilon_{ijk} \Be_i
\Bk_0 \int J_j(\Bx’) d^3 x’
+
\epsilon_{ijk} \Be_i
\int J_j(\Bx’) (\Bx’ \cdot \spacegrad) B_k(0) d^3 x’.
\end{aligned}
\end{equation}

We found

earlier
that the first integral can be written as a divergence

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:140}
\int J_j(\Bx’) d^3 x’
=
\int \spacegrad’ \cdot \lr{ \BJ(\Bx’) x_j’ } dV’,
\end{equation}

which is zero when the integration surface is outside of the current localization region. We also found

that

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:160}
\int (\Bx \cdot \Bx’) \BJ
= -\inv{2} \Bx \cross \int \Bx’ \cross \BJ = \Bm \cross \Bx.
\end{equation}

so
\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:180}
\begin{aligned}
\int (\spacegrad B_k(0) \cdot \Bx’) J_j
&= -\inv{2} \lr{ \spacegrad B_k(0) \cross \int \Bx’ \cross \BJ}_j \\
&= \lr{ \Bm \cross (\spacegrad B_k(0)) }_j.
\end{aligned}
\end{equation}

This gives

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:200}
\begin{aligned}
\BF
&= \epsilon_{ijk} \Be_i \lr{ \Bm \cross (\spacegrad B_k(0)) }_j \\
&= \epsilon_{ijk} \Be_i \lr{ \Bm \cross \spacegrad }_j B_k(0) \\
&= (\Bm \cross \spacegrad) \cross \BB(0) \\
&= -\BB(0) \cross (\Bm \cross \lspacegrad) \\
&= (\BB(0) \cdot \Bm) \lspacegrad – (\BB \cdot \lspacegrad) \Bm \\
&= \spacegrad (\BB(0) \cdot \Bm) – \Bm (\spacegrad \cdot \BB(0)).
\end{aligned}
\end{equation}

The second term is killed by the magnetic Gauss’s law, leaving to first order

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:220}
\BF = \spacegrad \lr{\Bm \cdot \BB}.
\end{equation}

Torque

For the torque we have a similar quandary at the starting point. About what point is a continuum torque integral of the following form

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:240}
\BN = \int \Bx’ \cross (\BJ(\Bx’) \cross \BB(\Bx’)) d^3 x’?
\end{equation}

Ignoring that detail again, assuming the answer has something to do with the centre of mass and parallel axis theorem, we can proceed with a constant approximation of the magnetic field

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:260}
\begin{aligned}
\BN
&= \int \Bx’ \cross (\BJ(\Bx’) \cross \BB(0)) d^3 x’ \\
&=
-\int (\Bx’ \cdot \BJ(\Bx’)) \BB(0) d^3 x’
+\int (\Bx’ \cdot \BB(0)) \BJ(\Bx’) d^3 x’ \\
&=
-\BB(0) \int (\Bx’ \cdot \BJ(\Bx’)) d^3 x’
+\int (\Bx’ \cdot \BB(0)) \BJ(\Bx’) d^3 x’.
\end{aligned}
\end{equation}

Jackson’s trick for killing the first integral is to transform it into a divergence by evaluating

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:280}
\begin{aligned}
\spacegrad \cdot \lr{ \BJ \Abs{\Bx}^2 }
&=
(\spacegrad \cdot \BJ) \Abs{\Bx}^2
+
\BJ \cdot \spacegrad \Abs{\Bx}^2 \\
&=
\BJ \cdot \Be_i \partial_i x_m x_m \\
&=
2 \BJ \cdot \Be_i \delta_{im} x_m \\
&=
2 \BJ \cdot \Bx,
\end{aligned}
\end{equation}

so

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:300}
\begin{aligned}
\BN
&=
-\inv{2} \BB(0) \int \spacegrad’ \cdot \lr{ \BJ(\Bx’) \Abs{\Bx’}^2 } d^3 x’
+\int (\Bx’ \cdot \BB(0)) \BJ(\Bx’) d^3 x’ \\
&=
-\inv{2} \BB(0) \oint \Bn \cdot \lr{ \BJ(\Bx’) \Abs{\Bx’}^2 } d^3 x’
+\int (\Bx’ \cdot \BB(0)) \BJ(\Bx’) d^3 x’.
\end{aligned}
\end{equation}

Again, the localized current density assumption kills the surface integral. The second integral can be evaluated with \ref{eqn:magnetostaticsJacksonNotesForceAndTorque:160}, so to first order we have

\begin{equation}\label{eqn:magnetostaticsJacksonNotesForceAndTorque:360}
\BN
=
\Bm \cross \BB.
\end{equation}

References

[1] JD Jackson. Classical Electrodynamics. John Wiley and Sons, 2nd edition, 1975.

Green’s function inversion of the magnetostatic equation

September 27, 2016 math and physics play , , , , , , , , ,

[Click here for a PDF of this post with nicer formatting]

A previous example of inverting a gradient equation was the electrostatics equation. We can do the same for the magnetostatics equation, which has the following Geometric Algebra form in linear media

\begin{equation}\label{eqn:biotSavartGreens:20}
\spacegrad I \BB = – \mu \BJ.
\end{equation}

The Green’s inversion of this is
\begin{equation}\label{eqn:biotSavartGreens:40}
\begin{aligned}
I \BB(\Bx)
&= \int_V dV’ G(\Bx, \Bx’) \spacegrad’ I \BB(\Bx’) \\
&= \int_V dV’ G(\Bx, \Bx’) (-\mu \BJ(\Bx’)) \\
&= \inv{4\pi} \int_V dV’ \frac{\Bx – \Bx’}{ \Abs{\Bx – \Bx’}^3 } (-\mu \BJ(\Bx’)).
\end{aligned}
\end{equation}

We expect the LHS to be a bivector, so the scalar component of this should be zero. That can be demonstrated with some of the usual trickery
\begin{equation}\label{eqn:biotSavartGreens:60}
\begin{aligned}
-\frac{\mu}{4\pi} \int_V dV’ \frac{\Bx – \Bx’}{ \Abs{\Bx – \Bx’}^3 } \cdot \BJ(\Bx’)
&= \frac{\mu}{4\pi} \int_V dV’ \lr{ \spacegrad \inv{ \Abs{\Bx – \Bx’} }} \cdot \BJ(\Bx’) \\
&= -\frac{\mu}{4\pi} \int_V dV’ \lr{ \spacegrad’ \inv{ \Abs{\Bx – \Bx’} }} \cdot \BJ(\Bx’) \\
&= -\frac{\mu}{4\pi} \int_V dV’ \lr{
\spacegrad’ \cdot \frac{\BJ(\Bx’)}{ \Abs{\Bx – \Bx’} }

\frac{\spacegrad’ \cdot \BJ(\Bx’)}{ \Abs{\Bx – \Bx’} }
}.
\end{aligned}
\end{equation}

The current \( \BJ \) is not unconstrained. This can be seen by premultiplying \ref{eqn:biotSavartGreens:20} by the gradient

\begin{equation}\label{eqn:biotSavartGreens:80}
\spacegrad^2 I \BB = -\mu \spacegrad \BJ.
\end{equation}

On the LHS we have a bivector so must have \( \spacegrad \BJ = \spacegrad \wedge \BJ \), or \( \spacegrad \cdot \BJ = 0 \). This kills the \( \spacegrad’ \cdot \BJ(\Bx’) \) integrand numerator in \ref{eqn:biotSavartGreens:60}, leaving

\begin{equation}\label{eqn:biotSavartGreens:100}
\begin{aligned}
-\frac{\mu}{4\pi} \int_V dV’ \frac{\Bx – \Bx’}{ \Abs{\Bx – \Bx’}^3 } \cdot \BJ(\Bx’)
&= -\frac{\mu}{4\pi} \int_V dV’ \spacegrad’ \cdot \frac{\BJ(\Bx’)}{ \Abs{\Bx – \Bx’} } \\
&= -\frac{\mu}{4\pi} \int_{\partial V} dA’ \ncap \cdot \frac{\BJ(\Bx’)}{ \Abs{\Bx – \Bx’} }.
\end{aligned}
\end{equation}

This shows that the scalar part of the equation is zero, provided the normal component of \( \BJ/\Abs{\Bx – \Bx’} \) vanishes on the boundary of the infinite sphere. This leaves the Biot-Savart law as a bivector equation

\begin{equation}\label{eqn:biotSavartGreens:120}
I \BB(\Bx)
= \frac{\mu}{4\pi} \int_V dV’ \BJ(\Bx’) \wedge \frac{\Bx – \Bx’}{ \Abs{\Bx – \Bx’}^3 }.
\end{equation}

Observe that the traditional vector form of the Biot-Savart law can be obtained by premultiplying both sides with \( -I \), leaving

\begin{equation}\label{eqn:biotSavartGreens:140}
\BB(\Bx)
= \frac{\mu}{4\pi} \int_V dV’ \BJ(\Bx’) \cross \frac{\Bx – \Bx’}{ \Abs{\Bx – \Bx’}^3 }.
\end{equation}

This checks against a trusted source such as [1] (eq. 5.39).

References

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