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
55. Implementing specific nodal positions
Meshing with GMSH and Python
Please log in or enroll to access resources

Summary

In this lecture, we'll cover the following:

  • Adding predefined column (nodal) points into the mesh generation process.
  • Extending the meshing function to handle additional geometric constraints.
  • Embedding point entities into a surface using Gmsh.
  • Mapping geometric points to mesh node tags using a proximity tolerance.
  • Enhancing visualisation to highlight specific nodes (e.g. column locations).

In this lecture, we extend our meshing workflow by incorporating predefined column points into the mesh. We modify our existing function to accept additional point inputs, insert these into the geometry, and explicitly embed them into the surface so that Gmsh respects them during mesh generation. We also implement a method to track these points by mapping them to the nearest mesh nodes using a tolerance-based search, ensuring we can later reference them for boundary conditions or restraints.

We then enhance our data extraction by recording node tags not only for column locations but also along the outer boundary of the slab. Finally, we update the visualisation function to clearly distinguish column nodes from the rest of the mesh. Together, these improvements give us a more flexible and analysis-ready meshing tool, enabling precise control over key nodal locations.

Next up

Next, we will consolidate all of these meshing functions into a reusable utility file, streamlining the workflow for future analyses.

Tags

Gmsh embeddingnodal point mappingmesh generationmesh visualisation

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
56. Converting our code to a utility function