Abstract
The Finite Element Method (FEM) is widely used to solve discrete Partial Differential Equations (PDEs) in engineering and graphics applications. The popularity of FEM led to the development of a large family of variants, most of which require a tetrahedral or hexahedral mesh to construct the basis. While the theoretical properties of FEM basis (such as convergence rate, stability, etc.) are well understood under specific assumptions on the mesh quality, their practical performance, influenced both by the choice of the basis construction and quality of mesh generation, have not been systematically documented for large collections of automatically meshed 3D geometries.
We introduce a set of benchmark problems involving most commonly solved elliptic PDEs, starting from simple cases with an analytical solution, moving to commonly used test problem setups, and using manufactured solutions for thousands of real-world, automatically meshed geometries. For all these cases, we use state-of-the-art meshing tools to create both tetrahedral and hexahedral meshes, and compare the performance of different element types for common elliptic PDEs.
The goal of this benchmark is to enable comparison of complete FEM pipelines, from mesh generation to algebraic solver, and exploration of relative impact of different factors on the overall system performance.
As a specific application of our geometry and benchmark dataset, we explore the question of relative advantages of unstructured (triangular/ tetrahedral) and structured (quadrilateral/hexahedral) discretizations. We observe that for Lagrange-type elements, while linear tetrahedral elements perform poorly, quadratic tetrahedral elements perform equally well or outperform hexahedral elements for our set of problems and currently available mesh generation algorithms. This observation suggests that for common problems in structural analysis, thermal analysis, and low Reynolds number flows, high-quality results can be obtained with unstructured tetrahedral meshes, which can be created robustly and automatically.
We release the description of the benchmark problems, meshes, and reference implementation of our testing infrastructure to enable statistically significant comparisons between different FE methods, which we hope will be helpful in the development of new meshing and FEA techniques.
1 INTRODUCTION
The finite element method (FEM) is commonly used to discretize partial differential equations (PDEs), due to its generality, rich selection of elements adapted to specific problem types, and wide availability of commercial implementations. At a high level, an FE analysis code takes as input the domain boundary, the boundary conditions, and the governing equations of the phenomena of interest, and computes the solution everywhere in the domain.
As an initial step in this procedure, the domain typically has to be discretized in a finite collection of elements. Many choices are possible, ranging from unstructured grids of tetrahedra to perfectly regular grids of cubes. Despite the large amount of research on mesh generation, we were unable to find a systematic study answering a basic question: “What are the practical pros and cons of using unstructured (triangular/tetrahedral) or structured (quadrilateral/hexahedral/grids) discretizations for commonly used elliptic PDEs?”.
This question is critical to inform the development of meshing algorithms: while tetrahedral meshes are easier to generate automatically, hexahedral meshes (i.e., meshes that are composed of only deformed cubes) are much more difficult to adapt to objects with complex geometries, while maintaining high mesh quality. One of the arguments motivating development of these more complex algorithms is a common belief that hexahedral elements yield better accuracy for a given computational cost (see the introduction of, e.g., Lyon et al. 2016 Guo et al. 2020 Bernard et al. 2016).
The overall aim of our work is to provide an extensive benchmark for comparing the performance of FE pipelines, including automatic meshing, FE basis construction, and algebraic system solvers, on a set of most common elliptic PDEs and a set of realistic geometries. As an immediate application, we explore the performance of widely used families of elements, coupled with standard solvers, on a large set of meshes generated using currently available meshing algorithms.
More specifically, we compare the efficiency of different elements, that is, how much time is typically required to obtain a solution with a given accuracy for different element types on automatically generated unstructured meshes, on manually and automatically generated semi-structured meshes, and on regular lattices.
We consider standard Lagrangian bases Szabó and Babuška 1991 Ciarlet 2002a of varying degrees, as well as serendipity Zienkiewicz et al. 2005 elements (for hexahedra only), which are by far the most popular brick elements. Finally, we perform several comparisons using spline-based elements Hughes et al. 2005, which have recently gained popularity in the IsoGeometric Analysis (IGA) community. While this clearly does not reflect the broad range of existing element types and PDEs in the literature, it includes the most popular general-purpose elements currently used in commercial and open-source FE systems. For solving the resulting linear systems, we consider both state of the art direct De Coninck et al. 2016 and iterative solvers Falgout and Yang 2002.
We collected a set of test problems of varying complexity for elliptic PDEs (including Poisson, linear elasticity, Neo-Hookean elasticity, incompressible elasticity, and incompressible Stokes equations). Our set includes common simple test problems (where most of the hex-meshes are grids): beam bending, beam twisting, driven cavity flow, planar domain with a hole, elasticity problems with singular solutions, as well as a large-scale benchmark of manufactured solutions Salari and Knupp 2000 on \( 3,\!200 \) automatically meshed, real-world, complex 3D models. Our model collection includes both CAD models and scanned geometries, providing a realistic sampling of analysis scenarios. We use TetWild Hu et al. 2018 2020 and MeshGems Spatial 2018 to generate the tetrahedral and hexahedral meshes, respectively (we also included the state-of-the-art meshes from Hexalab Bracci et al. 2019).
This combination of test models, 3D meshes for these models, elements, and solvers is representative of many common FE application scenarios.
We quantify (to the best of our knowledge, for the first time) the overall performance differences between these two families of elements. Our main conclusion is that, while linear elements on triangular/tetrahedral meshes exhibit well-known problems, quadratic tetrahedral elements perform similarly or better (i.e., require similar or less time to compute a solution with a given accuracy) than Lagrangian elements on semi-structured hexahedral meshes, and are somewhat inferior (but still competitive, especially considering tetrahedral meshing is much faster and more robust) to the performance of spline elements on regular lattices when a direct solver is used. Combined with available state-of-the-art robust meshing techniques, quadratic tetrahedral elements are a good choice to realize a fully automatic pipeline, e.g., for SciML applications, or shape optimization, without sacrificing performance compared to hexahedral elements, which require far more complex and less robust mesh generation. More detailed conclusions are presented in Section 6.
We emphasize that our study is limited to a specific set of PDEs, commonly used geometry-agnostic linear solvers, and state-of-the-art meshing algorithms; we leave adding dynamic scenarios, multi-physics, different linear solvers, and other extensions as future work – the provided framework can be readily extended to these cases. We also note that adaptive refinement is simpler for hexahedral meshes and, as a consequence, adaptive geometric multigrid solvers are more readily available Alzetta et al. 2018, although it is possible to develop similar solvers for tetrahedral meshes Kohl et al. 2019. While the outcome of our study should not be interpreted as a reason to favor tetrahedral discretizations in all situations (and there are applications of hexahedral meshes outside the scope of FEM discretizations, such as lattice structure design), it does point to the need for direct experimental evaluation of meshing strategies, in the context of specific target applications.
We provide the complete source code1 for the integrated analysis pipelines we tested, the dataset we used,2 the benchmark solutions, and the scripts to reproduce all results,3 to enable researchers and practitioners to easily expand this study to additional mesh types (such as polyhedral meshes) and bases.
This study is divided into five sections: we first introduce the closest related works on meshing and analysis (Section 2). We then overview the background on mesh types, basis, and the model PDE that we consider in this study (Section 3). We divide the experimental evaluation into a set of individual experiments, targeting a set of common test problems (including problems with singularities) in Section 4, and then perform a large scale analysis on thousands of automatically generated meshes in Section 5. We finally draw conclusions and identify open challenges in Section 6.
2 RELATED WORK
We first review existing comparisons of different types of finite elements (Section 2.1), then briefly discuss commonly used finite element software (Section 2.2) and the state-of-the-art meshing algorithms (Section 2.3).
2.1 FEA on Unstructured and Structured Meshes
To the best of our knowledge, our study is the first large-scale comparison between different commonly used types of elements in FEM. However, there are multiple existing comparisons focused on specific models and physics.
In Cifuentes and Kalbag 1992, the authors conclude that quadratic tetrahedral meshes lead to roughly the same accuracy and time as linear hexahedral meshes, by comparing solutions for several simple structural problems. By evaluating the eigenvalues of the stiffness matrices of various nonlinear and elastoplastic problems, Benzley et al. 1995 reports that, in their study, linear hexahedral meshes are superior to linear tetrahedral meshes. The authors also show that linear hexahedral meshes are slightly superior to quadratic tetrahedral meshes in the nonlinear elastoplastic analysis experiment.
A more recent work, Tadepalli et al. 2010 2011, focuses on modeling footwear with a nonlinear incompressible material model under shear force loading conditions. The conclusion of these works is that trilinear hexahedral meshes are superior to linear tetrahedral meshes, and that quadratic tetrahedral elements are computationally more expensive compared to trilinear hexahedral elements, but have higher accuracy. Wang et al. 2004 compares tetrahedral and hexahedral meshes on linear static problems, modal, and nonlinear analysis. The study concludes that quadratic tetrahedral and hexahedral elements have similar performance, but quadratic hexahedra are computationally more expensive. The same study also confirms that linear tetrahedra are too stiff for large deformations, and linear hexahedra with large corner angles should be avoided in regions of stress concentration. The study is restricted to a small set of geometries and focuses on manual hexahedral mesh generation. Our study instead focuses on automatic meshing algorithms for both tetrahedral and hexahedral meshes, and we provide experimental results on thousand of complex geometric models and a wide array of elliptic PDEs.
In medical applications, results for femur models Ramos and Simões 2006 show that linear tetrahedral meshes of the simplified femur model lead to a closer agreement with the theoretical ones, while quadratic hexahedral meshes are more stable and the result is less affected by mesh refinement. On a kidney model, Bourdin et al. 2007 observes that both linear and quadratic tetrahedral meshes are slightly stiffer than hexahedral meshes, but are more stable when high impact energies are present in the simulation. For heart mechanics and electrophysiology, Oliveira and Sundnes 2016 notes that quadratic hexahedra are slightly better than quadratic tetrahedra in the mechanics regime, while linear tetrahedral meshes are the best choice for the electrophysiology problem.
2.2 Finite Element Analysis Software
There exists a large number of libraries and software for finite-element analysis, both open-source and commercial. An exhaustive comparison of all existing packages4 is beyond the scope of this paper, therefore we discuss only several representative packages. We point out an interesting project Ladutenko 2018 attempting to maintain a complete list of FEA packages with a list of characteristics.
Our goal is to investigate and compare the performance of FEM on meshes with tetrahedral and hexahedral elements, using the standard Lagrangian basis functions and serendipity elements commonly used in engineering applications, as well as spline elements used in IGA.
Open-source packages such as FEniCS Alnæs et al. 2015, GetFEM++ Renard and Pommier 2018, libMesh Kirk et al. 2006, and MFEM MFEM 2020 support both tetrahedral and hexahedral meshes, although very few (e.g., libMesh) implement both the 20-(serendipity) and 27-nodes variant for quadratic hexahedral elements. Deal.II Alzetta et al. 2018 is another popular open-source FEA library, however it only supports quadrilateral and hexahedral elements. Commercial packages such as ANSYS ANSYS Inc. 2019, Abaqus ABAQUS Inc. 2019, COMSOL Multiphysics COMSOL Inc. 2018 support Lagrangian tetrahedral elements, but surprisingly often implement only serendipity elements for hexahedra Zienkiewicz et al. 2005Chapter 6. Given their popularity, we included serendipity elements in our study in addition to traditional Lagrangian elements.
Another increasingly popular choice of bases for hexahedral meshes are B-splines and NURBS, most commonly used in the context of isogeometric analysis (IGA) Hughes et al. 2005. The popularity of spline bases stems from the fact that they have only one dof per element independently of the degree (however, the support of each basis function grows accordingly, and, as a consequence the stiffness matrices become less sparse). Defining this type of element on fully general hexahedral domains is an open problem Aigner et al. 2009 Martin and Cohen 2010 Li et al. 2013. Due to their rising popularity, we deem important to include experiments with these elements in our study, but restrict them to cases where a regular lattice mesh is used.
Since none of these libraries implements both Lagrangian (tetrahedral and hexahedral), serendipity, and spline basis functions (hexahedral only) in the same framework, we added all the elements and basis used in this study to our own open-source FEA library Schneider et al. 2019b to ensure a fair comparison. PolyFEM Schneider et al. 2019b supports all these element types and interfaces with Hypre Falgout and Yang 2002 and PARDISO De Coninck et al. 2016 Verbosio et al. 2017 Kourounis et al. 2018 for the solver and Eigen Guennebaud et al. 2010 for linear algebra.
2.3 Meshing
Three-dimensional mesh generation has been thoroughly studied in multiple communities Shewchuk 2012 Carey 1997 Owen 1998 Tautges 2001. For the sake of brevity, we restrict our review to the techniques generating pure tetrahedral or pure hexahedral meshes, which are the focus of our study, with an emphasis on methods implemented in readily available open-source or commercial libraries.
Tetrahedral Meshing. The most efficient, popular, and well-studied family of algorithms tackles the generation of meshes satisfying the Delaunay condition Chew 1993 Shewchuk 1996 1998 Ruppert 1995 Shewchuk 2012 Sheehy 2012 Remacle 2017 Du and Wang 2003 Alliez et al. 2005 Tournois et al. 2009 Murphy et al. 2001 Cohen-Steiner et al. 2002 Chew 1987 Si and Gärtner 2005 Shewchuk 2002 Si and Shewchuk 2014 Si 2015 Cheng et al. 2008 Boissonnat and Oudot 2005 Jamin et al. 2015 Dey and Levine 2008 Chen and Xu 2004. These methods are robust if the input is a point cloud, but might fail if the boundary of a shape has to be preserved exactly Hu et al. 2018 2020.
To overcome these robustness limitations, alternative approaches are based on a background grid Molino et al. 2003 Bronson et al. 2013 Labelle and Shewchuk 2007 Doran et al. 2013 Bridson and Doran 2014. The idea is to fill the bounding box of the 3D input surface with either a uniform grid or an adaptive octree, whose convex cells are trivial to tetrahedralize. These methods achieve high quality in the interior of the mesh (where the grid is regular), but introduce badly shaped elements near the boundary, which is often the region of interest in many practical simulations. On the other hand, front-advancing methods Cuillière et al. 2013 Alauzet and Marcum 2014 Haimes 2014 start by marching from the boundary to the interior, adding one element at a time, pushing the problematic elements into the interior where the advancing fronts meet.
All these methods are unable to handle commonly occurring input surfaces which contain degenerated faces, gaps, and self-intersections. These types of defects are, unfortunately, common in CAD models, due to the NURBS representation (with a fixed degree) not being closed under Boolean operations. To the best of our knowledge, the only method that was demonstrated to be capable of handling these cases robustly is TetWild Hu et al. 2018. It is based on a hybrid numerical representation to ensure correctness, and it allows a small, controlled deviation from the input surface to achieve a good element quality. We used this technique to generate all unstructured tetrahedral meshes in this study.
Hexahedral Meshing. This aims at filling the volume enclosed by an input surface with hexahedra. Hexahedra also need to have a good shape to ensure good solution approximation. The natural tensor-product structure of a hexahedron enables to define tensor-product bases, and, e.g., use spline-based elements, but dramatically increases the complexity of meshing algorithms. Semi-manual or interactive approaches are usually employed, such as sweeping and advancing front methods Shepherd and Johnson 2008 Gao et al. 2016 Livesu et al. 2016, which are used in commercial software such as ANSYS Inc. 2019 Coreform 2020.
By allowing lower element quality, one can design automatic approaches based on regular lattices Schneiders and Bünten 1995 Schneiders 1996 Su et al. 2004 Zhang and Bajaj 2006 Zhang et al. 2007, or on octrees Schneiders et al. 1996 Zhang and Bajaj 2006 Ito et al. 2009 Maréchal 2009 Qian and Zhang 2010 Ebeida et al. 2011 Zhang et al. 2013 Elsheikh and Elsheikh 2014 Owen et al. 2017 Spatial 2018.
Polycube methods Gregson et al. 2011 Livesu et al. 2013 Huang et al. 2014 Fang et al. 2016 Fu et al. 2016 Li et al. 2013 Zhao et al. 2018 and field-aligned parameterization-based methods Nieser et al. 2011 Huang et al. 2011 Li et al. 2012 Jiang et al. 2014 Solomon et al. 2017 Liu et al. 2018 aim at producing hexahedral meshes with as few irregular edges and vertices as possible, but designing robust algorithms of this type is still an open problem. Sample results from some of the previous methods have been recently collected into a single repository Bracci et al. 2019, which we use in our study. We also generate a new dataset composed of 3,200 hexahedral meshes using the commercial MeshGems-Hexa software Spatial 2018.
3 BACKGROUND
3.1 FEM Bases
There is a multitude of different definitions of bases for both tetrahedral (or triangular) and hexahedral (or quadrilateral) element shapes, with different elements tailored to specific types of problems (e.g., axisymmetric elements, shell elements, plasticity elements, etc.). In our comparison, we target the most common choices: we use the standard linear and quadratic Lagrange bases for tetrahedra, which we denote \( P_1 \) and \( P_2, \) respectively, and hexahedra, with \( Q_1 \) denoting linear tensor-product basis and \( Q_2 \) quadratic tensor-product basis Szabó and Babuška 1991 Ciarlet 2002b. We also use the serendipity basis Zienkiewicz et al. 2005, commonly used in commercial software, and spline basis Hughes et al. 2005 for hexahedral elements. We use the standard Galerkin formulation Szabó and Babuška 1991 Ciarlet 2002b with Gaussian quadrature for all our experiments, avoiding non-standard quadrature.
3.2 Mesh and Solution Characterization
We use the number of vertices as a measure of the resolution of tetrahedral and hexahedral meshes, as the number of vertices is often used by the meshing algorithms as the “budget” that the meshing algorithms can use to create the best possible mesh, and the number of vertices is equal to the number of degrees of freedom in the case of linear (or tri-linear) elements.
In addition to this particular choice, we also investigate other metrics for a specific example (Table 1), and provide an interactiveplot that allows one to compare our results using 24 different measures: solution error measured using \( H^1 \), \( H^1 \) semi-norm, \( L_2 \), \( L^\infty \), \( L^\infty \) of gradient, and \( L^8 \) norms; mesh average edge length, minimum edge length and number of vertices; the system matrix size and the number of non zero entries, the numbers of basis functions, dofs, elements, and pressure basis functions; timings for loading mesh data, building basis functions, computing the right-hand side, assembling the system matrix, solving the system, computing the errors, total time, and time without right-hand side assembly.
3.3 Model PDEs
We selected the following set of representative elliptic problems: (1) Poisson; (2) incompressible stationary Stokes fluid flow equations; (3) elasticity with linear Hooke’s law as the constitutive equation; (4) Neo-Hookean elasticity; and (5) incompressible linear elasticity. We list the corresponding PDEs for completeness.
Let \( \Omega \subset \mathbb {R}^d \), \( d\in \lbrace 2,3\rbrace \) be the domain with boundary \( \partial \Omega \). We aim to solve \( \begin{gather*} \mathcal {F}(x, u, \nabla u, D^2 u) = b,\text{ subject to}\\ u = d \text{ on } \partial \Omega _D\quad \text{and}\quad \nabla u\cdot n = f \text{ on } \partial \Omega _N \end{gather*} \) for the function \( \begin{equation*} u:\Omega \rightarrow \mathbb {R}^n, \end{equation*} \) where \( D^2 \) is the matrix of second derivatives, \( b \) is the right-hand side, \( \partial \Omega _D\subset \partial \Omega \) is the part of the boundary with Dirichlet boundary conditions, and \( \partial \Omega _N\subset \partial \Omega \) is the part of the boundary with Neumann boundary conditions. Since we consider second-order PDEs only, \( \partial \Omega _D\cap \partial \Omega _N = \emptyset \). The form of \( \mathcal {F} \) and the role of \( u \) depends on the specific PDE.
We consider polygonal and polyhedral domains \( \partial \Omega \) (possibly non-convex). The right-hand side \( b \) in our test examples is analytic, the boundary \( d \) is continuous and piecewise-smooth, and \( f \) is piecewise smooth (but possibly with finite-jump discontinuities); under these assumptions, the weak solutions of the equations we consider are (at least) continuous, but the solution derivatives may be singular. We primarily focus on the error in the solution itself, rather than the derivative error, although consider the stress for some elasticity examples. We state the model problems in the strong form, but only the weak solutions exist for many of the test cases.
Poisson Equation. This problem is given by (1) \( \begin{equation} {\left\lbrace \begin{array}{ll} -\Delta u = b & \text{on } \Omega \\ u = d & \text{on } \partial \Omega _D \\ \nabla u\cdot n = f & \text{on } \partial \Omega _N. \end{array}\right.} \end{equation} \)
Incompressible Steady Stokes Equations. The Stokes equations provide the relationship between the velocity \( u \) and the pressure \( p \) for an incompressible fluid with viscosity \( \mu \). (2) \( \begin{equation} {\left\lbrace \begin{array}{ll} -\mu \Delta u + \nabla p = b & \text{on } \Omega \\ -\div {u} = 0 & \text{on } \Omega \\ u = d & \text{on } \partial \Omega _D \\ \mu (\nabla u + \nabla ^T u)\cdot n - pn = f & \text{on } \partial \Omega _N \end{array}\right.} \end{equation} \)
Elasticity. Elasticity PDEs are formulated in terms of the stress tensor \( \sigma [u] \) (which depends on the displacement \( u \)) as (3) \( \begin{equation} {\left\lbrace \begin{array}{ll} -\div {\sigma [u]} = b & \text{on } \Omega \\ u = d & \text{on } \partial \Omega _D \\ \sigma [u] \, n = f & \text{on } \partial \Omega _N. \end{array}\right.} \end{equation} \) In this case the right-hand side \( b \) plays the role of a body force, the Dirichlet boundary conditions are fixed displacement, and the Neumann ones are surface tractions.
Material models define how the stress \( \sigma \) is related to the displacement field \( u \). For the linear Hookean model, (4) \( \begin{equation} \sigma ^L[u] = 2 \mu \epsilon [u]+ \lambda \text{tr} {\epsilon [u]} I \qquad \epsilon [u] = \frac{1}{2} \left(\nabla u^T + \nabla u\right), \end{equation} \) where \( \epsilon [u] \) is the strain tensor, \( \lambda \) is the first Lamé parameter, and \( \mu \) is the shear modulus. There are two common assumptions reducing the elasticity problem to a 2D problem, plane stress and plane strain; in our experiments we are using plane stress. In this case, the elasticity equation has the same form but with different constants Hughes 2012: \( \begin{equation*} \mu = \frac{E}{2 (1 + \nu)},\quad \lambda _{\mathrm{3D}} = \frac{E \nu }{(1 + \nu) (1 - 2 \nu)},\quad \mathrm{and}\quad \lambda _{\mathrm{2D}} = \frac{\nu E}{1 - \nu ^2}. \end{equation*} \)
Incompressible materials form a separate class: in 3D, an isotropic material has Poisson ratio equal to 0.5, and the previous equation is not well-defined, as \( \lambda \) becomes infinite. While isotropic materials in plane stress state cannot have this problem, as the isotropic Poisson ratio cannot exceed 0.5, anisotropic materials can have Poisson ratio 1 for in-plane deformations, and thus can be 2D-incompressible, which geometrically corresponds to the area of the cross-section of a material element preserved under deformations Lee and Lakes 1997. As a consequence, equations for 2D-incompressible materials in plane stress state are also of interest. Additionally, when \( \lambda \) grows, the linear system arising from the discretization of the PDE becomes unstable. A common way to avoid such problem is to introduce a Lagrange-multiplier-like function in the form of the pressure \( p \). This leads to a mixed formulation of elasticity similar to Stokes equations which is stable for large \( \lambda \)s, and reduces to incompressible elasticity for \( \lambda ^{-1} \rightarrow 0 \). (5) \( \begin{equation} {\left\lbrace \begin{array}{ll} -\div (2\mu \epsilon [u] + p I) = b & \text{on } \Omega \\ \div u - \lambda ^{-1}p = 0 & \text{on } \Omega \\ u = d & \text{on }\partial \Omega _D \\ \sigma ^N[u] \cdot n = f & \text{on }\partial \Omega _N \end{array}\right.} \end{equation} \)
Finally, in the Neo-Hookean material model the stress is a nonlinear function of strain. (6) \( \begin{equation} \sigma [u] = \mu (F[u] - F[u]^{-T}) + \lambda \ln (\det F[u]) F[u]^{-T} \qquad F[u] = \nabla u + I, \end{equation} \) where \( F[u] \) is the deformation gradient.
For elasticity problems, we often use the von Mises stresses (7) \( \begin{equation} \begin{split} S_{\text{2D}}^2 =& \sigma _{0, 0}^2 -\sigma _{0, 0} \sigma _{1, 1} + \sigma _{1, 1}^2 + 3\sigma _{0, 1}\sigma _{1, 0}\\ S_{\text{3D}}^2 =& \frac{ (\sigma _{0, 0} - \sigma _{1, 1})^2 + (\sigma _{2, 2} - \sigma _{1, 1})^2 + (\sigma _{2, 2} - \sigma _{0, 0})^2}{2} +\\ &3(\sigma _{0, 1} \sigma _{1, 0}+\sigma _{2, 1} \sigma _{1, 2}+ \sigma _{2, 0} \sigma _{0, 2}). \end{split} \end{equation} \) Note that the stresses are discontinuous since they depend on the gradient of the displacement which is only \( C^0 \) for our discretizations. To mitigate visual artefacts we average the stresses around vertices in our plots.
3.4 Linear Solvers
All FEM problems we consider require to solve a linear system, which, as the mesh size grows, dominates the running time. A vast amount of research has been invested in developing efficient and robust linear solvers. In our study we use two state-of-the art solvers: Pardiso De Coninck et al. 2016, a direct solver using the Cholesky factorization, which we use for smaller problems, and Hypre Falgout and Yang 2002, an algebraic multigrid solver, which we use for larger problems. Direct solvers work particularly well in 2D, but scale poorly for 3D problems. We leave as future work a more detailed study on the effect of the linear solver on the solution time. The conclusions of this study hold for both types of solvers for our experimental setup and test problems.
4 COMMON TEST PROBLEMS
We collected a number of standard test cases to cover different physical phenomena and different scenarios: fluid simulation (Section 4.1), linear elastic time dependent (Section 4.2), linear elastic bars (Section 4.3), linear orthotropic material models (Section 4.4), meshes with high aspect-ratio for linear elastic bars (Section 4.5), classical plane with hole with symmetric boundary conditions for compressible and nearly incompressible material (Section 4.6), nearly incompressible linear material (Section 4.7), nonlinear Neo-Hookean material (Section 4.8), and nonlinear Neo-Hookean material with high stresses (Section 4.9).
Most of the solution domains are chosen to simplify manual creation of hexahedral meshes: the simulations will be performed on an unstructured tetrahedral mesh and a nearly regular lattice with the same number of vertices. Experiments in Sections 4.2 to 4.7 are run on a MacBook Pro 3.1GHz Intel Core i7, 16GB of RAM, and 8 threads. Experiments in Sections 4.8 and 4.9 are run on a cluster node with 2 Xeon E5-2690v4 2.6GHz CPUs and 250GB memory, each with max 128GB of reserved memory and 8 threads. For all experiments, we use the PolyFEM library Schneider et al. 2019b, which uses the Pardiso De Coninck et al. 2016 Verbosio et al. 2017 Kourounis et al. 2018 direct solver, and Newton iterations for the nonlinear problems.
Note that, for completeness, we also validated PolyFEM on the example in Figure 3 for linear and quadratic tetrahedra and serendipity hexahedra on Hooke material against Abaqus. The results are identical up to numerical precision.
4.1 Incompressible Stokes
We use a planar square domain mesh with 4,229 vertices for the triangle mesh and 4,225 vertices for the regular grid. We simulate the Stokesian fluid (2) with viscosity \( \mu =1 \) in the standard “driven cavity” example: the fluid has zero boundary conditions on three of the four sides and a tangential velocity of 0.25 on the left side. Figure 1 shows the results for mixed linear (for the pressure) and quadratic (for the velocity) elements: the results are indistinguishable between hexahedral and tetrahedral elements.
4.2 Time-Dependent Linear Elasticity
We consider the dynamics of a suspended object under gravity: we fix the top part of a unit square with material parameters \( E=200 \) and \( \nu =0.35 \) and apply a constant body force of 20 in the \( y \) direction. We integrate the dynamic simulation for \( t \) from 0 to 0.5 with 40 time steps integrated with Newmark Newmark 1959. We mesh the domain at a coarse and fine resolution, both for triangles and for quads. Figure 2 shows the displacement in the \( x \) direction of the bottom left corner for the four discretizations, using linear and quadratic elements.
4.3 Transversally Loaded Beam
In this experiment, we consider beams with different cross-sections (square, circular, and I-like) in the \( xy \)-plane of length \( L \). The beam is fixed (i.e., zero Dirichlet conditions are applied) at the end (\( z=L \)), and different tangential forces \( f=[0, -f_y, 0]^T \), \( f_y\in [-0.1, -2] \), are applied at \( z=0 \), opposite to the fixed side. The rest of the boundary is left free and we do not apply any body force. For these experiments we use linear isotropic material model (4) with Young’s modulus \( E=210,\!000 \) and Poisson’s ratio \( \nu = 0.3 \). We study the displacement at the bottom corner of the moving end (\( z=0 \)) in the \( y \) direction and compare it with a dense solution to compute the error \( e \) (note that the solution is singular only at \( z=L \), far from the evaluation points). We report as \( e_f \) the slope of the linear fit of the error as a function of the force magnitude. We also report the basis construction time \( t_b \), assembly time \( t_a \), solve time \( t_s \), and total time \( t \). Note that all the timings reported are averaged over 10 different runs per force sample.
Square Cross-section.
For running the simulation, we use a square cross-section of side \( s=20 \), length \( L=100 \) and mesh it with a tetrahedral mesh with 739 vertices and a hexahedral mesh (regular grid) with 750 vertices. Figure 3 shows the errors compared with the dense solution, where trilinear hexahedral elements outperform linear tetrahedral elements but the quadratic counterparts are indistinguishable. Timing-wise, the quadratic tetrahedra are slightly better.
We created a sequence of hexahedral and tetrahedral meshes with similar errors for a force \( f=[0, -2, 0]^T \). Figure 4 shows that for a given error, \( P_2 \) discretization is around four times faster than \( Q_1 \), and \( \mathrm{SPLINE}_2 \) have a slight advantage over \( P_2 \). Note that both \( Q_1 \) and \( \mathrm{SPLINE}_2 \) are constructed over a perfectly regular grid, while the \( P_2 \) elements are defined over an unstructured tetrahedral mesh.
Finally, we created a sequence of hexahedral meshes that matches total time, total memory, total number of degrees of freedom, and error of the tetrahedral mesh in Figure 3 for both linear and quadratic elements. Table 1 summarizes our findings: \( P_1 \) is significantly worse than \( Q_1 \) but the two quadratic discretizations produce similar results. \( P_2 \) overall performs better than \( Q_1 \).
Circular Cross-section. We consider a beam of length \( L=100 \) with a circular cross-section of diameter \( d=20 \). We created a tetrahedral mesh with \( 2,\!252 \) vertices and a hexahedral mesh with \( 2,\!288 \) vertices (note that in this case the mesh is not a regular grid anymore), by extruding a quad mesh generated with Jakob et al. 2015. Figure 5 shows similar \( y \)-displacement errors as for the square cross-section, \( P_1 \) produces low-quality results, while \( P_2 \) and \( Q_2 \) are similar.
I-beam Cross-section. We use an I-beam (the bounding box of the cross-section is \( 125\,\times \, 154 \)) of length \( L=473.11 \). The tetrahedral mesh has \( 6,\!102 \) while the hexahedral mesh, generated by extruding a quad mesh, has \( 6,\!080 \) vertices, results are shown in Figure 6.
4.4 Orthotropic Material
We repeated the previous experiment using linear orthotropic material parameters (carbon fiber). The material parameters are obtained from Pardini and Gregori 2010. Three Young moduli are 167, 33, and 33, The Poisson ratios are 0.18, 0.25, and 0.18, shear moduli are 13, 21, and 21. Figure 7 shows that the \( y \)-displacement error with respect to different discretizations has the same behavior as for isotropic materials (Section 4.3).
4.5 High Aspect-Ratio
To analyze the effect of using elements with high aspect ratio, we repeated the previous experiment for three different domains by shrinking the height of the square cross-section from 20, to 4, 2, and 1, while keeping the connectivity identical. This procedure introduces artificial high aspect-ratio elements. To obtain the same anisotropy measure for hexahedral and tetrahedral meshes, we define the aspect ratio between the largest and smallest eigenvalue of the covariance matrix of its vertices. Figure 8 shows the error in the \( y \)-direction displacement per unit of force for the hexahedral and tetrahedral meshes. The tetrahedral mesh suffers from the low element quality much more than the hexahedral mesh. However, if we regenerate the meshes for the thin domain with the same number of degrees of freedom, but with element quality optimization (last row in Figure 8), the high error of \( P_2 \) disappears and the errors are similar as for \( Q_2 \), as shown in the last four rows in Figure 8. For comparison, we also generate a tetrahedral mesh by simply splitting the hexahedra into six tetrahedra. Note that these kinds of aspect ratios are extreme and do not appear in any automatically meshed model in our data set (Figure 14).
4.6 2D Domain with a Hole
Another commonly used test problem is a 2D domain with a hole in the middle. For our experiments we use a square domain of size \( 200\times 100 \) with a hole in the center of radius 20, the same material model (linear elasticity (4)) and same material parameters \( E=210,\!000 \) and \( \nu =0.3 \). The experiment consists of applying an opposite in-plane force on the left and right boundary of 100, that is, stretching the plane horizontally. This problem is obviously ill-posed because of the lack of Dirichlet boundary conditions. We use a standard approach to eliminate the null-space of solutions by exploiting symmetry, and simulating on a quarter of the domain. This leads to a domain with a “corner” cut with two symmetric boundary Dirichlet conditions (displacement is constrained only in the orthogonal direction), a zero Neumann condition, and a Neumann condition corresponding to the original force. We solve this particular benchmark problem on four meshes with different resolutions. Figure 9 shows the von Mises stresses (7) on the top for a triangle mesh and bottom for a quadrilateral mesh, left linear and right quadratic elements. As expected, for a sufficiently dense mesh, all methods converge to similar results. The interesting result is that \( Q_2 \) elements produce visually better results even at really low resolution (first image and second image). In contrast, for linear triangular elements, we need to increase the mesh resolution up to \( 8\,500 \) vertices (last image) for the artifacts to disappear.
This particular problem is also a standard benchmark for incompressible material simulation. We performed the same experiment for a nearly incompressible material: \( E=0.1 \) and \( \nu =0.9999 \). Figure 10 shows the norm of the displacement: as for the compressible case, \( P_2 \) and \( Q_2 \) have a similar behavior. Interestingly, for this case, \( Q_1 \) produces a very different solution.
4.7 Nearly Incompressible Material
For the last linear benchmark, we compared the performance of the four discretizations with the material approaching incompressibility. We apply a boundary displacement \( [0.2, 0] \) on the left and \( [-0.2, 0] \) on the right of a unit square. We perform a series of experiments in which we keep the Young’s modulus fixed at 0.1 while changing the Poisson’s ratio from 0.9 to 0.9999 (1 being the limit of incompressibility in 2D, i.e., area preservation). We compare the standard formulation (4) with a mixed formulation (5) that does not become unstable as \( \nu \rightarrow 1 \). Note that since mixed formulations require different basis degrees for the displacement and the pressure. We performed our experiments using linear pressure bases and quadratic bases for the displacements. We mesh the square with a quad mesh with 4 225 vertices and a tri mesh with 4 229 vertices.
Figure 11 shows the norm of the displacement for this series of experiments. For the nearly incompressible regime (i.e., \( \nu =0.9999 \)) it is remarkable that the quadrilateral element discretization leads to a symmetric and smooth (but incorrect) result for the linear case, while the triangular elements producing an unstable output. The two quadratic discretizations produce visually similar results, close to those obtained with the stable mixed method. The only quantitative difference is that the residual error for the direct solver drops from 1e\( -15 \) (numerical zero) to 1e\( -12 \), indicating that the system is close to singular.
4.8 Beam with Torsional Loads
We now compare the solutions for the Neo-Hookean (6) material model for our discretizations. We take a beam with a cross-section \( [-10, 10]^2 \) and length 100, \( E=200 \) \( nu=0.35 \), fix the bottom part and apply a rotation of 90 degrees to the top. The rest of the surface is left free. To avoid ambiguities in the rotation we use five steps of incremental loading in the Newton solver. We run the experiment on two sets of tetrahedral and hexahedral meshes. Coarse meshes have 739 and 750 while the dense have \( 50\,000 \) and \( 58\,719 \) vertices, respectively. The first three images of Figure 12 show that the results are indistinguishable, except for small numerical fluctuations. Similar results are for the plot (Figure 12 last plot) of the rotation angle along a line starting at the point \( [9.5, 9.5,0] \) parallel to the beam axis. Note that the dense \( Q_2 \) solution required more that 44GB of RAM for the solver, while \( P_2 \) required around 21GB.
The reason for the high memory consumption is the size of the element matrix, which has \( (27\times 3)^ = 6\,561 \) entries (compared to 144 for \( P_1 \), 576 for \( Q_1 \), and 900 for \( P_2 \)). Note that the difference in running time does not come from the number of iterations of the Newton solver: for \( P_1 \), \( Q_1 \), \( P_2 \), \( Q_2 \) we obtained 16, 17, 20, and 17 iterations, respectively, for the coarse mesh, and 18, 16, 17, and 18 for the dense mesh.
We have repeated this experiment using quadratic B-spline bases on the coarse mesh. The result is similar to \( P_2 \) and \( Q_2 \), see the inset figure. For this particular example, we measure the solve time of the three discretizations: the spline solve is three times faster than \( P_2 \) (0.51s versus 1.50s) and nine times faster than \( Q_2 \) (0.51s vs 4.62s) while having roughly the same number of iterations: 16. Note that the assembly time (using full integration which could be improved using Schillinger et al. 2014) for spline is similar to \( Q_2 \) and is 12 times slower than \( P_2 \) (20.54s versus 1.70s). While using splines on regular grids is natural, the extension to irregular meshes requires the use of T- or U- splines Beer et al. 2015 Wei et al. 2018, increasing the implementation complexity.
4.9 High Stress
As a final experiment, we run a simulation for an L-shaped domain with the Neo-Hookean material and \( E=210,\!000 \) \( \nu =0.3 \). Our goal is to study the differences in the stresses for singular solutions: the concave corner of L will have a stress singularity. We mesh our domains with \( 14,\!155 \) vertices for the tetrahedral mesh and \( 14,\!161 \) vertices for the hexahedral mesh. We fixed the bottom part of the domain (zero displacement) and rotate the top part by 120 degrees (Dirichlet constraint on the displacement), the rest of the boundary is let free (zero Neumann condition). Figure 13 shows that linear tetrahedral elements underestimate the stress while linear hexahedral elements are somewhat better. The quadratic discretizations are qualitatively similar: the hexahedral mesh does not have the spurious small stress oscillations of \( P_2 \) because the elements are aligned with the mesh, however the price to pay is significant, 17 minutes for \( P_2 \) compared to more than 1.5 hours for \( Q_2 \).
5 LARGE DATASET
Next, to evaluate the performance of different types of elements on a large diverse set of realistic domains, we compute solutions for the Poisson (1) and linear elasticity (4). We use the method of manufactured solutions Salari and Knupp 2000, that is, for an analytically defined solution \( u \) we compute the corresponding right-hand side \( b \) by plugging it into the PDE. The boundary condition \( d \) is obtained by sampling \( u \) on the boundary. For the Poisson equation, we use the Franke function Franke 1979 Cavoretto et al. 2018 \( \begin{align*} u & (x_1,x_2,x_3) \\ &=3/4\,{ e}^{-((9x_1-2)^2+(9x_2-2)^2+(9x_3-2)^2)/4} \\ &+3/4\,{ e}^{-(9x_1+1)^2/49-(9x_2+1)/10-(9x_3+1)/10} \\ &+1/2\,{ e}^{-((9x_1-7)^2+(9x_2-3)^2+(9x_3-5)^2)/4} \\ &-1/5\,{ e}^{-(9x_1-4)^2-(9x_2-7)^2-(9x_3-5)^2}, \end{align*} \) while for elasticity \( \begin{equation*} u(x_1,x_2,x_3) = \frac{1}{80}\begin{pmatrix} x_1x_2+x_1^2+x_2^3+6x_3 \\ x_1x_3-x_3^3+x_1x_2^2+3x_1^4 \\ x_1x_2x_3+x_2^2x_3^2-2x_1, \end{pmatrix} \end{equation*} \) with Lamè parameters \( E=200 \) and \( \nu = 0.35 \). In addition to standard tensor product bases for hexahedra, we compare to the popular serendipity bases Zienkiewicz et al. 2005[Chapter 6], which have only 20 nodes per element instead of 27.
We use two sources for our data: (1) the Hexalab dataset containing results of 16 state-of-the-art hexahedral meshing techniques Bracci et al. 2019, and (2) the Thingi10k dataset Zhou and Jacobson 2016 consisting of triangulated surfaces. For each dataset, we produce a tetrahedral mesh dataset from the surfaces of the hexahedral meshes (generated with MeshGems Spatial 2018) using TetWild Hu et al. 2018 with a matching number of vertices. Note that since matching the number of vertices is a heuristic process, we discard all meshes where the difference in the number of vertices is larger than 5% of the total number of vertices. To ensure that we are solving a similar problem on the two tessellations we remove meshes whose Hausdorff distance between the surfaces of corresponding hexahedral and tetrahedral meshes differs more than \( 10^{-3} \) of the diagonal of the bounding box of the hexahedral mesh surfaces. Finally, we discard all meshes whose ratio between boundary and total vertices is more than 30%. Since the Hexalab dataset is small, we opted for doing one step of uniform refinement to increase the number of interior vertices instead of discarding them. In summary, the two datasets are:
(1) | 237 Hexalab hexahedral meshes and 237 tetrahedral meshes generated with Tetwild. | ||||
(2) | 3,200 hexahedral meshes generated with MeshGems Spatial 2018 and 3,200 tetrahedral meshes generated with Tetwild both obtained from the surfaces in the Thingi10k dataset. |
For conciseness, we report only the most significant results. Many other metrics (e.g., \( H^1 \)-error, the time required to assemble bases, nonzero entries of the matrix, etc.) can be found in the interactiveplot.
We remark that, while Tetwild guarantees to produce valid tetrahedral meshes, Meshgems and the methods used in the Hexalab dataset do not provide any guarantee. We observe that out of the 237 Hexalab meshes, 8 (3.4%) contain at least one inverted element (two from Livesu et al. 2016 and six from Gao et al. 2016). For the Thingi10k dataset, Meshgems produces 577 (18.0%) meshes with at least one invalid element. To check if a hexahedron has a negative volume we sample it with \( 10^3 \) uniformly spaced samples, evaluate the Jacobian at each point, and mark it as flipped if at least one evaluation is negative. Another important quality measure is the aspect ratio of the elements (Section 4.5). Figure 14 shows that both our datasets contain reasonably well-shaped elements.
All experiments are run on a cluster node with 2 Xeon E5-2690v4 2.6GHz CPUs and 250GB memory, each with max 128GB of reserved memory and 8 threads. For all experiments we use the Hypre Falgout and Yang 2002 algebraic multigrid iterative solver and the PolyFEM library for the finite element assembly.
Hexalab. To avoid clutter in the plots we omit the results obtained from meshes with inverted elements leading to plots with 229 points. For the complete statistics see the interactiveplot. We first compare the error of the method with respect to the average edge length, Figure 15. We confirm the results of Section 4 for the state-of-the-art hexahedral meshing methods; the accuracy of the solution on a hexahedral and tetrahedral mesh is comparable, in our experiments, for both Poisson and linear elasticity. Figure 16 shows the total and solve time required to reach a certain error, where we draw the same conclusions: the results of the four discretizations are similar. The plots show, as expected, that for a given mesh serendipity elements are faster but less accurate than \( Q_2 \) elements. However, this advantage is not consistent enough to change the conclusion related to quadratic tetrahedral elements. Statistics for the individual hexahedral meshing method are available in the interactiveplot.
Thingi10k. We repeated the same experiment on \( 3,\!200 \) hexahedral meshes generated with MeshGems. For this large dataset it is interesting to note that qualitative behavior of the edge length vs. error curve (Figure 17) is different between hexahedra and tetrahedra: the curve for tetrahedral elements exhibit the expected convergence, while the curve for hexahedra is more flat. This effect comes from the fact that MeshGems is an octree-based method with a tendency to create highly anisotropic meshes. This effect can be mitigated by limiting the difference between the minimal and maximal refinement levels in the octree used to construct the mesh. This leads to more uniform element size, and the results become similar to the results for tetrahedral meshes and the Hexalab dataset, Figure 18.
We also compared running and solve times (Figure 19) and, as expected, serendipity elements are faster than \( Q_2 \) elements but have a larger error. Tetrahedral elements are between the two hexahedral elements: their accuracy is similar to \( Q_2 \) and a running/solving time similar to serendipity.
6 DISCUSSION AND CONCLUSIONS
We presented a large-scale, quantitative study of several common types of finite elements applied to five elliptic PDEs. Our results are consistent on all elliptic PDEs we tried.
We summarize our findings in Figure 20, which allows us to draw the following conclusions for the five elliptic PDEs we considered in our study:
(1) | Consistent with well-known observations, \( P_1 \) elements are less efficient (more time spent to obtain a solution with given accuracy) than all other options in all our experiments (Sections 4 and 5). | ||||
(2) | \( Q_2 \) elements are slightly more accurate than quadratic serendipity elements \( \mathrm{SER}_2 \) but are slightly more expensive for a fixed mesh (Section 5). | ||||
(3) | \( P_2 \) elements are generally more efficient than \( P_1 \), \( Q_1 \), \( Q_2 \), \( \mathrm{SER}_2 \), that is, we can obtain a given target error in less time, if we can chose the mesh resolution optimal for the desired error level. We were not able to identify any disadvantages for these elements for the range of problems and geometries we have considered (Sections 4 and 5). | ||||
(4) | Quadratic spline elements \( \mathrm{SPLINE}_2 \) (on a regular lattice) are more efficient than \( Q_2 \) elements (Section 4.8). \( \mathrm{SPLINE}_2 \) are also more efficient compared to \( P_2 \) (3x faster solving time for the same accuracy) but with a much longer assembly time (12 times slower, which could be reduced with more advanced integration techniques Schillinger et al. 2014). Their use, however, is restricted by the current meshing technology, as they require meshes with regular grid structure almost everywhere for optimal performance. When these elements are mixed with standard \( Q_2 \) elements to handle general hexahedral meshes with singular vertices and edges Schneider et al. 2019a Wei et al. 2018, their performance advantage is considerably reduced. |
For the five elliptic PDEs we considered, unstructured tetrahedral meshes with quadratic Lagrangian basis are a good choice for a “black-box” analysis pipeline: robust tetrahedral meshing algorithms that can process thousands of real-world models exist Hu et al. 2018, and \( p \)-refinement can be used to compensate for the rare badly shaped triangles introduced by the meshing algorithms Schneider et al. 2018.
We leave the extension of this study to non-elliptic PDEs, multiphysics, and collision response as future work. Another important potential extension is the study of bases with orders higher than 2, as is typically the case in IGA setting, or an extension to spectral elements. Another venue for future work is to analyze the impact of the existing different per-element optimizations (e.g., reduced quadrature, hourglass control, special quadrature rules that exploit the tensor-product structure of \( Q \) elements, etc.). However, we note that these different optimizations will mostly impact the performance of the assembly and will have little influence on the solve time, which dominates the runtime for sufficiently large problems.
Finally, we acknowledge that the choice of elements is only one of the sources of error in numerical simulations; in realistic scenarios, material models, boundary conditions, or domain shape also play a role in the accuracy of a simulation. Extending our study to account for these sources of error is an interesting venue for future work.
Acknowledgments
We thank the NYU IT High Performance Computing for resources, services, and staff expertise.
Footnotes
1 https://github.com/polyfem/polyfem/.
Footnote2 https://archive.nyu.edu/handle/2451/44221.
Footnote3 https://github.com/polyfem/tet-vs-hex.
Footnote4 A non-exhaustive list of open-source FEA packages known to the authors include, in alphabetical order, code_aster EDF 2018, Deal.II Alzetta et al. 2018, DOLFIN (FEniCS) Alnæs et al. 2015, ElmerFEM Elmer 2018, FEATool Multiphysics (MATLAB) Ltd. 2019, Feel++ Prud’homme et al. 2012, FEI (Trilinos) Heroux et al. 2005, Firedrake McRae et al. 2016, FreeFEM++ Hecht 2012, GetDP Geuzaine 2008, GetFEM++ Renard and Pommier 2018, libMESH Kirk et al. 2006, MFEM MFEM 2020, Nektar++ Cantwell et al. 2015, NGSolve Schöberl 2014, OOFEM Patzák 2012, PolyFEM Schneider et al. 2019b, Range Šoltys 2019, SOFA Faure et al. 2012, and VegaFEM Barbič et al. 2012.
Footnote
- 2019. Abaqus FEA. http://www.simulia.com.Google Scholar
- 2009. Swept volume parameterization for isogeometric analysis. In Mathematics of Surfaces XIII. Springer Berlin, 19–44.Google ScholarDigital Library .
- 2014. A closed advancing-layer method with changing topology mesh movement for viscous mesh generation. In Proceedings of the 22nd International Meshing Roundtable. Springer International Publishing, 241–261.Google ScholarCross Ref .
- 2005. Variational tetrahedral meshing. ACM Transactions on Graphics 24, 3 (
7 2005), 617.Google ScholarDigital Library . - 2015. The FEniCS project version 1.5. Archive of Numerical Software 3, 100 (2015).Google Scholar .
- 2018. The
deal.II library, version 9.0. Journal of Numerical Mathematics 26, 4 (2018), 173–183.Google ScholarCross Ref . - 2019. ANSYS®. https://www.ansys.com/.Google Scholar
- 2012. Vega FEM Library. http://www.jernejbarbic.com/vega.Google Scholar .
- 2015. Isogeometric Methods for Numerical Simulation. Vol. 240. Springer.Google ScholarCross Ref .
- 1995. A comparison of all hexagonal and all tetrahedral finite element meshes for elastic and elasto-plastic analysis. In Proceedings, 4th International Meshing Roundtable, Vol. 17. Sandia National Laboratories, 179–191.Google Scholar .
- 2016. Frame field smoothness-based approach for hex-dominant meshing. Computer-Aided Design 72 (2016), 78–86.
DOI: 23rd International Meshing Roundtable Special Issue: Advances in Mesh Generation. Google ScholarDigital Library . - 2005. Provably good sampling and meshing of surfaces. Graphical Models 67, 5 (
9 2005), 405–451.Google ScholarDigital Library . - 2007. Comparison of tetrahedral and hexahedral meshes for organ finite element modeling: An application to kidney impact. In 20th International Technical Conference on the Enhanced Safety of Vehicle, Lyon.Google Scholar .
- 2019. HexaLab.net: An online viewer for hexahedral meshes. Computer-Aided Design 110 (
5 2019), 24–36.Google ScholarDigital Library . - 2014. Quartet: A tetrahedral mesh generator that does isosurface stuffing with an acute tetrahedral tile. https://github.com/crawforddoran/quartet.Google Scholar .
- 2013. Lattice cleaving: Conforming tetrahedral meshes of multimaterial domains with bounded quality. In Proceedings of the 21st International Meshing Roundtable. Springer Berlin, 191–209.Google ScholarCross Ref .
- 2015. Nektar++: An open-source spectral/hp element framework. Computer Physics Communications 192 (
7 2015), 205–219.Google ScholarCross Ref . - 1997. Computational Grids: Generations, Adaptation & Solution Strategies. CRC Press.Google Scholar .
- 2018. OpenCL based parallel algorithm for RBF-PUM interpolation. Journal of Scientific Computing 74, 1 (
Jan. 2018), 267–289.Google ScholarDigital Library . - 2004. Optimal Delaunay triangulations. Journal of Computational Mathematics (2004), 299–308.Google Scholar .
- 2008. A practical Delaunay meshing algorithm for a large class of domains. In Proceedings of the 16th International Meshing Roundtable. Springer, 477–494.Google ScholarCross Ref .
- 1987. Constrained Delaunay triangulations. In Proceedings of the Third Annual Symposium on Computational Geometry - SCG’87. ACM Press.Google ScholarDigital Library .
- 1993. Guaranteed-quality mesh generation for curved surfaces. In Proceedings of the Ninth Annual Symposium on Computational Geometry - SCG’93. ACM Press.Google ScholarDigital Library .
- 2002a. The Finite Element Method for Elliptic Problems. Vol. 40. Siam.Google ScholarCross Ref .
- 2002b. The Finite Element Method for Elliptic Problems. Society for Industrial and Applied Mathematics.Google ScholarCross Ref .
- 1992. A performance study of tetrahedral and hexahedral elements in 3-D finite element structural analysis. Finite Elements in Analysis and Design 12, 3–4 (
12 1992), 313–318.Google ScholarDigital Library . - 2002. Conforming Delaunay triangulations in 3D. In Proceedings of the Eighteenth Annual Symposium on Computational Geometry - SCG’02. ACM Press.Google ScholarDigital Library .
- 2018. COMSOL Multiphysics. https://www.comsol.com/.Google Scholar
- 2020. Cubit. https://coreform.com/products/coreform-cubit/.Google Scholar .
- 2013. Automatic 3D mesh generation of multiple domains for topology optimization methods. In Proceedings of the 21st International Meshing Roundtable. Springer Berlin, 243–259.Google ScholarCross Ref .
- 2016. Needles: Toward large-scale genomic prediction with marker-by-environment interaction. 203, 1 (2016), 543–555.Google Scholar .
- 2008. DelPSC: A Delaunay mesher for piecewise smooth complexes. In Proceedings of the Twenty-Fourth Annual Symposium on Computational Geometry - SCG’08. ACM Press.Google ScholarDigital Library .
- 2013. Isosurface stuffing improved: Acute lattices and feature matching. In ACM SIGGRAPH 2013 Talks. ACM Press.Google Scholar .
- 2003. Tetrahedral mesh generation and optimization based on centroidal Voronoi tessellations. International Journal for Numerical Methods in Engineering 56, 9 (2003), 1355–1373.Google ScholarCross Ref .
- 2011. Isotropic conforming refinement of quadrilateral and hexahedral meshes using two-refinement templates. Internat. J. Numer. Methods Engrg. 88, 10 (
5 2011), 974–985.Google ScholarCross Ref . - 2018. Code_Aster. https://www.code-aster.org/.Google Scholar .
- 2018. Elmer FEM. http://www.elmerfem.org/.Google Scholar .
- 2014. A consistent octree hanging node elimination algorithm for hexahedral mesh generation. Advances in Engineering Software 75 (
9 2014), 86–100.Google ScholarDigital Library . - 2002. HYPRE: A library of high performance preconditioners. In Lecture Notes in Computer Science. Springer Berlin, 632–641.Google Scholar .
- 2016. All-hex meshing using closed-form induced polycube. ACM Transactions on Graphics 35, 4 (
7 2016), 1–9.Google ScholarDigital Library . - 2012. SOFA: A multi-model framework for interactive physical simulation. In Studies in Mechanobiology, Tissue Engineering and Biomaterials. Springer Berlin, 283–321.Google Scholar .
- 1979. A Critical Comparison of Some Methods for Interpolation of Scattered Data.
Technical Report .Google ScholarCross Ref . - 2016. Efficient volumetric polycube-map construction. Computer Graphics Forum 35, 7 (
10 2016), 97–106.Google ScholarDigital Library . - 2016. Structured volume decomposition via generalized sweeping. IEEE Transactions on Visualization and Computer Graphics 22, 7 (
7 2016), 1899–1911.Google ScholarDigital Library . - 2008. GetDP: A general finite-element solver for the de Rham complex. In PAMM Volume 7 Issue 1. Special Issue: Sixth International Congress on Industrial Applied Mathematics (ICIAM07) and GAMM Annual Meeting, Zürich 2007. Wiley.Google Scholar .
- 2011. All-hex mesh generation via volumetric polycube deformation. Computer Graphics Forum 30, 5 (
8 2011), 1407–1416.Google ScholarCross Ref . - 2010. Eigen v3. http://eigen.tuxfamily.org.Google Scholar .
- 2020. Cut-enhanced polycube-maps for feature-aware all-hex meshing. ACM Trans. Graph. 39, 4, Article 106 (
July 2020).Google ScholarDigital Library . - 2014. MOSS: Multiple orthogonal strand system. In Proceedings of the 22nd International Meshing Roundtable. Springer International Publishing, 75–91.Google ScholarCross Ref .
- 2012. New development in FreeFem++. J. Numer. Math. 20, 3–4 (2012), 251–265.Google ScholarCross Ref .
- 2005. An overview of the Trilinos project. ACM Trans. Math. Softw. 31, 3 (2005), 397–423.Google ScholarDigital Library .
- 2020. Fast tetrahedral meshing in the wild. ACM Trans. Graph. 39, 4 (
July 2020).Google ScholarDigital Library . - 2018. Tetrahedral meshing in the wild. ACM Transactions on Graphics 37, 4 (
7 2018), 1–14.Google ScholarDigital Library . - 2014. \( \ell \)1-based construction of polycube maps from complex shapes. ACM Transactions on Graphics 33, 3 (
6 2014), 1–11.Google ScholarDigital Library . - 2011. Boundary aligned smooth 3D cross-frame field. ACM Transactions on Graphics 30, 6 (
12 2011), 1.Google ScholarDigital Library . - 2012. The Finite Element Method: Linear Static and Dynamic Finite Element Analysis. Dover Publications.
00038414 Google Scholar . - 2005. Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement. Computer Methods in Applied Mechanics and Engineering 194, 39–41 (
10 2005), 4135–4195.Google ScholarCross Ref . - 2009. Octree-based reasonable-quality hexahedral mesh generation using a new set of refinement templates. Internat. J. Numer. Methods Engrg. 77, 13 (
3 2009), 1809–1833.Google ScholarCross Ref . - 2015. Instant field-aligned meshes. ACM Transactions on Graphics (Proceedings of SIGGRAPH ASIA) 34, 6 (
Nov. 2015).DOI: Google ScholarDigital Library . - 2015. CGALmesh: A generic framework for Delaunay mesh generation. ACM Trans. Math. Software 41, 4 (
10 2015), 1–24.Google ScholarDigital Library . - 2014. Frame field singularity correction for automatic hexahedralization. IEEE Transactions on Visualization and Computer Graphics 20, 8 (
8 2014), 1189–1199.Google ScholarDigital Library . - 2006.
libMesh : A C++ library for parallel adaptive mesh refinement/coarsening simulations. Engineering with Computers 22, 3–4 (2006), 237–254.Google ScholarDigital Library . - 2019. The HyTeG finite-element software framework for scalable multigrid solvers. International Journal of Parallel, Emergent and Distributed Systems 34, 5 (2019), 477–496.
DOI: Google ScholarCross Ref . - 2018. Towards the next generation of multiperiod optimal power flow solvers. IEEE Transactions on Power Systems99 (2018), 1–10.Google Scholar .
- 2007. Isosurface stuffing: Fast tetrahedral meshes with good dihedral angles. In ACM SIGGRAPH 2007 Papers on - SIGGRAPH’07. ACM Press.Google Scholar .
- 2018. FEA-Compare. https://github.com/kostyfisik/FEA-compare.Google Scholar .
- 1997. Anisotropic polyurethane foam with Poisson’s ratio greater than 1. Journal of Materials Science 32, 9 (
1 May 1997), 2397–2401.Google ScholarCross Ref . - 2013. Surface mesh to volumetric spline conversion with generalized polycubes. IEEE Transactions on Visualization and Computer Graphics 19, 9 (
9 2013), 1539–1551.Google ScholarDigital Library . - 2012. All-hex meshing using singularity-restricted field. ACM Transactions on Graphics 31, 6 (
11 2012), 1.Google ScholarDigital Library . - 2018. Singularity-constrained octahedral fields for hexahedral meshing. ACM Transactions on Graphics (
7 2018).Google Scholar . - 2016. Skeleton-driven adaptive hexahedral meshing of tubular shapes. Computer Graphics Forum 35, 7 (
10 2016), 237–246.Google ScholarCross Ref . - 2013. PolyCut: Monotone graph-cuts for polycube base-complex construction. ACM Transactions on Graphics 32, 6 (
11 2013), 1–12.Google ScholarDigital Library . - 2019. FEATool Multiphysics v1.10, User’s Guide. https://www.featool.com.Google Scholar
- 2016. HexEx: Robust hexahedral mesh extraction. ACM Trans. Graph. 35, 4, Article 123 (
July 2016), 11 pages.DOI: Google ScholarDigital Library . - 2010. Volumetric parameterization of complex objects by respecting multiple materials. Computers & Graphics 34, 3 (
6 2010), 187–197.Google ScholarDigital Library . - 2009. Advances in octree-based all-hexahedral mesh generation: Handling sharp features. In 18th International Meshing Roundtable. Springer.Google Scholar .
- 2016. Automated generation and symbolic manipulation of tensor product finite elements. SIAM Journal on Scientific Computing 38, 5 (
1 2016), S25–S47.Google ScholarCross Ref . - 2020. MFEM: Modular Finite Element Methods Library. https://mfem.org.Google Scholar .
- 2003. Tetrahedral mesh generation for deformable bodies. In Proc. Symposium on Computer Animation.Google Scholar .
- 2001. A Point-placement strategy for conforming Delaunay tetrahedralization. International Journal of Computational Geometry & Applications 11, 6 (
12 2001), 669–682.Google ScholarCross Ref . - 1959. A Method of Computation for Structural Dynamics. American Society of Civil Engineers.Google ScholarCross Ref .
- 2011. CubeCover- Parameterization of 3D volumes. Computer Graphics Forum 30, 5 (
8 2011), 1397–1406.Google ScholarCross Ref . - 2016. Comparison of tetrahedral and hexahedral meshes for finite element simulation of cardiac electro-mechanics. In Proceedings of the VII European Congress on Computational Methods in Applied Sciences and Engineering (ECCOMAS Congress’16). Institute of Structural Analysis and Antiseismic Research School of Civil Engineering National Technical University of Athens (NTUA) Greece.Google ScholarCross Ref .
- 1998. A survey of unstructured mesh generation technology. In IMR. 239–267.Google Scholar .
- 2017. A template-based approach for parallel hexahedral two-refinement. Computer-Aided Design 85 (
4 2017), 34–52.Google ScholarDigital Library . - 2010. Modeling elastic and thermal properties of 2.5D carbon fiber and carbon/SiC hybrid matrix composites by homogenization method. Journal of Aerospace Technology and Management 2 (
8 2010), 183–194.Google ScholarCross Ref . - 2012. OOFEM - an object-oriented simulation tool for advanced modeling of materials and structures. Acta Polytechnica 52, 6 (2012), 59–66.Google ScholarCross Ref .
- 2012. Feel++ : A computational framework for Galerkin methods and advanced numerical methods. ESAIM: Proceedings 38 (
12 2012), 429–455.Google ScholarCross Ref . - 2010. Sharp feature preservation in octree-based hexahedral mesh generation for CAD assembly models. In Proceedings of the 19th International Meshing Roundtable. Springer Berlin, 243–262.Google ScholarCross Ref .
- 2006. Tetrahedral versus hexahedral finite elements in numerical modelling of the proximal femur. Medical Engineering & Physics 28, 9 (
11 2006), 916–924.Google ScholarCross Ref . - 2017. A two-level multithreaded Delaunay kernel. Computer-Aided Design 85 (
4 2017), 2–9.Google ScholarDigital Library . - 2018. Getfem++, an open source generic C++ library for finite element methods. http://getfem.org/.Google Scholar .
- 1995. A Delaunay refinement algorithm for quality 2-dimensional mesh generation. Journal of Algorithms 18, 3 (
5 1995), 548–585.Google ScholarDigital Library . - 2000. Code Verification by the Method of Manufactured Solutions.
Technical Report .Google ScholarCross Ref . - 2014. Reduced Bézier element quadrature rules for quadratic and cubic splines in isogeometric analysis. Computer Methods in Applied Mechanics and Engineering 277 (
Aug 2014), 1–45.Google ScholarCross Ref . - 2019a. Poly-Spline finite element method. ACM Transactions on Graphics 38, 3 (
3 2019), 1–14.Google ScholarDigital Library . - 2019b. PolyFEM. https://polyfem.github.io/.Google Scholar .
- 2018. Decoupling simulation accuracy from mesh quality. ACM Transactions on Graphics 37, 6 (
dec 2018).Google ScholarDigital Library . - 1996. A grid-based algorithm for the generation of hexahedral element meshes. Engineering with Computers 12, 3–4 (
9 1996), 168–177.Google ScholarCross Ref . - 1995. Automatic generation of hexahedral finite element meshes. Computer Aided Geometric Design 12, 7 (
11 1995), 693–707.Google ScholarDigital Library . - 1996. Octree-Based generation of hexahedral element meshes. In In Proceedings Of The 5th International Meshing Roundtable. Sandia National Laboratories.Google Scholar .
- 2014. C++11 implementation of finite elements in NGSolve. Institute for Analysis and Scientific Computing, Vienna University of Technology (2014).Google Scholar .
- 2012. New bounds on the size of optimal meshes. Computer Graphics Forum 31, 5 (
8 2012), 1627–1635.Google ScholarDigital Library . - 2008. Hexahedral mesh generation constraints. Engineering with Computers 24, 3 (
3 2008), 195–213.Google ScholarDigital Library . - 2012. Delaunay Mesh Generation. Chapman and Hall/CRC.Google Scholar .
- 1996. Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. In Selected Papers from the Workshop on Applied Computational Geometry, Towards Geometric Engineering (FCRC’96/WACG’96). Springer-Verlag, 203–222.Google Scholar .
- 1998. Tetrahedral mesh generation by Delaunay refinement. In Proceedings of the Fourteenth Annual Symposium on Computational Geometry - SCG’98. ACM Press.Google ScholarDigital Library .
- 2002. Constrained Delaunay tetrahedralizations and provably good boundary recovery. In 11th International Meshing Roundtable. Sandia National Laboratories.Google Scholar .
- 2015. TetGen, a Delaunay-based quality tetrahedral mesh generator. ACM Trans. Math. Softw. 41, 2, Article 11 (
Feb. 2015), 36 pages.Google ScholarDigital Library . - 2005. Meshing piecewise linear complexes by constrained Delaunay tetrahedralizations. In Proceedings of the 14th International Meshing Roundtable. Springer, 147–163.Google ScholarCross Ref .
- 2014. Incrementally constructing and updating constrained Delaunay tetrahedralizations with finite-precision coordinates. Engineering with Computers 30, 2 (
4 2014), 253–269.Google ScholarDigital Library . - 2017. Boundary element octahedral fields in volumes. ACM Transactions on Graphics 36, 3 (
5 2017), 1–16.Google ScholarDigital Library . - 2019. Range Software. http://www.range-software.com/.Google Scholar .
- 2018. MeshGems. http://meshgems.com/volume-meshing-meshgems-hexa.html.
Accessed: 2018-06-05. Google Scholar . - 2004. Automatic hexahedral mesh generation for multi-domain composite models using a hybrid projective grid-based method. Computer-Aided Design 36, 3 (
3 2004), 203–215.Google ScholarCross Ref . - 1991. Finite Element Analysis. John Wiley & Sons.Google Scholar .
- 2010. A comparison of the performance of hexahedral and tetrahedral elements in finite element models of the foot. In ASME 2010 Summer Bioengineering Conference, Parts A and B. ASME.Google ScholarCross Ref .
- 2011. Comparison of hexahedral and tetrahedral elements in finite element analysis of the foot and footwear. Journal of Biomechanics 44, 12 (
8 2011), 2337–2343.Google ScholarCross Ref . - 2001. The generation of hexahedral meshes for assembly geometry: Survey and progress. Internat. J. Numer. Methods Engrg. 50, 12 (2001).Google ScholarCross Ref .
- 2009. Interleaving Delaunay refinement and optimization for practical isotropic tetrahedron mesh generation. ACM Transactions on Graphics 28, 3 (
7 2009), 1.Google ScholarDigital Library . - 2017. Enhancing the scalability of selected inversion factorization algorithms in genomic prediction. Journal of Computational Science 22, Supplement C (2017), 99–108.Google ScholarCross Ref .
- 2004. Back to elements-tetrahedra vs. hexahedra. In Proceedings of the 2004 International ANSYS Conference. ANSYS Pennsylvania.Google Scholar .
- 2018. Blended B-Spline construction on unstructured quadrilateral and hexahedral meshes with optimal convergence rates in isogeometric analysis. Computer Methods in Applied Mechanics and Engineering 341 (
11 2018), 609–639.Google ScholarCross Ref . - 2007. Adaptive generation of hexahedral element mesh using an improved grid-based method. Computer-Aided Design 39, 10 (
10 2007), 914–928.Google ScholarCross Ref . - 2006. Adaptive and quality quadrilateral/hexahedral meshing from volumetric data. Computer Methods in Applied Mechanics and Engineering 195, 9–12 (
2 2006).Google ScholarCross Ref . - 2013. A robust 2-refinement algorithm in octree and rhombic dodecahedral tree based all-hexahedral mesh generation. In Proceedings of the 21st International Meshing Roundtable. Springer Berlin, 155–172.Google ScholarCross Ref .
- 2018. Robust edge-preserving surface mesh polycube deformation. Computational Visual Media 4, 1 (
1 2018), 33–42.Google ScholarCross Ref . - 2016. Thingi10K: A dataset of 10,000 3D-printing models. CoRR abs/1605.04797 (2016).
arxiv:1605.04797 Google Scholar . - 2005. The Finite Element Method: Its Basis and Fundamentals. Elsevier.Google Scholar .
Index Terms
- A Large-Scale Comparison of Tetrahedral and Hexahedral Elements for Solving Elliptic PDEs with the Finite Element Method
Recommendations
Transformation of hexaedral finite element meshes into tetrahedral meshes according to quality criteria
The paper is concerned with algorithms for transforming hexahedral finite element meshes into tetrahedral meshes without introducing new nodes. Known algorithms use only the topological structure of the hexahedral mesh but no geometry information. The ...
A weak divergence CDG method for the biharmonic equation on triangular and tetrahedral meshes
AbstractA conforming discontinuous Galerkin (CDG) C 0-P k finite element method is introduced for solving the biharmonic equation on triangular and tetrahedral meshes. A C 0-P k finite element function is a continuous and piecewise polynomial ...
Order two superconvergence of the CDG finite elements for non-self adjoint and indefinite elliptic equations
AbstractA conforming discontinuous Galerkin (CDG) finite element method is designed for solving second order non-self adjoint and indefinite elliptic equations. Unlike other discontinuous Galerkin (DG) methods, the numerical trace on the edge/triangle ...
Comments