The matrix notations of Elasticity

Let the stress–strain ($\bs{\sigma}$–$\bs{\epsilon}$) relation ${\sigma} = [D]{\epsilon}$ be denoted as

where

For the plain strain problem, \eqref{eq:stress_strain} is reduced to

For the plain stress problem, we only need to replace $E$ with $E/(1-\nu^2)$ and $\nu$ with $\nu/(1-\nu)$ in \eqref{eq:plain_strain}.

In the case of axis-symmetric problem, we adopt the cylindrical coordinate and let $z$ be the symmetric axis. The non-zero components of stress are

and the non-zero components of strain are

The elastic matrix $[D]$ is

Element stiffness matrix and force vector (2D)

  1. Plain strain problem

Let $n$ be the number of node in an element. We adopt the isoparametric element, that is, the coordinate transformation and the displacement interpolation use the same shape functions. More precisely, the coordination transformation that transforms a global element to a standard, parent element through the isoparametric mapping is

where $(x_i,y_i)$ are the global coordinate of the $i_{th}$ node, $N_i$ is the shape function. The displacements are interpolated as

where $(u_i,v_i)$ are the displacement of the $i_{th}$ node.

Now suppose $n = 4$ and consider the plain strain case. By substituting the interpolated displacements \eqref{eq:uv_interpolate} into \eqref{eq:strain} for the 2D case we obtain

where

$\delta^e = [\delta_1^T, \delta_2^T, \delta_3^T, \delta_4^T]$, and $\delta_i = [u_i, v_i]^T$. Thus from \eqref{eq:plain_strain} we have

The element stiffness matrix is

where $j$ is the Jacobian determinant of

Note that

We compute the element stiffness matrix \eqref{eq:elem_stiff} numerically using the Gauss–Legendre quadrature rule, i.e.,

where $(\xi_i,\eta_i)$ and $w_i$ are the quadrature point and weight, respectively.

The force vector due to the body force is

where $[N] = [N^1, N^2, N^3, N^4]$ and

  1. Axis-symmetric problem

For the axis-symmetric problem, the coordinate transformation and displacement interpolation are

From \eqref{eq:axisym_epsilon} we have

and $\delta_i = [u_i, w_i]^T$. The element stiffness matrix becomes

The force vector due to the body force becomes

  1. Numerical integration

A good introduction to numerical introduction can be found in Sec. 5.5, p.455 of the book Finite Element Procedures (second edition) by Klaus-Jurgen Bathe. A polynomial up to the order $2N-1$ is integrated exactly when using a $N$-node Gauss quadrature. If a lower-order Gauss quadrature is used to compute the stiffness matrix, it can lead the stiffness matrix to be singular. In that case, a spurious zero energy mode or hourglass mode may exist. That is to say, there exists some particular displacement mode that has zero strain at the Gauss quadrature points. See more detailed discussion of spurious zero energy mode on p.239 of the book The Finite Element Method: Linear Static and Dynamic Finite Element Analysis by T. J. R. Hughes or here.

Nonlinear body force field

Consider a linear elastic, boundary value problem with the nonlinear body force $\bs{b}$ dependent on the displacement $\bs{u}$. the governing equation reads

with the boundary conditions

From the Principle of virtual work, we have

where $\delta\bs{u}$ is a virtual displacement filed (test solution) which satisfies $\delta\bs{u} = \bs{o}$ on $\Gamma_u$, and $\delta\bs{\epsilon} = \text{sym}(\nabla\delta\bs{u})$. Since $\bs{\sigma} = \bs{C}:\nabla\bs{u}$, the \eqref{eq:virtualwork} becomes

We use the Newton-Raphson method to solve the nonlinear problem \eqref{eq:virtualwork1}. Suppose the displacement $\bs{u} + d\bs{u}$ satisfies \eqref{eq:virtualwork1}, then we have

To the first order approximation, in the index form, the \eqref{eq:virtualwork2} can be rewritten as

Note that $C_{ijkl} = \lambda \delta_{ij} \delta_{kl} + \mu (\delta_{ik} \delta_{jl} + \delta_{il} \delta_{jk})$. According to the Galerkin method in FEM, we choose

and substitute $\delta u_i$ and $u_j$ into \eqref{eq:virtualwork3} to obtain