fcFEM - FEA from start to finish
Moderator: bernd
Forum rules
and Helpful information for the FEM forum
and Helpful information for the FEM forum
Re: fcFEM - FEA from start to finish
Is there a simple way to test what PART a mesh volume element is a member of (embedded in)? I need this info to resolve a boundary condition issues across interface elements.
Re: fcFEM - FEA from start to finish
An example of curved interface elements and a jump in boundary condition ... stiff, smooth axle pushed down in soft material. it is clear from the deformed mesh that the soft material can slide in two directions tangentially along the shaft.
Re: fcFEM - FEA from start to finish
And again, export to VTK works:
- Pauvres_honteux
- Posts: 728
- Joined: Sun Feb 16, 2014 12:05 am
- Location: Far side of the moon
Re: fcFEM - FEA from start to finish
the foundation of forging simulations!
Harry, you are really something extra!!
Harry, you are really something extra!!
Re: fcFEM - FEA from start to finish
Would you like to knw to which PART a element belongs to, or would youl like to know to which Solid of a Part an element belongs to?
Best would be to post some specific example file.
Re: fcFEM - FEA from start to finish
That’s indeed what meant. The main issue was that initially I could not achieve a jump in displacement boundary condition as shown in the above example. The reason is that in a compound, nodes are duplicated across solids. Only mesh volume elements have unique nodes. So I wanted to test for every “ConstraintDisplacement” node what elements it is attached to and then see what solid those elements belong to. This is an indirect way of testing if the node is really part of the target face.
In the end I solved it differently. I use meshtools.get_femnodes_ele_table(mesh.Nodes, femelement_table) to get a dictionary that collects all volume elements that a candidate boundary node connects to and then I test if at least one of those volume elements has a face (ie 6 nodes) on the boundary.
So for now it works but feels a bit clunky.
-
- Veteran
- Posts: 3156
- Joined: Sat May 20, 2017 12:06 pm
- Location: Germany
Re: fcFEM - FEA from start to finish
Harry,HarryvL wrote: ↑Fri Feb 15, 2019 11:47 pm Hi Thomas,
General/motivation; there are quite a few practical and interesting engineering problems that are hard to do or even impossible with the current FreeCAD/Calculix combination and I don’t think adding more external solvers or waiting for their developer(s) is the answer. For example: mixed meshes (sandwich panels, soil/structure interaction, pre-stressed concrete, bridges), analysis beyond limit points (plastic collapse of frames, plates and soil bodies, non-linear buckling of structures, etc.)
Specific: I built a macro that takes FC mesh and material data and performs the basic tasks of a finite element program. Now I am adding functionality that allows me to do the analyses that were previously out of reach. Zero-thickness elasto-plastic interface elements were high on the list for me as they are a simple and robust alternative for (small deformation) contact problems and can be used in mixed meshes to model the interaction (e.g. cohesive or frictional slip) between 1D/2D structural elements and the surrounding 3D matrix (eg concrete reinforcement, soil anchors, tunnel linings, foundation plates, piles).
Status: basic linear elastic solver framework and curved 2D interface elements work, although I am still running into trouble with more complex contact geometries. This is work in progress.
Next steps: 1) calculate and export stress results (note: interface elements are really handy to visualize contact stresses); 2) extend the solver framework to handle plasticity and collapse (simplest example being the slip and pull-out of structural elements along elasto-plastic interfaces); 3) include simple, traditional, beams and shell elements; 4) include general material and geometric non-linearity for 1D, 2D and 3D elements; 5) Add essential QT5 GUI functionality to provide specific input; 6) Make available for testing.
thanks for this detailed explanation. I am not a "theory-guy", thats why I asked for a "break".
I often wondered why people are spending time into putting a new FEM solver into Freecad
( I mean only static analysis). But as Bernd mentioned (am I right?) calculix is a "one man show" from
Guido Dhondt. This could be difficult for the future. So keep on your spirit Harry
Thomas
Re: fcFEM - FEA from start to finish
Contact stresses for two stacked blocks compressed at the top:
looks promising, but needs further verification for more complex geometries, e.g. the punch indentation problem from my earlier post:
looks promising, but needs further verification for more complex geometries, e.g. the punch indentation problem from my earlier post:
Re: fcFEM - FEA from start to finish
Hi Harry, I first thank you for the job and devellopements you are doing in this great FEM module. My first post in FEM forum, have to thanks Bernd and others FEM devellopers too .
The internal solver you are develloping is very exciting and your actual investigation are very promasing, I hope there will be implemented soon in FEM module (even if I remember Freecad motto ).
I'm just an end user with no skills in programming, if i understand correctly you are now dealing with contact stuffs, and multi-mesh bodies/shells/beams.
I used Solidwoks simulation in the past and there are several ways to define contacts beetwen faces:
- select faces in contact manualy (pretty fastidious for large models)
- select bodies or parts in contact then an auto-detection of faces in contact is performed (far better)
What is your vision? Are you devellopping such kind of system? manual selection? Auto detection of faces in contact beetween multi-bodies or beetween parts (by using boolean fragment and compounds)?
Last question: what about contact condition? (friction, penetration, possibility of gap).
Hope I'm unambiguious, forgive my limited english.
Alex
The internal solver you are develloping is very exciting and your actual investigation are very promasing, I hope there will be implemented soon in FEM module (even if I remember Freecad motto ).
I'm just an end user with no skills in programming, if i understand correctly you are now dealing with contact stuffs, and multi-mesh bodies/shells/beams.
I used Solidwoks simulation in the past and there are several ways to define contacts beetwen faces:
- select faces in contact manualy (pretty fastidious for large models)
- select bodies or parts in contact then an auto-detection of faces in contact is performed (far better)
What is your vision? Are you devellopping such kind of system? manual selection? Auto detection of faces in contact beetween multi-bodies or beetween parts (by using boolean fragment and compounds)?
Last question: what about contact condition? (friction, penetration, possibility of gap).
Hope I'm unambiguious, forgive my limited english.
Alex
Re: fcFEM - FEA from start to finish
Hi Alex, the interface elements are generated automatically between bodies that share a face. In the two examples I present above it works well, but there are plenty cases where the mesh generation does not deliver what I need. So this is still very much work in progress and I fear that I will have to dig deep to understand the file structure between GMSH and FreeCAD before I have a robust, automatic scheme.
I programmed a classical zero thickness interface element. For now it behaves elastically (normal stiffness and shear stiffness), but can easily be extended to elasto-plasticity (on my todo list). This enables description of stick-slip, friction and separation. In fact they can all be captured in a single Coulomb plasticity model with tension cut-off. The advantage of this model compared to the contact model in Calculix is that convergence is fast and stable. The drawback is that it only works for relatively small deformations (ie not suitable for a car crash simulation). The applications I envisage are more in civil engineering (soil-structure interaction, delamination, pre-stressed concrete, etc)
I programmed a classical zero thickness interface element. For now it behaves elastically (normal stiffness and shear stiffness), but can easily be extended to elasto-plasticity (on my todo list). This enables description of stick-slip, friction and separation. In fact they can all be captured in a single Coulomb plasticity model with tension cut-off. The advantage of this model compared to the contact model in Calculix is that convergence is fast and stable. The drawback is that it only works for relatively small deformations (ie not suitable for a car crash simulation). The applications I envisage are more in civil engineering (soil-structure interaction, delamination, pre-stressed concrete, etc)