Checking mesh validity is a mandatory step before doing any finite element analysis. If checking the validity of tetrahedra is trivial, verifying hexahedral elements is far from being obvious. The generation of hex-dominant meshes in an indirect fashion tends to produce a large amount of hexahedra that could potentially be invalid. In this paper, a method that robustly and efficiently compute the validity of the standard linear hexahedral element is presented. This method is an improvement of a previous work on the validity of curvilinear elements. The new implementation is optimal, simple to code and is computationally efficient. The basis of the algorithm is still to compute B\'ezier coefficients of the Jacobian determinant. Here, we show that only 20 Jacobian determinants are necessary to compute the 27 B\'ezier coefficients. Those 20 Jacobians can be efficiently computed by calculating the volume of 20 tetrahedra. The new implementation is able to check the validity of about 6 million hexahedra per second on one core of a personal computer. Through the paper, all the necessary information is provided that allow to easily reproduce the results i.e.\ie write a simple code that takes the coordinates of 8 points as input and outputs the validity of the hexahedron.
Checking mesh validity is a mandatory step before doing any finite element analysis. If checking the validity of tetrahedra is trivial, checking the validity of hexahedral elements is far from being obvious. In this paper, a method that robustly and efficiently compute the validity of standard linear hexahedral elements is presented. This method is a significant improvement of a previous work on the validity of curvilinear elements. The new implementation is simple and computationally efficient. The key of the algorithm is still to compute B\'ezier coefficients of the Jacobian determinant. We show that only 20 Jacobian determinants are necessary to compute the 27 B\'ezier coefficients. Those 20 Jacobians can be efficiently computed by calculating the volume of 20 tetrahedra. The new implementation is able to check the validity of about 6 million hexahedra per second on one core of a personal computer. Through the paper, all the necessary information is provided that allow to easily reproduce the results ,\ie write a simple code that takes the coordinates of 8 points as input and outputs the validity of the hexahedron.
R
verifying
checking the validity of
D
The generation of hex-dominant meshes in an indirect fashion tends to produce a large amount of hexahedra that could potentially be invalid.
D
the
R
element
elements
R
an
a significant
R
optimal, simple to code and is
simple and
R
basis
key
R
Here, we
We
R
i.e.
,