Search Continuum Mechanics Website

Small Scale Strains

 home > deformation & strain > small strain
Prev Up Next

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 Strain
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 1 m long rope is pulled and fails after it stretches 0.015 m, then we would expect a 10 m rope to stretch 0.15 m 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
Shear strain is usually represented by \(\gamma\) and defined as

\[ \gamma = {D \over T} \]
And this is the shear-version of engineering strain. Note that this definition does include some rigid body rotation as discussed in the deformation gradient page. But we saw there that when rotations are large, it is preferable to keep the shear strain rotation-free.



Pure Shear Strains

So a better, though slightly more complex definition of shear strain, is
Pure Shear Strain


\[ \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 in that they work. 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

Normal Strain
\[ 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

Shear Strain
\[ \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\).

Pure Shear
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

Effect of Rotations on Strains

This rotation example demostrates how rigid body rotations can polute strain calculations based on infinitesimal strain definitions. 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...
  1. hold \({\bf U}\) constant and change \({\bf R}\) to represent different angles of rotation about the same axis as above
  2. then calculate a new \({\bf F}\) from \({\bf R} \cdot {\bf U}\) and use it to calculate a new \(\boldsymbol{\epsilon}\)
  3. 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.