Elsevier

Applied Numerical Mathematics

Volume 110, December 2016, Pages 1-13
Applied Numerical Mathematics

Degenerate tetrahedra removal

https://doi.org/10.1016/j.apnum.2016.07.013Get rights and content

Abstract

Standard 3D mesh generation algorithms may produce a low quality tetrahedral mesh, i.e., a mesh where the tetrahedra have very small dihedral angles. In this paper, we propose a series of operations to recover these badly-shaped tetrahedra.

In particular, we will focus on the shape of these undesired mesh elements by proposing a novel method to distinguish and classify them. For each of these configurations, we apply a suitable sequence of operations to get a higher mesh quality. Finally, we employ a random algorithm to avoid locks and loops in the procedure.

The reliability of the proposed mesh optimization algorithm is numerically proved with several examples.

Introduction

To create a “good quality” mesh is the main issue in mesh generation and optimization algorithms. In fact, the accuracy or the speed of a numerical simulation could be hampered by just a few “bad elements”. Understanding what “bad” and “good” element means and how to get a “good quality” mesh becomes a central problem in this area.

In [20], it is shown that the concept of “good element” is strictly related to the application and the numerical methods employed. In a volume tetrahedral mesh, we could state that, in general, elements with very small dihedral angles should be avoided.

However, in some cases it may be advantageous that the mesh is stretched according to a precise criterion, e.g., the gradient of a finite element solution. In fact, it could lead to a better result than a mesh composed by quasi-equilateral elements, see, e.g., [8], [17], [12]. In this work we focus in obtaining “nearly isotropic” tetrahedral meshes, i.e., meshes where we avoid elements whose shape is too far from the equilateral one.

The literature is rich of optimization algorithms to improve the shape of the tetrahedral elements. In [10], L.A. Freitag and P.M. Knupp present a shape measure for tetrahedra moving from the condition number of the linear transformation between the unit equilateral tetrahedron and any tetrahedron. Thanks to this shape measure, they formulate two optimization objective functions that aim at improving the worst-quality element in the mesh by a node-smoothing algorithm.

In [5] H. Edelsbrunner and D. Guoy demonstrate that the so-called sliver exudation procedure is able to remove the majority of badly-shaped tetrahedra, but unfortunately some badly-shaped tetrahedra still remain in the final mesh.

In [11] L.A. Freitag and C. Ollivier-Gooch propose a node smoothing procedure combined with a flipping algorithm to improve the shape of the tetrahedra of a mesh. In particular, they numerically show that these two operations are crucial to achieve a better quality mesh in a computationally efficient manner.

Even if the previous algorithms may produce excellent meshes composed by well shaped tetrahedra, they do not exploit all the possible local mesh operations. Indeed, a more aggressive set of operations should be applied to get even better results. This is the basic idea behind the optimization strategy proposed in [2], [1], [16]. In [2], [1] N. Acikgoz and C.L. Bottasso use a metric-driven mesh adaptation procedure. More in detail, in [2] C.L. Bottasso uses a standard Gauss–Seidel removal algorithm. Each element is visited and a series of attempts is made to remove these undesired elements and locally increase the mesh quality. These operations include different types of vertex insertion, edge contraction, flip and vertex smoothing. Unfortunately this approach may still produce clusters of bad elements. In [1] N. Acikgoz and C.L. Bottasso give a solution to the generation of “frozen” clusters of bad elements by leaving the greedy policy of [2] and introducing a simulated annealing technique. The acceptance criterion of the previous down-hill greedy policy is now modified such that new local triangulations are accepted based on a probability function, which inserts randomness in the process. In [16], B.M. Klingner and J.R. Shewchuk do not use the concept of metric, but they identify the low-quality tetrahedra and they apply a large variety of mesh operations to improve the mesh quality. Their results are really impressive. Indeed, they may obtain a final mesh with a very large minimum dihedral angle: about 38°. However, since they do not aim at optimizing the computational effort, this procedure is rather computationally inefficient.

This work is inspired by these last optimization procedures. We introduce a new criterion to detect the shape of the bad tetrahedra and we apply a series of ad-hoc operations for each case. We focus on improving the tetrahedra that degenerate to 2D planar shapes. In fact, it is well-known that these elements are produced by the classical (Constrained) Delaunay mesh generators, see, e.g., [21]. The tetrahedra that degenerate to 1D line can occur for more general meshes. Due to the heuristic foundation of the approach, it is possible that for some clusters of tetrahedra the optimal operation used to remove a badly-shaped tetrahedron is not the best one according to the entire cluster. Consequently, locks and loops can appear during the mesh improvement algorithm. To avoid this issue, we introduce a random component to the adaptation procedure.

The paper is organized as follows. In Section 2, we introduce the tetrahedral quality index and a new procedure to detect the different shapes of badly-shaped elements. Then, in Section 3, we describe a vertex smoothing algorithm and the sequence of operations to recover each case of degeneration. Finally, in Section 4, we show the reliability of both the badly-shaped element detection and the mesh improvement algorithm with numerical experiments. Conclusions and future works are discussed in Section 5.

Section snippets

Tetrahedra quality

In a mesh generation framework, it is necessary to define some precise criteria to evaluate the quality of the tetrahedral elements. In particular, this criterion should be a single and easily computed measure, in order to evaluate the “goodness” of an individual element, i.e., to estimate how far is the tetrahedral shape from the equilateral one.

There are several quality measures for tetrahedra available, see, e.g. [20]. The most general one is the so-called aspect ratio.

Definition 1

Consider a

Remove degenerate tetrahedra

In this section we describe more in detail the mesh operations applied to improve the mesh quality. These operations are divided into two main categories:

  • global operations: we apply a node-smoothing procedure on the mesh vertices to globally improve the quality of the mesh without changing its topology;

  • local specific operations: we apply a series of local mesh operations such as vertex insertion and edge contraction, specific for each badly-shaped tetrahedron.

Numerical results

In this section, we show some numerical examples of the proposed optimization procedure. First of all, we analyze the algorithm used to identify the different types of badly-shaped tetrahedra. Then, to prove the effectiveness of the optimization procedure, we take into account some applications by comparing the number of badly-shaped tetrahedra and the smallest dihedral angle before and after the process. We also assess the computational time.

For each example, we consider an initial Delaunay

Conclusions and future work

In this paper we have presented a new method to improve the quality of a tetrahedral mesh. The proposed algorithm applies a specific sequence of local mesh modifications for each type of badly-shaped tetrahedron. Since all the quality indexes proposed in literature just detect a low quality tetrahedron, we have developed a new technique to identify the type of the badly-shaped tetrahedron. Moreover, to avoid deadlock configurations, we have introduced a randomized procedure.

The reliability and

Acknowledgement

We gratefully acknowledge Dr. Luciani, Divisione di Cardiochirurgia, Dr. Puppini, Divisione di Radiologia, Ospedale Borgo Trento di Verona and Dr. Faggiano, Politecnico di Milano for the clinical data used in this paper. A special thank to Guido Francesco Iori for his precious advices on volume tetrahedral meshing. We sincerely thank the Reviewers for their precious suggestions on how to improve our manuscript.

References (21)

  • P.J. Frey et al.

    Anisotropic mesh adaptation for CFD computations

    Comput. Methods Appl. Mech. Eng.

    (2005)
  • W. Huang et al.

    A geometric discretization and a simple implementation for variational mesh generation and adaptation

    J. Comput. Phys.

    (2015)
  • N. Acikgoz et al.

    Metric-driven mesh optimization using a local simulated annealing algorithm

    Int. J. Numer. Methods Eng.

    (2007)
  • C.L. Bottasso

    Anisotropic mesh adaption by metric-driven optimization

    Int. J. Numer. Methods Eng.

    (2004)
  • J. Bronson et al.

    Lattice cleaving: a multimaterial tetrahedral meshing algorithm with guarantees

    IEEE Trans. Vis. Comput. Graph.

    (2014)
  • H. Edelsbrunner

    Geometry and Topology for Mesh Generation

    (2001)
  • H. Edelsbrunner et al.

    An experimental study of sliver exudation

    Eng. Comput.

    (2002)
  • E. Faggiano et al.

    Helical flows and asymmetry of blood jet in dilated ascending aorta with normally functioning bicuspid valve

    Biomech. Model. Mechanobiol.

    (2013)
  • D.A. Field

    Laplacian smoothing and Delaunay triangulations

    Commun. Appl. Numer. Methods

    (1988)
  • L. Formaggia et al.

    Anisotropic error estimates for elliptic problems

    Numer. Math.

    (2003)
There are more references available in the full text version of this article.
View full text