FINITE ELEMENT ANALYSIS OF SHELLS - EARLY ACCESS 
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
59. OpenSeesPy custom mesh deflection benchmark
Custom mesh finite element analysis
Please log in or enroll to access resources

Summary

In this lecture, we'll cover the following:

  • How to extract and identify the maximum vertical displacement and its location from an OpenSeesPy finite element model.
  • How to organise and process nodal displacement data from an OpenSeesPy analysis.
  • How to construct a function to visualise the displaced shape of an irregular mesh in 3D.
  • How to interpolate displacement data onto a regular grid for plotting.
  • How to apply masking to represent slab boundaries and openings accurately.
  • How to define appropriate colour maps based on displacement behaviour.

We begin by extracting vertical displacements at each node and assembling them into a structured array. From this, we determine the maximum displacement by considering absolute values and use its index to recover the corresponding spatial location. This provides a quick quantitative check of the model response, which we then validate qualitatively by visualising the deflected shape.

We then develop a comprehensive plotting function to visualise the displaced shape of the slab. Because the mesh is irregular, we interpolate displacement data onto a regular grid before plotting. We carefully mask regions outside the slab boundary and within openings to ensure an accurate geometric representation. Finally, we enhance the visualisation using appropriate colour mapping that distinguishes between positive and negative deflections, and overlay additional features such as the undeformed mesh and column locations. This visual output serves as a benchmark for comparison with future custom finite element implementations.

Next up

In the next lecture, we will feed the same mesh into our custom Reissner–Mindlin finite element code and solve for nodal displacements.

Tags

maximum displacement extractiondisplacement visualisationgrid interpolationmasking techniquesOpenSeesPy post-processing

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
60. Custom mesh Reissner-Mindlin plate analysis