FEM MeshGmshFromShape

FEM MeshGmshFromShape

Menu location
Mesh → FEM mesh from shape by Gmsh
Workbenches
FEM
Default shortcut
None
Introduced in version
-
See also
FEM tutorial

Solvers
All

Description

For a finite elements analysis the geometry needs to be discretized into a FEM Mesh. This command uses the software Gmsh (which needs to be installed on the system) to generate the mesh.

Depending on your operating system and your installation package, Gmsh might be bundled with FreeCAD or not. For further information see FEM Install.

Usage

  1. Select the shape you want to analyze. For volume FEM this needs to be a solid or compsolid. A compsolid is necessary if your part is made from multiple materials (a compsolid can be created with the BooleanFragments command).
  2. Activate the tool in one of the following ways:
  3. Optionally, edit the minimum and maximum element size (the default setting often creates meshes that are too coarse). You can also change the element dimension (but the default From shape setting is normally sufficient) and order.
  4. Click the Apply button and wait for the generation of the mesh to complete. introduced in 1.0: Optionally, press the Cancel button to abort meshing.
  5. Click the OK button to close the task. You now should see a new FEMMeshGmsh object in your active analysis container. You can also click the Cancel button to cancel the changes or creation of the mesh object.

After the mesh has been created, you can change its properties using the property editor. After you change a property, you must reopen the Gmsh dialog again and click the Apply button (you can leave the dialog open while changing properties).

The Gmsh version button allows you to check the details about the currently linked Gmsh binary.

Properties

Effect of Mesh Size From Curvature'; left: set to 12, right: deactivated

Notes

Nonpositive Jacobians

When you get a meshing error about nonpositive Jacobians, you can try out the following strategies:

Mesh Growth

At edges and small geometric entities, the mesh has to be smaller than in areas without edges. So the mesh element size grows away from the edges. The growing strategy of Gmsh is to grow between edges of different sizes. So the growing fails when an area has the same sized edges like for example this tube:

Failing mesh growing because the cylindrical area is surrounded by the same edges

To enable a sensible mesh growing, you must in this case add an edge to the area. In the example, this would be a circle in the middle of the cylinder. The circle is added as part of a BooleanFragments compound (to form a CompSolid), see the project file of the example.

Sensible mesh growing due to the additional edge in the middle of the cylindrical area

Element Recombination

Elements can be recombined in two ways, on the surface of objects so that triangles will be recombined into quadrangles if possible and in the volume of objects so that tetrahedra will be recombined into prisms, hexahedra or pyramids if possible. Thinking about the geometry, it becomes clear that the recombination result depends strongly on the geometry of the body and that recombining a 3D body only at the surface will mostly lead to strange results.

To illustrate this, look at the image below. A cuboid body is meshed using the standard settings (tetrahedra, 2nd order mesh). This is the subimage at the upper left. The image at the upper right shows the result, when additionally the elements are recombined only at the surface of the body. The result is bad because the changed surface elements don't fit to the unchanged volume elements. So DataRecombine All alone usually only makes sense for 2D meshes.
When we use now also DataRecombine 3D All, the result is better, see the lower left subimage. However, the result doesn't show a great difference compared to the mesh without recombinations. Since our body is a cuboid, it is therefore sensible to use a recombination algorithm that tries to create cuboids as well. And this result is shown in the subimage at the lower right.

The Simple recombination algorithm will leave some triangles in the mesh in case the recombining leads to badly shaped quads. In such cases use a full-quad recombination algorithm, which will automatically perform a coarser mesh followed by the recombination, smoothing and subdividing. See forum topic

Effect of mesh element recombination.
Upper left: standard mesh.
Upper right: recombination only at the surface using the Simple algorithm.
Lower left: recombination at the surface and in the volume using the Simple algorithm.
Lower right: recombination at the surface and in the volume using the Simple full-quad algorithm