FINITE ELEMENT ANALYSIS OF SHELLS - NEW LECTURES 
22. Procedurally generating a shell mesh
Building a complete shell element solver
Please log in or enroll to access resources

Summary

In this lecture, we will cover the following:

  • How to set up the parameters that define our shell geometry
  • How to procedurally generate the nodal coordinates for the mesh
  • How to build the list of element definitions from those nodes
  • How to add a small piece of debugging code to sanity check the mesh

Our focus in this lecture is on producing a simple, procedurally generated shell mesh that we can use as a test-bed throughout the rest of the section. The shell we'll build is a segment of a cylinder, and we describe it using five parameters:

  • a dimension along the y-axis or longitudinal axis of the cyliner, (b)(b),
  • the number of elements along that dimension (nb)(n_b),
  • the radius of the underlying cylinder (rad)(\text{rad}),
  • the arc angle swept by the shell, α\alpha,
  • the number of elements along that arc length (nα)(n_\alpha).

After bringing in the usual dependencies and defining our concrete material constants, we use these parameters to generate a set of θ\theta angles and yy values that effectively define a rectangular grid wrapped onto the curved surface.

From there, we step through each θ\theta and yy combination and use simple right-angle triangle geometry to compute the xx, yy and zz coordinate of every node. With our nodes in place, we then iterate through the mesh again to package nodes together into elements. We also drop in a small block of debug code so that we can verify the node numbers for any chosen element against a reference image, giving us confidence that the mesh has been generated correctly.

Next up

In the next lecture, we will write the plotting code needed to render this shell on screen, which will give us a much clearer visual confirmation that the mesh we have just generated is correct.

Tags

mesh generationshell geometryparameterised meshnodes and elementscylindrical shell

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 2 - Shells

Expanding from plate to shell elements - build a workflow that unlocks the behaviour of 3D shell structures

After completing this course...

  • You will understand how we make the leap from Reissner-Mindlin plate elements to shell elements and what extra modelling fidelity that provides.
  • You will be comfortable using a combination of GMSH and the open-source 3D modelling software, Blender, to generate custom finite element meshes.
  • You will be able to use OpenSeesPy to model shell structures, as an alternative to your own custom finite element solver.
  • You will have a much greater understanding of what commercial finite element packages are doing, behind the UI, allowing you to authoritatively interrogate their results.
Next Lesson
23. Visualising shell geometry