SesamX 3D elements explained

Learn what are the peculiarities of SesamX 3D elements and how they compare to Abaqus.

3D elements are probably the most intuitive elements to use when someone starts learning finite elements. Without relying on any specific assumption, these elements can be applied to a wide range of situations, as long as the mesh size can be reduced to capture every geometry detail. After the presentation of the SesamX 1D (truss and beam), and 2D (MITC4+ shell and MITC3+ shell) elements, I will present in this article, the 3D elements implemented in SesamX, as well as a comparison with Abaqus equivalent elements.

Introduction

When using 3D finite elements, there is no need to worry about the dimension of the structure (is it flat? is it slender?). Indeed, as opposed to bar, beam or shell elements, the 3D elements do not rely on any kinematic assumption.

They can be used to modelize flat structure for instance, that could be also modelized with shells. However, the price to pay using 3D elements instead of shells, will be an increased number of degrees of freedom. Indeed, the 3D elements do not embed the kinematic assumptions that makes the shell more relevant in this situation.

Therefore, 3D elements are best suited to modelize complex shapes that cannot be analyzed with classical 1D or 2D elements.

Complex bracket example
Complex bracket

SesamX provides 3D elements for the classical shapes: tetrahedron, wedge and hexahedron, but not pyramid. In this article, only linear elements are discussed. First the SesamX tetrahedron and wedge isoparametric elements are presented. Afterwards, a brief overview of the hexahedron elements literature is given, and the SesamX hexahedron element is introduced (derived from the newly published MITC8 element).

Model used for the Abaqus comparison

For each element presented, a comparison with Abaqus will be showcased. The same twisted 3D beam model is used among these comparisons. Only the mesh changes depending on the element shape.

Model used for comparison with Abaqus

A linear elastic material is applied with $ E = 200 GPa $ and $ \nu = 0.33 $ . The beam is clamped on one end, and an arbitrary loading is applied at a corner on the other end.

The results comparison is given after solving a linear static scenario.

Tetrahedron isoparametric element

This element is probably the most straightforward element to derive when learning finite element. The equivalent Abaqus element is the C3D4 element. SesamX implementation does not add anything fancy from the classical element formulation.

Element formulation

The parametric definition of the element is given by the following figure.

Tetrahedron parametric element

The element shape functions are:

$$ \begin{cases} N^1(r,s,t) = 1-r-s-t \\ N^2(r,s,t) = r \\ N^3(r,s,t) = s \\ N^4(r,s,t) = t \\ \end{cases} $$

Only 1 integration point is required to exactly integrate the element stiffness:

Point $ w_i $ $ r_i $ $ s_i $ $ t_i $
1 $ \cfrac{1}{6} $ $ \cfrac{1}{4} $ $ \cfrac{1}{4} $ $ \cfrac{1}{4} $

From a practical point of view, this element is not reliable and has a tendency to lock. Indeed, inside each element, the strain state is assumed constant. Hence a huge number of elements is necessary to accurately modelize a given geometry under deformation. Nevertheless, it can still be used to fill gaps in regions where strains are not severe.

SesamX input cards

To define tetrahedron solid elements in SesamX, the first step is to define the mesh. This can be done with the CREATE-SUBMESH function:

CREATE-SUBMESH 
  MODEL: TETRAHEDRON_ASSEMBLY
  NODES
    - ID: 1  POINT: 0.,0.,0.
    - ID: 2  POINT: 1.,0.,0.
    - ID: 3  POINT: 0.,1.,0.
    - ID: 4  POINT: 0.,0.,1.

  ELEMENTS  
    SHAPE: TE4
    - ID: 1  NODES: 1,2,3,4

Here we define 4 nodes and we create 1 tetrahedron element to connect the nodes. Next we apply the solid property on this element:

CREATE-PROPERTIES  
  MODEL: TETRAHEDRON_ASSEMBLY
  SOLID-STANDARD  
    BEHAVIOR: LINEAR  
    NAME: PROP1  
    MATERIAL: STEEL
    ON-ELEMENTS-FROM: ALL_TET

The SOLID-STANDARD property is applied on the elements from ALL_TET selection, providing a material name STEEL (that we defined previously, not shown here). BEHAVIOR: LINEAR indicates that we apply a linear elastic material. This keyword may seem unnecessary at the moment, but it is a provision for future material implementations (such as hyper-elastic materials).

Comparison with Abaqus C3D4 element

We expect identical results between SesamX and Abaqus elements because the element formulations are identical. The following mesh and results are obtained from the twisted beam test case (SesamX result).

Twisted beam tetrahedron mesh Twisted beam tetrahedron deformation
Tetrahedron mesh
Tetrahedron mesh deformation

And the table below gives the comparison of the nodal displacements between Abaqus and SesamX.

SesamX and Abaqus tetrahedron comparison

As expected, the difference on displacement magnitude is quite small.

You can find the SesamX and Abaqus input files following these links:

Wedge isoparametric element

Next come the wedge element. As for the tetrahedron element, the wedge is an isoparametric element. The equivalent Abaqus element is the C3D6 element. The major difference between the SesamX and the Abaqus implementations lies in the integration scheme used, as shown later in this section.

Element formulation

The parametric definition of the element is given by the following figure.

Wedge parametric element

The element shape functions are:

$$ \begin{cases} N^1(r,s,t) = \cfrac{1}{2} (1-r-s)(1-t) \\ N^2(r,s,t) = \cfrac{1}{2} r (1-t) \\ N^3(r,s,t) = \cfrac{1}{2} s (1-t) \\ N^4(r,s,t) = \cfrac{1}{2} (1-r-s)(1+t) \\ N^5(r,s,t) = \cfrac{1}{2} r (1+t) \\ N^6(r,s,t) = \cfrac{1}{2} s (1+t) \\ \end{cases} $$

When deriving the virtual work expression for an undistorted element, it can be shown that the stiffness integrand is (at most) of second order in r, s and t. Therefore, the following 6-point integration scheme is enough to exactly compute this integration.

Point $ w_i $ $ r_i $ $ s_i $ $ t_i $
1 $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ -\cfrac{1}{\sqrt{3}} $
2 $ \cfrac{1}{6} $ $ \cfrac{2}{3} $ $ \cfrac{1}{6} $ $ -\cfrac{1}{\sqrt{3}} $
3 $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ \cfrac{2}{3} $ $ -\cfrac{1}{\sqrt{3}} $
4 $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ \cfrac{1}{\sqrt{3}} $
5 $ \cfrac{1}{6} $ $ \cfrac{2}{3} $ $ \cfrac{1}{6} $ $ \cfrac{1}{\sqrt{3}} $
6 $ \cfrac{1}{6} $ $ \cfrac{1}{6} $ $ \cfrac{2}{3} $ $ \cfrac{1}{\sqrt{3}} $

When wedges are used to analyze bending problems, they exhibit locking (as for the tetrahedron element, but less severe). One solution to alleviate this issue is to employ reduced integration: instead of applying the 6-point integration scheme, the following 2-point scheme is used.

Point $ w_i $ $ r_i $ $ s_i $ $ t_i $
1 $ \cfrac{1}{2} $ 0 0 $ -\cfrac{1}{\sqrt{3}} $
2 $ \cfrac{1}{2} $ 0 0 $ \cfrac{1}{\sqrt{3}} $

However, there is a drawback. When using the 2-point scheme, it may happen that a spurious mode is introduced, which leads to a non reliable element. In practice, this spurious mode does not manifest noticeably over an assembly made of multiple elements.

Abaqus chose to implement the 2-point scheme, and it controls in some way the spurious mode when it manifests. In SesamX we chose to implement the 6-point scheme to avoid any spurious mode. Of course this choice leads to a stiffer element, that is why we recommend to use linear wedge elements as a fall-back solution when hexahedrons cannot be used.

SesamX input cards

As for the tetrahedron element, the first step is to define a mesh of wedge elements.

CREATE-SUBMESH 
  MODEL: WEDGE_ASSEMBLY
  NODES
    - ID: 1  POINT: 0.,0.,0.
    - ID: 2  POINT: 1.,0.,0.
    - ID: 3  POINT: 0.,1.,0.
    - ID: 4  POINT: 0.,0.,1.
    - ID: 5  POINT: 1.,0.,1.
    - ID: 6  POINT: 0.,1.,1.

  ELEMENTS  
    SHAPE: WE6
    - ID: 1  NODES: 1,2,3,4,5,6

And the next step is to define the solid property (identical to the tetrahedron solid property).

CREATE-PROPERTIES  
  MODEL: WEDGE_ASSEMBLY
  SOLID-STANDARD  
    BEHAVIOR: LINEAR  
    NAME: PROP1  
    MATERIAL: STEEL
    ON-ELEMENTS-FROM: ALL_WEDGE

You can refer to the tetrahedron section for more details about the SesamX input cards.

Comparison with Abaqus C3D6 element

The following mesh and results are obtained from the twisted beam test case (SesamX result).

Twisted beam wedge mesh Twisted beam wedge deformation
Wedge mesh
Wedge mesh deformation

And the table below gives the comparison of the nodal displacements between Abaqus and SesamX.

SesamX and Abaqus wedge comparison

As expected, displacements are smaller with SesamX than with Abaqus. The relative difference is at most 10%.

You can find the SesamX and Abaqus input files following these links:

MITC8 hexahedron element

It is possible to develop an isoparametric hexahedron element. However, as for the tetrahedron and the wedge elements, this isoparametric element will exhibit locking. But we have a better alternative: research has been fruitful for the hexahedron, and improved elements have been derived. 2 of them stand out:

  • the hexahedron with incompatible modes (often referred as the HE8I),

  • and the recently published MITC8 element (Mixed Interpolation of Tensorial Components).

The incompatible modes element has been around for quite a while and has improved gradually over time. It is the most widespread hexahedron element among finite element software (it is implemented in Abaqus as the C3D8I element). Succinctly, the element behavior is improved by adding internal degrees of freedom (similarly to what is done for the MITC3 element). If you are interested, you can find more information among these papers:

Unfortunately, it has recently been shown that the HE8I element may exhibit instabilities in non linear analysis:

Which motivated further research that led to the MITC8 element.

The MITC8 follows the method of the mixed interpolation of tensorial components (as presented in the MITC4 article). Unlike the HE8I, it does not exhibit instabilities but still provides a similar accuracy. For these reasons, SesamX chose to implement the MITC8 as its hexahedron element. You can find more information about how to implement this element in the following paper:

Element formulation

The whole MITC8 formulation is detailed in the preceding paper, only the parametric definition is given here.

MITC8 parametric element

The element shape functions are the classical hexahedron shape functions:

$$ \begin{cases} N^1(r,s,t) = \cfrac{1}{8} (1-r)(1-s)(1-t) \\ N^2(r,s,t) = \cfrac{1}{8} (1+r)(1-s)(1-t) \\ N^3(r,s,t) = \cfrac{1}{8} (1+r)(1+s)(1-t) \\ N^4(r,s,t) = \cfrac{1}{8} (1-r)(1+s)(1-t) \\ N^5(r,s,t) = \cfrac{1}{8} (1-r)(1-s)(1+t) \\ N^6(r,s,t) = \cfrac{1}{8} (1+r)(1-s)(1+t) \\ N^7(r,s,t) = \cfrac{1}{8} (1+r)(1+s)(1+t) \\ N^8(r,s,t) = \cfrac{1}{8} (1-r)(1+s)(1+t) \\ \end{cases} $$

And the classical 8-point Gauss integration scheme is used.

Point $ w_i $ $ r_i $ $ s_i $ $ t_i $
1 1 $ -\cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $
2 1 $ -\cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $
3 1 $ \cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $
4 1 $ \cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $
5 1 $ -\cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $
6 1 $ -\cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $
7 1 $ \cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $
8 1 $ \cfrac{1}{\sqrt{3}} $ $ -\cfrac{1}{\sqrt{3}} $ $ \cfrac{1}{\sqrt{3}} $

This element does not exhibit locking and is therefore the best element to use among the elements presented in this article.

SesamX input cards

As for the tetrahedron and wedge elements, the first step is to define a mesh of hexahedron elements.

CREATE-SUBMESH 
  MODEL: HEXAHEDRON_ASSEMBLY
  NODES
    - ID: 1  POINT:  0., 0., 0.
    - ID: 2  POINT:  1., 0., 0.
    - ID: 3  POINT:  1., 1., 0.
    - ID: 4  POINT:  0., 1., 0.
    - ID: 5  POINT:  0., 0., 1.
    - ID: 6  POINT:  1., 0., 1.
    - ID: 7  POINT:  1., 1., 1.
    - ID: 8  POINT:  0., 1., 1.

  ELEMENTS  
    SHAPE: HE8
    - ID: 1  NODES: 1,2,3,4,5,6,7,8

And the next step is to define the solid property.

CREATE-PROPERTIES  
  MODEL: HEXAHEDRON_ASSEMBLY
  SOLID-STANDARD  
    BEHAVIOR: LINEAR  
    NAME: PROP1  
    MATERIAL: STEEL
    ON-ELEMENTS-FROM: ALL_HEX

You can refer to the tetrahedron section for more details about the SesamX input cards.

Comparison with Abaqus C3D8I element

We expect to see some differences between the Abaqus C3D8I element (aka HE8I) and the SesamX element (MITC8) because the formulations are different. However, these differences should remain small.

The following mesh and results are obtained from the twisted beam test case (SesamX result).

Twisted beam hexahedron mesh Twisted beam hexahedron deformation
Hexahedron mesh
Hexahedron mesh deformation

And the table below gives the comparison of the nodal displacements between Abaqus and SesamX.

SesamX and Abaqus hexahedron comparison

As expected, the displacements are not the same but they are still close. The relative difference is at most 4%, and we can see that the SesamX element is a bit stiffer than the Abaqus element.

You can find the SesamX and Abaqus input files following these links:

Conclusion

I hope you had a pleasant read. Starting from version V2020_06 of SesamX you can use the 3D elements presented in this article. Feel free to share your thoughts or simply ask for more information!


Did you like this content?

Register to our newsletter and get notified of new articles