I’m looking for a way to set up a pipeline consisting of command line tools and python packages to solve linear elasticity problems on thin to moderately thick (no shear deflections, plane stress) simply or doubly curved surfaces (cylinders, spheres, tori). The models to work with are similar enough to say, if one model can be solved, all of them can be solved.
In the real world these are parts of thin steel structures (pressure vessels) with internal pressure and force / moment loads.
I understand that FEniCS-Shells can cope with these kinds of problems, but being a user (as in: Ansys user with civil engineering background ) rather than theoretical expert, I’m not sure if it can be used for my problems.
My question is: is it possible to use FEniCS-Shells to
import a geometry for meshing, or alternatively, if the mesh is generated elsewhere, create the Mesh object necessary for the analysis,
take the necessary steps to define the boundary conditions, loads etc. to set up the stage for the solver,
solve the problem as a structural (strength) problem,
solve the problem as a linear stability (bifurcation) problem,
post-process e.g. retreive and visualize the relevant results.
I’d appreciate any insights and ideas why this could work or even could not work.
All the best,
Gábor
update: I can create the geometry using OpenCascade and mesh it using gmsh, which can be directly imported using dolfin-convert, so step one is essentially done.
All of the things you mentioned are possible, but: A big limitation of FEniCS-Shells as it currently stands is that we are limited to the case where the map between the parametric domain and the shell mid-surface in Euclidean space can be described by an exact chart, i.e. not a general mesh.
This isn’t a ‘real’ limitation, in fact it is perfectly possible to extend FEniCS-Shells to work with general geometries. We will do this in the future during the port to FEniCSx which is now underway. But we decided to draw a line in the work at that point.
Luckily for you, Jeremy Bleyer has done a bit of work in this direction recently, so you might find this example very useful:
Looking at your question more broadly, there is of course nothing wrong with using Ansys for linear elastic shell analysis. We wrote FEniCS-Shells to tackle problems where we needed complete flexibility in precise shell model, the constitutive model or in the numerical methods used (finite element designs, non-linear solution strategies etc.). If you do not need these features, then packages like Ansys are still a good choice.
Thank you for the thorough answer.
My use case involves almost only curved surfaces, and - I did not mention it earlier, as coming from the Ansys world I wasn’t aware this might be important - I have in all cases some kind of a hole in my geometry. This is actually the point of building a FE model: to find out the stress distribution in the vicinity of the hole.
I understand that dealing with general geometries is an undertaking on its own and hope that in the near future you will tackle this problem as well.