Stress Result in Shells

About the development of the FEM module/workbench.

Moderator: bernd

User avatar
HarryvL
Posts: 947
Joined: Sat Jan 06, 2018 7:38 pm

Stress Result in Shells

Postby HarryvL » Sat Feb 24, 2018 6:30 pm

Hi all,

I ran a small test case to figure out how shell stresses are reported in CalculiX results. Nothing grand, but thought I would report it here to save others going through the same trial and error learning loop. I looked around but could not see another post on the topic.

So I set up a simple strip (1000x100x10mm) and bent it by 0.1 rad at either side (see below picture). I chose CCX steel material (E=210000MPa), but put the Poisson's ratio to 0 (manually in the INP ... is there another way?) to avoid end effects due to restricted lateral shortening at the supports. This would give a small deviation compared to beam theory.

Test56_uz_Pure_Bending.png
Test56_uz_Pure_Bending.png (294.99 KiB) Viewed 3262 times

This gives a vertical deflection of 25.0mm, in line with beam theory (0.1*L/4). However, the stresses are zero (bar numerical noise):

Test56_PS_max_Pure_Bending_1.png
Test56_PS_max_Pure_Bending_1.png (309.72 KiB) Viewed 3262 times

So this cannot be the stresses at the surface, which should be equal to 0.1*E*h/L = 210MPa for this case.

Now for the important part: In the CalculiXccxTools properties you can put "Beam Shell Result Output" to False or True. If you put it to False (the default) then CalculiX will report the stresses at the mid surface ... which are indeed 0 at the neutral axis of our "beam". However, with this switch set to True, CalculiX reports stresses at the shell surfaces by interpolating stresses from integration points. By the way: Calculix always translates the shell into an equivalent solid by "extrusion" of the mid surface.

Test56_PS_Max_Pure_Bending.png
Test56_PS_Max_Pure_Bending.png (336.15 KiB) Viewed 3262 times
Test56_Sxx_Pure_Bending.png
Test56_Sxx_Pure_Bending.png (32.42 KiB) Viewed 3262 times

I also show the CGX results here, because the color coding in the FreeCAD ResultMesh confuse me (is this a bug?). The maximum and minimum stresses are indeed 210MPa and -210MPa, respectively.

Hope this helps other beginners like me :D
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Sun Feb 25, 2018 8:44 am

It is a known problem reported by fandal. We have started to find the culprit. I am on the way and can not find the topic at the moment.
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Sun Feb 25, 2018 7:49 pm

User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Sun Feb 25, 2018 7:54 pm

BTW I wonder if the problem still exists if the 3D mesh will be recalculated with the same boundaries as the shell. In calculix intern it would be exact the same analysis because of the expansion of shells to solids.
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Sun Feb 25, 2018 8:59 pm

The simplest way to reproduce the problem ...

- start FreeCAD
- on StartWB open 2D FeM example
- in solver change to 3D beam shell output
- run the example
- check results
- compare with 3D FEM example file
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Sun Feb 25, 2018 9:06 pm

bernd wrote:
Sun Feb 25, 2018 7:54 pm
BTW I wonder if the problem still exists if the 3D mesh will be recalculated with the same boundaries as the shell. In calculix intern it would be exact the same analysis because of the expansion of shells to solids.
problem only exists with shells. Attached 3D FEM example as shell with 3D output and recalculate as 3D with shell 3D output mesh ...


shell-stress-result-problem.fcstd
(92.47 KiB) Downloaded 13 times
User avatar
HarryvL
Posts: 947
Joined: Sat Jan 06, 2018 7:38 pm

Re: Stress Result in Shells

Postby HarryvL » Sun Feb 25, 2018 10:12 pm

bernd wrote:
Sun Feb 25, 2018 7:54 pm
BTW I wonder if the problem still exists if the 3D mesh will be recalculated with the same boundaries as the shell. In calculix intern it would be exact the same analysis because of the expansion of shells to solids.
Its not always that simple to reproduce the beam/shell boundary conditions in 3D. For example, I applied a rotation and in 3D that would mean that the end faces of the 3D beam would have to rotate rigidly.

PS: I ran this simple test because I wanted to understand the extrapolation of stress and strain results to the faces of the shell. This because I am getting inconsistent results in my "FEM - Tubular Connection with Shell Elements" example (https://forum.freecadweb.org/viewtopic. ... 21#p215052) when running the connection to plastic failure, i.e. von Misis stresses are very high, but PEEQ values are very low. In theory the two should be perfectly correlated through the definition of the stress-strain curve in the *PLASTIC card. The difference may come from extrapolation to the surface, but in any event I am not yet confident to use the surface results for conclusions about ductility of the joint. To be continued ...
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Mon Feb 26, 2018 6:43 am

HarryvL wrote:
Sun Feb 25, 2018 10:12 pm
bernd wrote:
Sun Feb 25, 2018 7:54 pm
BTW I wonder if the problem still exists if the 3D mesh will be recalculated with the same boundaries as the shell. In calculix intern it would be exact the same analysis because of the expansion of shells to solids.
Its not always that simple to reproduce the beam/shell boundary conditions in 3D. For example, I applied a rotation and in 3D that would mean that the end faces of the 3D beam would have to rotate rigidly.
Not for your example for a very simple one to debug in FreeCADs result viewer ... There is a problem in FreeCAD with the numbering of elements and nodes. Because they seam to be some kind of special in 3D shell output.

Attached an even simpler example and the frd files as well. you can open the frd directly in FreeCAD and CGX

shell-stress-result-problem-simplified.fcstd
(21.17 KiB) Downloaded 11 times

FEMMeshGmsh.frd.txt
(10.89 KiB) Downloaded 23 times
shell 3D output results


Result_mesh001.frd.txt
(10.89 KiB) Downloaded 27 times
3D analysis results with shell 3D result mesh
User avatar
HarryvL
Posts: 947
Joined: Sat Jan 06, 2018 7:38 pm

Re: Stress Result in Shells

Postby HarryvL » Mon Feb 26, 2018 7:21 am

BTW Bernd, it is also not possible to create a Paraview pipeline for a 3D shell result. FC crashes. VTK export also freezes up FC. Possibly all due to the same node numbering issue? Anyway, I would love to help debug but am still too unfamiliar with the FC source code and architecture. So far I have to stick to sharing my experiences - "the good, the bad and the ugly". It is certainly not my intent to come across negatively, because I think FEM WB rocks :D
User avatar
bernd
Posts: 7337
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Stress Result in Shells

Postby bernd » Mon Feb 26, 2018 7:29 am

HarryvL wrote:
Mon Feb 26, 2018 7:21 am
It is certainly not my intent to come across negatively, because I think FEM WB rocks :D
Come up with any problem you encounter. The only what we can do is fix them step by step. This will take some time, but we have a great motto at FreeCAD. It's done when it's done ... :D