5 - Tensor Notation (Advanced)
5 - Tensor Notation (Advanced)
5 - Tensor Notation (Advanced)
Introduction
This page addresses advanced aspects of tensor notation. A key strength of tensor notation is its ability
to represent systems of equations with a single tensor equation. This makes it possible to recognize
relationships among tensor terms, and manipulate them, that would otherwise be nearly impossible to do
using matrix notation.
0, and 0. Also,
∂y ∂y ∂y
= 0 = 1 = 0
∂x ∂y ∂z
And similarly, the derivatives of z with respect to the three variables are
∂z ∂z ∂z
= 0 = 0 = 1
∂x ∂y ∂z
At this point, the pattern should be obvious. It can all be summarized in tensor notation as
∂ xi
= xi,j = δ ij
∂ xj
Example
The relationship between the Kronecker delta and derivatives of coordinates can be seen in
the following example. First, recall that a derivative such as dy/dx represents ynew − yold
divided by xnew − xold . Next start at some reference point, say (2, 5, 9). This is the "old"
point. Now change the x coordinate by 1 from 2 to 3, the "new" value. So xnew − xold = 1.
But nothing has changed the y value, so it is still equal to 5. (Note that the coordinates are
http://www.continuummechanics.org/tensornotationadvanced.html 1/11
1/21/2019 Tensor Notation (Advanced)
and dy/dx = 0.
dx i
In contrast, dx/dx = (3 − 2)/(3 − 2) = 1 . Clearly = xi,j = δ ij .
dx j
vi δ ij = v1 δ 1j + v2 δ 2j + v3 δ 3j
where the i subscript has been automatically summed from 1 to 3 because it appeared twice in the term,
once in vi and once in δ ij .
vi δ i3 = v1 δ 13 + v2 δ 23 + v3 δ 33 = v3
The result is simply v3 (the value chosen for j) because δ 33 = 1 while δ 13 = δ 23 = 0. In general, vi δ ij
will always equal vj for whatever value is selected for j. Therefore, the general rule is
vi δ ij = vj
The rule applies regardless of the complexity of the term. Recall the vector cross-product term ϵijk ωj rk .
Multiply it by δ im for example.
δ im ϵijk ωj r k = ϵmjk ωj r k
Scalar Equations
It is very important to be able to recognize the rank of any tensor term. Quantities such as vi,i , ai bi ,
Aij B ij , and σij ϵij are all scalar terms in fact, which also means they would be part of a single scalar
equation. For example, the strain energy density, W , of a linear elastic material is a scalar quantity given
by
1
W = σij ϵij
2
http://www.continuummechanics.org/tensornotationadvanced.html 2/11
1/21/2019 Tensor Notation (Advanced)
Although there are several subscripts in the equation, they all expand out (all sum from 1 to 3) because
each letter occurs exactly twice. This is amplified by the fact that on the left hand side (LHS) of the
equation, W is undeniably a scalar because it has no subscript(s) at all.
Vector Equations
A simple vector equation is the cross product of an angular rotation vector, ωj , with a position vector, rk ,
to obtain the velocity vector, vi . (Yes, this is just v = ω × r.)
vi = ϵijk ωj r k
This very small tensor equation represents so much. For starters, it represents three equations, not one,
because the vi term shows clearly that there is an equation for each i = 1, 2, and 3. Second, each of
the three equations contains nine terms because j and k both sum to three. However, we've already
seen here that ϵijk is zero in most terms, leaving
v1 = ω2 r 3 − ω3 r 2
v2 = ω3 r 1 − ω1 r 3
v3 = ω1 r 2 − ω2 r 1
That is a lot packed into one small tensor equation. Of course, v = ω × r actually represents the same
equations as well, except that the subscripts in the tensor equation explicitly lead one to the three
component equations.
It is important to recognize that tensor notation often provides the freedom to write any tensor term in
many forms. In this case, alternative examples include
All are equivalent, and technically correct, because the multiplication details are dictated by the
subscripts, not the order of the factors. However, it is customary for readability considerations to write
ϵijk first in a term, and write the remaining factors in approximately the same order they would appear in
vector or matrix notation. This leads to the original form of vi = ϵijk ωj rk as being preferred.
It is also important to recognize forms that are incorrect, and why. One incorrect form is vm = ϵijk ωj rk .
This is wrong because the free indices on the two sides of the equation are different: m on the LHS and
i on the RHS. While one might guess the author's intent in such a case, such a mismatch of free indices
should be avoided.
A second incorrect form is vi = ϵijj ωj r j . This is wrong because j appears more than twice in the RHS
term.
http://www.continuummechanics.org/tensornotationadvanced.html 3/11
1/21/2019 Tensor Notation (Advanced)
A very common 2nd order tensor equation is Hooke's Law, relating stress to strain in linear elastic
materials. It is written in matrix notation as
1
ϵ = [(1 + ν )σ − ν I tr(σ)]
E
1
ϵij = [(1 + ν )σij − ν δ ij σkk ]
E
This shows clearly that each term is 2nd rank because of the i and j indices. Note that σkk is just a
scalar quantity because k is summed from 1 to 3 since it appears twice. So σkk is the trace of σ.
Another key insight is that the entire ν δ ij σkk term is nonzero only when i = j. This corresponds to the
normal stresses and strains and is the classic Poisson's Effect. On the other hand, the entire term is
zero when i ≠ j because of the presence of δ ij .
So what are the individual component equations represented by the tensor notation equation, and how
many are there? Since there are two free indices, there would normally be 3 ∗ 3 = 9 equations. But it
turns out that all terms are symmetric in Hooke's Law, so there are only six independent equations. They
are initially
1 1
ϵ11 = [(1 + ν )σ11 − ν (σ11 + σ22 + σ33 )] ϵ12 = [(1 + ν )σ12 ]
E E
1 1
ϵ22 = [(1 + ν )σ22 − ν (σ11 + σ22 + σ33 )] ϵ13 = [(1 + ν )σ13 ]
E E
1 1
ϵ33 = [(1 + ν )σ33 − ν (σ11 + σ22 + σ33 )] ϵ23 = [(1 + ν )σ23 ]
E E
http://www.continuummechanics.org/tensornotationadvanced.html 4/11
1/21/2019 Tensor Notation (Advanced)
1 (1 + ν )
ϵ11 = [σ11 − ν (σ22 + σ33 )] ϵ12 = σ12
E E
1 (1 + ν )
ϵ22 = [σ22 − ν (σ11 + σ33 )] ϵ13 = σ13
E E
1 (1 + ν )
ϵ33 = [σ33 − ν (σ11 + σ22 )] ϵ23 = σ23
E E
Again, this is an amazing amount of information packed into a single tensor equation.
! For anyone diving directly into this page here, note that ϵ12 , ϵ13 , and ϵ23 are one-half of the
normal shear quantities, i.e., ϵ12 = γ12 /2.
So far, tensor notation has not actually provided any capabilities beyond matrix notation. After
all, the matrix form of Hooke's Law does contain all the same information that is available in
the tensor equation. However, the great power of tensor notation over matrix notation
becomes evident when one starts to manipulate tensor equations. The example here will
demonstrate how to invert Hooke's Law from strain-as-a-function-of-stress to stress-as-a-
function-of-strain. Such an inversion is all but impossible using matrix notation.
1
ϵij = [(1 + ν )σij − ν δ ij σkk ]
E
1
σij = [E ϵij + ν δ ij σkk ]
(1 + ν )
But there is a problem, a major problem. There is still a stress term, σkk , on the RHS that
must be resolved. It cannot be combined with σij on the LHS because they are different
animals. σij is an individual component of the stress tensor, σkk is the trace of the stress
tensor, (σ11 + σ22 + σ33 ).
This hurdle is overcome in a couple steps by first multiplying the equation through (both sides
of course) by δ ij as follows.
1
δ ij σij = [E δ ij ϵij + ν δ ij δ ij σkk ]
(1 + ν )
At this point, several advanced properties of tensor notation kick in. First, note that the entire
equation has been transformed from a 2nd rank tensor equation to a scalar equation because
http://www.continuummechanics.org/tensornotationadvanced.html 5/11
1/21/2019 Tensor Notation (Advanced)
there are no longer any free indices. Each term now has i and j occurring twice in it, so both
are automatically summed from 1 to 3.
Second, the terms containing δ ij σij and δ ij ϵij can be simplified by recalling the substitution
property of the Kronecker Delta. Since δ ij = 1 only when i = j, then
and
So choose, arbitrarily, to write each term with j subscripts as σjj and ϵjj .
δ ij δ ij = δ ii = δ 11 + δ 22 + δ 33 = 1 + 1 + 1 = 3
1
σjj = [E ϵjj + 3 ν σkk ]
(1 + ν )
It's now time for another round of insight into tensor notation. Note that σjj and σkk are in fact
equal because both expand to σ11 + σ22 + σ33 . So they can be combined. The σjj is simply
rewritten as σkk , producing
1
σkk = [E ϵjj + 3 ν σkk ]
(1 + ν )
Now the σkk terms on the LHS and RHS can be combined to obtain
E ϵjj
σkk =
(1 − 2ν )
1
σij = [E ϵij + ν δ ij σkk ]
(1 + ν )
to obtain
E ν
σij = [ϵij + δ ij ϵjj ]
(1 + ν ) (1 − 2ν )
http://www.continuummechanics.org/tensornotationadvanced.html 6/11
1/21/2019 Tensor Notation (Advanced)
Except this is incorrect because j now appears three times in the last term. But the solution is
simple. Simply rewrite ϵjj as ϵkk . This is completely acceptable because both forms expand
out to give the same trace of the strain tensor.
E ν
σij = [ϵij + δ ij ϵkk ]
(1 + ν ) (1 − 2ν )
So what happened? The example is typical of equations that contain tensors occurring in two different
forms. In this case, the two different forms were σij and σkk . The first is a component of the stress
tensor while the second is the trace of the same stress tensor. (Both involve the same stress tensor, but
they are in fact different quantities.) When this occurs, the usual procedure is to multiply the equation
through by δ ij .
The second key aspect of the example was the demonstrated freedom to change indices when they
occur twice. This is because any indices occurring twice are automatically expanded out so it does not
matter what letter they are. This was demonstrated by changing σjj to σkk and ϵkk to ϵjj during the
example.
Epsilon-Delta Identity
The alternating tensor and the Kronecker delta are
related to each other through the following identity
∣ δ il δ im δ in ∣
∣ ∣
ϵijk ϵlmn = δ jl δ jm δ jn
∣ ∣
∣ δ kl δ km δ kn ∣
= δ il (δ jm δ kn − δ jn δ km ) + δ im (δ jn δ kl − δ jl δ kn ) + δ in (δ jl δ km − δ jm δ kl )
which is too complex to be of much use to anyone! However, multiplying through by δ il reduces the
above equation to something much more manageable and useful. (Proving this yourself is an excellent
homework problem.)
ϵijk ϵimn = δ jm δ kn − δ jn δ km
This is a 4th rank tensor equation because there are four free indices, j, k, m, and n. The i index is
repeated twice on the LHS, so it is summed from 1 to 3. So the equation could be expanded to give
The terms can be evaluated once values are chosen for each of the four free indices.
The identity is used when two alternating tensors are present in a term, which usually arises when the
http://www.continuummechanics.org/tensornotationadvanced.html 7/11
1/21/2019 Tensor Notation (Advanced)
term involves cross products. The benefit of employing it is that once the epsilons are transformed into
the deltas, then the substitution property of the Kronecker Deltas can be used to simplify the equation.
The following example demonstrates the usefulness of this identity.
1
Area = | a × b|
2
1 −−−−−−−−−−−−−
Area = √ϵijk aj bk ϵimn am bn
2
1 −−−−−−−−−−−−−−−−−−−−−
Area = √(δ jm δ kn − δ jn δ km )aj bk am bn
2
1 −−−−−−−−−−−−−−−−−−−−−−−−−−
Area = √δ jm δ kn aj bk am bn − δ jn δ km aj bk am bn
2
And the substitution property of the delta operator can now be exploited to obtain
But am am is simply the dot product of the a vector with itself, as is bn bn . And am bm and
an bn are both the same dot product of a with b.
1 −−−−−−−−−−−−−−−−−−
2
Area = √(a ⋅ a)(b ⋅ b) − (a ⋅ b)
2
Which offers an alternative calculation to the cross product approach. For what it's worth, the
equation can also be written as a determinant.
−− −−−−− −−−−− −
∣ (a ⋅ a)
1 (a ⋅ b) ∣
Area = √∣ ∣
2 ∣ (a ⋅ b) (b ⋅ b) ∣
http://www.continuummechanics.org/tensornotationadvanced.html 8/11
1/21/2019 Tensor Notation (Advanced)
2
∇ × (∇ × v) = ∇(∇ ⋅ v) − ∇ v
(∇ × v) is ϵijk vk,j and ∇ × (∇ × v) is ϵmni ϵijk vk,jn . Apply the identity to transform the
equation to
Recognize that vk,mk is the gradient of the divergence of v. This can be made clearer if the
term is written more explicitly as (vk,k ),j . So vk,jk = ∇(∇ ⋅ v).
2
∇ × (∇ × v) = ∇(∇ ⋅ v) − ∇ v
Textbooks
http://www.continuummechanics.org/tensornotationadvanced.html 9/11