tutorials
tutorials copied to clipboard
perpendicular-flap: Results for CalculiX differ from FEniCS and Deal.II
Problem & some Background
We observed a mismatch between results of the perpendicual flap case when preparing this publication. In the end we used the Deal.II - SU2 and FEniCS - SU2 cases in the publication. They show good agreement. CalculiX - SU2 disagrees with these cases. Our current explanation for this behavior is that the CalculiX case uses C3D8
elements, which should not be used according to the CalculiX documentation (see "...the locking phenomena observed in the C3D8 element...").
Solution
From my current point we should therefore use the "right" elements for CalculiX (no idea which elements are the right ones). Note that this will also require modifications of the calculix-adapter, since up to my knowledge currently only C3D8
and C3D8R
elements work (please correct me, if I'm wrong).
Additional Material
For debugging this case we developed a fluid-fake
solver that I would like to share in this issue (see fluid-fake.zip). This allows to replace the fluid solver with a simple constant force for quicker debugging. I'm plotting the tip displacement over time. Already this simple setup can be used to show the mismatch of CalculiX and the other two solvers:
Code Versions
-
tutorials
:a166efadfe7dbd3231e14897dcbeecebb90ea97e
-
fenicsprecice
:v1.0.1
-
precice
:v2.2.0
-
pyprecice
:v2.2.0.1
-
calculix-adapter
:4635aa87439d154269d7f6141e8684a733f3e68f
-
dealii-adapter
:f9c2c65eead05ecea1c2f7a1c7ff48fe5942f930
-
dealii
:v9.2.0
-
calculix
: did not check this, but I think it should be2.16
Some important points to note for this results mismatch:
- The CalculiX version used in this testing is
2.16
- The claim that the CalculiX-Adapter needs to be modified to use higher order elements is valid and is also documented in the issue: https://github.com/precice/calculix-adapter/issues/55. A new mesh needs to be generated while changing the elements and only changing the name in the
.msh
file is not sufficient.
Since the issue is still open, I'll chime in. It might be worth trying with incompatible mode eight-node brick elements (C3D8I), which are implemented in CalculiX (https://petegustafson.com/CalculiX/ccx_2.15/doc/ccx/node29.html). Quoting: the incompatible mode eight-node brick element is an improved version of the C3D8-element. In particular, shear locking is removed and volumetric locking is much reduced. (...) The C3D8I element should be used in all instances in which linear elements are subject to bending.
EDIT: I decided to try it out, using the fluid-flake
solver and its plotter. Check this out:
-CalculiX 2.16 with C3D8 elements (this is the figure provided in Benjamin's fluid-flake.zip
file; I ran the case again to check and got the same):
-
CalculiX 2.16 with C3D8I elements (my run):
-
FEniCS (this is the figure provided in Benjamin's
fluid-flake.zip
file):
As can be seen, results obtained using C3D8I elements are almost the same as those obtained with FEniCS. I have not tried with deal.II.
Minor note: apart from changing TYPE=C3D8
to TYPE=C3D8I
, I had to add the DIRECT
parameter to the *DYNAMIC
keyword in the CalculiX input file to prevent it from changing the timestep size. Otherwise, it would result in an error.
Hope this helps.
Andrés
Hi @AndresPedemonteFIUBA, thanks for the great input! The experiments really look promising. Could you directly apply the necessary modifications in the tutorial case and open a pull request?
Did you have to modify the CalculiX adapter or did it work out-of-the-box?
Also related: We published a preprint for the preCICE reference paper in the meantime. In Fig.21, you can see a gap between CalculiX and other structure solvers. Ideally we could close this gap by applying your suggestions.
@BenjaminRodenberg: I just opened the pull request, #250, with a minor explanation of the changes. It works out-of-the-box, no modification of the CCX adapter is required.
Apart from the test with fluid-flake
, I also tested the full case (OpenFOAM-CalculiX) and it ran succesfully.
I don't have any of the other structural solvers built, so perhaps someone who has could go ahead and compare the new CCX results with them.
Andrés
We can close this now, right? Looking also at the figure at the bottom of https://precice.org/tutorials-perpendicular-flap.html, I am not sure what more we can do, it looks reasonably close to me.
I am closing, if anyone disagrees, please reopen.