I’m working on my master’s project, which involves shape and topology optimization for a 3D shell structure. Initially, I plan to work within the linear static regime. Instead of writing my own finite element (FE) code, I’d like to leverage an existing Julia package that fits my requirements.
Key features I need:
The ability to easily modify element material properties and thickness.
The capability to update node coordinates between optimization iterations.
I’ve come across several promising packages, including Ferrite.jl, Gridap.jl, and FinEtools.jl, but I’m unsure which one would suit my needs best. Could anyone provide insights or recommendations based on their experience?
I think you could implement your own shell element in either Gridap or Ferrite. But in order to get good performance and robustness (for instance to eliminate locking, or to be able to handle branching or folds), substantial amount of work would be required.
FinEtoolsFlexStructures.jl provides a robust triangular shell FE.