# Hex versus tet meshes in FEA

In this article the difference in the images of the stresses between a quadrilateral hexahedron (“hex”) mesh and a tetraeder (“tet”) mesh will be investigated. In both cases, second order elements will be used.

Hopefully this will make it clear to the reader why hex meshes are generally preferred.

The plate with a hole that was the subject of a previous article will again be used. The analyses will be done using CalculiX.

Both analysis use approximately the same number of elements.

The hex mesh is made out of second order hex elements with reduced integration. These are called “he20r” in the pre-/post-processor and “C3D20R” in the solver.

The tet mesh is made out of second order tet elements. These are called “te10” in the pre-/post-processor and “C3D10” in the solver.

The result generated with a hex mesh look nice and symmetric as is to be expected. Note that the whole plate was simulated, even though because of symmetry 1/4 of the plate would in theory be enough.

The image produced by the tet mesh looks similar at first but the borders between the bands of different colors that indicate stress levels look blotchy and imprecise.

The reason for this becomes clear when the mesh is overlaid on the stress results.

The hex mesh looks regular because it is.
The geometry was cut up into four parts with equal divisions in opposing
lines.
The cut lines run from the corner of the square to the edge of the
circle
This way, each 1/4th of the plate is quadrilateral so that `cgx`

‘s hex
mesher can easily create a regular mesh grid.

The tet mesh is made by an automatic mesher (`tetgen`

)
Automatic meshers using tetrahedra can fill almost *any* geometry.
Bus as can be seen in the picture above, the mesh is not regular and that
shows in the results.

Zooming in on the hole shows the effects of a regular hex mesh versus semi-regular tet mesh more clearly.

In the tet mesh, the colors showing the stress ranges following the element
boundaries.
This follows from how the finite element method works.
Using the loads and constraints and the global stiffness matrix, the
displacement of the nodes is calculated.
Stresses and strains inside each element are *calculated* from those displacements
using the shape functions of the element.
The stresses and strains are most accurate in the *integration points* within
each element.
But they are extrapolated out to the nodes and saved there because the nodes are
part of the geometry and the integration points are not.
The author suspects that for a tet mesh this extrapolation is more inaccurate
than for a hex mesh because of the shape of the tetrahedron.

So an unstructured tet mesh will effect how the stresses look *locally* more
than a regular hex mesh.
Therefore if it is preferable to use a hex mesh, and most preferable a regular
hex mesh.
This is also reflected in the manual of the CalculiX solver.
In the section covering second order hex elements with reduced integration
(which are called C3D20R there) it says:

The element behaves very well and is an excellent general purpose element (if you are setting off for a long journey and you are allowed to take only one element type with you, that’s the one to take)

For comments, please send me an e-mail.

## Related articles

- Corrugation against buckling
- Approximating elliptical arcs in CalculiX Graphics
- Singularities versus stress concentrations in FEA
- Automating CalculiX with make(1)
- Mooney-Rivlin rubber data for CalculiX