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
Full Preview
36. Section overview - Benchmarking against OpenSeesPy and Pynite
Benchmarking against OpenSeesPy and Pynite
Please log in or enroll to access resources

Summary

In this section, we'll cover the following:

  • Validating our code by benchmarking against established solvers
  • Introduction to OpenSeesPy and PyNite for plate analysis
  • Building and analysing equivalent models in both libraries
  • Comparing results across our solver and external tools
  • Identifying and addressing shear locking in our implementation

In this section, we focus on validating our finite element code by comparing its output with trusted, open-source solvers. We introduce two Python libraries - OpenSeesPy and PyNite, and use them to model and analyse the same plate problem. By running equivalent simulations across all three solvers, we establish confidence in our results and gain practical experience using these powerful open-source tools.

We also explore the differences between the two libraries, noting OpenSeesPy’s research-driven, feature-rich capabilities and PyNite’s more streamlined, practice-oriented design. Through the comparison process, we uncover the phenomenon known as shear locking, which is an important numerical issue that is currently affecting our solver. We then examine the cause of this behaviour and implement a straightforward correction, improving the accuracy of our results while reinforcing the importance of validation in computational modelling.

Next up

In the next lecture, we begin the benchmarking process by building an equivalent plate model in OpenSeesPy.

Tags

finite element validationOpenSeesPyPyNiteplate analysisshear locking

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
37. Building an equivalent OpenSeesPy model