Access the full text.
Sign up today, get DeepDyve free for 14 days.
S Saigal (1997)
Pyramid Elements for Maintaining Tetrahedra to Hexahedra Conformability
CR Johnson JF Shepherd (2008)
Hexahedral Mesh Generation ConstraintsEng Comput, 24
B Guo (2012)
All-hex meshing using singularity-restricted field
CC de Wiart E Marchandise (2011)
High-quality surface remeshing using harmonic maps-Part II: Surfaces with high genus and of large aspect ratioInt J Numer Meth Eng, 86
S Pirzadeh (1996)
Three-dimensional unstructured viscous grids by the advancing-layers methodAIAA J, 34
B Vallet N Ray (2008)
N-Symmetry direction field designACM T Graph, 27
K Nakahashi Y Ito (2004)
Improvements in the reliability and quality of unstructured hybrid mesh generationInt J Numer Meth Fl, 45
Y Tong (2012)
Automatic Frame Field Guided Hexahedral Mesh Generation
U Reitebuch M Nieser (2011)
CubeCover - parameterization of 3D volumesComput Graph Forum, 30
AM Shih Y Ito (2008)
Octree-based reasonable-quality hexahedral mesh generation using a new set of refinement templatesInt J Numer Meth Eng, 77
J Lambrechts JF Remacle (2012)
Blossom-Quad: a non-uniform quadrilateral mesh generator using a minimum cost perfect matching algorithmInt J Numer Meth Eng, 89
JF Remacle C Geuzaine (2009)
Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilitiesInt J Numer Meth Eng, 79
L Maréchal (2009)
Advances in Octree-Based All-Hexahedral Mesh Generation: Handling Sharp Features
P Frey (2012)
A PDE Based Approach to, Multidomain Partitioning and Quadrilateral Meshing
S Ward Y Kallinderis (1993)
Prismatic grid generation for three-dimensional complex geometriesAIAA J, 31
V Faber Q Du (1999)
Centroidal Voronoi Tessellations: Applications and AlgorithmsSiam Rev, 41
(2013)
Remacle JF
TD Blacker (2000)
Meeting the Challenge for Automated Conformal Hexahedral Meshing
JR Shewchuk (1998)
Tetrahedral mesh generation by Delaunay refinement
(2013)
Yamaha XTZ-125
F Weiler (1996)
Octree-based Generation of Hexahedral Element Meshes
A Sheffer J Gregson (2011)
All-Hex mesh generation via volumetric polyCube deformationComput Graph Forum, 30
PM Tuchinsky (1998)
The ‘Hex-Tet’hex-dominant meshing algorithm as implemented in CUBIT
A Guttman (2004)
R-trees: a dynamic index structure for spatial searching
C Geuzaine JF Remacle (2010)
High quality surface meshing using harmonic mapsInt J Numer Meth Eng, 83
MK Agoston (2005)
Computer Graphics and Geometric Modeling
(2013)
CV HP1
A Mahajan (1993)
Joining tetrahedra to hexahedra
Y Liu (2010)
Centroidal Voronoi Tessellation and its Applications
(2011)
//grabcad.com/library/5-bladed-propeller.
H Bao (2011)
Boundary aligned smooth 3D cross-frame field
K Shimada (2009)
Tensor-Guided Hex-Dominant Mesh Generation with Targeted All-Hex Regions
K Shimada S Yamakawa (2003)
Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cellsInt J Numer Meth Eng, 57
J Solberg MA Puso (2006)
A stabilized nodally integrated tetrahedralInt J Numer Meth Eng, 67
S Arya (1997)
ANN: A library for approximate nearest neighbor searching
J Lambrechts (2012)
Lloyd’s energy minimization in the norm for quadrilateral mesh generation
D Talmor S Meshkat (2000)
Generating a mixed mesh of hexahedra, pentahedra and tetrahedra from an underlying tetrahedral meshInt J Numer Meth Eng, 49
A Fortin (2014)
Les Eléments finis : de la théorie à la pratique
G Sjaardema (1995)
A comparison of all hexagonal and all tetrahedral finite element meshes for elastic and elasto-plastic analysis
(2006)
TetGen: A Quality Tetrahedral Mesh Generator and Three-Dimensional Delaunay Triangulator
E Marchandise (2011)
A Frontal Delaunay quad mesh generator using the norm
tristan.carrier@uclouvain.be Université catholique de Louvain, Background: Indirect quad mesh generation methods rely on an initial triangular Institute of Mechanics, Materials mesh. So called triangle-merge techniques are then used to recombine the triangles of and Civil Engineering, Bâtiment Euler, Avenue Georges Lemaître 4, the initial mesh into quadrilaterals. This way, high-quality full-quad meshes suitable for Louvain-la-Neuve 1348, Belgium finite element calculations can be generated for arbitrary two-dimensional geometries. Full list of author information is available at the end of the article Methods: In this paper, a similar indirect approach is applied to the three-dimensional case, i.e., a method to recombine tetrahedra into hexahedra. Contrary to the 2D case, a 100% recombination rate is seldom attained in 3D. Instead, part of the remaining tetrahedra are combined into prisms and pyramids, eventually yielding a mixed mesh. We show that the percentage of recombined hexahedra strongly depends on the location of the vertices in the initial 3D mesh. If the vertices are placed at random, less than 50% of the tetrahedra will be combined into hexahedra. In order to reach larger ratios, the vertices of the initial mesh need to be anticipatively organized into a lattice-like structure. This can be achieved with a frontal algorithm, which is applicable to both the two- and three-dimensional cases. The quality of the vertex alignment inside the volumes relies on the quality of the alignment on the surfaces. Once the vertex placement process is completed, the region is tetrahedralized with a Delaunay kernel. A maximum number of tetrahedra are then merged into hexahedra using the algorithm of Yamakawa-Shimada. Results: Non-uniform mixed meshes obtained following our approach show a volumic percentage of hexahedra that usually exceeds 80%. Conclusions: The execution times are reasonable. However, non-conformal quadrilateral faces adjacent to triangular faces are present in the final meshes. Keywords: Advancing front methods; Tetrahedra recombination; Mixed hexahedral meshes Background Whether hex-meshing or tet-meshing is better for finite element computations is a long- standing controversy. This paper does not aim at deciding on that issue. Yet, it is a fact that a large number of finite element users would highly appreciate having automatic hex-meshing procedures for general 3D domains. A number of arguments can indeed be stated in favor of hex-meshing. For the same number of vertices, hex meshes have fewer elements, which speeds up the matrix/residual assembly. In solid mechanics, hexahedra exhibit higher accuracy than tetrahedra [1], which are plagued by locking problems [2]. © 2014 Carrier Baudouin et al.; licensee Springer. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 2 of 30 http://www.amses-journal.com/content/1/1/8 In fluid dynamics, boundary layers made of hexahedra are effective for capturing large gradients and resolving viscous flows near the boundary, and semi-structured boundary- layer meshes attract significant interest (see, e.g. [3-5]). Hexahedral mesh generation is still an ongoing research [6], and a major conclusion so far is that the generation of full-hex conforming meshes on arbitrary domains is beyond our reach nowadays. Relaxing a bit the requirements, hex-dominant meshes [7], in con- trast with full-hex meshes, are allowed to aggregate a mixture of hexahedra, prisms, pyramids and tetrahedra. The goal of hex-dominant meshing is to generate meshes where hexahedral elements dominate, both in number and volume. This paper presents such an algorithm to automatically generate non-uniform isotropic hex-dominant meshes in arbitrary geometries. However, quadrilateral faces adjacent to triangular faces are usually found in the resulting meshes. Such non-conformities represent an additional compli- cation for finite element methods. Various attempts at palliating the impact of these non-conformities have been discussed in the literature [8]. The proposed approach relies on an indirect strategy. The tetrahedra of an initial mesh are combined into hexahedra using Yamakawa-Shimada’s algorithm [9], which works basically as follows: (i) All tetrahedra of an initial mesh are considered one after the other. (ii) The neighbors of each tetrahedron are visited in order to identify potential hexahedra. Candidate hexahedra are stored in an array and sorted with respect to their geometri- cal quality. (iii) The algorithm then iterates through this array, starting from the highest quality hexahedron, in order to effectively generate the hexahedral elements. Hexahedra that are composed of available tetrahedra (not marked for deletion) and that preserve hexahedral conformity are successively added to the mesh. However, meshes obtained by applying a recombination algorithm to an arbitrary tetra- hedral mesh fail to be hex-dominant. As an illustration, a mesh (depicted on Figure 1) was created using Yamakawa-Shimada’s recombination algorithm from a tetrahedral mesh generated with the Delaunay refinement algorithm [10] of Gmsh [11]. The number of hexahedra in this mesh represents only 12.34% of the total number of elements.This low percentage of hexahedra results from the fact that the mesh vertices were not placed so as to favor recombination. In order to obtain higher ratios of good quality hexahedra, ver- tices need to be anticipatively aligned into a lattice-like structure that respects the user prescribed mesh size and the preferred directions of the mesh. This is what we are going to do with a specific frontal algorithm. In a perfect hexahedral mesh, each interior vertex is linked with six other vertices: left- right, above-below, front-back (four vertices in case of a perfect quadrangular mesh). The main idea of our vertex placement algorithm is based on that observation. Knowing the prescribed local mesh size and the local preferred mesh directions, each interior vertex attempts to spawn six new vertices. A prospective vertex, however, is effectively created only if it lays inside the domain and if it is not too close to an existing vertex. This algo- rithm is applied to the boundaries of the geometry, prior to the volumes. When done, the vertices are tetrahedralized and Yamakawa-Shimada’s algorithm can be applied. Our approach has some similarities with the advancing front method. The vertices are created layer by layer toward the center of the geometry. However, contrary to the advanc- ing front method, our algorithm does not construct a mesh topology along the way. All tetrahedra are built at the end. Figure 2 illustrates the various steps of our approach. The basic input is a CAD geometry file readable by the Gmsh free software. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 3 of 30 http://www.amses-journal.com/content/1/1/8 (1) (2) Figure 1 A mixed mesh obtained from an arbitrary tetrahedral mesh. Hexahedra are displayed in purple, prisms in dark blue, pyramids in pink and tetrahedra in light blue. (2) is a cutaway view of (1). The Methods section first examines more closely a number of data structures, tools and concepts that contribute to make the algorithm more efficient. It then describes the two- and three-dimensional versions of the frontal algorithm. Finally, it discusses Yamakawa-Shimada’s algorithm and the issue of finite element conformity. The Results and discussion section presents a number of application examples, including mesh statistics and execution times. Previous work A large variety of procedures for hexahedral meshing have been proposed over the years. This section reviews a certain number of them, focusing on the automatic ones. Several techniques extract hexahedral meshes from octree data structures [12]. These methods can generate non-uniform full-hex meshes in arbitrary geometries. The hexa- hedra orientation is defined by the octree root, which is a cube englobing the geometry. Boundary hexahedra perpendicular to the boundary surface can be achieved by project- ing buffer layers [13,14]. The main limitations of octree-based approaches is that the generated hexahedra cannot be oriented flexibly, and that the quality of the hexahedra near boundaries is degraded [15]. Certain parametrization methods have been able to mesh complex three-dimensional domains [16,17]. These methods start by computing a three-dimensional direction field. The singularities of the direction field are then identified. Later on, the domain is cut in order to place all singularities on the boundary and to reduce the genus to 0 [18]. A parametrization minimizing the difference between the hexahedra orientation and the three-dimensional direction field is selected [19]. The supplementary cutting required to place all singularities on the boundary is necessary because it leads to a bet- ter parametrization [16]. Full hexahedral meshes of very good quality can be obtained for complicated domains. However, a variable mesh size cannot be prescribed [20]. Parametrization methods are very diverse. For example, a few algorithms capable of deforming a three-dimensional domain into a polycube model have been developed [21]. The polycube model is meshed and re-deformed back into its original shape. Graph theory can be applied to the problem of creating hexahedra by recombin- ing tetrahedra [22]. The starting point of the method is a tetrahedral mesh, which can 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 4 of 30 http://www.amses-journal.com/content/1/1/8 Figure 2 An overview of the steps necessary to generate a hex-dominant mesh. be viewed as a graph. The method consists in searching through the mesh to identify subgraphs yielding hexahedra. There are six particular subgraphs to look for. Potential hexahedra can be constructed immediately or after classification along various criteri- ons. This approach can be applied to prisms and pyramids as well. The recombination algorithm used throughout this article has been devised by Yamakawa and Shimada [9]. These authors have also designed an iterative procedure to align vertices in three dimen- sions. The first step of the procedure consists of filling the domain with crystal cells. Each crystal cell has the shape of a cube: there is one atom at the center and eight atoms in the corners. Crystal cells exert force on each other via their atoms. A set of equations of motion govern the cells positions. Throughout the process, cells can be added or removed 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 5 of 30 http://www.amses-journal.com/content/1/1/8 depending on the local density. Once cells velocities have sufficiently decrease, the center of each crystal cell becomes a mesh vertex. To improve the spatial distribution of the set of vertices (which has a large impact on the effectiveness of such graph-based approaches), several techniques have been proposed, such as a modified version of Lloyd’s algorithm. Lloyd’s algorithm repeatedly moves ver- tices to the centroid of their Voronoi cell [23]. As the number of iterations increases, the Voronoi cells take the shape of perfect hexagons. In fact, it has been proven that Lloyd’s algorithm minimizes an energy functional equal to the sum of the moments of inertia of the Voronoi cells [24]. Lévy-Liu’s algorithm consists of minimizing higher order moments of inertia: the Voronoi cells then become squarely instead of hexagonal, which has the effect of aligning vertices in precise directions. Tetrahedral meshes smoothed by Lévy- Liu’s algorithm make excellent candidates for recombination. When used in conjunction with the graph method discussed above, Lévy-Liu’s algorithm can generate mixed meshes with high hexahedra percentages [24]. However, the method presented in this article is frontal, not iterative. The vertices are created layer by layer. Methods We have pointed out above the importance of having the mesh vertices pre-aligned to ensure a good recombination rate. It is the purpose of the vertex placement algorithm to achieve this. This algorithm, however, relies on a number of data structures and geometrical concepts that are first introduced and developed below. First, the vertex placement algorithm needs to know, at each point of the domain, the prescribed local mesh size and the local preferred mesh directions. In practice, those geo- metrical quantities are conjointly obtained by evaluating a specific field structure called cross field. The generation of direction fields was extensively studied in [25]. Secondly, the notion of distance itself represents another degree of freedom of the method. We shall show that it is particularly appropriate when dealing with hex-meshing, to compute distances with the infinity norm, instead of the standard Euclidean norm. Finally, the algorithm is characterized by a large number of spatial searches, in order to check whether or not a prospective vertices is too close to any already existing vertex. To optimize the efficiency of this operation, an R-tree data structure is employed [26,27]. Cross fields At each point of a region ⊂ R ,the frame field (d , d , d ) represents the three local 1 2 3 orthogonal preferred directions of the hexahedral mesh. Frame fields are usually required to satisfy many constraints [16,28]. On the geometrical edges of , one of the three direc- tions should be tangent to the edge itself [9]. On the surfaces of ,one of thethree directions should be perpendicular to the surface [9,16]. A last requirement is that the frame field should be as smooth as possible. On the other hand, at each point of ,the size field represents the prescribed local mesh size value. Mesh sizes h , h , h are defined for every point of the volume in each 1 2 3 of the directions d , d , d . In this paper, the mesh size field at a point x is isotropic, i.e. 1 2 3 h(x) = h (x) = h (x) = h (x). The extension to anisotropic meshing will be done in a 1 2 3 forthcoming work. The user fixes the mesh size at the geometrical vertices of the model. One-dimensional size fields are then computed along the geometrical edges. Because the surfaces are 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 6 of 30 http://www.amses-journal.com/content/1/1/8 Figure 3 Surface parametrization and construction of the frame field (in blue). bounded by geometrical edges, Dirichlet conditions can be imposed on the surfaces boundaries. A Laplace equation is used to obtain the size field over the surfaces. The size field over the volume is calculated in a similar manner. Continuous finite elements of the first order are employed in each case. The final size field is therefore a three-dimensional piecewise continuous field. The Laplace equation was chosen because it leads to smooth and gradual solutions. The cross field (h d , h d , h d ), now, combines both information into a single field. 1 1 2 2 3 3 At each vertex of the mesh, the cross field evaluates into a symmetric real 3 by 3 tensor whose columns are the three orthogonal vectors parallel to the local preferred directions of the hexahedral mesh. Moreover, the norm of the vectors represent the local mesh size; the three norms are identical in case of an isotropic mesh (which is the case considered in this paper), but they may differ in case of an anisotropic mesh. The construction of a frame field on a region belongs to the category of elliptic problems. Boundary conditions must be imposed on the boundary ∂.Wethuspro- ceed logically by explaining first how the frame field is constructed on surfaces, and deal afterwards with the prolongation into the volumes. Let 2 3 u ={u, v}∈ S ⊂ R → x(u) ={x, y, z}∈ S ⊂ R,(1) Figure 4 Cross fields on the surfaces of a mechanical part. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 7 of 30 http://www.amses-journal.com/content/1/1/8 be a smooth parametrization of the surface S (see [29-31] for a review of parametriza- tion techniques for surface remeshing). It should be noted that the parametrization does not need to be conformal, i.e the angles do not need to be conserved, for the algorithms presented in this paper. (This is a nice feature because guaranteed one-to-one confor- mal maps are more difficult to compute than bijective harmonic mapping.) For example, Figure 3 shows a harmonic parametrization of an arbitrary surface S onto a unit disk. Consider the two tangent vectors ∂x ∂x t = and t = , 1 2 ∂u ∂v which are the images in S of the basis vectors t = (1, 0) and t = (0, 1) of the parameter 1 2 plane S . Because they are not parallel for any point of S , one can build the unit normal vector n = t × t /t × t .Eachvector t tangent to S can be expressed as t = ut + vt 1 2 1 2 1 2 with (u, v) the covariant coordinates of t.The tangentvector t is thus the image of a vector t = (u, v) in the parameter plane. It is easy to compute covariant coordinates of any tangent vector t using the metric tensor of the parametrization. By definition, t = ut + vt .Then, t · t = ut · t + vt · t and t · t = ut · t + vt · t , which reads in 1 2 1 1 1 2 1 2 1 2 2 2 matrix form (a) (a) (b) (b) Figure 5 The mesh (a) was used to create the frame field (a) and the mesh (b) was used to create the frame field (b). 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 8 of 30 http://www.amses-journal.com/content/1/1/8 Figure 6 Unit circles and unit spheres in the L and L norms. 2 ∞ t · t t · t u t · t 1 1 1 2 1 = (2) t · t t · t v t · t 2 1 2 2 2 where M is the metric tensor, invertible for any smooth parametrization. For defining our frame field, a local orthonormal frame (s , s , n) is first constructed at 1 2 all points x of S with s = t /t , s = n × t /n × t . Next, the direction d of the 1 1 1 2 1 1 1 frame field is computed at the points x of the boundaries of surface S: d is the tangent b 1 vector to the boundary. The local orientation of the frame field θ at the boundary can then be computed as the oriented angle between s and d . Then, an elliptic boundary 1 1 4iθ(u) value problem is used to propagate the complex number z(u) = a(u) + ib(u) = e in the parametric domain. More specifically, two Laplace equations with Dirichlet boundary conditions are solved in the parametric space S in order to compute the real part a(u) = cos 4θ and the imaginary part b(u) = sin 4θ of z: Figure 7 A mixed mesh created with the frontal algorithm using the L norm. The percentage of hexahedra by number is equal to 76.03% for L and 71.25% for L . ∞ 2 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 9 of 30 http://www.amses-journal.com/content/1/1/8 Figure 8 Two examples of bounding boxes intersections: a) x can be inserted in the cloud because x is outside the red dotted square b) x cannot be inserted in the cloud because x is inside the red dotted square. 2 2 ∇ a = 0, ∇ b = 0on S , (3) a =¯a(u), b = b(u) on ∂S . After solving those two PDEs, the frame field can be represented in the whole domain by the angle θ(u) = atan2(b(u), a(u)). The choice 4θ as the argument of z is motivated by symmetry arguments: frame fields are equivalent when they are rotated around n by any angle that is a multiple of π/2. Details of that procedure are given in [32]. Finally, the frame field (d , d , d )can be 1 2 3 computed on the whole surface S as follows: d = s cos θ + s sin θ, d =−s sin θ + s cos θ, d = d × d,(4) 1 1 2 2 1 2 3 1 2 where θ is the solution of the elliptic boundary value problem (3). As an example, Figure 4 presents the frame field computed on surfaces of a mechanical part. Figure 5 shows two triangular meshes of different coarseness and their resulting frame fields. Linear interpolation of the a and b components discussed earlier was used in Figure 9 View of the different parameters of the point insertion scheme. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 10 of 30 http://www.amses-journal.com/content/1/1/8 Figure 10 Different stages of the vertex insertion process. Left figure shows the cross field on one of the model faces of the car model. The right figure shows the quadrangular surface mesh that has been done using the points in the 3D space. order to obtain the same number of frames regardless of the mesh density. As seen from the figure, the frame field (a) is not entirely radial and contains defects because the mesh (a) is too coarse. The frame field at any point inside the volume is then chosen to be equal to the frame field at the closest surface vertex [24]. (ANN nearest neighbor library is employed for the queries [33].) These frame fields are not going to be smooth whenever the distance function to the walls is not itself smooth. Recently, two methods capable of generating smooth frame fields have been developed [16,17]. Both of these methods employ LBFGS optimization to minimize energy functionals. Measuring distances For inserting a new mesh vertex in our frontal algorithm, the distance between a prospec- tive vertex x and any already existing vertex x must be smaller than kh,where h is the local mesh size and k a free parameter of the algorithm ranging from 0 to 1. Parameter k absolutely needs to be inferior to one. If not, too many valid vertices will be missing from the cloud. In the implementation described in this work, k is equal to 0.7. Figure 11 Vertex insertion process during the frontal packing of parallelograms algorithm. The figure shows points in the parametric uv-space with their respective exclusion parallelograms. Note that each parallelogram contains exactly one point. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 11 of 30 http://www.amses-journal.com/content/1/1/8 The way distances between vertices are calculated is however a degree of freedom of the method. When dealing with hex-meshing, it turns out to be advantageous to compute distances in the infinity norm, instead of in the Euclidean norm: 2 2 2 ||x − y|| = |x − y | +|x − y | +|x − y | (5) 2 1 1 2 2 3 3 ||x − y|| = max(|x − y |, |x − y |, |x − y |).(6) ∞ 1 1 2 2 3 3 In the infinity norm, the unit sphere is actually a cube, which reduces to a square in two dimensions (see Figure 6). The exclusion area around each prospective vertex is therefore a cube, resp. a square, which precisely matches the shape of the elements one wishes to build. Contrary to the Euclidean norm, the infinity norm is not isotropic and, consequently, it has an orientation which is given by the frame field. In the parameter plane, due to the change of coordinates (1), the exclusion area is the parallelogram determined by orien d (x, y) =||M (x − y)|| < kh.(7) x ∞ where M is the Jacobian matrix of (1), evaluated at x. The infinity distance is not a differentiable function [24]. However, this is not an issue, because the frontal algorithm does not require the computation of distance derivatives. Using the infinity distance instead of the Euclidean distance can increase the hexahedra percentage. The quarter cylinder illustrated on Figure 7 provides an example where an improvement by 5% of the ratio of hexahedra is observed, by simply using the L norm instead of the L norm in the R-tree spatial search algorithm described in the next section. Figure 12 In three dimensions, vertex Q try to create six vertices: P , P , P , P , P and P . 1 2 3 4 5 6 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 12 of 30 http://www.amses-journal.com/content/1/1/8 (a) (b) Figure 13 3D point insertion algorithm: (a) view of the surface mesh of a quarter cylinder, (b) top view of the quarter cylinder during the point insertion algorithm. Using R-trees for spatial searches As said before, a prospective vertex is effectively created only if there is enough unoccu- pied space around it. The size of this exclusion area or volume depends on the local mesh size. According to the dimension and the chosen norm, the shape of the exclusion region can be a parallelogram or an ellipse (in 2D), and a cube or a sphere (in 3D). The computation of the distance between the prospective vertex and all the other ver- tices would have a quadratic complexity in time and would therefore be prohibitive in terms of computation time. The number of computations required to ensure the exclu- sions can however be considerably decreased if the exclusion cube of each vertex is enclosed in a bounding box whose edges are parallel to the coordinate axis. An R-tree Figure 14 A mixed mesh containing hexahedra (white), prisms (yellow), pyramids (red) and tetrahedra (blue). 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 13 of 30 http://www.amses-journal.com/content/1/1/8 Figure 15 Non-conformities between two hexahedra sharing three vertices. data structure [26,27] can efficiently determine bounding boxes intersections and, then, it is enough to compute the distance between pairs of vertices whose boxes intersect each other. We now illustrate with a 2D example of a planar surface how to decide wether a prospec- tive vertex can be inserted or not. For this example, we have chosen the infinity norm for computing distances. In Figure 8(a), x is the prospective vertex and x is an existing mesh vertex. The dotted square around x is the oriented exclusion area of vertex x ,thatis 1 1 computed from the surface cross field (h d , h d )thathas auniform mesh size field h . 1 1 1 2 1 The solid box surrounding the prospective vertex is the bounding box of the exclusion area that is parallel to the xy-coordinate axis. This bounding box should always include the oriented exclusion square of side 2kh. This condition is satisfied in 2D if the box is of √ √ side 2 2kh and in 3D if the cube is of side 2 3kh. Even if the boxes intersect each other in Figure 8(a), the distance between x and x is sufficiently large. Thus, x can be inserted 1 1 in the cloud and added to the queue. Figure 8(b) shows the same two vertices. Again, the boxes intersect each other. This time, however, x is too close to x and x cannot be added to the cloud or to the queue. 1 1 orien It should be noted that on Figures 8(a) and 8(b), d (x , x) is not necessarily equal orien to d (x, x ). The local mesh sizes at x and x can also be different as illustrated in 1 1 Figure 8(a). However, if x is outside the dotted square of x , it is considered sufficient. For non-planar surfaces, the surfaces need to be parametrized. As the parametrization is not necessarily conformal, i.e. the angles between d and d are not conserved, the dot- 1 2 ted squares (exclusion area) of Figure 8 become parallelograms in the parametric space. As far as the bounding boxes are concerned, they are computed in the same manner and are then parallel to the uv-coordinate axis of the parametric space. Let’s assume that on surfaces, each vertex attempts to create four vertices in the four cardinal directions. If the surface normal is not constant, these prospective vertices may Figure 16 Non-conformities between two hexahedra sharing two vertices. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 14 of 30 http://www.amses-journal.com/content/1/1/8 Figure 17 Non-conformities between one hexahedra and one prism sharing three vertices. not rest on the surface. The next section describes a scheme capable of solving this issue by intersecting surfaces with circle arcs. Surface meshing: the packing of parallelograms algorithm The quadrilateral mesh algorithm presented here is a simpler variant of [32] that we call packing of parallelograms. Consider one vertex located at point u = (u, v) of the parameter plane S which correspond to point x(u, v) in the 3D space (see Figure 9). The cross field at this point of the surface is (h d , h d , h n), in terms of the three 1 1 2 2 n orthonormal preferred mesh directions, {d , d , n}, and the three corresponding mesh 1 2 sizes, {h , h , h },. 1 2 n Figure 18 Non-conformities between one hexahedra and one prism sharing two vertices. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 15 of 30 http://www.amses-journal.com/content/1/1/8 Figure 19 The arrow indicates a non-conformal face between a hexahedron and two pyramids. Tetrahedra are not shown to facilitate visibility. In a perfect quad mesh, each vertex is connected to four neighboring vertices forming a cross parallel to the cross field. In our approach, four prospective points x , i = 1, ...,4 are constructed in the neighborhood of point x with the aim of generating the perfect situation. Points x and x are constructed as the intersection of the surface S with a circle of 1 2 radius h ,centeredon x andsituatedinthe plane of normal d (see Figure 9). Points 1 2 x and x are constructed as the intersection of the surface S with a circle of radius h , 3 4 2 centered on x and situated in the plane of normal d (not in the figure for clarity). Numerical difficulties associated with the surface-curve intersection are overcome by choosing a good initial guess for the intersection. If we approximate the surface by its tangent plane at x,point x is situated at x = x + h d . A good initial guess in the 1 1 1 1 parameter plane is u = u + du where du = (du , dv ) is computed using (2) i.e. 1 1 1 1 1 du h d · t 1 1 1 1 M = . dv h d · t 1 1 1 2 This also gives u = u − du , du = (du , dv ) 2 1 3 3 3 du h d · t 3 2 2 1 M = . dv h d · t 3 2 2 2 u = u + du and u = u − du . 3 3 4 3 The algorithm works as follows. Each vertex of the boundary is inserted in a fifo queue. Then, the vertex x at the head of the queue is removed and its four prospective neighbors Figure 20 A supplementary pyramid was created by Owen-Canann-Saigal’s algorithm to fix the non-conformity. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 16 of 30 http://www.amses-journal.com/content/1/1/8 Table 1 Mesh data Figure # vertices H H Q CPU (s) NC nbr vol 21 126, 922 62.91% 85.70% 0.95 488 s. 7.19% 23 42, 263 75.42% 92.85% 0.96 164 s. 3.97% 26 11, 648 58.16% 82.68% 0.94 112 s. 7.70% 27 2737 60.23% 83.02% 0.94 45 s. 8.04% 28 6006 84.54% 94.10% 0.96 80 s. 2.25% 32 19, 284 86.19% 94.93% 0.98 51 s. 1.81% Lévy-Liu’s algorithm [24,36] was used for Figures 26, 27 and 28. x are computed. A new vertex x is inserted at the tail of the queue if the following con- i i ditions are satisfied: (i) vertex x is inside the domain and (ii) vertex x is not too close to i i any of the vertices that have already been inserted. As for the first condition, it is enough to check if the preimage u ∈ S of x is inside the i i bounds of the parameter domain. Concerning the second condition, the distances on the surface S should theoretically be measured in terms of geodesics, This is however clearly overkill from a mesh generation point of view. We define an exclusion zone for every ver- tex that has already been inserted (this includes boundary vertices). This exclusion zone is a parallelogram in the parameter plane (see the yellow parallelogram of Figure 9). This parallelogram is scaled down by a factor k = 0.7 in order to allow the insertion of (at least) points x . The different stages of the procedure for a non planar surface are presented on Figure 10 and Figure 11. Then, the surfaces are triangulated in the parameter plane Figure 21 A mechanical piece. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 17 of 30 http://www.amses-journal.com/content/1/1/8 using an anisotropic Delaunay kernel and the triangles are subsequently recombined into quadrilaterals using the Blossom-Quad algorithm [34]. As shown on Figure 11, exclusion areas can become anisotropic parallelograms in the parametric plane. However, they always correspond to squares in the three-dimensional space. The vertices are triangulated in the parametric plane. Anisotropic triangulation is therefore necessary in order to obtain the expected arrangement of right triangles. Volume meshing: the 3D point insertion algorithm Volume meshing proceeds in the same way as surface meshing. The procedure starts from a 2D triangular mesh that has been created using surfacic frame fields. A frontal algorithm is used to create well aligned vertices inside the volume, starting from surface points. The 3D point insertion algorithm works in the same manner as the one used for surfaces. All boundary mesh vertices are initially pushed into a queue. The vertices are popped in order: each vertex Q popped out of the queue attempts to create six neighboring vertices in the six cardinal directions P = Q ±hd , P = Q ±hd , P = Q ±hd at a distance 1,2 1 3,4 2 5,6 3 h from itself (see Figure 12). A prospective vertex is added to the vertices cloud and to the queue only if it satisfies the two following conditions: 1. It is inside the domain. 2. It is not too close to an existing mesh vertex, i.e. if the distance is smaller than kh. Figure 22 Global algorithm flowchart and execution time percentages. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 18 of 30 http://www.amses-journal.com/content/1/1/8 Figure 23 A NACA airfoil. An octree data structure is again employed to efficiently determine if a vertex is inside the domain [11]. Eventually, no more prospective vertices can be added to the cloud without being too close to existing ones. The process then stops and the cloud is tetrahedralized with a Delaunay procedure [35]. The frontal algorithm was applied to the quarter cylinder starting from the surface mesh shown in Figure 13(a). In Figure 13(b), lines are traced between each vertex and its parent in order to observe the progression of the 3D point insertion algorithm. The quality of the alignment inside the geometry is very dependent on the quality of the alignment on the boundaries. If the triangles on the boundaries are far from being right-angled, then the vertices inside the geometry will not be well aligned. Various algo- rithms are capable of generating sets of aligned vertices on surfaces, such as the Delquad Figure 24 A zoom of the airfoil. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 19 of 30 http://www.amses-journal.com/content/1/1/8 Figure 25 A zoom of the trailing edge. algorithm [32] or Lévy-Liu’s algorithm [24,36]. However, for the majority of the exam- ples presented in this article, a two-dimensional version of the frontal algorithm was employed. As explained earlier, each vertex attempts to create six other vertices at a distance d = h from itself. For smoother size transitions, d can instead be an average between the local mesh size at the parent vertex and the local mesh size at the prospective vertex. Figure 26 A cylinder. The blue lines illustrate the cylinder geometry. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 20 of 30 http://www.amses-journal.com/content/1/1/8 Figure 27 An hollow eighth of ball with a constant mesh size. Volume meshing: Yamakawa-Shimada’s algorithm and finite element conformity This section briefly describes Yamakawa-Shimada’s recombination algorithm. It then discusses the problem of finite element conformity in the case of mixed hex meshes. Yamakawa-Shimada’s algorithm begins by iterating through the tetrahedra of the ini- tial mesh. For each tetrahedron, it attempts to find neighboring tetrahedra with which to construct a hexahedron. Five, six or seven tetrahedra are required to construct one hex- ahedron. Three patterns of assembly are considered. Two out of these three patterns are described in [9]. When a potential hexahedron is found, it is added to an array. However, Figure 28 An hollow eighth of ball with a variable mesh size. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 21 of 30 http://www.amses-journal.com/content/1/1/8 the hexahedron will not necessarily be part of the final mesh. Once all tetrahedra have been visited, the array is sorted by hex quality. The quality Q is defined as follows: v · (v × v ) i1 i2 i3 Q = min ,(8) i=1..8 ||v || ||v || ||v || i1 i2 i3 where i is the vertex number. For a hexahedron, i goes from 1 to 8; v , v and v are the i1 i2 i3 three vectors parallel to the three edges connected to vertex i. Q is in fact the modulus of the minimum scaled Jacobian [9]. Evidently, Q is meaningless for invalid hexahedra. Invalid hexahedra are characterized by a null or negative Jacobian determinant, which renders the mesh improper for calculations. Starting from the highest quality hexahedron, the algorithm then iterates through the array. Potential hexahedra composed of tetrahedra not yet marked for deletion are added to the mesh. The tetrahedra of the added hexahedron are then marked for deletion. It is to be noted that only a small fraction of potential hexahedra appear in the final mesh. Prisms can later be added by following a similar procedure [9]. All prisms are composed of three tetrahedra. There is only one pattern of construction for prisms [9]. Figure 14 shows a mixed mesh created with Yamakawa-Shimada’s algorithm. Figure 29 In this mesh, the front was initiated only from the lower and upper disks. The collision is visible in the middle of the cylinder. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 22 of 30 http://www.amses-journal.com/content/1/1/8 Figure 30 A mixed hexahedral mesh of the anc101 mechanical part. Let’s assume that finite elements of the first order are employed. The tetrahedral shape functions are therefore linear, while the hexahedral shape functions are trilinear [37]. On triangular faces, the interpolation is linear and takes into account three degrees of liberty. On quadrilateral faces, the interpolation is bilinear and takes into account four degrees of liberty [8,9]. If a nonplanar quadrilateral face is adjacent to a triangular face, there will be a gap or overlap [9]. The elements are not going to be a perfect partition of the domain anymore, which goes against the basic assumptions of the finite element method. Gaps or overlaps can also be created by several configurations of neighboring hexahedra or prisms. Figures 15 and 16 show four cases of non-conformities between hexahedra [9]. Figures 17 and 18 show six cases of non-conformities between one hexahedron and one prism. Non-conformities resulting from neighboring prisms can be deduced from these six cases. Yamakawa-Shimada’s algorithm should therefore avoid creating the configurations illustrated on Figures 15, 16, 17 and 18 while iterating through the sorted arrays of poten- tial hexahedra and prisms. Non-conformities can be efficiently identified by employing hashing techniques. Figure 31 A cutaway view of the anc101 mesh. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 23 of 30 http://www.amses-journal.com/content/1/1/8 Figure 32 One of the mesh used for the convergence analysis. Themeshsizeisequal to h = 1.0. After the creation of hexahedra and prisms, some tetrahedra are recombined into pyra- mids. Every pair of tetrahedra resting on a quadrilateral face is merged to form a pyramid. This step can fix many non-conformities. However, it does not resolve them all. As shown on Figure 19, many quadrilateral faces can still be adjacent to triangular faces belonging to either tetrahedra or pyramids. These non-conformities can be fixed by Owen-Canann-Saigal’s algorithm [38]. Owen- Canann-Saigal’s algorithm first creates a flat pyramid on each non-conformal quadrilat- eral face. The apex of the pyramid is not initially present in the mesh, but it is added by the algorithm. Surrounding tetrahedra and pyramids need to be subdivided to accommodate this new vertex. The pyramid is then raised so it does not have a null volume. Figure 20 illustrates the pyramid constructed to correct the non-conformity on Figure 19. Owen-Canann-Saigal’s algorithm can render a mixed hexahedral mesh completely conformal. However, it has a drawback. It increases the number of tetrahedra and pyramids, which lowers the percentage of hexahedra by number. As a consequence, Owen-Canann-Saigal’s algorithm was not used for the results presented below. Some quadrilateral faces will be adjacent to one or two triangles. Finite element solvers capable of handling these type of non-conformities are required. Results and discussion This section presents several mixed hex meshes created with the frontal algorithm and Yamakawa-Shimada’s algorithm. Three quantities are used to evaluate the quality of the meshes: the percentage of hexahedra by number H , the percentage of hexahedra by nbr volume H and the average hex quality Q defined in Eq. 8. In general, H is higher than vol vol H . CPU designates the total execution time (in s) on a 2010 laptop computer. All the nbr data is compiled in Table 1. The following convention is used throughout this section: the hexahedra are white, the prisms are yellow, the pyramids are red and the tetrahedra are Table 2 Mesh convergence analysis (credits: Gaëtan Compère) Mesh size First frequency (Hz) Second frequency (Hz) 2.0 770.11 1950.65 1.0 760.46 1928.52 0.5 757.55 1921.77 struct. 757.76 1921.93 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 24 of 30 http://www.amses-journal.com/content/1/1/8 Figure 33 A motorcycle hub. blue. The variable NC represents the percentage of non-conformal interior quadrilateral faces. Figure 21 shows a mesh containing 142,466 elements. The mesh size is constant throughout the domain. The CAD model is composed of 250 geometrical faces of various sizes. In order to avoid altering the geometrical edges, hexahedra or prisms whose facets lie on two different geometrical faces are not created. Each module described in this article shares a certain percentage of the total execu- tion time. These percentages are detailed in Figure 22. The mesh illustrated on Figure 21 was used for the analysis. The blue modules refer to tetrahedra recombination. They are Figure 34 A marine propeller. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 25 of 30 http://www.amses-journal.com/content/1/1/8 Figure 35 A filter mount. the most time-consuming. The green and yellow modules pertain to volume and surface mesh vertices generation. In Figure 23, a rectangular parallelepiped surrounding a NACA airfoil is meshed with 43,094 elements. Figures 24 and 25 are zoomed images of Figure 23. Figure 26 is a cutaway view of the mixed mesh inside a cylinder. The mesh size is constant and the cardinal directions are radial. Choosing a size field consistent with the geometry can improve the hexahedra percent- age. For the spherical model shown on Figures 27 and 28, a mesh size proportional to the radius is more suitable than a constant one. A mixed hexahedral mesh of a cylinder is displayed on Figure 29. However, this time the front was initiated only from the lower and upper disks, not from the curved face. In other words, the vertices on the curved face were not allowed to create prospective Figure 36 A submarine model. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 26 of 30 http://www.amses-journal.com/content/1/1/8 Figure 37 A cutaway view of the motorcycle hub. vertices. The mesh has the following statistics: H = 81.88%, H = 91.44% and Q = 0.97. nbr vol Because of the regularity of the curved face mesh, the hexahedra percentages are much higher than those of the previous cylinder. Figures 30 and 31 show a mixed hexahedral mesh of the anc101 mechanical part. The mesh was generated in 194 seconds and contains 92,282 elements. It has a H of 59.39%. nbr The anc101 part was designed by Computer Aided Manufacturing Inc. [39] and is com- monly used in mesh generation literature, in particular in Lévy and Liu’s article. For approximately the same mesh size, they obtain a H of 77.14% and an execution time of nbr 12 minutes. Pyramid recombination was not employed in both case. Figure 38 A cutaway view of the marine propeller. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 27 of 30 http://www.amses-journal.com/content/1/1/8 Figure 39 A cutaway view of the filter mount. A mesh convergence analysis was performed on the mechanical piece displayed on Figure 32. The mechanical piece is made of steel and one of its extremities is fixed. The first and second frequencies are computed, as shown on Table 2. Mixed hexahedral meshes of various densities are employed. According to a similar finite element calcula- tion performed on a structured mesh, the first frequency is equal to 757.76 Hz and the second one is equal to 1921.93 Hz. The results appear to converge. Figures 33, 34, 35 and 36 present additional examples of mixed hexahedral meshes. Figures 37, 38, 39 and 40 show cutaway views of these meshes. Table 3 contains the corre- sponding mesh data. The CAD models of these meshes come from an online repository [40-42]. A frequency-domain computational acoustic simulation was performed on the subma- rine model SUB of Table 3, under plane wave incidence. Figure 41 shows a cutaway view Figure 40 A cutaway view of the submarine model. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 28 of 30 http://www.amses-journal.com/content/1/1/8 Table 3 Mesh data Figure # vertices H CPU (s) vol 33 133,436 89.74% 247 s. 34 133,678 83.65% 268 s. 35 102,946 78.55% 225 s. 36 598,514 90.28% 1287 s. The execution times were measured on a 2012 laptop computer. of the iso-surfaces of the diffracted pressure field. Again, the simulations were shown to converge with mesh refinement. Surfaces and volumes are meshed sequentially. The two surface meshes bounding a thin region may also not be identical. As a consequence, many non-hexahedral elements can be created. The algorithm is usually less effective for geometrical models featuring many thin regions. Conclusion A method capable of generating mixed hexahedral meshes has been presented. The first step consists of covering geometrical boundaries with aligned vertices using a frontal pro- cess. The interior is treated in a similar fashion. Vertices creation are guided by a direction field and a size field. The interior vertices are eventually tetrahedralized with a Delau- nay procedure. All tetrahedra combinations yielding hexahedra are identified. They are sorted by quality and the highest quality hexahedra are created first. The same approach is applied to prisms. The final mesh contains hexahedra, prisms, pyramids and remaining tetrahedra. Figure 41 Diffracted acoustic waves around the submarine model. 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 29 of 30 http://www.amses-journal.com/content/1/1/8 The method has obvious drawbacks. First, there are no guarantees regarding the hexa- hedra percentage. It can be higher for certain geometries and lower for others. Secondly, the hexahedra are not anisotropic. For many geometries, well chosen anisotropy could increase the number of hexahedra. Finally, the resulting meshes are useful only to solvers capable of handling a certain number of non-conformal faces. Competing interests The authors declare that they have no competing interests. Authors’ contributions TCB worked on the algorithms and drafted some parts of the manuscript. JFR, EM and FH worked on the algorithms, drafted some parts of the manuscript and carried out detailed revisions. CG performed acoustic finite element analyses with hex-dominant meshes and carried out detailed revisions of the manuscript. All authors read and approved the final manuscript. Acknowledgements This work has been partially supported by the Belgian Walloon Region under WIST grants ONELAB 1017086 and DOMHEX 1017074. The authors wish to thank Gaëtan Compère for the mesh convergence analysis and Jonathan Lambrechts for suggesting the use of R-trees. The authors also appreciate the reviewers’ efforts and suggestions. Author details Université catholique de Louvain, Institute of Mechanics, Materials and Civil Engineering, Bâtiment Euler, Avenue Georges Lemaître 4, Louvain-la-Neuve 1348, Belgium. Université de Liège, Dept. of Electrical Engineering and Computer Science, Montefiore Institute, Bâtiment B28, Sart-Tilman, Liège 4000, Belgium. Received: 19 August 2013 Accepted: 16 January 2014 Published: 10 February 2014 References 1. Benzley SE, Perry E, Merkley K, Clark B, Sjaardema G (1995) A comparison of all hexagonal and all tetrahedral finite element meshes for elastic and elasto-plastic analysis. In: Tautges T (eds) Proceedings of the 4th International Meshing Roundtable. Sandia National Laboratories, Albuquerque 2. Puso MA, Solberg J (2006) A stabilized nodally integrated tetrahedral. Int J Numer Meth Eng 67:841–867 3. Ito Y, Nakahashi K (2004) Improvements in the reliability and quality of unstructured hybrid mesh generation. Int J Numer Meth Fl 45:79–108 4. Pirzadeh S (1996) Three-dimensional unstructured viscous grids by the advancing-layers method. AIAA J 34:43–49 5. Kallinderis Y, Ward S (1993) Prismatic grid generation for three-dimensional complex geometries. AIAA J 31(10):1850–1856 6. Shepherd JF, Johnson CR (2008) Hexahedral Mesh Generation Constraints. Eng Comput 24:195–213. https://dl.acm. org/citation.cfm?id=1394234. 7. Meyers RJ, Tautges TJ, Tuchinsky PM (1998) The ‘Hex-Tet’hex-dominant meshing algorithm as implemented in CUBIT. In: Freitag L (ed) Proceedings of the 7th international meshing roundtable. Sandia National Laboratories, Dearborn, pp 151–158 8. Dewhirst DL, Grinsell PM, Tucker JR, Mahajan A (1993) Joining tetrahedra to hexahedra. In: Proceedings of MSC World Users’ Conference. MSC Software, Arlington. http://web.mscsoftware.com/support/library/conf/wuc93/p04593.pdf. 9. Yamakawa S, Shimada K (2003) Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cells. Int J Numer Meth Eng 57:2099–2129 10. Shewchuk JR (1998) Tetrahedral mesh generation by Delaunay refinement. In: Proceedings of the fourteenth annual symposium on Computational geometry. ACM, Minneapolis, pp 86–95 11. Geuzaine C, Remacle JF (2009) Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities. Int J Numer Meth Eng 79:1309–1331 12. Schneiders R, Schindler R, Weiler F (1996) Octree-based Generation of Hexahedral Element Meshes. In: Proceedings of the 5th International Meshing Roundtable. Sandia National Laboratories, Pittsburgh 13. Ito Y, Shih AM, Soni BK (2008) Octree-based reasonable-quality hexahedral mesh generation using a new set of refinement templates. Int J Numer Meth Eng 77:1809–1833 14. Maréchal L (2009) Advances in Octree-Based All-Hexahedral Mesh Generation: Handling Sharp Features. In: Clark BW (ed) Proceedings of the 18th International Meshing Roundtable. Springer, Salt Lake City 15. Blacker TD (2000) Meeting the Challenge for Automated Conformal Hexahedral Meshing. In: Owen S (ed) Proceedings of the 9th International Meshing Roundtable. Sandia National Laboratories, New Orleans 16. Huang J, Tong Y, Wei H, Bao H (2011) Boundary aligned smooth 3D cross-frame field. In: Bala K (ed) Proceedings of ACM SIGGRAPH Asia. Association for Computing Machinery, Hong Kong, p 2011 17. Li Y, Liu Y, Xu W, Wang W, Guo B (2012) All-hex meshing using singularity-restricted field. In: Sloan P (ed) Proceedings of ACM SIGGRAPH Asia. Association for Computing Machinery, Singapore, p 2012 18. Huang J, Jiang T, Wang Y, Tong Y, Bao H (2012) Automatic Frame Field Guided Hexahedral Mesh Generation. Tech. rep., Zhejiang University. http://www.cad.zju.edu.cn/home/hj/12/hex/techreport/hex-techreport.pdf. 19. Nieser M, Reitebuch U, Polthier K (2011) CubeCover - parameterization of 3D volumes. Comput Graph Forum 30:1397–1406 20. Kowalski N, Ledoux F, Frey P (2012) A PDE Based Approach to, Multidomain Partitioning and Quadrilateral Meshing. In: Jiao X, Weill J (ed) Proceedings of the 21th International Meshing Roundtable. Springer, San Jose 2014, 1:8 Carrier Baudouin et al. Advanced Modeling and Simulation in Engineering Sciences Page 30 of 30 http://www.amses-journal.com/content/1/1/8 21. Gregson J, Sheffer A, Zhang E (2011) All-Hex mesh generation via volumetric polyCube deformation. Comput Graph Forum 30:1407–1416 22. Meshkat S, Talmor D (2000) Generating a mixed mesh of hexahedra, pentahedra and tetrahedra from an underlying tetrahedral mesh. Int J Numer Meth Eng 49:17–30 23. Du Q, Faber V, Gunzburger M (1999) Centroidal Voronoi Tessellations: Applications and Algorithms. Siam Rev 41:637–676 24. Lévy B, Liu Y (2010) L Centroidal Voronoi Tessellation and its Applications. In: Hoppe H (ed) Proceedings of ACM SIGGRAPH 2010. Association for Computing Machinery, Los Angeles 25. Ray N, Vallet B, Li WC, Lévy B (2008) N-Symmetry direction field design. ACM T Graph 27:1–25 26. Guttman A (1984) R-Trees: A Dynamic Index Structure for Spatial Searching. In: ACM Special Interest Group on Management of Data. Association for Computing Machinery, Boston, pp 47–57 27. Douglas G, Green M, Guttman A, Stonebraker M (2004) R-trees: a dynamic index structure for spatial searching. http://www.superliminal.com/sources/RTreeTemplate.zip. 28. Vyas V, Shimada K (2009) Tensor-Guided Hex-Dominant Mesh Generation with Targeted All-Hex Regions. In: Clark BW (ed) Proceedings of the 18th International Meshing Roundtable. Springer, Salt Lake City 29. Remacle JF, Geuzaine C, Compère G, Marchandise E (2010) High quality surface meshing using harmonic maps. Int J Numer Meth Eng 83:403–425 30. Marchandise E, de Wiart CC, Vos WG, Geuzaine C, Remacle JF (2011) High-quality surface remeshing using harmonic maps-Part II: Surfaces with high genus and of large aspect ratio. Int J Numer Meth Eng 86:1303–1321 31. Marchandise E (2013) Remacle JF. Eng Comput. doi:10.1007/s00366-012-0309-3 32. Remacle JF, Henrotte F, Baudouin TC, Geuzaine C, Béchet E, Mouton T, Marchandise E (2011) A Frontal Delaunay quad mesh generator using the L norm. In: Quadros W (ed) Proceedings of the 20th International Meshing Roundtable. Springer, Paris 33. Mount DM, Arya S (1997) ANN: A library for approximate nearest neighbor searching. In: CGC Workshop on Computational Geometry. The Center for Geometric Computing, Durham, pp 33–40 34. Remacle JF, Lambrechts J, Seny B, Marchandise E, Johnen A, Geuzaine C (2012) Blossom-Quad: a non-uniform quadrilateral mesh generator using a minimum cost perfect matching algorithm. Int J Numer Meth Eng 89:1102–1119 35. Si H (2006) TetGen: A Quality Tetrahedral Mesh Generator and Three-Dimensional Delaunay Triangulator. http:// tetgen.berlios.de/files/tetgen-manual.pdf 36. Baudouin TC, Remacle JF, Marchandise E, Lambrechts J, Henrotte F (2012) Lloyd’s energy minimization in the L norm for quadrilateral mesh generation. Eng Comput. DOI:10.1007/s00366-012-0290-x 37. Fortin A, Garon A (2014) Les Eléments finis : de la théorie à la pratique. http://giref.ulaval.ca/files/afortin/ Publications/elements_finis.pdf. 38. Owen SJ, Canann SA, Saigal S (1997) Pyramid Elements for Maintaining Tetrahedra to Hexahedra Conformability. In: Canann S, Saigal S (ed) ASME Trends in Unstructured Mesh Generation. American Society of Mechanical Engineers, Evanston, pp 123–129 39. Agoston MK (2005) Computer Graphics and Geometric Modeling. Springer-Verlag, USA 40. Rieling R (2013) Yamaha XTZ-125. http://grabcad.com/library/yamaha-xtz-125. 41. 5 Bladed Propeller (2011). http://grabcad.com/library/5-bladed-propeller. 42. Hall C (2013) CV HP1. http://grabcad.com/library/cv-hp1. doi:10.1186/2213-7467-1-8 Cite this article as: Carrier Baudouin et al.: A frontal approach to hex-dominant mesh generation. Advanced Modeling and Simulation in Engineering Sciences 2014 1:8. Submit your manuscript to a journal and benefi t from: 7 Convenient online submission 7 Rigorous peer review 7 Immediate publication on acceptance 7 Open access: articles freely available online 7 High visibility within the fi eld 7 Retaining the copyright to your article Submit your next manuscript at 7 springeropen.com
"Advanced Modeling and Simulation in Engineering Sciences" – Springer Journals
Published: Dec 1, 2014
You can share this free article with as many people as you like with the url below! We hope you enjoy this feature!
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.