Topology optimization

About the development of the FEM module/workbench.

Moderator: bernd

DMST1990
Posts: 7
Joined: Fri Jun 24, 2016 7:43 am

Re: Topology optimization

Postby DMST1990 » Wed Oct 12, 2016 11:27 am

I asked them: "How can i install z88Arion on GNU/Linux".
Answer: "It is to much effort to compile it on GNU/Linux."
So i think they use some Windows implemented libarys.

The Windows-Version works quite well.

jnxd wrote:
bernd wrote:There is another OpenSource topology optimization software available. Just found http://en.z88.de/z88arion/ but did not test it.
I must apologize but I can't see any indication that Z88 is open source. They ask you to email them if you intend to use it for commercial purposes.
User avatar
bernd
Posts: 8046
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Topology optimization

Postby bernd » Wed Oct 12, 2016 12:31 pm

You guys where on the right track.

It seams only z88os is opensource. This is the FEM solver which is used in Z88Aurora. It seams Z88Aurora (has a very nice gut (they says it. I actually never tested Aurora)) and Z88Arion (the optimizer) are Freeware but not OpenSource. Furthermore the usage is restricted to scientific purposes, whatever that for a layer means ...

bernd
nokian
Posts: 40
Joined: Wed Sep 14, 2016 8:22 pm

Re: Topology optimization

Postby nokian » Fri Oct 14, 2016 3:09 pm

Furthermore the usage is restricted to scientific purposes, whatever that for a layer means ...
Actually you can use it for commercial purposes but you have to sign a paper that you won't take the developers to court if something goes wrong.
That's how I unterstood it.
Pisolino85
Posts: 5
Joined: Sun Jul 09, 2017 2:16 pm

Re: Topology optimization

Postby Pisolino85 » Sun Jul 09, 2017 2:30 pm

fandaL wrote:
Sun Apr 24, 2016 10:24 pm
For a longer time I was working on a topology optimization script using CalculiX. I have uploaded the project to the GitHub
https://github.com/fandaL/beso
so if someone is interested, you can follow description there and try it. Current state is that I tested it on very simple examples; theoretically it should work also on more complex models, it needs slightly more FEM understanding, more model preparation, and much more computational power. I'm slowly learning programming on this so the quality of the code is corresponding, therefore critical comments are welcomed although I might not be able to correct everything. There is also still a lot of basic stuff to implement and connect to a FreeCAD functionality.
And for picture readers :)
lever_resulting_mesh.pngTransparent material is initial volume (filled by a mesh) and depicted mesh is final result after removal by algorithm. It is a proposal of material distribution in a lever loaded by the force on the right side, with horizontal fix on the top, and constrained displacement in radial and axial direction on the middle ring (so it can turn around the middle ring centre)
Hi FandaL, very good job. I'm testing it for 3dprinting and I have just a question, how can i convert the frd mesh into a handable mesh (stl??) and then go back to a solid with freecad??

Thanks in advance
User avatar
bernd
Posts: 8046
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Topology optimization

Postby bernd » Sun Jul 09, 2017 9:16 pm

Pisolino85 wrote:
Sun Jul 09, 2017 2:30 pm
how can i convert the frd mesh into a handable mesh (stl??) and then go back to a solid with freecad??
Use FreeCAD to open the frd. A FEM mesh and a result object will be created. Select the FEM mesh --> Menue FEM --> Utilities --> FEM mesh to mesh. You will have a FreeCAD mesh than. This one could you export to stl or directly convert to a solid with Menue Arch --> Utilities --> mesh to shape

bernd
Pisolino85
Posts: 5
Joined: Sun Jul 09, 2017 2:16 pm

Re: Topology optimization

Postby Pisolino85 » Mon Jul 17, 2017 1:53 pm

bernd wrote:
Sun Jul 09, 2017 9:16 pm
Pisolino85 wrote:
Sun Jul 09, 2017 2:30 pm
how can i convert the frd mesh into a handable mesh (stl??) and then go back to a solid with freecad??
Use FreeCAD to open the frd. A FEM mesh and a result object will be created. Select the FEM mesh --> Menue FEM --> Utilities --> FEM mesh to mesh. You will have a FreeCAD mesh than. This one could you export to stl or directly convert to a solid with Menue Arch --> Utilities --> mesh to shape

bernd
Thank you so much, i was using the 0.16 version and so i wasn't aware of such option. now tith 0.17 works like a charm. Now i'm trying to convert it back in a solid part to remesh it again and then optimizing again.
fandaL
Posts: 333
Joined: Thu Jul 24, 2014 8:29 am

Re: Topology optimization

Postby fandaL » Tue Jul 18, 2017 12:46 pm

Hi Pisolino85,
It’s already some time I tried to make the solid in FreeCAD from optimization results. I wanted to smooth the mesh and check stresses, because they are not much representative on the bumpy boundaries. Maybe you are just doing something little different.

I transformed FEM results to the mesh, applied smoothing in the Mesh module and then changed it to solid to be able to mesh it again and run analysis to check stresses. After some trials with smoothing in Mesh module I ended with default settings for Laplacian filter and selecting only faces I wanted to smooth, i.e. without smoothing faces for boundary conditions. There were 2 problems. One is that this smoothing makes slim parts even slimmer, which would increase stresses in the structure. When I got finally valid solid it was hard to work with it due to lot of small faces (the tool Refine shape in the Part module helps in case of flat faces but not on bumpy or partially smoothed surfaces). Using some other software to work with meshes like Meshlab could help to remesh it better, but I didn't try it.
More elegant way would be to reconstruct shape with some cool tools for reverse engineering, bsplines, nurbs, and staff like this, but I have not yet made time for doing this in FreeCAD.
sam1361
Posts: 1
Joined: Mon Oct 30, 2017 3:41 pm

Re: Topology optimization

Postby sam1361 » Mon Oct 30, 2017 3:52 pm

hello

I want to creat and display a 3D shell in matlab.(for example a barrel with 100 element) and I have a thickness vector(100*1) that containes the thicknesses of 100 shell elements.so I have an array that containes coordinates of shell nodes and element and a vector that containes thickness of shell element.

Now how can I display this 3D shell that each element , depend on value of its thickness was different in colour(gray)?.

Or how can I joint coordinate array and thickness vector or map the thickness vector on the shape of 3D shell and display a gray 3D shell? thank you

more explain

this question is about topology optimization. in final I must be have a figure like in attachment.i have a vector with size 100*1 for example [1 0 0 1 0 ….]. the name of this vector is thickness vector. ‘1’ means solid and ‘0’ means void in thickness vector. and I have an array (XYZ) for ploting 3D shell shap . I meshed this 3D shell to 100 rectangle elements. so corresponding each element in 3D shelh I have one number( 0 or 1) in thickness vector. now how can I display thickness of each element on output 3D shell plot with colour(e.g in final plot we can see each element that is solid be black and each element that is void be white ) .or how can I link or map thickness vector on the shell plot? address of picture: http://s9.picofile.com/file/8310446684/Capture.JPG thank you

if you have matlab code about shell topology optimization please give me.
jmaustpc
Posts: 9535
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: Topology optimization

Postby jmaustpc » Tue Oct 31, 2017 1:30 am

sam1361 wrote:
Mon Oct 30, 2017 3:52 pm
hello
welcome to FreeCAD.

I deleted your other post as it appeared to just be a duplicate, if I missed something then please post again.
HoWil
Posts: 837
Joined: Sun Jun 14, 2015 7:31 pm
Location: Austria

Re: Topology optimization

Postby HoWil » Tue Oct 31, 2017 8:04 am

sam1361 wrote:
Mon Oct 30, 2017 3:52 pm
I want to creat and display a 3D shell in matlab.(for example a barrel with 100 element) and I have a thickness vector(100*1) that containes the thicknesses of 100 shell elements.so I have an array that containes coordinates of shell nodes and element and a vector that containes thickness of shell element.
Hi sam1361,
So you want to do the visualization of colored 3d-shell elements in Freecad? The optimization is still done in matlab?
If both is answered with "yes", you maybe have a look at nurbs -editor... See https://forum.freecadweb.org/viewtopic. ... 20#p131778.
BR
Howil