What Is a Tensor?
Press your thumb into a lump of clay. The clay pushes back — but in which direction? Straight out along
your thumb? Not quite: squeeze a block of rubber and the internal forces on a slanted slice point off
at an angle to that slice. To describe the force on a surface you must supply the surface's
orientation (a direction) and get back a force (another direction). A single number can't do that. A
single arrow can't either. You need a machine that eats one direction and returns another,
linearly. That machine is a tensor.
You already know the two simplest tensors under other names. A scalar — temperature,
mass — is just a number. A vector — velocity, force — is a number-with-a-direction.
Tensors are the natural continuation of that sequence: objects that package together several
directions at once. Stress, the moment of inertia of a spinning top, the electromagnetic field, the
curvature of spacetime — none of these fit into a scalar or a vector. They are tensors, and this page
is about what that word actually means.
View 1: a tensor is a multilinear machine
The cleanest definition lives in the language of
vector spaces.
A tensor is a multilinear map: a function that takes in some vectors (and covectors)
and outputs a number, and is linear in every one of its slots separately.
-
The machine. A tensor T of rank
k takes k vector arguments and returns a
scalar: T(\mathbf{u}, \mathbf{v}, \dots) \in \mathbb{R}.
-
Linear in each slot. Double an input, double the output; add two inputs in one
slot, add the outputs — with all other slots held fixed:
T(a\mathbf{u}+b\mathbf{u}', \mathbf{v}) = a\,T(\mathbf{u},\mathbf{v}) + b\,T(\mathbf{u}',\mathbf{v}).
A rank-2 tensor, fed one vector, hasn't finished — it still has a slot open, so it hands back
a function-waiting-for-one-more-vector, which is itself a covector. That is exactly the "eats a
direction, returns a direction" behaviour of stress: the stress tensor
\boldsymbol{\sigma} takes the normal \mathbf{n} of
a surface and returns the traction (force per area) \mathbf{t} = \boldsymbol{\sigma}\,\mathbf{n}
acting on it — generally pointing a different way from \mathbf{n}.
Seeing a rank-2 tensor act
A rank-2 tensor is a linear map: feed it a direction and it returns a vector.
The figure below does exactly that. Drag the angle slider to sweep the input unit vector
\mathbf{n} (the shorter arrow) around the circle; the tensor
T maps it to the output T\mathbf{n} (the longer
arrow), whose tips trace the grey ellipse — the image of the unit circle.
Notice the key feature: for a general direction, the output T\mathbf{n}
points a different way from the input \mathbf{n} — the surface
pushes back at an angle. Only along two special directions (the ellipse's axes) do input and output
line up. Those are the tensor's
eigenvectors,
the "principal axes" — for the inertia tensor they are the axes a body spins about cleanly, and for the
stress tensor they are the directions of pure push or pull.
View 2: a tensor is what transforms like a tensor
Physicists more often meet the other definition, in components. Pick a basis and a rank-2 tensor
becomes an array of numbers T_{ij}, written with
indices and
the Einstein summation convention. But — and this is the whole point — not every
array of numbers is a tensor. It is a tensor only if its components change under a change of
basis in the one specific way that keeps the underlying geometric object fixed:
T'_{ij} = \frac{\partial x^k}{\partial x'^{i}}\,\frac{\partial x^l}{\partial x'^{j}}\,T_{kl}.
One factor of the transformation (a Jacobian) per index. An index that transforms this way — "down
stairs" — is covariant; an index that transforms with the inverse factor — "upstairs",
T^{ij} — is contravariant. The
rank (or order) of the tensor is simply the number of indices, and a rank-
k tensor in n dimensions has
n^k components.
The two views are the same idea: a coordinate-free machine (view 1), and its components together with
the rule that keeps the machine the same when you change coordinates (view 2).
The ladder of ranks
- Rank 0 — a scalar. No indices, n^0 = 1 component. Same
number in every frame: temperature, charge, mass.
- Rank 1 — a vector (or covector). One index,
n components: velocity, force, the electric field.
- Rank 2 — the "matrix-like" tensors. Two indices,
n^2 components: the stress tensor
\sigma_{ij}, the moment-of-inertia tensor
I_{ij} (which relates angular velocity to angular momentum,
L_i = I_{ij}\,\omega_j), and the
metric tensor
g_{ij} that measures lengths.
- Rank 3, 4, … More slots: the elasticity tensor
C_{ijkl} (rank 4) links stress to strain; the Riemann curvature tensor
(rank 4) encodes the bending of spacetime.
A handy special tensor is the Kronecker delta \delta^i_{\,j}
— 1 when i=j, else 0 —
the identity map, and the only rank-2 tensor whose components are the same in every basis.
Worked examples
Example 1 — counting components. How many components has a rank-3 tensor in
3-dimensional space? It is n^k = 3^3 = 27.
Example 2 — inertia in action. A rank-2 tensor relates two vectors linearly. For a
spinning body, L_i = I_{ij}\,\omega_j (summed over
j). Because I_{ij} is generally not diagonal, the
angular momentum \mathbf{L} need not be parallel to the angular velocity
\boldsymbol{\omega} — which is exactly why an unbalanced wheel wobbles.
Example 3 — is it a tensor? Write down the array
A_{ij} whose entries are your three favourite numbers arranged in a grid. Is
it a tensor? Only if those numbers were defined so that they obey the transformation law under
every change of basis. A grid of arbitrary constants that you leave unchanged when you rotate the axes is
not a tensor — it fails the rule.
Example 4 — a spacetime count. In 4-dimensional spacetime,
how many components does the rank-2 metric tensor have? n^k = 4^2 = 16 (of
which symmetry leaves 10 independent).
No — and the difference is the whole subject. A rank-2 tensor can be written as a grid of
numbers once you fix a basis, but a grid of numbers is only a tensor if those numbers
transform correctly when you change basis (view 2). Scribble down nine arbitrary
numbers and freeze them regardless of coordinates and you have a matrix that is not a tensor.
The array is just the tensor's shadow in one coordinate system; the tensor is the coordinate-free
object casting it.
A second, sneakier trap: "rank" means two different things. A tensor's rank is its
number of indices (a stress tensor is "rank 2" with a full 3\times3 of
components). A matrix's rank, from linear algebra, counts its independent rows. They are
unrelated — a rank-2 tensor can have matrix-rank 1, 2 or
3. Keep the two senses of the word apart.
Because of a deep principle: the laws of physics cannot depend on the coordinate system you
happened to choose. Your choice of axes is human bookkeeping; the universe doesn't know about it. The
magic of the tensor transformation law is that if a tensor equation like
\mathbf{T} = 0 holds in one coordinate system, it holds in every
one — because both sides transform the same way, the equality survives the change intact.
This is called covariance, and it is the reason Einstein wrote general relativity
entirely in tensors: G_{\mu\nu} = 8\pi\,T_{\mu\nu} is guaranteed to mean the
same physics to every observer, accelerating or not. Writing a law as a tensor equation is a promise
that it is real physics and not an artefact of your grid. That is why "is it a tensor?" is the first
question a physicist asks of any new quantity.