ACCESS THE COMPLETE LIBRARY OF COURSES & TUTORIALS 
Section 4
Expanding to a full plate element solver
21. Section overview - Expanding to a full plate element solver
01:28 (Preview)
22. Procedurally generating a rectangular mesh
24:30
23. Defining plate constraints
11:08
24. Defining the self-weight force vector
10:35
25. Building the structure stiffness matrix
10:05
26. Solving the system and extracting reaction forces
28:13
27. Plotting the plate displacements
18:10
28. Building an evaluation grid for stress resultants
10:31
29. Calculating the moments and shears
22:00
30. Visualising the plate bending moments
14:13
31. Extracting shear forces
29:04
32. Visualising the plate shear forces
12:21
33. Adding strip and edge masking to the shear plot
26:04
34. Adding magnitude clipping to the shear plot
10:40
35. Building an interpolation utility function
09:53
49. Adapting for shear-locking and comparing again
Benchmarking against OpenSeesPy and Pynite
Please log in or enroll to access resources

Summary

In this lecture, we'll cover the following:

  • How shear locking is addressed by modifying Gauss quadrature sampling.
  • Implementing separate sampling parameters for bending and shear contributions.
  • Updating the stiffness matrix formulation to use adjustable integration points.
  • Re-running validation and parameter sweeps to assess model accuracy.
  • Comparing results across custom, OpenSeesPy, and PyNite models.

In this lecture, we revisit the shear locking issue and implement a practical remedy by reducing the number of integration points used in the shear component of the stiffness matrix. We modify our existing code to introduce separate parameters for bending and shear sampling, taking advantage of the earlier decision to split these contributions. This allows us to selectively apply reduced integration to the shear term while maintaining accuracy in the bending response.

We then re-run our simulations and parameter sweep to evaluate the impact of this change. The results show a significant improvement, with near-perfect agreement between the custom finite element model and reference solutions across the full range of plate thicknesses. This confirms both the effectiveness of the reduced integration approach and the correctness of our implementation, giving us confidence in the solver as we prepare to extend it further with mesh generation capabilities.

Next up

With the shear locking issue resolved, the next section introduces meshing with Gmsh, enabling us to move beyond simple rectangular meshes to more realistic geometries.

Tags

shear lockingreduced integrationGauss quadraturestiffness matrix formulationfinite element validation

Please log in or enroll to continue

If you've already enrolled, please log in to continue.

Finite Element Analysis of Plate and Shell Structures: Part 1 - Plates

An analysis pipeline for thick and thin plate structures, a roadmap from theory to toolbox

After completing this course...

  • You will understand how Reissner-Mindlin theory enables us to accurately capture both thin and thick plate behaviour.
  • You will understand how to turn the fundamental mechanics of plate behaviour into a custom finite element solver written in Python.
  • You will have developed meshing workflows that utilise the powerful open-source meshing engine, GMSH.
  • In addition to using your own custom finite element code, you will be comfortable validating your results using OpenSeesPy and Pynite.
Next Lesson
50. Section overview - Meshing with GMSH and Python