Section 9.6 of Chapter 9: 2D Stress Analysis: Finite Element Types, Linear Case
Isoparametric 8-node quadrilateral finite element
01
Element and hypotheses
Small strains
Small displacements
Linear elastic material
The theory is well known, see for instance [1]. This finite element has eight nodes and two degrees of freedom per node, giving 16 element displacement degrees of freedom. The theory is presented briefly, following the same development as for the Q4 element in Section 9.4.
E is Young’s modulus, ν is Poisson’s ratio, and h is the thickness of the finite element. For the plane stress state:
D=1−ν2E1ν0ν100021−ν.
Since B is a function of s and t, it is more convenient to work in natural coordinates. Consequently, for a positively oriented mapping:
kel=h∫−11∫−11B(s,t)TDB(s,t)detJ(s,t)dsdt
detJ(s,t) is the determinant of the Jacobian.
06
Gauss quadrature
The third-order one-dimensional Gauss rule used in the program is:
i
Gauss coordinate
Weight
1
−0.6
5/9
2
0
8/9
3
+0.6
5/9
The two-dimensional rule is the tensor product of this one-dimensional rule. Each coordinate is paired with all three coordinates in the other direction, giving 3×3=9 Gauss points per element. The weight of a pair is wiwj:
A simple MATLAB program can be downloaded below. Run main.m; it calls the following subprograms:
gen generates the mesh for a cantilever clamped at x=0 (u=0,v=0) and loaded with a force uniformly distributed on the other end (x=L). See the program for all input data and further explanations.
plane2d8 generates the stiffness matrices of all finite elements, performs the assembling process, imposes boundary conditions, and solves the linear system for nodal displacements.
plot_disp plots the displacement colour map.
plot_stress plots the stress colour map.
L=200mm,H=50mm,h=5mm,
E=2.1×105MPa,ν=0.3,F=1000N,nL=16,nH=6.
The results are calculated for a mesh of 16 Q8 elements along the beam and 6 elements through its height: 96 finite elements, 333 nodes, and 666 equations. The total applied vertical force is −1000N.
Figure 1. Q8 cantilever mesh, boundary conditions, and distributed free-end load, generated by gen.m.
08
Displacement results
The following maps are generated by the Q8 program. Displacements are in millimetres; the displacement plotting scale is 1.
Figure 2. Horizontal displacement u. umin=−0.04595mm,umax=0.04595mm.Figure 3. Vertical displacement v. vmin=−0.2545mm,vmax=0.
For comparison, the magnitude of the free-end displacement predicted by the Timoshenko beam model is:
The Q8 result is very close to the beam solution: the difference in the maximum displacement magnitude is about 0.46%. The finite element displacement is negative because the applied force acts in the negative vertical direction.
09
Stress results
For plotting, stresses are evaluated at the eight element nodes and averaged at nodes shared by adjacent elements. The stress maps use the default displacement scale 0 and are therefore shown on the undeformed configuration. Stresses are in MPa.
Figure 4. Normal stress σx. σx,min=−113.409MPa,σx,max=113.409MPa.
Von Mises stress: σVM,min=2.295MPa,σVM,max=106.477MPa.
10
Comparison with Q4
The same cantilever geometry, material, thickness, and resultant loading are used in Section 9.4. Both programs were run in MATLAB R2026a Update 4. The comparison uses the actual results of the Q4 mesh with 40 elements along the length and 16 through the height:
Quantity
Q4 — Section 9.4
Q8 — Section 9.6
Elements
640
96
Nodes
697
333
Equations
1394
666
umin(mm)
-0.04574
-0.04595
umax(mm)
0.04574
0.04595
vmin(mm)
-0.2535
-0.2545
σx,min(MPa)
-115.217
-113.409
σx,max(MPa)
115.217
113.409
σVM,min(MPa)
4.442
2.295
σVM,max(MPa)
109.174
106.477
Q8 obtains essentially the same displacement solution and comparable stress levels with a substantially smaller discretization than Q4, because its higher-order interpolation represents bending more efficiently.
Q8 has midside nodes and quadratic interpolation along its edges. It can represent curved displacement fields and stress gradients more accurately than a bilinear Q4 element, which is particularly useful in bending-dominated problems. Curved boundaries can also be represented more accurately. The cost per element is higher, but fewer elements are often required for a comparable solution.