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
25. Building the structure stiffness matrix
Expanding to a full plate element solver
Please log in or enroll to access resources

Summary

In this lecture, we'll cover the following:

  • Constructing the primary (global) stiffness matrix by assembling element stiffness contributions.
  • Using previously defined functions to compute element stiffness matrices with bending and shear effects.
  • Mapping element degrees of freedom into the global system using index arrays.
  • Reducing the primary stiffness matrix by removing entries that correspond to restrained degrees of freedom.

In this lecture, we focus on assembling the global stiffness matrix for the entire structure by looping through each element, computing its stiffness matrix, and inserting it into the correct locations within a larger matrix. We reuse a previously defined function to calculate element stiffness. A key practical step is correctly mapping local element degrees of freedom to global indices, which we handle efficiently using NumPy’s index array functionality.

We then move on to forming the reduced, or structure stiffness matrix by eliminating rows and columns associated with restrained degrees of freedom. This step ensures that the system is solvable and sets up the matrix that will be inverted in the next lecture to obtain nodal displacements. By the end, we have completed the assembly phase of the finite element procedure and are ready to solve the system and move into post-processing.

Next up

In the next lecture, we will solve the assembled system for nodal displacements and extract reaction forces to validate the model.

Tags

global stiffness matrixfinite element assemblydegree of freedom mappingNumPy indexingstructure stiffness matrix

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
26. Solving the system and extracting reaction forces