Maxwell's Stress Tensor

4 min read

Maxwell’s Stress Tensor

The total electromagnetic force on the charges in volume V\mathcal{V} is

F=V(E+v×B)ρdτ=V(ρE+J×B)dτ\mathbf{F}=\int_{\mathcal{V}}(\mathbf{E}+\mathbf{v} \times \mathbf{B}) \rho d \tau=\int_{\mathcal{V}}(\rho \mathbf{E}+\mathbf{J} \times \mathbf{B}) d \tau

Then, the force per volume is

f=ρE+J×B\mathbf{f}=\rho \mathbf{E}+\mathbf{J} \times \mathbf{B}

Using the Maxwell equations, we can get rid of ρ\rho and J\mathbf{J} using the Maxwell’s equations:

E=ρε0\nabla \cdot \mathbf{E}=\frac{\rho}{\varepsilon_{0}}×B=μ0(J+ε0Et)\nabla \times \mathbf{B}=\mu_{0}\left(\mathbf{J}+\varepsilon_{0} \frac{\partial \mathbf{E}}{\partial t}\right)

Resulting in:

f=ϵ0(E)E+(1μ0×Bϵ0Et)×B\mathbf{f}=\epsilon_{0}(\mathbf{\nabla} \cdot \mathbf{E}) \mathbf{E}+\left(\frac{1}{\mu_{0}} \nabla \times \mathbf{B}-\epsilon_{0} \frac{\partial \mathbf{E}}{\partial t}\right) \times \mathbf{B}

The vector calculus identity for differentiating cross products is:

t(E×B)=(Et×B)+(E×Bt)\frac{\partial}{\partial t}(\mathbf{E} \times \mathbf{B})=\left(\frac{\partial \mathbf{E}}{\partial t} \times \mathbf{B}\right)+\left(\mathbf{E} \times \frac{\partial \mathbf{B}}{\partial t}\right)

Using Faraday’s Law

Bt=×E\frac{\partial \mathbf{B}}{\partial t}=-\nabla \times \mathbf{E}

Plugging into the above identity gives

Et×B=t(E×B)+E×(×E)\frac{\partial \mathbf{E}}{\partial t} \times \mathbf{B}=\frac{\partial}{\partial t}(\mathbf{E} \times \mathbf{B})+\mathbf{E} \times(\nabla \times \mathbf{E})

Hence, we can write

f=ϵ0[(E)EE×(×E)]1μ0[B×(×B)]ϵ0t(E×B)\mathbf{f}=\epsilon_{0}[(\nabla \cdot \mathbf{E}) \mathbf{E}-\mathbf{E} \times(\nabla \times \mathbf{E})]-\frac{1}{\mu_{0}}[\mathbf{B} \times(\nabla \times \mathbf{B})]-\epsilon_{0} \frac{\partial}{\partial t}(\mathbf{E} \times \mathbf{B})

Using the last Maxwell equation, we can write this to be more symmetrical. Throw in (B)B)(\nabla \cdot \mathbf{B}) \mathbf{B}), since

B=0\nabla \cdot \mathbf{B}=0

We can simplify the above equation using another vector calculus identity:

(AB)=A×(×B)+B×(×A)+(A)B+(B)A\nabla(\mathbf{A} \cdot \mathbf{B})=\mathbf{A} \times(\nabla \times \mathbf{B})+\mathbf{B} \times(\nabla \times \mathbf{A})+(\mathbf{A} \cdot \nabla) \mathbf{B}+(\mathbf{B} \cdot \nabla) \mathbf{A}

This becomes

(E2)=2(E)E+2E×(×E)\nabla\left(E^{2}\right)=2(\mathbf{E} \cdot \nabla) \mathbf{E}+2 \mathbf{E} \times(\nabla \times \mathbf{E})


E×(×E)=12(E2)(E)E\mathbf{E} \times(\nabla \times \mathbf{E})=\frac{1}{2} \nabla\left(E^{2}\right)-(\mathbf{E} \cdot \nabla) \mathbf{E}

A similar derivation is done for B\mathbf{B}. Then,

f=ϵ0[(E)E+(E)E]+1μ0[(B)B+(B)B]12(ϵ0E2+1μ0B2)ϵ0t(E×B)\begin{aligned} \mathbf{f}=& \epsilon_{0}[(\nabla \cdot \mathbf{E}) \mathbf{E}+(\mathbf{E} \cdot \nabla) \mathbf{E}]+\frac{1}{\mu_{0}}[(\nabla \cdot \mathbf{B}) \mathbf{B}+(\mathbf{B} \cdot \nabla) \mathbf{B}] \\ &-\frac{1}{2} \nabla\left(\epsilon_{0} E^{2}+\frac{1}{\mu_{0}} B^{2}\right)-\epsilon_{0} \frac{\partial}{\partial t}(\mathbf{E} \times \mathbf{B}) \end{aligned}

Which has some symmetry, but is somewhat tedious to look at. Using the Maxwell stress tensor:, which has two indicies

Tijϵ0(EiEj12δijE2)+1μ0(BiBj12δijB2)T_{i j} \equiv \epsilon_{0}\left(E_{i} E_{j}-\frac{1}{2} \delta_{i j} E^{2}\right)+\frac{1}{\mu_{0}}\left(B_{i} B_{j}-\frac{1}{2} \delta_{i j} B^{2}\right)

The divergence of T\stackrel{\leftrightarrow}{\mathbf{T}} has

(T)j=ϵ0[(E)Ej+(E)Ej12jE2]+1μ0[(B)Bj+(B)Bj12jB2]\begin{aligned}(\nabla \cdot \stackrel{\leftrightarrow}{\mathbf{T}})_{j}=& \epsilon_{0}\left[(\nabla \cdot \mathbf{E}) E_{j}+(\mathbf{E} \cdot \nabla) E_{j}-\frac{1}{2} \nabla_{j} E^{2}\right] \\ &+\frac{1}{\mu_{0}}\left[(\nabla \cdot \mathbf{B}) B_{j}+(\mathbf{B} \cdot \nabla) B_{j}-\frac{1}{2} \nabla_{j} B^{2}\right] \end{aligned}

and thus the force per volume is written in the elegant form:

f=Tϵ0μ0St\mathbf{f}=\nabla \cdot \stackrel{\leftrightarrow}{\mathbf{T}}-\epsilon_{0} \mu_{0} \frac{\partial \mathbf{S}}{\partial t}

where S\mathbf{S} is the Poynting vector.

Integrating both sides, we have

F=STdaϵ0μ0ddtVSdτ\mathbf{F}=\oint_{\mathcal{S}} \stackrel{\leftrightarrow}{\mathbf{T}} \cdot d \mathbf{a}-\epsilon_{0} \mu_{0} \frac{d}{d t} \int_{\mathcal{V}} \mathbf{S} d \tau

If no energy is leaving or entering, we can say the system is static. Then, we have that

F=STda( static )\mathbf{F}=\oint_{\mathcal{S}} \stackrel{\leftrightarrow}{\mathbf{T}} \cdot d \mathbf{a} \quad(\text { static })

Interpretation of the Stress Tensor

T\stackrel{\leftrightarrow}{\mathbf{T}} is the force per unit area acting on the surface. The first index i=(x,y,z)i = (x, y, z) represents the iith direction the force is coming from, and the second index j=(x,y,z)j = (x, y, z) represents the normal vector for the surface in the jjth direction.

In summary:

  • The first index ii tells you the direction of the force.
  • The second index jj tells you the direction of the surface.

In a matrix this would be written as:

T=[TxxTxyTxzTyxTyyTyzTzxTzyTzz]\stackrel{\leftrightarrow}{\mathbf{T}} = \left[\begin{array}{lll}{T_{x x}} & {T_{x y}} & {T_{x z}} \\ {T_{y x}} & {T_{y y}} & {T_{y z}} \\ {T_{z x}} & {T_{z y}} & {T_{z z}}\end{array}\right]


Suppose I would like to know what is the stress for a given surface, not all surfaces like the stress tensor. This is a stress vector, and you simply get it by taking a dot product with your desired surface. The reason it is to the right, is because we are summing over the first index which has information about the surfaces, and we want to project surface normal vectors to surface normal vectors.

What is the stress in the n\mathbf{n} direction?

σ=Tn^=[TxxTxyTxzTyxTyyTyzTzxTzyTzz][nxnynz]=[Txxnx+Txyny+TxznzTyxnx+Tyyny+TyznzTzxnx+Tzyny+Tzznz]\boldsymbol{\sigma} = \stackrel{\leftrightarrow}{\mathbf{T}} \cdot \hat{\mathbf{n}} = \left[\begin{array}{lll}{T_{x x}} & {T_{x y}} & {T_{x z}} \\ {T_{y x}} & {T_{y y}} & {T_{y z}} \\ {T_{z x}} & {T_{z y}} & {T_{z z}}\end{array}\right] \begin{bmatrix}n_{x} \\ n_{y} \\ n_{z}\end{bmatrix} = \begin{bmatrix} T_{xx} n_x+ T_{xy} n_y + T_{xz}n_z\\ T_{yx} n_x+ T_{yy} n_y + T_{yz}n_z\\ T_{zx} n_x+ T_{zy} n_y + T_{zz}n_z\\\end{bmatrix}

What if we want to know the total force? Recall that stress is force per area. Therefore, we can integrate the individual stresses over a surface dad \mathbf{a}, since da=n^dSd \mathbf{a} = \hat{\mathbf{n}} dS:

F=STda( static )\mathbf{F}=\oint_{\mathcal{S}} \stackrel{\leftrightarrow}{\mathbf{T}} \cdot d \mathbf{a} \quad(\text { static })

which is the net force in the static case!

Get The Best Of All Hands Delivered To Your Inbox

Subscribe to our newsletter and stay updated.

Copyright © 2020

Zhi Han