Introduction
This page begins a series on the many strain definitions that exist and are used
throughout mechanics. We will start here with so-called
infinitesimal strains.
This is a bit of a misnomer because, as we will see, it is actually rotations
that need to be small, not the strains themselves, in order to accurately
use the small strain equations. (This should not be a terrible surprise
if you've read the pages on
deformation gradients and
polar decompositions.)
Normal Strains
Normal in normal strain does not mean common, or usual strain.
It means a direct length-changing stretch (or compression) of an object.
It is called normal in order to distinguish it from shear.
It is commonly defined as
\[
\epsilon = {\Delta L \over L_o}
\]
where the quantities are defined in the sketch. This is also known as
Engineering Strain.
The definition arises from the fact that if a 1m long rope is pulled
and fails after it stretches 0.015m, then we would expect a 10m
rope to stretch 0.15m before it fails. In each case, the strain is
\(\epsilon\) = 0.015, or 1.5%, and is a constant value independent of the rope's
length, even though the \(\Delta L's\) are different values in the two cases.
Likewise, the force required to stretch a rope by a given amount would be found
to depend only on the strain in the rope.
It is this constancy of strain that makes this definition a useful choice.
Shear Strains
Shear strain is usually represented by \(\gamma\) and defined as
\[
\gamma = {D \over T}
\]
This is the shear-version of engineering strain.
This definition does include some rigid body rotation as discussed on the
deformation gradient page. We saw there that
when rotations are large, it is preferable to keep the shear strain rotation-free.
Pure Shear Strains
A better, though slightly more complex definition of shear strain, is
\[
\gamma = { \Delta x + \Delta y \over T}
\]
where it is assumed that the starting point is a square. It should be noted that
the two definitions lead to the same results when the displacements and strains
are indeed small. In other words
\[
\Delta x = \Delta y = { D \over 2} \qquad \text{(small strains)}
\]
This permits one to think in terms of the first definition while using the second.
General Definitions
The above definitions are good because they work for simple cases
in which all the strain is one or the other (normal or shear). But as soon as
strains are simultaneously present for
\(\epsilon_x, \epsilon_y, \epsilon_z, \gamma_{xy}\), etc.,
things can become unmanageable. So a more general method of calculation is needed.
The answer to this dilemma is... calculus. The approach is to define the various strains
in terms of partial derivatives of the displacement field, \({\bf u({\bf X})}\),
in such a way that the above definitions are preserved for the simple cases.
Normal Strains
The normal strains are defined as
\[
\epsilon_x = {\partial \, u_x \over \partial X} \qquad
\epsilon_y = {\partial \, u_y \over \partial Y} \qquad
\epsilon_z = {\partial \, u_z \over \partial Z}
\]
The simple case of uniaxial stretching can be described as
\[
x = \left( {X \over L_o} \right) L_f
\]
and since \({\bf u} = {\bf x} - {\bf X}\), a little algebra can be
applied to give
\[
u_x = \left( {X \over L_o} \right) \left( L_f - L_o \right)
\]
So
\[
\epsilon_x \quad = \quad {\partial \, u_x \over \partial X} \quad = \quad {L_f - L_o \over L_o} \quad = \quad {\Delta L \over L_o}
\]
which reproduces the "delta L over L" definition as desired.
Shear Strains
The equation for shear strain is
\[
\gamma_{xy} = {\partial \, u_y \over \partial X} + {\partial \, u_x \over \partial Y}
\]
The coordinate mapping equation for the shear example is
\[
\begin{eqnarray}
x & = & X \\
y & = & Y + X D / T
\end{eqnarray}
\]
And the displacement field is
\[
\begin{eqnarray}
u_x & = & 0 \\
u_y & = & X D / T
\end{eqnarray}
\]
The shear strain is
\[
\gamma_{xy} \quad = \quad {\partial \, u_y \over \partial X} +
{\partial \, u_x \over \partial Y} \quad = \quad
{\partial \, (X D / T) \over \partial X} +
{\partial \, (0) \over \partial Y} \quad = \quad
{D \over T}
\]
This reproduces the desired result for this simple case: \(\gamma_{xy} = D / T\).
The symmetry of the equation also ensures that the computed shear value
also satisfies the no-net-rotation criterion. The coordinate mapping
equations for this example are
\[
\begin{eqnarray}
x & = & X & + & Y \Delta x / T \\
y & = & Y & + & X \Delta y / T
\end{eqnarray}
\]
and they lead to
\[
\gamma_{xy} = {\Delta x + \Delta y \over T}
\]
which again produces the desired result.
Small Strains as a Tensor
The objective here is to develop a general tensor-based definition for strain.
The strain tensor itself is written as follows. (Note that it is symmetric.)
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
\epsilon_{11} & \epsilon_{12} & \epsilon_{13} \\
\epsilon_{12} & \epsilon_{22} & \epsilon_{23} \\
\epsilon_{13} & \epsilon_{23} & \epsilon_{33}
} \right]
\]
As will prove to be the case every time, the best definition is based on
some function of the
deformation gradient.
That definition is
\[
\boldsymbol{\epsilon} = \frac{1}{2} ({\bf F} + {\bf F}^T) - {\bf I}
\]
In tensor notation, this is
\[
\epsilon_{ij} = \frac{1}{2} (F_{ij} + F_{ji}) - \delta_{ij}
\]
In terms of displacements, it can be written as
\[
\epsilon_{ij} = \frac{1}{2} (u_{i,j} + u_{j,i})
\]
The components of the small strain tensor are
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
{\partial \, u_x \over \partial X} &
\frac{1}{2} \left( {\partial \, u_x \over \partial Y} + {\partial \, u_y \over \partial X} \right) &
\frac{1}{2} \left( {\partial \, u_x \over \partial Z} + {\partial \, u_z \over \partial X} \right)
\\
\\
&
{\partial \, u_y \over \partial Y} &
\frac{1}{2} \left( {\partial \, u_y \over \partial Z} + {\partial \, u_z \over \partial Y} \right)
\\
\\
\text{sym} & &
{\partial \, u_z \over \partial Z} &
}
\right]
\]
Tensor Shear Terms
VERY IMPORTANT: The shear terms here possess a property that is common across all strain
definitions and is an endless source of confusion and mistakes. The shear terms in the strain
tensor are one-half of the engineering shear strain values defined earlier as
\(\gamma_{xy} = D / T\). This is acceptable and even necessary in order to correctly
perform coordinate transformations on strain tensors. Nevertheless, tensorial shear terms
are written as \(\epsilon_{ij}\) and are one-half of \(\gamma_{ij}\) such that
\[
\gamma_{ij} = 2 \epsilon_{ij}
\]
It is always, always, always the case that if \(\gamma_{xy} = D / T = 0.10\), then the strain tensor
will contain
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
... & 0.05 & ... \\
0.05 & ... & ... \\
... & ... & ...
} \right]
\]
Alternatively, if the strain tensor is
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
... & 0.02 & ... \\
0.02 & ... & ... \\
... & ... & ...
} \right]
\]
then \(\gamma_{xy} = D / T = 0.04\).
Limitations of Small Strain Equations
This rotation example demostrates how rigid body rotations can
polute
strain calculations based on infinitesimal strain definitions.
Effect of Rotations on Strains
Take the following 2-D rigid body rotation example.
\[
\begin{eqnarray}
x & = & X \cos \theta & - & Y \sin \theta \\
y & = & X \sin \theta & + & Y \cos \theta
\end{eqnarray}
\]
These equations rotate an object counter-clockwise about the \(z\) axis.
In this case, \({\bf F}\) is
\[
{\bf F} = \left[ \matrix{
\cos \theta & -\sin \theta \\
\sin \theta & \;\;\;\; \cos \theta
} \right]
\]
and the resulting small strain tensor is
\[
\boldsymbol{\epsilon} = \frac{1}{2} ({\bf F} + {\bf F}^T) - {\bf I}
= \left[ \matrix{
\cos \theta - 1& 0 \\
0 & \;\;\;\; \cos \theta - 1
} \right]
\]
So the result is negative normal strains
even though the object has not deformed at all!
The error is zero at 0°, but grows with rotation angle, whether positive or negative.
This is clearly undesirable and demostrates the problem with so-called small
strain equations. The problem is rotations, not the strains themselves.
Recall the 3-D example from the
polar decomposition
page. The deformation gradient, \({\bf F}\), rotation matrix \({\bf R}\), and
stretch tensor, \({\bf U}\) were:
\[
{\bf F} =
\left[ \matrix{
1 & 0.495 & 0.5 \\
-0.333 & 1 & -0.247 \\
\;\;\; 0.959 & 0 & 1.5
} \right]
\]
\[
{\bf R} =
\left[ \matrix{
\;\;\;0.903 & 0.378 & -0.140 \\
-0.368 & 0.925 & \;\;\;0.045 \\
\;\;\;0.158 & 0.011 & \;\;\;0.986
} \right]
\]
\[
{\bf U} =
\left[ \matrix{
1.195 & \;\;\;0.078 & \;\;\;0.779 \\
0.078 & \;\;\;1.113 & -0.024 \\
0.779 & -0.024 & \;\;\;1.396
} \right]
\]
\[
\!\!\!\!\!\!\!\!
{\bf U} - {\bf I} =
\left[ \matrix{
0.195 & \;\;\;0.078 & \;\;\;0.779 \\
0.078 & \;\;\;0.113 & -0.024 \\
0.779 & -0.024 & \;\;\;0.396
} \right]
\]
Calculating strains using
\( \boldsymbol{\epsilon} = \frac{1}{2} ({\bf F} + {\bf F}^T) - {\bf I} \)
gives
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
0.000 & \;\;\;0.081 & \;\;\;0.730 \\
0.081 & \;\;\;0.000 & -0.124 \\
0.730 & -0.124 & \;\;\;0.500
} \right]
\]
which resembles \({\bf U} - {\bf I}\), though it is clearly not identical. It is very interesting
and revealing to pursue the similarities and differences here. Begin by substituting the polar
decomposition, \({\bf F} = {\bf R}\cdot{\bf U}\), into the strain equations.
\[
\boldsymbol{\epsilon} = \frac{1}{2} \left( {\bf R} \cdot {\bf U} + {\bf U}^T \cdot {\bf R}^T \right) - {\bf I}
\]
First, recall that \({\bf U}\) is symmetric, so \({\bf U}^T = {\bf U}\). Second, and perhaps
more important, note that if there is no rigid body rotation, then the rotation matrix, \({\bf R}\),
reduces to the identity matrix, \({\bf I}\), leaving
\[
\boldsymbol{\epsilon} = {\bf U} - {\bf I} \qquad \text{(no rigid body rotation)}
\]
This reveals several important properties. First, the
stretch tensor, \({\bf U}\), is a perfectly good strain tensor (after subtracting
\({\bf I}\) out, of course). This is huge because it shows that since \({\bf U} - {\bf I}\)
equals \(\boldsymbol{\epsilon}\) (in the absence of rotations), it also satisfies
the earlier objectives of \(\epsilon = \Delta L / L_o\) and \(\gamma = D / T\).
Note that the only reason \({\bf U} - {\bf I}\) doesn't equal \(\boldsymbol{\epsilon}\)
in the presence of rotations is because \(\boldsymbol{\epsilon}\) changes,
not \({\bf U} - {\bf I}\). Indeed, \({\bf U} - {\bf I}\) is a perfectly
acceptable candidate to be used as a strain tensor. And since \({\bf U}\) is independent of
rigid body rotations (because they are all contained in \({\bf R}\)), \({\bf U} - {\bf I}\) is a
perfectly acceptable definition of strain, even for very large strains and rotations.
Second, since \(\boldsymbol{\epsilon}\) is equal to \({\bf U} - {\bf I}\) in the absence of rotations,
it is clear that the key limitation of the small strain definition is that it is limited
to the case of infinitesimal rotations since the computed strains will lose accuracy as
the rigid body rotations become finite.
In fact, all aspects that I know of pertaining to so-called infinitesimal strains
are limited not by the strain levels themselves, but by rigid body rotations.
To see this, compare \(\boldsymbol{\epsilon}\) to \({\bf U} - {\bf I}\).
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
0.0 & \;\;\;0.081 & \;\;\;0.730 \\
0.081 & \;0 & -0.124 \\
0.730 & -0.124 & 0.5
} \right]
\qquad
{\bf U} - {\bf I} =
\left[ \matrix{
0.195 & \;\;\;0.078 & \;\;\;0.779 \\
0.078 & \;\;\;0.113 & -0.024 \\
0.779 & -0.024 & \;\;\;0.396
} \right]
\]
It is evident that the two are similar; the largest components of each are in the
(1,3) and (3,3) slots. However, it is undeniable that they are significantly different
in general. For example, \(\epsilon_{11} = 0.0\) while \(U_{11} - 1 = 0.195\).
So how much rotation is required to cause such disparity? To answer this, return to the
rotation matrix page and solve for \(\alpha\).
\[
\begin{eqnarray}
\cos \alpha & = & \frac{1}{2} \left( \text{tr}({\bf R}) - 1 \right) \\
\\
& = & \frac{1}{2} (0.903 + 0.925 + 0.986 - 1) \\
\\
\\
\alpha & = & 25^\circ
\end{eqnarray}
\]
So a 25° rigid body rotation clearly cannot be ignored by simply using the
small strain equations because it introduces significant errors in the computed
results.
Different Rotation Amounts
This exercise will compare \(\boldsymbol{\epsilon}\) and \({\bf U} - {\bf I}\)
for different levels of rigid body rotations. We already know that the two are
quite different when there is 25° of rotation. Let's evaluate things at
10° and 5° of rotation to see how fast the two converge. The process
is as follows...
We already have \({\bf F}\), which is used to compute
\(\boldsymbol{\epsilon}\), and is made up of \({\bf R}\) and
\({\bf U}\). We will...
- hold \({\bf U}\) constant and change \({\bf R}\) to
represent different angles of rotation about the same axis
as above
- then calculate a new \({\bf F}\) from
\({\bf R} \cdot {\bf U}\) and use it to calculate a new
\(\boldsymbol{\epsilon}\)
- then compare the new \(\boldsymbol{\epsilon}\) to \({\bf U}\).
The first step is to compute the axis of rotation from the \({\bf R}\) matrix.
This is explained
on the rotation
matrix page.
\[
p_1 = { R_{32} - R_{23} \over 2 \sin \alpha } \qquad \qquad
p_2 = { R_{13} - R_{31} \over 2 \sin \alpha } \qquad \qquad
p_3 = { R_{21} - R_{12} \over 2 \sin \alpha }
\]
Inserting values from \({\bf R}\) into the equations gives \({\bf p} = (-0.0404,-0.3539,-0.8859)\).
So we will continue to rotate about this axis, but change the amount of rotation.
For a 10° rotation, \({\bf R}\) is
\[
{\bf R} =
\left[ \matrix{
\;\;\;0.985 & \;\;\;0.154 & -0.061 \\
-0.154 & \;\;\;0.987 & \;\;\;0.012 \\
\;\;\;0.062 & -0.002 & \;\;\;0.997
} \right]
\]
And multiplying this by \({\bf U}\) gives \({\bf F}\).
\[
{\bf F} =
\left[ \matrix{
\;\;\;1.141 & \;\;\;0.250 & \;\;\;0.678 \\
-0.097 & \;\;\;1.086 & -0.127 \\
\;\;\;0.850 & -0.022 & \;\;\;1.144
} \right]
\]
And then calculate \(\boldsymbol{\epsilon}\) from
\(\boldsymbol{\epsilon} = {1 \over 2} ({\bf F} + {\bf F}^T) - {\bf I}\) to get
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
0.141 & \;\;\;0.076 & \;\;\;0.764 \\
0.076 & \;\;\;0.086 & -0.074 \\
0.764 & -0.074 & \;\;\;0.440
} \right]
\qquad
{\bf U} - {\bf I} =
\left[ \matrix{
0.195 & \;\;\;0.078 & \;\;\;0.779 \\
0.078 & \;\;\;0.113 & -0.024 \\
0.779 & -0.024 & \;\;\;0.396
} \right]
\]
The \({\bf U} - {\bf I}\) tensor is also printed for easy comparison. One can see that
the two are closer (at 10° rotation), but still not really acceptably close.
For example, \(\epsilon_{11} = 14.1\%\), but \((U_{11} - I_{11}) = 19.5\%\).
This is probably not an acceptable difference.
So this time, apply 5° rotation. In this case, \({\bf R}\) is
\[
{\bf R} =
\left[ \matrix{
\;\;\;0.996 & \;\;\;0.077 & -0.031 \\
-0.077 & \;\;\;0.997 & \;\;\;0.005 \\
\;\;\;0.031 & -0.002 & \;\;\;0.999
} \right]
\]
And multiplying this by \({\bf U}\) gives \({\bf F}\).
\[
{\bf F} =
\left[ \matrix{
\;\;\;1.173 & \;\;\;0.164 & \;\;\;0.731 \\
-0.011 & \;\;\;1.103 & -0.077 \\
\;\;\;0.815 & -0.024 & \;\;\;1.141
} \right]
\]
And then calculate \(\boldsymbol{\epsilon}\) from
\(\boldsymbol{\epsilon} = {1 \over 2} ({\bf F} + {\bf F}^T) - {\bf I}\) to get
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
0.173 & \;\;\;0.077 & \;\;\;0.773 \\
0.077 & \;\;\;0.103 & -0.051 \\
0.773 & -0.051 & \;\;\;0.419
} \right]
\qquad
{\bf U} - {\bf I} =
\left[ \matrix{
0.195 & \;\;\;0.078 & \;\;\;0.779 \\
0.078 & \;\;\;0.113 & -0.024 \\
0.779 & -0.024 & \;\;\;0.396
} \right]
\]
This time, the two are close, within about 3% in most cases. Of course, the decision
as to whether or not this is a tolerable difference is up to the user.
Summary
The classical
infinitesimal strain definition is
\[
\boldsymbol{\epsilon} = \frac{1}{2} ({\bf F} + {\bf F}^T) - {\bf I}
\]
which satisfies the usual (engineering) definitions of
\(\epsilon = \Delta L / L_o\) and \(\gamma = D / T\).
In terms of displacements, it can be written as
\[
\epsilon_{ij} = \frac{1}{2} (u_{i,j} + u_{j,i})
\]
The components of the small strain tensor are
\[
\boldsymbol{\epsilon} =
\left[ \matrix{
{\partial \, u_x \over \partial X} &
\frac{1}{2} \left( {\partial \, u_x \over \partial Y} + {\partial \, u_y \over \partial X} \right) &
\frac{1}{2} \left( {\partial \, u_x \over \partial Z} + {\partial \, u_z \over \partial X} \right)
\\
\\
&
{\partial \, u_y \over \partial Y} &
\frac{1}{2} \left( {\partial \, u_y \over \partial Z} + {\partial \, u_z \over \partial Y} \right)
\\
\\
\text{sym} & &
{\partial \, u_z \over \partial Z} &
}
\right]
\]
It is very important to recognize that the shear terms in a strain tensor, \(\epsilon_{ij}\), are one-half
of the engineering shear strain values, \(\gamma_{ij}\). Therefore
\[
\gamma_{ij} = 2 \epsilon_{ij}
\]
This is necessary so that coordinate transforms and rotations can be performed using
\(\boldsymbol{\epsilon'} = {\bf Q} \cdot \boldsymbol{\epsilon} \cdot {\bf Q}^T\).
We also saw that \({\bf U} - {\bf I}\) is a perfectly good strain tensor that
has all the desired properties of engineering strains and is applicable under
all conditions, regardless of the levels of strain and/or rigid body rotations.
Also, the only limitation on the small strain tensor, \(\boldsymbol{\epsilon}\),
is that it is limited to applications involving small rotations. It is in fact
not limited to small strains at all.