proposal for Summer of Code

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
hongzheng
Posts: 2
Joined: Wed Mar 15, 2017 7:28 am

proposal for Summer of Code

Postby hongzheng » Wed Mar 15, 2017 8:14 am

Hello everyone,

this is Hao, I am an environmental engineer and interested in the project of building the interface between freeCAD and Elmersolver.

I have experience in using ANSYS and some other CFD software and am familiar with the 3D FEM solid or fluid mechanic modeling. But I prefer to implement simulations with Matlab with the open source solver because of the full control over the whole processes.

But these solvers can not easy handle the meshing of the complex 3D meshing. So I find this project very attractive.

According to the description, there are three phases in total, but it seems too much for one student. I can translate the output from the geometry model (meshing, nodes and elements) to the solver and help to develop the post-processing part and maybe add the evaluation of the correlation between the quality of meshing and the results so that it is easier for the developer to optimize the model. I don't know if it is what do you mean?
And if so, can you give me some suggestion on the proposal in these directions or anything that may help?

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

Re: proposal for Summer of Code

Postby bernd » Wed Mar 15, 2017 1:28 pm

hongzheng wrote:this is Hao, I am an environmental engineer and interested in the project of building the interface between freeCAD and Elmersolver.

I have experience in using ANSYS and some other CFD software and am familiar with the 3D FEM solid or fluid mechanic modeling. But I prefer to implement simulations with Matlab with the open source solver because of the full control over the whole processes.

But these solvers can not easy handle the meshing of the complex 3D meshing. So I find this project very attractive.
Hi Hao, thanks for your interest in this project. Since this is your first post on the FreeCAD forum welcome to the FreeCAD forum too.


hongzheng wrote:According to the description, there are three phases in total, but it seems too much for one student.
It depends. We know all the tree phases are quite some work to do, but lot's of work is not new. FreeCAD FEM supports two solver (Z88 and CalculiX) already. Means we do not want to write a totally new interface (API) we just would like to extend the API by another solver, ElmerFEM. Thus we made quite some detailed description about how the work should be done. We would like to be done mostly the ElmerFEM related part inside FreeCAD. Thus we did not do any general FEM work flow improvements like post processing or mesh improvements into this project.

You seam new to FreeCAD FEM. My advice would be to try FreeCAD FEM with CalculiX to get a feeling how things work. The project requires development in python. Thus what you could do is just have a look how the CalculiX solver is integrated in FreeCAD FEM and you will know what we would like to do for ElmerFEM. If you know how things going on in FreeCAD FEM we could discuss more in detail about your proposal. If you have any specific questions do not hesitate to ask in the forum.

May be I should mention you are not the only one who would like to write a proposal for this project.

cheers bernd
hongzheng
Posts: 2
Joined: Wed Mar 15, 2017 7:28 am

Re: proposal for Summer of Code

Postby hongzheng » Mon Mar 27, 2017 9:02 pm

Hi Bernd,

thank you for your respond, I finish installing the FreeCad and Calculix in both windows and mac, and go through the example in windows, however in mac, Calculix seems doesn't work properly. I must say it is really confusing to install Calculix in mac system. I didn't see the CalculiX command window and when I test the example with cgx -c beampl.inp, the Calculix Graphix window do appear but is blank no matter which displacement I try to plot. I don't know why since there was no error generated while compiling.

I think I know what will be done with ElmerFEM, you want to replace ElmerGui with FreeCad, right? So we should convert the information of the mesh to the right format of ElmerGui, like the coordinates of the nodes and connection of each element.
Can you give me some hints on how to write the proposal? Like where to start and what kind of "milestones" do you expect

Thanks
Hao
User avatar
sgrogan
Posts: 3042
Joined: Wed Oct 22, 2014 5:02 pm

Re: proposal for Summer of Code

Postby sgrogan » Mon Mar 27, 2017 10:15 pm

hongzheng wrote:Can you give me some hints on how to write the proposal? Like where to start and what kind of "milestones" do you expect

Hello Hao, Welcome from me as well.
Maybe look here at a competing proposal. http://forum.freecadweb.org/viewtopic.php?f=8&t=21455
Also consider substituting Octave for Matlab, Octave is OpenSource.
Good Luck.