The Finite Element Method (FEM) is a powerful numerical technique used to obtain approximate solutions to a wide range of engineering problems, particularly those governed by differential equations. It is based on discretizing a structure or continuum into smaller parts, called finite elements, and formulating algebraic equations that can be solved using computational methods.
In FEM, a physical domain is divided into a collection of smaller and simpler parts, known as elements, which are connected at points called nodes. The behaviour of each element is approximated using polynomial interpolation functions, and the system of equations is assembled for the entire structure. These equations are then solved to obtain an approximate solution.
The Finite Element Method is particularly useful when dealing with:
The origin of FEM lies in both mathematics and engineering mechanics.
1943 – Richard Courant, a mathematician, introduced the concept of using piecewise polynomial interpolation over triangular subregions to solve the torsion problem. This laid the theoretical foundation of FEM.
1956 – Turner, Clough, Martin, and Topp applied the stiffness matrix approach to analyze aircraft structures. This marked the beginning of modern FEM in structural mechanics.
1960s–70s – FEM was generalized to thermal, fluid, and electromagnetic problems and popularized with the emergence of computers.
1980s onwards – Commercial FEA software such as ANSYS, ABAQUS, and NASTRAN emerged.
Today – FEM is indispensable in multiple fields of engineering and science.
The versatility of FEM lies in its ability to model and analyze various physical phenomena:
The Finite Element Method is a cornerstone of modern engineering analysis, enabling engineers to simulate and predict the behavior of real-world systems under a variety of physical conditions. With a robust mathematical foundation and widespread software implementation, FEM is both an academic and industrial standard.
Spring and bar elements are the simplest structural elements in the finite element method. They are used to model members that resist only axial deformation and serve as the foundation for understanding stiffness matrix formulation, nodal force–displacement relationships, and the assembly of element equations into a global system.
A spring element is the simplest one-dimensional finite element. It is assumed to resist only axial deformation and is defined by:
From Hooke’s Law for a linear spring:
\[f = k(u_2 - u_1)\]where:
At the individual nodes, the forces can be written as:
\[f_1 = -k(u_2 - u_1)\] \[f_2 = \phantom{-}k(u_2 - u_1)\]These satisfy Newton’s third law — equal and opposite forces.
The nodal force–displacement relation can be written as:
\[\begin{bmatrix} f_1 \\ f_2 \end{bmatrix} = k \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix}\]The element stiffness matrix is therefore:
\[[k] = k \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}\]A bar element is a straight structural member that resists only axial forces — either tension or compression. It is one of the most basic finite elements used to model trusses and axially loaded members in frames.
The axial strain is defined as the change in length per unit original length:
\[\varepsilon = \frac{u_2 - u_1}{L}\]Where $u_2 - u_1$ is the total elongation (or shortening) of the element.
From Hooke’s Law for axial loading:
\[\sigma = E \cdot \varepsilon\] \[\sigma = E \cdot \frac{u_2 - u_1}{L}\]Where:
The internal axial force in the bar is:
\[F = \sigma \cdot A\] \[F = \frac{EA}{L} (u_2 - u_1)\]This represents tension when $u_2 > u_1$ and compression when $u_2 < u_1$.
Considering equilibrium of each node:
\[f_1 = -\frac{EA}{L} (u_2 - u_1)\] \[f_2 = \phantom{-}\frac{EA}{L} (u_2 - u_1)\]Here $f_1$ and $f_2$ are the nodal forces (positive in tension).
The above equations can be written compactly as:
\[\begin{bmatrix} f_1 \\ f_2 \end{bmatrix} = \frac{EA}{L} \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix}\]Thus, the element stiffness matrix is:
\[[k] = \frac{EA}{L} \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}\]When several spring or bar elements are connected together to form a structure, their element stiffness equations must be combined into a global stiffness matrix. This process is called assembly.
The key idea:
Consider two spring elements connected in series, forming three nodes:
For Element 1:
\[\begin{bmatrix} f_1 \\ f_2 \end{bmatrix} = k_1 \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix}\]For Element 2:
\[\begin{bmatrix} f'_2 \\ f_3 \end{bmatrix} = k_2 \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_2 \\ u_3 \end{bmatrix}\]The total force at Node 2 is the sum of contributions from both elements:
\[F_2 = f_2 + f'_2\]Collecting contributions for all three nodes, we obtain:
\[\begin{bmatrix} F_1 \\ F_2 \\ F_3 \end{bmatrix} = \begin{bmatrix} k_1 & -k_1 & 0 \\ -k_1 & k_1 + k_2 & -k_2 \\ 0 & -k_2 & k_2 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \\ u_3 \end{bmatrix}\]Consider two bar elements connected in series, forming three nodes:
From the individual element equations:
Element 1:
\[\begin{bmatrix} f_1 \\ f_2 \end{bmatrix} = k_1 \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix}\]Element 2:
\[\begin{bmatrix} f_2' \\ f_3 \end{bmatrix} = k_2 \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix} \begin{bmatrix} u_2 \\ u_3 \end{bmatrix}\]The total force at Node 2 is the sum of contributions from both elements:
\[F_2 = f_2 + f_2'\]Combining all three nodes, the global stiffness equation is:
\[\begin{bmatrix} F_1 \\ F_2 \\ F_3 \end{bmatrix} = \begin{bmatrix} k_1 & -k_1 & 0 \\ -k_1 & k_1 + k_2 & -k_2 \\ 0 & -k_2 & k_2 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \\ u_3 \end{bmatrix}\]Here:
Problem:
Consider the two-element system shown in Figure below.
Determine the nodal displacements \(U_2\) and \(U_3\).
The global finite element equations are
\[\begin{bmatrix} F_1 \\[6pt] F_2 \\[6pt] F_3 \end{bmatrix} = \begin{bmatrix} k_1 & -k_1 & 0 \\[6pt] -k_1 & k_1 + k_2 & -k_2 \\[6pt] 0 & -k_2 & k_2 \end{bmatrix} \begin{bmatrix} U_1 \\[6pt] U_2 \\[6pt] U_3 \end{bmatrix}\]Substitute values \(k_1 = 50, \ k_2 = 75\):
\[\begin{bmatrix} F_1 \\[6pt] F_2 \\[6pt] F_3 \end{bmatrix} = \begin{bmatrix} 50 & -50 & 0 \\[6pt] -50 & 125 & -75 \\[6pt] 0 & -75 & 75 \end{bmatrix} \begin{bmatrix} U_1 \\[6pt] U_2 \\[6pt] U_3 \end{bmatrix}\]Constraint equation from Row 1:
\[-50 U_2 = F_1\]Active system (Rows 2 and 3):
\[\begin{bmatrix} 125 & -75 \\[6pt] -75 & 75 \end{bmatrix} \begin{bmatrix} U_2 \\[6pt] U_3 \end{bmatrix} = \begin{bmatrix} 75 \\[6pt] 75 \end{bmatrix}\]Equation (2):
\[125 U_2 - 75 U_3 = 75\]Equation (3):
\[-75 U_2 + 75 U_3 = 75\]From Equation (3):
\[75 (U_3 - U_2) = 75 \;\;\Rightarrow\;\; U_3 = U_2 + 1\]Substitute into Equation (2):
\[125 U_2 - 75 (U_2 + 1) = 75\] \[125 U_2 - 75 U_2 - 75 = 75\] \[50 U_2 = 150 \;\;\Rightarrow\;\; U_2 = 3 \ \text{in}\]Back-substitute:
\[U_3 = U_2 + 1 = 3 + 1 = 4 \ \text{in}\]From constraint equation:
\[F_1 = -50 U_2 = -50 (3) = -150 \ \text{lb}\]Check equilibrium:
\[F_1 + F_2 + F_3 = (-150) + 75 + 75 = 0 \quad \checkmark\]Example 2: A steel bar is composed of two segments joined in series.
The bar is fixed at the left end (Node 1) and subjected to a tensile load of $F = 50 \ \text{kN}$ at the free end (Node 3).
Find:
For Element 1 (Node 1–2):
\[k_1 = \frac{E_1 A_1}{L_1}\]Convert units: $E_1 = 200 \times 10^3 \ \text{MPa}$, $A_1 = 250 \ \text{mm}^2$, $L_1 = 600 \ \text{mm}$
\[k_1 = \frac{(200 \times 10^3)(250)}{600} = 83\,333.33 \ \text{N/mm}\]For Element 2 (Node 2–3):
\[k_2 = \frac{E_2 A_2}{L_2}\] \[k_2 = \frac{(70 \times 10^3)(300)}{400} = 52\,500 \ \text{N/mm}\]From assembly (Part 3):
\[[K] = \begin{bmatrix} k_1 & -k_1 & 0 \\ -k_1 & k_1 + k_2 & -k_2 \\ 0 & -k_2 & k_2 \end{bmatrix}\]Substitute $k_1, k_2$:
\[[K] = \begin{bmatrix} 83333.33 & -83333.33 & 0 \\ -83333.33 & 83333.33 + 52500 & -52500 \\ 0 & -52500 & 52500 \end{bmatrix}\] \[[K] = \begin{bmatrix} 83333.33 & -83333.33 & 0 \\ -83333.33 & 135833.33 & -52500 \\ 0 & -52500 & 52500 \end{bmatrix}\]Given:
The reduced system (removing first row/column for $u_1=0$):
\[\begin{bmatrix} 135833.33 & -52500 \\ -52500 & 52500 \end{bmatrix} \begin{bmatrix} u_2 \\ u_3 \end{bmatrix} = \begin{bmatrix} 0 \\ 50000 \end{bmatrix}\]From the second equation:
\[-52500 \cdot u_2 + 52500 \cdot u_3 = 50000\] \[u_3 - u_2 = \frac{50000}{52500} \approx 0.95238 \ \text{mm}\]From the first equation:
\[135833.33 \cdot u_2 - 52500 \cdot u_3 = 0\]Substitute $u_3 = u_2 + 0.95238$:
\[135833.33 \cdot u_2 - 52500(u_2 + 0.95238) = 0\] \[(135833.33 - 52500) u_2 = 52500 \cdot 0.95238\] \[83333.33 \cdot u_2 = 50000\] \[u_2 = 0.6 \ \text{mm}\] \[u_3 = 0.6 + 0.95238 = 1.55238 \ \text{mm}\]For Element 1:
\[F_1 = k_1 (u_2 - u_1) = 83333.33 (0.6 - 0) = 50000 \ \text{N}\] \[\sigma_1 = \frac{F_1}{A_1} = \frac{50000}{250} = 200 \ \text{MPa}\]For Element 2:
\[F_2 = k_2 (u_3 - u_2) = 52500 (1.55238 - 0.6) \approx 50000 \ \text{N}\] \[\sigma_2 = \frac{F_2}{A_2} = \frac{50000}{300} \approx 166.67 \ \text{MPa}\]$u_2 = 0.6 \ \text{mm}$ $u_3 = 1.55238 \ \text{mm}$ $F_1 = F_2 = 50 \ \text{kN}$ $\sigma_1 = 200 \ \text{MPa}$ $\sigma_2 \approx 166.67 \ \text{MPa}$
Problem statement:
Figure depicts a system of three linearly elastic springs supporting three equal weights W suspended in a vertical plane. Treating the springs as finite elements, determine the vertical displacement of each weight.
Each spring element stiffness matrix is (general form):
\[k^{(e)} = \begin{bmatrix} k & -k \\ -k & k \end{bmatrix}\]For the three springs:
Element (1), stiffness = \(3k\)
\(k^{(1)} =
\begin{bmatrix}
3k & -3k \\
-3k & 3k
\end{bmatrix}\)
Element (2), stiffness = \(2k\)
\(k^{(2)} =
\begin{bmatrix}
2k & -2k \\
-2k & 2k
\end{bmatrix}\)
Element (3), stiffness = \(k\)
\(k^{(3)} =
\begin{bmatrix}
k & -k \\
-k & k
\end{bmatrix}\)
Assign global displacements: \(U_1, U_2, U_3, U_4\).
Mapping:
Expanding each element stiffness matrix into the global 4×4 form:
Adding them gives the global stiffness matrix:
\[K = k \begin{bmatrix} 3 & -3 & 0 & 0 \\ -3 & 5 & -2 & 0 \\ 0 & -2 & 3 & -1 \\ 0 & 0 & -1 & 1 \end{bmatrix}\]The global system is:
\[K \, U = F\]That is:
\[k \begin{bmatrix} 3 & -3 & 0 & 0 \\ -3 & 5 & -2 & 0 \\ 0 & -2 & 3 & -1 \\ 0 & 0 & -1 & 1 \end{bmatrix} \begin{bmatrix} U_1 \\ U_2 \\ U_3 \\ U_4 \end{bmatrix} = \begin{bmatrix} F_1 \\ W \\ W \\ W \end{bmatrix}\]Node 1 is fixed: \(U_1 = 0\).
Constraint equation:
\[-3k U_2 = F_1\]Active system (removing row 1, col 1):
\[k \begin{bmatrix} 5 & -2 & 0 \\ -2 & 3 & -1 \\ 0 & -1 & 1 \end{bmatrix} \begin{bmatrix} U_2 \\ U_3 \\ U_4 \end{bmatrix} = \begin{bmatrix} W \\ W \\ W \end{bmatrix}\]The equations are:
1) \(5 U_2 - 2 U_3 = \tfrac{W}{k}\)
2) \(-2 U_2 + 3 U_3 - U_4 = \tfrac{W}{k}\)
3) \(-U_3 + U_4 = \tfrac{W}{k}\)
From (3):
\[U_4 = U_3 + \tfrac{W}{k}\]Substitute into (2):
\[-2 U_2 + 3 U_3 - (U_3 + \tfrac{W}{k}) = \tfrac{W}{k}\] \[-2 U_2 + 2 U_3 = 2 \tfrac{W}{k} \;\;\Rightarrow\;\; - U_2 + U_3 = \tfrac{W}{k}\]So:
\[U_3 = U_2 + \tfrac{W}{k}\]Now substitute into (1):
\[5 U_2 - 2 (U_2 + \tfrac{W}{k}) = \tfrac{W}{k}\] \[5 U_2 - 2 U_2 - 2 \tfrac{W}{k} = \tfrac{W}{k}\] \[3 U_2 = 3 \tfrac{W}{k} \;\;\Rightarrow\;\; U_2 = \tfrac{W}{k}\]Then:
\[U_3 = U_2 + \tfrac{W}{k} = 2 \tfrac{W}{k}\] \[U_4 = U_3 + \tfrac{W}{k} = 3 \tfrac{W}{k}\]From constraint equation:
\[F_1 = -3k U_2 = -3k \left(\tfrac{W}{k}\right) = -3W\]\(U_1 = 0\)
\(U_2 = \tfrac{W}{k}\)
\(U_3 = \tfrac{2W}{k}\)
\(U_4 = \tfrac{3W}{k}\)
Reaction: \(F_1 = -3W\)
Interpretation:
The displacements increase linearly with the node number since each spring carries the same load. The reaction balances the three applied weights.
Feature / Formula | Spring Element | Bar Element (1D) |
---|---|---|
DOFs per node | 1 (axial displacement) | 1 (axial displacement) |
Material law | Hooke’s law: $f = k (u_2 - u_1)$ | Hooke’s law: $\sigma = E \varepsilon$ |
Strain relation | Not defined (spring elongation only) | $\varepsilon = \frac{u_2 - u_1}{L}$ |
Stress relation | Not applicable | $\sigma = E \frac{u_2 - u_1}{L}$ |
Element stiffness | $k$ (given or computed) | $\frac{EA}{L}$ |
Stiffness matrix | $\begin{bmatrix} k & -k \ -k & k \end{bmatrix}$ | $\frac{EA}{L} \begin{bmatrix} 1 & -1 \ -1 & 1 \end{bmatrix}$ |
Typical units | N/m | N/m |
Application areas | Springs, supports, connectors | Truss members, axially loaded bars |
Assumptions | Linear elastic, small deformation | Linear elastic, uniform cross-section, small deformation |
Main output | Nodal forces and displacements | Nodal displacements, element forces, and stresses |
Foundation Elements
Symmetric Stiffness Matrix
Force Equilibrium
Assembly Rule
Physical Meaning of $k$
Units Consistency
Load–Displacement Relationship
The Principle of Minimum Potential Energy is a fundamental concept in mechanics and the basis for many finite element formulations. It states that:
Of all displacement states of a body or structure, subjected to external loading, that satisfy the geometric boundary conditions (imposed displacements), the displacement state that also satisfies the equilibrium equations is such that the total potential energy is a minimum for stable equilibrium.
In simple words,
Of all the possible displacement configurations that a structure can assume under given loads and boundary conditions, the one that actually occurs is the one for which the total potential energy is minimum.
This principle provides an energy-based route to deriving equilibrium equations, rather than directly using Newton’s laws or force equilibrium.
The total potential energy of a deformable body is the sum of:
Where:
For a bar of length $L$, cross-section $A$, modulus $E$:
\[U = \frac{1}{2} \int_{0}^{L} \sigma \varepsilon \, dV\]Using:
\[\sigma = E \varepsilon, \quad \varepsilon = \frac{du}{dx}\]and $dV = A \, dx$:
\[U = \frac{1}{2} \int_{0}^{L} E A \left( \frac{du}{dx} \right)^2 dx\]For a linear displacement field in a bar element:
\[u(x) = N_1(x)u_1 + N_2(x)u_2\]where $N_1, N_2$ are shape functions.
If nodal loads $F_1, F_2$ are applied:
\[V = - \left( F_1 u_1 + F_2 u_2 \right)\](negative sign: loads doing positive work reduce total potential energy)
The governing equation of the minimum potential energy principle is:
\[\frac{\partial \Pi}{\partial u_i} = 0 \quad \text{for each DOF } u_i\]This condition ensures that total potential energy is stationary (minimum for stable equilibrium).
1) Strain energy:
\[U = \frac{1}{2} \frac{EA}{L} (u_2 - u_1)^2\]2) Potential of external loads:
\[V = -F_1 u_1 - F_2 u_2\]3) Total potential energy:
\[\Pi = \frac{1}{2} \frac{EA}{L} (u_2 - u_1)^2 - F_1 u_1 - F_2 u_2\]4) Apply minimum energy condition:
5) Matrix form:
\[\begin{bmatrix} \frac{EA}{L} & -\frac{EA}{L} \\ -\frac{EA}{L} & \frac{EA}{L} \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix} = \begin{bmatrix} F_1 \\ F_2 \end{bmatrix}\]This is exactly the stiffness matrix equation for the bar element derived earlier — showing how energy methods naturally lead to FEM formulations.
Problem: A uniform steel bar of length $L = 2.0 \ \mathrm{m}$, cross-sectional area $A = 1.0 \times 10^{-4} \ \mathrm{m}^2$, and modulus of elasticity $E = 200 \ \mathrm{GPa}$ is fixed at the left end (Node 1) and subjected to an axial load $P = 10 \ \mathrm{kN}$ at the free end (Node 2).
Using the principle of minimum potential energy, determine the displacement at Node 2.
We know:
\[U = \frac{1}{2} \frac{EA}{L} (u_2 - u_1)^2\]Here $u_1 = 0$ (fixed), so:
\[U = \frac{1}{2} \frac{EA}{L} (u_2)^2\]Potential of external loads:
\[V = -P u_2\]Total potential energy:
\[\Pi = \frac{1}{2} \frac{EA}{L} u_2^2 - P u_2\]From the principle:
\[\frac{\partial \Pi}{\partial u_2} = 0\]Differentiate:
\[\frac{EA}{L} u_2 - P = 0\]Substitute values:
\[E = 2.0 \times 10^{11} \ \mathrm{Pa}\] \[A = 1.0 \times 10^{-4} \ \mathrm{m}^2\] \[L = 2.0 \ \mathrm{m}\] \[P = 10,000 \ \mathrm{N}\] \[\frac{(2.0 \times 10^{11})(1.0 \times 10^{-4})}{2.0} u_2 - 10,000 = 0\] \[(1.0 \times 10^{7}) u_2 = 10,000\] \[u_2 = 0.001 \ \mathrm{m} = 1.0 \ \mathrm{mm}\]The free end of the bar displaces 1 mm under the given load.
So far, we’ve applied the Minimum Potential Energy Principle to a single element with a single unknown displacement. However, most FEM problems involve many elements and multiple degrees of freedom (DOFs).
The principle generalizes naturally:
For a structure with $n$ degrees of freedom, the actual displacement configuration makes the total potential energy stationary (minimum) with respect to each DOF.
Mathematically:
\[\frac{\partial \Pi}{\partial u_i} = 0 \quad \text{for } i = 1, 2, \dots, n\]This leads directly to $n$ simultaneous equilibrium equations.
Consider a structure made of $m$ bar elements, each with stiffness matrix:
\[[k]^{(e)} = \frac{E^{(e)} A^{(e)}}{L^{(e)}} \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}\]The strain energy for element $e$ is:
\[U^{(e)} = \frac{1}{2} \begin{bmatrix} u_i & u_j \end{bmatrix} [k]^{(e)} \begin{bmatrix} u_i \\ u_j \end{bmatrix}\]where $u_i$ and $u_j$ are global DOFs corresponding to element nodes.
The total strain energy of the system is:
\[U = \sum_{e=1}^{m} U^{(e)}\]For nodal forces $F_1, F_2, \dots, F_n$:
\[V = - \sum_{i=1}^{n} F_i u_i\]For each DOF $u_k$:
\[\frac{\partial \Pi}{\partial u_k} = 0\]This yields n equations:
\[[K] \{u\} = \{F\}\]where:
The process above is essentially the energy-based derivation of the Direct Stiffness Method:
Consider a two-bar system:
Each bar obeys:
\[[k]^{(e)} = \frac{EA}{L} \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}\]Assembly (from energy principle) gives:
\[[K] = \begin{bmatrix} k_1 & -k_1 & 0 \\ -k_1 & k_1 + k_2 & -k_2 \\ 0 & -k_2 & k_2 \end{bmatrix}\]Concept | Expression / Formula | Remarks |
---|---|---|
Total Potential Energy | $\Pi = U + V$ | Sum of strain energy $U$ and potential of external loads $V$ |
Strain Energy (1D Bar) | $U = \frac{1}{2} \frac{EA}{L} (u_2 - u_1)^2$ | Based on Hooke’s law and linear displacement field |
External Load Potential | $V = -\sum_{i=1}^{n} F_i u_i$ | Negative if loads do positive work |
Minimum Energy Condition | $\frac{\partial \Pi}{\partial u_i} = 0$ | Applied for each degree of freedom |
Resulting Equations | $[K]{u} = {F}$ | Leads to the same stiffness equations as force equilibrium |
Element Stiffness (1D Bar) | $[k] = \frac{EA}{L} \begin{bmatrix}1 & -1 \ -1 & 1\end{bmatrix}$ | Derived from energy minimization or direct stiffness method |
Multi-Element Strain Energy | $U = \frac{1}{2} \sum_{e=1}^m {u^{(e)}}^T [k]^{(e)} {u^{(e)}}$ | Summation over all elements in the system |
Especially useful in:
The simple line elements discussed earlier introduced the concepts of nodes, nodal displacements, and element stiffness matrices.
In this section, we extend these ideas to create a finite element model of a structure composed of many elements.
We focus on truss structures, defined as assemblies of straight elastic members connected by pin joints, subjected only to axial forces.
Even though the bar element is inherently one-dimensional, it can effectively be used in analyzing both 2D and 3D trusses.
The global coordinate system (X–Y or X–Y–Z) is the reference frame in which structural displacements are expressed. It is usually chosen for convenience, aligned with the geometry of the structure.
Consider the cantilever truss in Figure (3.1 a). If we isolate a single joint (Figure 3.1 b), we observe:
This leads to key FEM premises:
Displacement compatibility:
The displacement of each connected element at a joint must equal the global nodal displacement.
Transformation requirement:
Each element’s stiffness matrix and forces must be transformed from local element coordinates to the global coordinate system for consistent assembly.
Post-processing:
After solving for nodal displacements in the global system, element stresses and strains are obtained by transforming results back to the element’s local coordinates.
In engineering practice, the final quantity of interest is stress, since stresses are compared with material strength (e.g., yield stress).
However, it is easier to prescribe external loads than to predict displacements.
Therefore:
This is the essence of the stiffness method.
In contrast, the flexibility method takes forces as primary unknowns and computes displacements afterwards. But displacement compatibility at nodes becomes algebraically tedious.
Thus, FEM universally prefers the stiffness (displacement-based) approach.
Returning to Figure 3.1b, where multiple elements meet at a node:
The Direct Stiffness Method involves:
This ensures:
To illustrate how element properties are converted to the global coordinate system,
consider a 1D bar element as a structural member of a 2D truss.
This simple example demonstrates the general FEM assembly procedure:
🔎 Note: In FEM terminology, strain and stress are called secondary variables only because they are computed after displacement solution. In design, they are of primary importance.
Consider the two-element truss shown below:
Writing equilibrium at each node (Figure 3.3):
Node 1: \(F_1 - f_1^{(1)} \cos\theta_1 = 0 \tag{3.1a}\)
\[F_2 - f_1^{(1)} \sin\theta_1 = 0 \tag{3.1b}\]Node 2: \(F_3 - f_2^{(2)} \cos\theta_2 = 0 \tag{3.2a}\)
\[F_4 - f_2^{(2)} \sin\theta_2 = 0 \tag{3.2b}\]Node 3: \(F_5 - f_3^{(1)} \cos\theta_1 - f_3^{(2)} \cos\theta_2 = 0 \tag{3.3a}\)
\[F_6 - f_3^{(1)} \sin\theta_1 - f_3^{(2)} \sin\theta_2 = 0 \tag{3.3b}\]Consider a bar element oriented at angle $\theta$ (Figure 3.4):
Relation between local and global displacements:
\[u_1^{(e)} = U_1^{(e)} \cos\theta + U_2^{(e)} \sin\theta \tag{3.4a}\] \[v_1^{(e)} = -U_1^{(e)} \sin\theta + U_2^{(e)} \cos\theta \tag{3.4b}\] \[u_2^{(e)} = U_3^{(e)} \cos\theta + U_4^{(e)} \sin\theta \tag{3.4c}\] \[v_2^{(e)} = -U_3^{(e)} \sin\theta + U_4^{(e)} \cos\theta \tag{3.4d}\]The axial deformation of element $e$ is:
\[\delta^{(e)} = u_2^{(e)} - u_1^{(e)} = (U_3^{(e)} - U_1^{(e)}) \cos\theta + (U_4^{(e)} - U_2^{(e)}) \sin\theta \tag{3.5}\]The corresponding axial force:
\[f^{(e)} = k^{(e)} \, \delta^{(e)} \tag{3.6}\]For Element 1 (nodes 1–3):
\[f_3^{(1)} = -f_1^{(1)} = k^{(1)}\Big[(U_5 - U_1)\cos\theta_1 + (U_6 - U_2)\sin\theta_1\Big] \tag{3.7}\]For Element 2 (nodes 2–3):
\[f_3^{(2)} = -f_2^{(2)} = k^{(2)}\Big[(U_5 - U_3)\cos\theta_2 + (U_6 - U_4)\sin\theta_2\Big] \tag{3.8}\]Now substituting Eqs. (3.7) and (3.8) into equilibrium equations (3.1–3.3):
\[-k^{(1)}\Big[(U_5-U_1)\cos\theta_1 + (U_6-U_2)\sin\theta_1\Big]\cos\theta_1 = F_1 \tag{3.9}\] \[-k^{(1)}\Big[(U_5-U_1)\cos\theta_1 + (U_6-U_2)\sin\theta_1\Big]\sin\theta_1 = F_2 \tag{3.10}\] \[-k^{(2)}\Big[(U_5-U_3)\cos\theta_2 + (U_6-U_4)\sin\theta_2\Big]\cos\theta_2 = F_3 \tag{3.11}\] \[-k^{(2)}\Big[(U_5-U_3)\cos\theta_2 + (U_6-U_4)\sin\theta_2\Big]\sin\theta_2 = F_4 \tag{3.12}\] \[k^{(1)}\Big[(U_5-U_1)\cos\theta_1 + (U_6-U_2)\sin\theta_1\Big]\cos\theta_1 + k^{(2)}\Big[(U_5-U_3)\cos\theta_2 + (U_6-U_4)\sin\theta_2\Big]\cos\theta_2 = F_5 \tag{3.13}\] \[k^{(1)}\Big[(U_5-U_1)\cos\theta_1 + (U_6-U_2)\sin\theta_1\Big]\sin\theta_1 + k^{(2)}\Big[(U_5-U_3)\cos\theta_2 + (U_6-U_4)\sin\theta_2\Big]\sin\theta_2 = F_6 \tag{3.14}\]The six equilibrium equations can be written compactly as:
\[[K]\{U\} = \{F\} \tag{3.15}\]where:
This is the standard FEM system of equations:
\[[K]\{U\} = \{F\} \tag{3.16}\]Application of boundary conditions and solution steps follow in subsequent sections.
In the previous section, we obtained the global equilibrium equations by directly writing nodal equilibrium conditions.
However, this approach becomes cumbersome for systems with many elements.
A more systematic method is to transform each element stiffness matrix from the local element coordinates to the global coordinate system.
This allows for direct assembly of the global stiffness matrix.
For a bar element in its local (element) coordinate system, the equilibrium equations are:
\[\begin{bmatrix} k_e & -k_e \\ -k_e & k_e \end{bmatrix} \begin{Bmatrix} u_1^{(e)} \\ u_2^{(e)} \end{Bmatrix} = \begin{Bmatrix} f_1^{(e)} \\ f_2^{(e)} \end{Bmatrix} \tag{3.17}\]where:
We want to express the equilibrium equations in the global coordinate system as:
\[[K^{(e)}] \begin{Bmatrix} U_1^{(e)} \\ U_2^{(e)} \\ U_3^{(e)} \\ U_4^{(e)} \end{Bmatrix} = \begin{Bmatrix} F_1^{(e)} \\ F_2^{(e)} \\ F_3^{(e)} \\ F_4^{(e)} \end{Bmatrix} \tag{3.18}\]Here:
From geometry (see Figure 3.4), the relation between local axial displacements and global displacements is:
\[u_1^{(e)} = U_1^{(e)} \cos\theta + U_2^{(e)} \sin\theta \tag{3.19}\] \[u_2^{(e)} = U_3^{(e)} \cos\theta + U_4^{(e)} \sin\theta \tag{3.20}\]In matrix form:
\[\begin{Bmatrix} u_1^{(e)} \\ u_2^{(e)} \end{Bmatrix} = [R] \begin{Bmatrix} U_1^{(e)} \\ U_2^{(e)} \\ U_3^{(e)} \\ U_4^{(e)} \end{Bmatrix} \tag{3.21}\]where the transformation matrix $[R]$ is:
\[[R] = \begin{bmatrix} \cos\theta & \sin\theta & 0 & 0 \\ 0 & 0 & \cos\theta & \sin\theta \end{bmatrix} \tag{3.22}\]Substituting Eq. (3.21) into Eq. (3.17):
\[[k^{(e)}][R] \begin{Bmatrix} U_1^{(e)} \\ U_2^{(e)} \\ U_3^{(e)} \\ U_4^{(e)} \end{Bmatrix} = \begin{Bmatrix} f_1^{(e)} \\ f_2^{(e)} \end{Bmatrix} \tag{3.23}\]Premultiplying by $[R]^T$:
\[[R]^T [k^{(e)}][R] \begin{Bmatrix} U_1^{(e)} \\ U_2^{(e)} \\ U_3^{(e)} \\ U_4^{(e)} \end{Bmatrix} = \begin{Bmatrix} F_1^{(e)} \\ F_2^{(e)} \\ F_3^{(e)} \\ F_4^{(e)} \end{Bmatrix} \tag{3.26}\]Thus, the global element stiffness matrix is:
\[[K^{(e)}] = [R]^T [k^{(e)}] [R] \tag{3.27}\]With $c = \cos\theta$, $s = \sin\theta$, we obtain:
\[[K^{(e)}] = k_e \begin{bmatrix} c^2 & cs & -c^2 & -cs \\ cs & s^2 & -cs & -s^2 \\ -c^2 & -cs & c^2 & cs \\ -cs & -s^2 & cs & s^2 \end{bmatrix} \tag{3.28}\]For an element connecting nodes $i$ and $j$ with global coordinates:
The element length is:
\[L = \sqrt{(X_j - X_i)^2 + (Y_j - Y_i)^2} \tag{3.29}\]The unit vector along the element is:
\[\vec{l} = \dfrac{1}{L} \big[(X_j - X_i)\mathbf{i} + (Y_j - Y_i)\mathbf{j}\big] \tag{3.30}\]The direction cosines are:
\[\cos\theta = \dfrac{X_j - X_i}{L} \tag{3.31}\] \[\sin\theta = \dfrac{Y_j - Y_i}{L} \tag{3.32}\]Thus, the global element stiffness matrix (Eq. 3.28) can be constructed directly from nodal coordinates, along with $A$, $E$, and $L$.
Having derived how to transform the element stiffness matrix into the global coordinate system, we now describe the direct assembly procedure.
This method constructs the global stiffness matrix element by element, using connectivity relations.
For a two-element truss (Figure 3.2), the global element stiffness matrices are obtained using Equation (3.28).
For element 1:
\[[K^{(1)}] = \begin{bmatrix} k^{(1)}_{11} & k^{(1)}_{12} & k^{(1)}_{13} & k^{(1)}_{14} \\ k^{(1)}_{21} & k^{(1)}_{22} & k^{(1)}_{23} & k^{(1)}_{24} \\ k^{(1)}_{31} & k^{(1)}_{32} & k^{(1)}_{33} & k^{(1)}_{34} \\ k^{(1)}_{41} & k^{(1)}_{42} & k^{(1)}_{43} & k^{(1)}_{44} \end{bmatrix} \tag{3.33}\]For element 2:
\[[K^{(2)}] = \begin{bmatrix} k^{(2)}_{11} & k^{(2)}_{12} & k^{(2)}_{13} & k^{(2)}_{14} \\ k^{(2)}_{21} & k^{(2)}_{22} & k^{(2)}_{23} & k^{(2)}_{24} \\ k^{(2)}_{31} & k^{(2)}_{32} & k^{(2)}_{33} & k^{(2)}_{34} \\ k^{(2)}_{41} & k^{(2)}_{42} & k^{(2)}_{43} & k^{(2)}_{44} \end{bmatrix} \tag{3.34}\]Each element displacement vector must be expressed in terms of the global displacement vector.
For element 1:
\[\{U^{(1)}\} = \begin{Bmatrix} U^{(1)}_1 \\ U^{(1)}_2 \\ U^{(1)}_3 \\ U^{(1)}_4 \end{Bmatrix} \;\;\Rightarrow\;\; \begin{Bmatrix} U_1 \\ U_2 \\ U_5 \\ U_6 \end{Bmatrix} \tag{3.35}\]For element 2:
\[\{U^{(2)}\} = \begin{Bmatrix} U^{(2)}_1 \\ U^{(2)}_2 \\ U^{(2)}_3 \\ U^{(2)}_4 \end{Bmatrix} \;\;\Rightarrow\;\; \begin{Bmatrix} U_3 \\ U_4 \\ U_5 \\ U_6 \end{Bmatrix} \tag{3.36}\]These equations describe element-to-global displacement mapping.
To organize connectivity, we use a correspondence table:
Global Displacement | Element 1 Displacement | Element 2 Displacement |
---|---|---|
$U_1$ | $u^{(1)}_1$ | 0 |
$U_2$ | $u^{(1)}_2$ | 0 |
$U_3$ | 0 | $u^{(2)}_1$ |
$U_4$ | 0 | $u^{(2)}_2$ |
$U_5$ | $u^{(1)}_3$ | $u^{(2)}_3$ |
$U_6$ | $u^{(1)}_4$ | $u^{(2)}_4$ |
Interpretation:
Using the correspondence, the global stiffness matrix is assembled term by term:
The symmetry of the stiffness matrix has been used to avoid repetition.
The final global stiffness matrix $[K]$ is identical to that obtained earlier by the equilibrium method (Section 3.2).
This confirms the Direct Stiffness Method:
where
Problem Statement:
Consider the two-element truss shown in Figure 3.2.
Transform the stiffness matrix of each element into the global coordinate system and assemble the global stiffness matrix for the complete truss.
For element 1, \(\theta_1 = \dfrac{\pi}{4}\Rightarrow
\cos\theta_1=\sin\theta_1=\dfrac{\sqrt{2}}{2}.\)
Thus
Use the general transformed element stiffness (Eq. 3.28):
\[[K^{(e)}] = k_e \begin{bmatrix} c^2 & cs & -c^2 & -cs \\ cs & s^2 & -cs & -s^2 \\ - c^2 & -cs & c^2 & cs \\ - cs & -s^2 & cs & s^2 \end{bmatrix}\]Substituting (c=s=\dfrac{\sqrt{2}}{2}) and (k_e=k_1) gives
\[[K^{(1)}] = k_1 \begin{bmatrix} \tfrac12 & \tfrac12 & -\tfrac12 & -\tfrac12 \\ \tfrac12 & \tfrac12 & -\tfrac12 & -\tfrac12 \\ -\tfrac12 & -\tfrac12 & \tfrac12 & \tfrac12 \\ -\tfrac12 & -\tfrac12 & \tfrac12 & \tfrac12 \end{bmatrix} = \frac{k_1}{2} \begin{bmatrix} 1 & 1 & -1 & -1 \\ 1 & 1 & -1 & -1 \\ -1 & -1 & 1 & 1 \\ -1 & -1 & 1 & 1 \end{bmatrix}.\]For element 2, \(\theta_2 = 0\Rightarrow \cos\theta_2=1,\; \sin\theta_2=0.\)
Substitute into Eq. (3.28) with (k_e=k_2):
\[[K^{(2)}] = k_2 \begin{bmatrix} 1 & 0 & -1 & 0 \\ 0 & 0 & 0 & 0 \\ -1 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix}.\]From the element-to-global mapping (Eqs. 3.35–3.36):
Use the correspondence table to place each element’s stiffness terms into the appropriate positions of the global (6\times6) matrix.
Let us list every assembled global stiffness entry (K_{ij}) (indices 1..6), including those that are zero.
\[\begin{aligned} K_{11} &= \tfrac{k_1}{2}, &\qquad K_{12} &= \tfrac{k_1}{2}, &\qquad K_{13} &= 0, &\qquad K_{14} &= 0, &\qquad K_{15} &= -\tfrac{k_1}{2}, &\qquad K_{16} &= -\tfrac{k_1}{2},\\[6pt] K_{21} &= \tfrac{k_1}{2}, &\qquad K_{22} &= \tfrac{k_1}{2}, &\qquad K_{23} &= 0, &\qquad K_{24} &= 0, &\qquad K_{25} &= -\tfrac{k_1}{2}, &\qquad K_{26} &= -\tfrac{k_1}{2},\\[6pt] K_{31} &= 0, &\qquad K_{32} &= 0, &\qquad K_{33} &= k_2, &\qquad K_{34} &= 0, &\qquad K_{35} &= -k_2, &\qquad K_{36} &= 0,\\[6pt] K_{41} &= 0, &\qquad K_{42} &= 0, &\qquad K_{43} &= 0, &\qquad K_{44} &= 0, &\qquad K_{45} &= 0, &\qquad K_{46} &= 0,\\[6pt] K_{51} &= -\tfrac{k_1}{2}, &\qquad K_{52} &= -\tfrac{k_1}{2}, &\qquad K_{53} &= -k_2, &\qquad K_{54} &= 0, &\qquad K_{55} &= \tfrac{k_1}{2} + k_2, &\qquad K_{56} &= \tfrac{k_1}{2},\\[6pt] K_{61} &= -\tfrac{k_1}{2}, &\qquad K_{62} &= -\tfrac{k_1}{2}, &\qquad K_{63} &= 0, &\qquad K_{64} &= 0, &\qquad K_{65} &= \tfrac{k_1}{2}, &\qquad K_{66} &= \tfrac{k_1}{2}. \end{aligned}\](Matrix symmetry implies (K_{ij}=K_{ji}); both upper and lower parts are listed for clarity.)
The assembled global stiffness matrix for the two-element truss is
\[[K] = \begin{bmatrix} \; \tfrac{k_1}{2} & \; \tfrac{k_1}{2} & 0 & 0 & -\tfrac{k_1}{2} & -\tfrac{k_1}{2} \\ \; \tfrac{k_1}{2} & \; \tfrac{k_1}{2} & 0 & 0 & -\tfrac{k_1}{2} & -\tfrac{k_1}{2} \\ 0 & 0 & k_2 & 0 & -k_2 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 \\ -\,\tfrac{k_1}{2} & -\,\tfrac{k_1}{2} & -k_2 & 0 & \tfrac{k_1}{2} + k_2 & \tfrac{k_1}{2} \\ -\,\tfrac{k_1}{2} & -\,\tfrac{k_1}{2} & 0 & 0 & \tfrac{k_1}{2} & \tfrac{k_1}{2} \end{bmatrix}.\]This global stiffness matrix is identical to the matrix obtained earlier by writing nodal equilibrium directly (Section 3.2). The Direct Stiffness Method therefore provides a systematic element-by-element route to the same global system:
\[[K]\{U\}=\{F\}.\]You may now apply boundary conditions (known displacements) to reduce the system and solve for the unknown nodal displacements, then back-substitute to compute element axial forces, strains and stresses.
The previous worked example illustrated the direct stiffness method by explicitly computing each entry of the global stiffness matrix. While conceptually clear, this approach becomes cumbersome and inefficient for large systems.
A more efficient method, especially suited for computer implementation, proceeds as follows:
To illustrate, consider the two-element truss from Figure 3.2 again. The element stiffness matrices in global form are written as:
For Element 1 (connected at global DOFs 1, 2, 5, 6):
\[K^{(1)} = \begin{bmatrix} k^{(1)}_{11} & k^{(1)}_{12} & k^{(1)}_{13} & k^{(1)}_{14} \\ k^{(1)}_{21} & k^{(1)}_{22} & k^{(1)}_{23} & k^{(1)}_{24} \\ k^{(1)}_{31} & k^{(1)}_{32} & k^{(1)}_{33} & k^{(1)}_{34} \\ k^{(1)}_{41} & k^{(1)}_{42} & k^{(1)}_{43} & k^{(1)}_{44} \end{bmatrix} \quad \text{with rows/cols mapped to } [1,2,5,6] \tag{3.37}\]For Element 2 (connected at global DOFs 3, 4, 5, 6):
\[K^{(2)} = \begin{bmatrix} k^{(2)}_{11} & k^{(2)}_{12} & k^{(2)}_{13} & k^{(2)}_{14} \\ k^{(2)}_{21} & k^{(2)}_{22} & k^{(2)}_{23} & k^{(2)}_{24} \\ k^{(2)}_{31} & k^{(2)}_{32} & k^{(2)}_{33} & k^{(2)}_{34} \\ k^{(2)}_{41} & k^{(2)}_{42} & k^{(2)}_{43} & k^{(2)}_{44} \end{bmatrix} \quad \text{with rows/cols mapped to } [3,4,5,6] \tag{3.38}\]Here, the indices to the right of each row and above each column indicate the global displacement number associated with that row/column of the element stiffness matrix.
From Eq. (3.38), the entry (k^{(2)}_{24}) corresponds to global DOFs (row = 4, col = 6).
Thus it contributes to the global entry:
This systematic allocation ensures that all element contributions are assembled consistently into the global matrix.
For computer implementation, the element-node connectivity table is used. It lists each element and the two global nodes it connects. For the two-element truss in Figure 3.2:
Table 3.2 – Element-Node Connectivity
Element | Node (i) | Node (j) |
---|---|---|
1 | 1 | 3 |
2 | 2 | 3 |
From this, the element displacement location vector is defined as:
\[L^{(e)} = [2i-1,\; 2i,\; 2j-1,\; 2j] \tag{3.39}\]For the two elements:
This vector indicates the global DOFs associated with the element stiffness matrix.
Think of the global stiffness matrix as a 6×6 grid of mailboxes, initially empty (all zero).
Each element stiffness matrix is like a bundle of values with addresses specified by the displacement location vector.
When processing an element, each of its stiffness entries is dropped into the correct mailbox.
Once all elements are processed, the mailbox grid contains the assembled global stiffness matrix, ready for applying boundary conditions and solving:
\[[K]\{U\} = \{F\}.\]Once the global stiffness matrix has been assembled, the governing system of equations for the example truss of Figure 3.2 can be expressed as:
\[[K] \begin{Bmatrix} U_1 \\ U_2 \\ U_3 \\ U_4 \\ U_5 \\ U_6 \end{Bmatrix} = \begin{Bmatrix} F_1 \\ F_2 \\ F_3 \\ F_4 \\ F_5 \\ F_6 \end{Bmatrix} \tag{3.42}\]Here,
The stiffness matrix $[K]$ is singular, so Equation (3.42) does not have a unique solution unless boundary conditions are applied. These boundary conditions represent the support constraints that prevent rigid body motion.
For the truss in Figure 3.2, the supports imply:
\[U_1 = U_2 = U_3 = U_4 = 0 \tag{3.43}\]leaving only the displacements $U_5$ and $U_6$ as unknowns.
Substituting these constraints into Equation (3.42), the system reduces to:
\[\begin{aligned} K_{15}U_5 + K_{16}U_6 &= F_1 \\ K_{25}U_5 + K_{26}U_6 &= F_2 \\ K_{35}U_5 + K_{36}U_6 &= F_3 \\ K_{45}U_5 + K_{46}U_6 &= F_4 \\ K_{55}U_5 + K_{56}U_6 &= F_5 \\ K_{56}U_5 + K_{66}U_6 &= F_6 \end{aligned} \tag{3.44}\]For larger systems, it is convenient to partition the equations into constrained (c) and active (a) sets:
\[\begin{bmatrix} K_{cc} & K_{ca} \\ K_{ac} & K_{aa} \end{bmatrix} \begin{Bmatrix} U_c \\ U_a \end{Bmatrix} = \begin{Bmatrix} F_c \\ F_a \end{Bmatrix} \tag{3.45}\]From the active partition:
\[[K_{ac}]\{U_c\} + [K_{aa}]\{U_a\} = \{F_a\}\]which gives:
\[\{U_a\} = [K_{aa}]^{-1} \big( \{F_a\} - [K_{ac}]\{U_c\} \big) \tag{3.46}\]This step yields the active displacements.
Then, the reactions are obtained from the constrained partition:
\[\{F_c\} = [K_{cc}]\{U_c\} + [K_{ca}]\{U_a\}\]where symmetry ensures:
\[[K_{ca}] = [K_{ac}]^T\]✅ Summary:
This systematic procedure applies to all FEM models, not just trusses.
The final computational step in finite element analysis of a truss structure is to utilize the global displacements obtained in the solution step to determine the strain and stress in each element of the truss.
For an element connecting nodes i and j, the element nodal displacements in the element coordinate system are given by Equations (3.19) and (3.20):
\[u^{(e)}_1 = U^{(e)}_1 \cos\theta + U^{(e)}_2 \sin\theta \tag{3.48a}\] \[u^{(e)}_2 = U^{(e)}_3 \cos\theta + U^{(e)}_4 \sin\theta \tag{3.48b}\]The element axial strain (utilizing Equation 2.29 and the discretization and interpolation functions of Equation 2.25) is:
\[\varepsilon^{(e)} = \frac{du^{(e)}(x)}{dx} = \frac{d}{dx}\,[N_1(x)\;N_2(x)] \begin{Bmatrix} u^{(e)}_1 \\ u^{(e)}_2 \end{Bmatrix} = \frac{-1}{L^{(e)}} \begin{bmatrix} 1 & -1 \end{bmatrix} \begin{Bmatrix} u^{(e)}_1 \\ u^{(e)}_2 \end{Bmatrix} = \frac{u^{(e)}_2 - u^{(e)}_1}{L^{(e)}} \tag{3.49}\]where $L^{(e)}$ is the element length.
The element axial stress is obtained via Hooke’s law:
\[\sigma^{(e)} = E \, \varepsilon^{(e)} \tag{3.50}\]Note, however, that the global solution does not give the element axial displacement directly.
The element displacements are obtained from the global displacements via Equations (3.48).
Recalling Equations (3.21) and (3.22), the element strain in terms of global system displacements is:
where $[R]$ is the element transformation matrix defined by Equation (3.22).
Thus, the element stresses for the bar element in terms of global displacements are:
\[\sigma^{(e)} = E\,\varepsilon^{(e)} = E \frac{du^{(e)}(x)}{dx} = E \frac{d}{dx}[N_1(x)\;N_2(x)][R] \begin{Bmatrix} U^{(e)}_1 \\ U^{(e)}_2 \\ U^{(e)}_3 \\ U^{(e)}_4 \end{Bmatrix} \tag{3.52}\]As the bar element is formulated here:
⚠️ Note that the stress calculation indicated in Equation (3.52) must be performed on an element-by-element basis after the global displacements are determined.
If desired, the element forces can be obtained via Equation (3.23).
Problem Statement
The two-element truss in Figure 3.5 is subjected to external loading as shown. Using the same node and element numbering as in Figure 3.2, determine:
The elements have modulus of elasticity:
\[E_1 = E_2 = 10 \times 10^6 \, \text{lb/in}^2, \quad A_1 = A_2 = 1.5 \, \text{in}^2\]Solution:
Nodal coordinates:
\[\theta_1 = \pi/4, \quad \theta_2 = 0\]Element lengths:
\[L_1 = \sqrt{40^2 + 40^2} \approx 56.57 \, \text{in.}, \quad L_2 = 40 \, \text{in.}\]Characteristic stiffnesses:
\[k_1 = \frac{A_1 E_1}{L_1} = 2.65 \times 10^5 \, \text{lb/in.}, \quad k_2 = \frac{A_2 E_2}{L_2} = 3.75 \times 10^5 \, \text{lb/in.}\]Global stiffness matrix:
\[[K] = 10^5 \begin{bmatrix} 1.325 & 1.325 & 0 & 0 & -1.325 & -1.325 \\ 1.325 & 1.325 & 0 & 0 & -1.325 & -1.325 \\ 0 & 0 & 3.75 & 0 & -3.75 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 \\ -1.325 & -1.325 & -3.75 & 0 & 5.075 & 1.325 \\ -1.325 & -1.325 & 0 & 0 & 1.325 & 1.325 \end{bmatrix}\]Reduced system:
\[10^5 \begin{bmatrix} 5.075 & 1.325 \\ 1.325 & 1.325 \end{bmatrix} \begin{Bmatrix} U_5 \\ U_6 \end{Bmatrix} = \begin{Bmatrix} 500 \\ 300 \end{Bmatrix}\]Element displacements:
\[\{u^{(1)}\} = \begin{Bmatrix} 0 \\ 1.6 \times 10^{-3} \end{Bmatrix} \, \text{in.}\]Stress:
\[\sigma^{(1)} \approx 283 \, \text{lb/in}^2 \quad (\text{tension})\]Element forces:
\[\{f^{(1)}\} = \begin{Bmatrix} -424 \\ 424 \end{Bmatrix} \, \text{lb}\]Element displacements:
\[\{u^{(2)}\} = \begin{Bmatrix} 0 \\ 0.5333 \times 10^{-3} \end{Bmatrix} \, \text{in.}\]Stress:
\[\sigma^{(2)} \approx 133 \, \text{lb/in}^2 \quad (\text{tension})\]Element forces:
\[\{f^{(2)}\} = \begin{Bmatrix} -200 \\ 200 \end{Bmatrix} \, \text{lb}\]Quantity | Result |
---|---|
Displacements | $U_5 = 5.333 \times 10^{-4} \, \text{in.}, \; U_6 = 1.731 \times 10^{-3} \, \text{in.}$ |
Reaction Forces | $F_1 = -300 \, \text{lb}, \; F_2 = -300 \, \text{lb}, \; F_3 = -200 \, \text{lb}, \; F_4 = 0$ |
Element 1 Displacements | $u^{(1)} = [0, \, 1.6 \times 10^{-3}] \, \text{in.}$ |
Element 1 Stress | $\sigma^{(1)} = 283 \, \text{lb/in}^2 \, (\text{tension})$ |
Element 1 Forces | $f^{(1)} = [-424, \, 424] \, \text{lb}$ |
Element 2 Displacements | $u^{(2)} = [0, \, 0.5333 \times 10^{-3}] \, \text{in.}$ |
Element 2 Stress | $\sigma^{(2)} = 133 \, \text{lb/in}^2 \, (\text{tension})$ |
Element 2 Forces | $f^{(2)} = [-200, \, 200] \, \text{lb}$ |
📌 Both elements are in tension, and the FEM results agree with the direct stress formula:
\[\sigma = \frac{F}{A}\]As a comprehensive example of two-dimensional truss analysis, the structure depicted in Figure 3.6a is analyzed to obtain displacements, reaction forces, strains, and stresses. While not all computational details are included, this example illustrates the sequence of required steps in a finite element analysis.
Using Equation (3.28) with orientations:
\[\theta_1 = \theta_3 = \theta_5 = \theta_7 = 0, \quad \theta_4 = \theta_8 = \pi/2, \quad \theta_2 = \pi/4, \quad \theta_6 = 3\pi/4\]For example:
\[K^{(1)} = 3.75 \times 10^5 \begin{bmatrix} 1 & 0 & -1 & 0 \\ 0 & 0 & 0 & 0 \\ -1 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix}, \quad K^{(2)} = \frac{2.65 \times 10^5}{2} \begin{bmatrix} 1 & 1 & -1 & -1 \\ 1 & 1 & -1 & -1 \\ -1 & -1 & 1 & 1 \\ -1 & -1 & 1 & 1 \end{bmatrix}\](Similar forms hold for $K^{(3)}$ through $K^{(8)}$).
(a) Correspondence Table (Table 3.3):
Maps element displacements to global degrees of freedom.
(b) Element-Node Connectivity (Table 3.4):
Each element is associated with nodes $i, j$.
Example:
\[L^{(1)} = [1 \; 2 \; 5 \; 6], \quad L^{(2)} = [1 \; 2 \; 7 \; 8], \quad \ldots\]Using the connectivity data, stiffness contributions from all 8 elements are assembled into the global $12 \times 12$ stiffness matrix $[K]$.
This reduces the system to 8 active displacement equations.
Solving numerically (via spreadsheet, MATLAB, or FEM software):
\[\begin{Bmatrix} U_5 \\ U_6 \\ U_7 \\ U_8 \\ U_9 \\ U_{10} \\ U_{11} \\ U_{12} \end{Bmatrix} = \begin{Bmatrix} 0.02133 \\ 0.04085 \\ -0.01600 \\ 0.04619 \\ 0.04267 \\ 0.15014 \\ -0.00533 \\ 0.16614 \end{Bmatrix} \; \text{in.}\]Substituting displacements into the constraint equations:
\[\begin{Bmatrix} F_1 \\ F_2 \\ F_3 \\ F_4 \end{Bmatrix} = \begin{Bmatrix} -12{,}000 \\ -4{,}000 \\ 6{,}000 \\ 0 \end{Bmatrix} \; \text{lb}\]For example, Element 2:
\[u^{(2)}_1 = 0, \quad u^{(2)}_2 = -0.01600 + 0.04618 = 0.02134 \; \text{in.}\] \[\varepsilon^{(2)} = \frac{u^{(2)}_2 - u^{(2)}_1}{L^{(2)}} = 3.77 \times 10^{-4}, \quad \sigma^{(2)} = E \, \varepsilon^{(2)} = 3771 \; \text{psi}\]Element | Strain ($\varepsilon$) | Stress (psi) |
---|---|---|
1 | $5.33 \times 10^{-4}$ | 5333 |
2 | $3.77 \times 10^{-4}$ | 3771 |
3 | $-4.0 \times 10^{-4}$ | -4000 |
4 | $1.33 \times 10^{-4}$ | 1333 |
5 | $5.33 \times 10^{-4}$ | 5333 |
6 | $-5.67 \times 10^{-4}$ | -5657 |
7 | $2.67 \times 10^{-4}$ | 2667 |
8 | $4.00 \times 10^{-4}$ | 4000 |