Stress in geology

In continuum mechanics, the Cauchy stress tensor $\boldsymbol\sigma$ is a second order tensor, with nine components $\sigma_{ij}$, that completely define the state of stress at a point inside a material in the deformed placement or configuration.

$$\boldsymbol{\sigma} = \sigma_{ij} = \left[{\begin{matrix} \mathbf{T}^{(\mathbf{e}_1)} & \mathbf{T}^{(\mathbf{e}_2)} & \mathbf{T}^{(\mathbf{e}_3)} \end{matrix}}\right] = \left[{\begin{matrix} \sigma _{11} & \sigma _{21} & \sigma _{31} \\ \sigma _{12} & \sigma _{22} & \sigma _{32} \\ \sigma _{13} & \sigma _{23} & \sigma _{33} \\ \end{matrix}}\right]$$

where $\sigma_{11}$, $\sigma_{22}$, and $\sigma_{33}$ are normal stresses, and $\sigma_{12}$, $\sigma_{13}$, $\sigma_{21}$, $\sigma_{23}$, $\sigma_{31}$, and $\sigma_{32}$ are shear stresses.

Note

The first index $i$ indicates that the stress acts on a plane normal to the $x_i$-axis, and the second index $j$ denotes the direction in which the stress acts. A stress component is positive if it acts in the positive direction of the coordinate axes, and if the plane where it acts has an outward normal vector pointing in the positive coordinate direction.

Cauchy’s stress theorem—stress tensor

According to Cauchy’s fundamental theorem, also called Cauchy's stress theorem, merely by knowing the stress vectors on three mutually perpendicular planes, the stress vector on any other plane passing through that point can be found through coordinate transformation equations.

$$\left[ {\begin{array}{*{20}{c}} {T_1^{\left( n \right)}} \\ {T_2^{\left( n \right)}} \\ {T_3^{\left( n \right)}} \\ \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{\sigma _{11}}} & {{\sigma _{21}}} & {{\sigma _{31}}} \\ {{\sigma _{12}}} & {{\sigma _{22}}} & {{\sigma _{32}}} \\ {{\sigma _{13}}} & {{\sigma _{23}}} & {{\sigma _{33}}} \\ \end{array}} \right] \cdot \left[ {\begin{array}{*{20}{c}} {{n_1}} \\ {{n_2}} \\ {{n_3}} \\ \end{array}} \right] \quad \text{or} \quad \mathbf{T}^{(\mathbf{n})} = \sigma _{ij} \cdot \bf{n}$$

This equation implies that the stress vector $\bf{T}^{\left( n \right)}$ at any point $P$ in a continuum associated with a plane with normal unit vector $n$ can be expressed as a function of the stress vectors on the planes perpendicular to the coordinate axes, i.e. in terms of the components $\sigma_{ij}$ of the stress tensor $\boldsymbol{\sigma}$.

2D example

Let's see how we can derive the Cauchy's stress theorem in 2D based on force balance on triangular element.

According to force balance $\sum{\mathbf{F}} = \mathbf{0}$

$$T_1\cdot dA = \sigma_1\cdot dA_1 = \sigma_1\cdot dA\cdot n_1$$$$T_2\cdot dA = \sigma_2\cdot dA_2 = \sigma_2\cdot dA\cdot n_2$$

or

$$\left[ {\begin{array}{}T_1 \\ T_2 \end{array}} \right] = \left[ {\begin{array}{}\sigma_1 & 0 \\ 0 & \sigma_2 \end{array}} \right] \cdot \left[ {\begin{array}{} n_1 \\ n_2 \end{array}} \right]$$

Similarily, we can derive equation for triangular element which is not aligned with principal stresses.

According to force balance $\sum{\mathbf{F}} = \mathbf{0}$

$$T_1\cdot dA = \sigma_{11}\cdot dA_1 + \sigma_{21}\cdot dA_2 = \sigma_{11}\cdot dA\cdot n_1 + \sigma_{21}\cdot dA\cdot n_2$$$$T_2\cdot dA = \sigma_{12}\cdot dA_1 + \sigma_{22}\cdot dA_2 = \sigma_{12}\cdot dA\cdot n_1 + \sigma_{22}\cdot dA\cdot n_2$$

or

$$\left[ {\begin{array}{}T_1 \\ T_2 \end{array}} \right] = \left[ {\begin{array}{}\sigma_{11} & \sigma_{21} \\ \sigma_{12} & \sigma_{22} \end{array}} \right] \cdot \left[ {\begin{array}{} n_1 \\ n_2 \end{array}} \right]$$

Experiment 1

Lets explore what is relation between normal and shear stress on randomly oriented planes in 2D.


In [1]:
%pylab inline


Populating the interactive namespace from numpy and matplotlib

In [2]:
S = array([[10, 0], [0, 5]])
tau = []
sn = []

for theta in pi*uniform(size=5000):
    n = array([cos(theta), sin(theta)])
    sv = dot(S, n)
    sn.append(dot(sv, n))
    tau.append(norm(sv-n*dot(sv, n)))

plot(sn, tau, 'k.')
axis('equal')
margins(x=0.1, y=0.1)
show()


The above figure represents Mohr circle, named after Christian Otto Mohr, for stress in 2D

Experiment 2

Now we will explore what is relation between normal and shear stress on randomly oriented planes in 3D. Note that uniformly distributed unit vectors in 3D are calculated from properly scaled vectors with components chosen from normal distribution.


In [3]:
def rand_vec():
    v = uniform(size=3)
    return v / norm(v)

In [4]:
S = array([[5, 0, 0], [0, 9, 0], [0, 0, 15]])
tau = []
sn = []

for i in range(5000):
    n = rand_vec()
    sv = dot(S, n)
    sn.append(dot(sv, n))
    tau.append(norm(sv-n*dot(sv, n)))

plot(sn, tau, 'k.')
axis('equal')
margins(x=0.1, y=0.1)
show()


The above figure represents Mohr's circles for a three-dimensional state of stress


In [5]:
from IPython.core.display import HTML
def css_styling():
    styles = open("./css/sg2.css", "r").read()
    return HTML(styles)
css_styling()


Out[5]: