who particularly is working on FEM module?

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
roozbehg
Posts: 9
Joined: Wed Oct 10, 2012 3:41 am
Location: Berkeley

who particularly is working on FEM module?

Post by roozbehg »

I have some experience of FEM programming and really want to participate just want to talk to some head developer for FEM module and get some idea.
-Roozbeh
pperisin
Posts: 695
Joined: Wed Oct 20, 2010 12:29 pm

Re: who particularly is working on FEM module?

Post by pperisin »

Hi,

jrheinlaender recently asked something about FEM module. It might be a good idea to ask there, since he did not declare if he is woking on something or not:

viewtopic.php?f=10&t=2931


Regards,
Petar
jrheinlaender
Posts: 554
Joined: Sat Apr 07, 2012 2:42 am

Re: who particularly is working on FEM module?

Post by jrheinlaender »

Hi,

I'm not working on the FEM module (and I'm not a head developer for FEM either).

I was missing some functionality (a DocumentObject for defining loads on a part) and if nobody does it sooner, I might implement that some time.

But I won't be upset if someone else goes ahead, since I only wanted this functionality because I need it for something else I am working on (shaft design wizard, in Part Module)

Jan
mrlukeparry
Posts: 655
Joined: Fri Jul 22, 2011 8:37 pm
Contact:

Re: who particularly is working on FEM module?

Post by mrlukeparry »

I think what would be a good idea is to find out what you would be interested in helping develop and what your potential ideas are for developing the FEM Module. For example do you want to create the whole workflow or concentrate on a particular area such a meshing, post processing etc?

I may be wrong, but here's my brief view on this: A lot of the pre and post processing is done in opensalome (meshing can be achieved using netgen) and then we would create plugins for different FE solver. These solvers would be run in different threads / processes to prevent locking. Then the entire workflow could be kept within FreeCAD and obviously provide an intuitive GUI for this. A lot of the stuff already exists but it's integrating this all together and keeping it both simple but flexible which is what I think is important.
roozbehg
Posts: 9
Joined: Wed Oct 10, 2012 3:41 am
Location: Berkeley

Re: who particularly is working on FEM module?

Post by roozbehg »

pperisin , jrheinlaender and mrlukeparry

thanks for your response. from what I see here we have long road to go. first thing first we really need a good mesh generator which can be achieved using either tetgen or netgen and then when we get to that point we'll be able to talk about the next steps. but now my suggestion is to focus on mesh generator. what do you think?

couple of questions,
1- what SMESH does right now in the FEM module?
2- how can someone have access to object's or meshes parts inside FEM project (i.e. nodes and faces and their connectivities) to create input file for tetgen?
3- what does user get right now when he/she clicks on "create fem mesh"?
-Roozbeh
pperisin
Posts: 695
Joined: Wed Oct 20, 2010 12:29 pm

Re: who particularly is working on FEM module?

Post by pperisin »

HI,

About mesh generator - there is "Create mesh from shape" in Part workbench (I think). Also, I think OpenCasCade has "tessellate" method in solid. There is also mesh module in FreeCAD, but I do not know if it is using OpenCascade fo that or not.

Best would be if werner would answer this.

Regards,
Petar
mrlukeparry
Posts: 655
Joined: Fri Jul 22, 2011 8:37 pm
Contact:

Re: who particularly is working on FEM module?

Post by mrlukeparry »

It seems like you have a good idea and concentrating on the mesher seems achievable!

I definitely recommend you contact wmayer because he has experience with meshing and knows what the current state of the module is.

My only view as far as external meshing goes is that it should allow different meshing programs, whether it's through SMESH or a plugin system using tetgen or netgen.
wmayer
Founder
Posts: 20317
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: who particularly is working on FEM module?

Post by wmayer »

For meshing we are using Salome's SMESH module. There is a SF project of this which we included into our repository.
The meshing algorithms works with so called hypotheses where you can e.g. decide if you only want quad meshes and a maximum edge length. Or if you have a solid you can create a volume mesh out of it and so on.

I think the framework is pretty mighty and I for myself only experimented a bit with triangle and quad meshes. With the framework you can also invoke external meshers like Netgen via plugins. However, I don't know how exactly it works.

To get a feeling of how the Salome mesher works you can have a look at the commands "Create shape from geometry" and "Create shape from shape". The first one uses OpenCascade's built-in mesher which creates a quite course triangle mesh, i.e. with a lot of malformed triangles. For display purposes the quality is sufficient but for further mesh.processing stuff you may have a lot of numerical problems.
The second command uses the Salome mesher where you get well-formed triangles and a maximum edge can be set.

In the Fem workbench there is a similar command which creates quad meshes.

To have some code examples of how to use the API check the files src/Mod/MeshPart/App/Mesher.cpp or src/Mod/Fem/App/FemMesh.cpp
User avatar
shoogen
Veteran
Posts: 2823
Joined: Thu Dec 01, 2011 5:24 pm

Re: who particularly is working on FEM module?

Post by shoogen »

I'm sorry, but i got problems to understand what this type of meshing has to do with FEM. The meshes i was able to create where all hollow. Like those for an stl or obj file.
But what i learned from FEM is that mesh should describe a number of basic elements like rods, beams, plates or (tetraedic or cubic) volumes.
For rods beams and plates that would mean that non-mainfold meshes have to be allowed. And for volumes this would mean that the would be internal faces that delimit the volume elements.
Is there something i missed?
Last edited by shoogen on Mon Oct 15, 2012 5:13 am, edited 1 time in total.
roozbehg
Posts: 9
Joined: Wed Oct 10, 2012 3:41 am
Location: Berkeley

Re: who particularly is working on FEM module?

Post by roozbehg »

dear developers,

please correct me if I'm wrong.

from what I understood, the current FEM module command "create fem mesh" only generate surface meshes which is mixture of quads and triangles (from what I see) !! is this correct?
if so, as shoogen mentioned what we need at this point is a volumetric mesh generator to generate tetrahedral or hexahedral meshes.

and couple of suggestions,
despite all the affords you guys are putting to create this amazing free source code one thing that really is missing is one document that explains major knowledge that a new developer needs to know such as:
1- how to have access to different parts of geometry and which header files is really needed for this.
2- how to add new plugins, dlls or project.
3- etc. ...
long story short this project really needs a programming documentations and I'd believe with the power this program has, having such a documents would really absorb more developers from different field to contribute.
-Roozbeh
Post Reply