add new function to fem module

About the development of the FEM module/workbench.

Moderator: bernd

twangrt
Posts: 40
Joined: Sun Apr 28, 2019 6:34 pm

Re: add new function to fem module

Post by twangrt »

I'll investigate the ltb example, weird. But we still haven't decided what we should do with the issue with the large meshsize of the ltb example as well. See my forum post above.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: add new function to fem module

Post by bernd »

That was another reason I did not merge it. This is not decided yet.

What we could do? We do not make a unit test, since we have one for buckling. Furthermore we could not add the mesh but the mesh object and the mesh preferences. Thus the user would need to mesh it before run the example. With this it would be just the python example file.

How about this?
twangrt
Posts: 40
Joined: Sun Apr 28, 2019 6:34 pm

Re: add new function to fem module

Post by twangrt »

bernd wrote: Wed Jun 09, 2021 10:50 am That was another reason I did not merge it. This is not decided yet.

What we could do? We do not make a unit test, since we have one for buckling. Furthermore we could not add the mesh but the mesh object and the mesh preferences. Thus the user would need to mesh it before run the example. With this it would be just the python example file.

How about this?
Lets go with that, it's the easiest solution. The only thing I want to point out is that the result that the user gets are going to be quite... wrong. I could't get a reliable/sufficient result with a tethrahedron mesh. This is due to mesh locking.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: add new function to fem module

Post by bernd »

What is mesh locking? Would it work with a very fine tetra mesh? Would a hex mesh be better?
twangrt
Posts: 40
Joined: Sun Apr 28, 2019 6:34 pm

Re: add new function to fem module

Post by twangrt »

bernd wrote: Fri Jun 11, 2021 10:23 am What is mesh locking? Would it work with a very fine tetra mesh? Would a hex mesh be better?
Okay you got me, FEA theory isn't my strong suite. :D But the result with a tetrahedral mesh wasn't converging, I thought I was using a quite refined tetmesh at the time, but probably not enough. I know that you can get weird behavior when using linear tetrahedral mesh. And you should always stride to use quadratic hexmeshes when doing structual analysis.

I'm trying to push the limit of mesh size but I'm getting:

11:49:04 FEM: No nodes found in Frd file.
11:49:04 Problem on frd file import. No nodes found in frd file.
11:49:04 FEM: No result object in active Analysis.

When I'm trying to push for a super refined tetmesh. Do anyone know what is limiting the meshsize?

I should have recorded my findings from the beginning to get a more conclusive answer.
UR_
Veteran
Posts: 1355
Joined: Tue Jan 03, 2017 8:42 pm

Re: add new function to fem module

Post by UR_ »

Done verification example from:
http://download.strusoft.com/FEM-Design ... amples.pdf
page 32

Screenshot 001.png
Screenshot 001.png (143.11 KiB) Viewed 2779 times

B U C K L I N G F A C T O R O U T P U T

MODE NO BUCKLING
FACTOR

1 0.9966513E+00

error against analytical solution: 0.4%
mesh: 1420 triangles, 2nd order
solver: ccx 2.17 PARDISO

file:
plate-verification.FCStd
(966.45 KiB) Downloaded 83 times

version:
OS: Windows 10 (10.0)
Word size of FreeCAD: 64-bit
Version: 0.20.25064 (Git)
Build type: Release
Branch: master
Hash: 07c65c65d6e58253813cdfc09fde95d0cfd4e4be
Python version: 3.9.4
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.5.2
Locale: German/Germany (de_DE)
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: add new function to fem module

Post by bernd »

for the sake of completeness ...

n_cr1 = 2860.36 kN/m x 6.0 m = 17162.16 kN = 17'162'160 N (17162160)

With this force applied CalculiX gives a buckling factor of 0.9965235 :D

Another very cool simple example for FreeCAD FEM.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: add new function to fem module

Post by bernd »

http://download.strusoft.com/FEM-Design ... amples.pdf
page 34

Attached my version of the lateral torsional buckling example ... I did it the same way like in the pdf. I used shell elements and forces to apply the constant bending moment. File is just 300 kB.

force is 43280000 Nmm / 278.6 mm ~ 155350 N
buckling faktor is 0.1030536E+01 = 1.031, which means the difference to the analytical solution is 3.1 %

IMHO it should be possible to be even more near the analytical solution. Comments are welcome.

buckling_ltb_with_shell.FCStd
(287.89 KiB) Downloaded 77 times

Screenshot_20210616_113028.png
Screenshot_20210616_113028.png (412.56 KiB) Viewed 2602 times
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: add new function to fem module

Post by bernd »

lateral torsional buckling git commit 68f1b4963797
plate buckling git commit 27acfe13727
twangrt
Posts: 40
Joined: Sun Apr 28, 2019 6:34 pm

Re: add new function to fem module

Post by twangrt »

bernd wrote: Wed Jun 16, 2021 9:41 am http://download.strusoft.com/FEM-Design ... amples.pdf
page 34

Attached my version of the lateral torsional buckling example ... I did it the same way like in the pdf. I used shell elements and forces to apply the constant bending moment. File is just 300 kB.

force is 43280000 Nmm / 278.6 mm ~ 155350 N
buckling faktor is 0.1030536E+01 = 1.031, which means the difference to the analytical solution is 3.1 %

IMHO it should be possible to be even more near the analytical solution. Comments are welcome.


buckling_ltb_with_shell.FCStd



Screenshot_20210616_113028.png
Nice! Both the plate and ltb example! :)
Post Reply