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 |

**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.

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.

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
TYPE: 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).

Tetrahedron mesh |
Tetrahedron mesh deformation |

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

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.

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
TYPE: 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).

Wedge mesh |
Wedge mesh deformation |

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

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**(**M**ixed**I**nterpolation of**T**ensorial**C**omponents).

**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:

Wilson EL, Taylor RL, Doherty WP, Ghaboussi J. Incompatible displacement models: original paper introducing the concept of incompatible modes.

Taylor RL, Beresford PJ, Wilson EL. A non‐conforming element for stress analysis: improvement of the previous work to properly take care of non rectangular elements.

Wilson EL, Ibrahimbegovic A. Use of incompatible displacement modes for the calculation of element stiffnesses or stresses: another improvement of the element.

**This paper is usually the reference when talking about the HE8I element**.Simo JC, Rifai MS. A class of mixed assumed strain methods and the method of incompatible modes: generalization of the procedure leading to the HE8I element, that can be applied to other elements (shell for instance). The approach explained is often referred as the enhanced assumed strain method (EAS).

Simo JC, Armero F. Geometrically non‐linear enhanced strain mixed methods and the method of incompatible modes: extension of the previous work to non-linear analysis.

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.

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
TYPE: 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).

Hexahedron mesh |
Hexahedron mesh deformation |

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

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