Where to start with open source FEA

Hello everyone,
I’m familiar with using Abaqus, and have recently set up as a freelance consulting engineer. I’d need access to FEA but Abaqus / Ansys etc are well outside my budget.
I was very excited to discover open source FEA software, including Calculix, Elmer and Code Aster.
Are any of you familiar with those who’re able to comment on their relative merits / drawbacks?

I’ve tried Calculix first, but don’t seem to be able to install it, I understand 2.19 is the current version. I’m using windows 10.

Many thanks
Peter

1 Like

I also came here from Abaqus and CalculiX is my number one open-source FEA software. Here are the pros and cons of the solvers mentioned by you:

CalculiX:

  • very intuitive thanks to the keyword syntax based on Abaqus (and thus easy to use for people familiar with Abaqus)
  • a wide range of possible analyses
  • pretty powerful even for big models
  • there are a few interesting preprocessors, including default GraphiX but also FreeCAD and PrePoMax (IMHO the best open-source FEA pre-post of all the existing ones, regardless of the solver)
  • has some small bugs, for example with beam elements
  • doesn’t have true structural elements (they are actually expanded to solids and this may cause inaccuracies in some cases but in most situations, they work really good)

Elmer:

  • moderately user-friendly
  • has its own preprocessor (for postprocessing ParaView is used) which is pretty good for simple analyses
  • rather wide range of analyses, including electromagnetism and acoustics

Code_Aster:

  • several types of analyses, including fatigue and fracture mechanics
  • very unintuitive, keywords and most parts of the documentation are in French (some are poorly translated to English)
  • Salome-Meca is used as a preprocessor - it offers quite advanced capabilities (including hexa meshing) but is hard to use because you have to set a lot of things

Here’s a nice comparison of various FEA software (paid and free) but I’m not sure if it’s 100% up to date: http://feacompare.com/

As you can see, there are also other free and open-source FEA codes but the three mentioned above are the best options. You could also check Z88 Aurora - it’s nice but has a very outdated GUI and is rarely updated by the devs (it’s not open-source).

To sum up, I would definitely recommend CalculiX for everyday use (not because we are on the CalculiX forum, I really think that it’s the best choice) and Code_Aster / Elmer only for some specific cases requiring particularly advanced capabilities.

To be honest, I haven’t installed CalculiX either. I just run it directly from the command line opened in the folder with CalculiX executables and input file.

5 Likes

Thank you Calc_em, that’s very helpful.

I found myself going down a rabbit hole of trying to teach myself how to ‘compile’ the source code and all kinds of things I don’t understand; before realising I must be making it more difficult than need be

I will check out PrePoMax and FreeCAD, I’ve managed to get Salome installed and am currently familiarising myself with it. Am I right in thinking I can use that in a similar way to AbaqusCAE to impose loads / boundary conditions and hence produce an input file to feed into my solver of choice?

2 Likes

Salome-Meca is a versatile software with several modules. It’s even possible to prepare simple geometries there but the main use is meshing. You can generate a mesh in this software and then export it for analysis with a solver of your choice. If you want to use Code_Aster then you may prepare analyses in the Aster Study module of Salome. This YouTube channel is a good start:

FreeCAD is primarily a CAD software but it has a good FEA module where CalculiX is used as the main solver. Interestingly, FreeCAD also offers a decent CFD add-on module based on OpenFOAM (definitely the best open-source code for CFD). Both FreeCAD and PrePoMax allow you to perform the whole preprocessing, run the analyses and view their results. The difference is that PrePoMax doesn’t have a geometry modeler (FreeCAD can help with that) but supports more of the CalculiX’s features.

1 Like

Hi @PRhodes , you will likely need to use Windows Subsystem for Linux WSL in order to “install” CalculiX - there are some Windows binaries around. If you come from the Abaqus side, you will find CalculiX very easy to learn. I came from the MSC/Nastran side and it was just a different learning curve. I will encourage you to just read the “a short installation guide (ASCII)” for CalculiX and build it from scratch - you learn a lot by doing this!

I am at this moment having sucess with the calculix_2.19_4win run from Mecway. If you are coming from Abaqus I doubt you need Mecway though(not free, but cheapish and includes support. Victor at Mecway was very helpful getting me started, including with calculix setup. Usually updates are first available for Linux, then some of the Calculix sub gods beat down the issues for coming up with a windows executable. I don’t believe the windows version supports the Pastix Cuda upgrades yet though. They are probably not much help though unless you have a profesional level Nvidia GPGPU card with a lot of memory. Maybe at some point someone will recompile Pastix to use Open_CL which would work on AMD GPU cards.

I would recommend using Mecway with Calculix. It is inexpensive and does a nice job of setting up, running and post processing Calculix. We have many users using the Mecway/Calculix combination for some time now.

I have never learned how to compile Calculix. If a new revision or a faster solver appears, the “compiler” people in this community makes sport out of making 64-bit Windows executables available. Mecway always includes a version, and you can improve on this by simply downloading someone else’s compile and linking.

I agree with the comments about Salome - too complicated. Prepomax is interesting and has some nice features but is still in my opinion too early to use commercially.

Both the Calculix and Mecway forums are active and have a strong user base. You can download Mecway and use as a trial version for small models. Check out simcommons.com, it has a lot of simple examples that can be run in the trial version.

Feacompare is a good reference for features comparison, but nothing substitutes for simply downloading and trying these things. We have settled on the following choices:

-Calculix/Mecway for thermal, structural, vibration
-OpenFoam for fluids
-FEMM and oneLab for magnetics
-OpenModelica for 1-D modeling

Thank you all for your very helpful input. I will have a ‘play’ with the various things you’ve suggested over the next few weeks, and will let you know how I get on.

1 Like

Salome CAD/CAE also available for Windows OS, is good for GUI user to modeling, meshing (e.g Hex/Dom) and boundary (group definitions). UNV mesh results can be converted to CalculiX inp formats, also FreeCAD and PrePoMax has support for both of file formats. dedicated pre/pro CGX is preferred for a fully compatibilities, parametric study and advanced feature.

btw, i’m using all of them depending on model and analysis cases. some rare another is frequently used. all software is opensource, you’re free to try and use before you chose the right ones then digest all the capability.

By means of an update:

I’ve sucessfully run some simple simulations with calculix using Salome to make the mesh and by converting the .unv file exported by Salome to part of a Calculix .inp file using unv2ccx.
I then viewed the resulting .frd files using PrePoMax.

It seems I ought to get used to manipulating .inp files in text form, rather than my Abaqus workflow which was entirely GUI based.

I’ve had a play about with Paraview, but couldn’t work out how to get it to read the Calculix outputs. That may be tomorrow’s challenge.

On the whole I’m pretty impressed so far. I’ll give Elmer, Code Aster / Salome Mecca and Z88 a try over the next few weeks.

At a certain stage of expertise in Abaqus, proficiency in input file handling becomes practically a necessity, even when using GUI on daily basis. Fortunately, keywords (both in Abaqus and CalculiX) are very clear and well documented.

Paraview currently doesn’t support the frd file format so you will need a converter. Here are the ones I tested:

1 Like