N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37 ISSN: 0975-3060 (Print), 0975-3540 (Online) doi: 10.4273/ijvss.2.1.05 © 2010. MechAero Foundation for Technical Research & Education Excellence
In tern at iona l Jou rna l of Vehicle Structures & Systems Available online at www.ijvss.maftree.org
A Combined Subdivision and Advancing Loop-Front Surface Mesher (Triangular) for Automotive Structures Nilanjan Mukherjee Meshing & Abstraction Group, Digital Simulation Solutions, Siemens PLM Software Inc, Siemens, 2000 Eastman Dr, Milford, Ohio, 45150, United States of America. Email:
[email protected]
ABSTRACT: In this paper, a new, hybrid, 2D meshing algorithm, CSALF-T, is proposed for boundary-structured triangular meshes used for the analyses of automotive structures. The algorithm is based on the understanding of boundary loops. All mesh area boundary loops are initially meshed recursively with a new, loop-based advancing “loop-front” technique that produces high-quality boundary-structured meshes. The remaining interior domain is filled out by a recursive subdivision technique. Both approaches are driven by a background sizing function. The mesh is finally smoothed by a variational smoother. Loop-fronts are classified and rule sets are defined for each, to aid optimum point placement. Stencils used for loop-closure are presented. Results show examples of meshes used for the crash analyses of automotive body panels with large mesh size transition generated on complex 2D domains. Comparisons are made to pronounce the merits of the hybrid algorithm with respect to both traditional advancing front and subdivision based meshing techniques. KEYWORDS: Automotive structure, Loop, Mesh, Advancing front, Recursive, Subdivision, Smoothing, Distortion CITATION: N. Mukherjee. 2010. A combined subdivision and advancing loop-front surface mesher (triangular) for automotive structures, Int. J. Vehicle Structures & Systems, 2(1), 28-37. from historical and practical perspectives. The basic work on unstructured mesh generation with triangles could be classified into the following: 1. Delauney methods; 2. Advancing front methods; 3. Quadtree methods; 4. Subdivision/domain decomposition methods; 5. Sphere/ball/circle packing methods. This paper will only focus on advancing front and subdivision algorithms.
1. Introduction Unstructured mesh generation of automotive structures, that includes both body-in-white and chunkier engine components, continues to be a key pre-processing step during the many complex analyses of these structures. Generation of such unstructured meshes in a flat two dimensional (2D) domain with triangular isotropes is a well researched area. However, a large majority of the present day triangular surface meshing techniques have only emerged in the past decade. Many of the proposed techniques lack either the desired robustness or scalability. With the increasing popularity of the finite element technique in both conventional and nonconventional disciplines, triangular surface mesh generation methods still receive a lot of attention. A good quality surface triangulation is a prerequisite to tetrahedral volume filling. Many quadrangular and hexahedral meshing algorithms also depend on an initial triangulation of the domain. Added to the existing complexity of automotive engineering demands a need to create hybrid meshes that capture quintessential properties of several mesh generation algorithms, thus enabling the automotive application engineer or analyst to produce meshes that largely meet both diverse local and global requirements. Owen [1], Frey and George [2] present detailed overviews on unstructured meshing algorithms both
1.1. Advancing Front Methods The advancing front approach to domain triangulation was introduced by Marcum [3]. In this method, boundary edges are treated as “fronts” and pre-calculated points are incrementally inserted. Two new fronts result and the original front is removed from the list. Advancing front meshes guarantee a boundary conforming mesh with a very high quality. However, advancing front methods do not guarantee a “controllable layered mesh” near the boundaries. This means that there may not be a completely structured layer of elements around boundary loops. Therefore, properties of such layers cannot be controlled. Two other leading contributors to this area are Lohner [4] and Lo [5]. Lohner tried to overcome a basic limitation of the advancing front methods by proposing a coarse constrained Delauney triangulation connecting the boundary nodes to represent the size field. Pirzadeh [6] provided an algorithm to advance the 28
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
very effectively and are known to be susceptible to the presence of a large number of interior point constraints – a dire necessity for body-in-white meshing. In this paper, traditional advancing front techniques of Lohner [4], and Frey and George [2] are improvised to create an ALF algorithm that is coupled to the modified recursive subdivision technique. This results in CSALF-T, a hybrid triangular mesher that can produce structured boundary conforming free meshes. The user can optionally control layer advancement. The mesh, however, has an overall unstructured nature and elegantly adapts to sharply varying size fields and can honor any number of valid interior point constraints.
boundary layers in a controlled and structured manner. Peraire et. al [7] made another important contribution in this class of problems by laying down the essential 3D Euler equations for boundary layer advancement.
1.2. Subdivision Methods Subdivision algorithms dissect a given polygon into either a simultaneous set of convex domains or a recursively split dynamic domain. The main idea here is to generate a best-split-line to split the polygon into smaller areas that are pre-dominantly convex in domain. The polygonal postulate that states that a convex polygon, when truncated, leads to only convex domain serves as the basis for this approach. Since convex polygon triangulation yields a dominant convex triangular mesh, the mesh quality produced by these algorithms is enviably high. It needs to be categorically pointed out that subdivision methods pre-existed advancing-front types and some of these provided the first automatic method of discretizing areas for the purpose of finite element analyses. Sluiter and Hansen [8] and Schoof’s et al. [9] made pioneering contributions in this area. Sluiter and Hansen’s work was later revisited and revised by many including Talbert and Parkinson [10] and Sarrate and Huerta [11]. Mezentsev et al [12] described a generic approach to unstructured mesh generation on subdivision geometry. Berzin et al [13] developed in recent years a subdivision technique based on Modified Butterfly interpolation scheme for triangular mesh generation. Barry Joe [14] in his public domain code GeomPack, proposes a method to proceed from a simultaneous set of convex sub-domains. A similar methodology was proposed by Nowottny [15].
3. Proposed Hybrid Mesher Algorithm Given a precisely discretized (isotropic or anisotropic) polygonal boundary, representing the area to be meshed, the proposed hybrid mesher algorithm initiates the meshing process with an ALF method. The initial goal is to generate high-quality boundary conforming layered meshes. As the layer penetrates into the mesh area, new loops are created each time, reducing the mesh area. As the new loops begin overlapping, the ALF algorithm is terminated as shown in Fig. 1, and the subdivision algorithm is activated. All loops, thereafter, are connected into a single continuous contour following procedures described by Cabello [16]. This is depicted by Figs. 2 and 3. All interior point constraints are treated as a single-point loop. Next, the contour is split recursively by determining a best-splitting line. The splitting line dissects the compound contour into a left sub-contour and a right sub-contour (Fig. 4). Each left sub-contour is now recursively split into a child sub-contour on the right and a similar one on the left. The split lines are so chosen that they make angles nearing 60 degrees with the contour boundaries. Recursive splitting finally fills out the mesh area. A minor clean-up is done swapping triangle edges in an attempt to minimize valency gradients. The cleaned mesh is next smoothed by a variational smoother [17]. An example of the final mesh is presented in Fig. 5. This mesh can be both isotropic and/or anisotropic and can be driven by a background size field. Fig. 6 depicts a triangular mesh generated by a pure subdivision algorithm on the mesh area.
2. Problem Statement Automotive and aerospace structural analysts from the engine and transmission areas have long voiced their need for layered boundary conforming meshes in generally unstructured domains. To be able to have suitable control on the parameters of these layered meshes is a key requirement. Another need has been transitioning meshes, well-adapted to surface curvature. User control, especially in the boundary layers is also a key to these analyses. Although most of the body-inwhite analyses are done using quad meshes, triangular meshes are used to simulate load data and property fields. In the present paper, an effort is made to create a new hybrid triangular mesher in 2D that combines two mutually complimentary aspects of unstructured meshing. One of them is a recursive subdivision algorithm. The other is a new advancing loop front (ALF) method. The original recursive subdivision algorithm TriQuaMesh, reported more than two decades back by Sluiter and Hansen [8] emphasizes on a recursive contour or loop-splitting algorithm that produces reasonably good quality triangular meshes. An industrial version of the algorithm has been improvised in the I-DEAS software that has had more than a quartercentury long industrial mileage. However, this technique does not create boundary conforming triangular meshes like advancing front methods. Advancing front methods, on the other hand, do not adapt to large size transitions
Fig. 1: A mesh area with 3 loops. All loops boundaries have been meshed with the ALF algorithm.
29
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
2. 3.
Fig. 2: The resulting newer loops are connected into a continuous contour.
4. 5. 6.
Fig. 3: The remaining mesh area represented by the connected compound contour that will be filled by the subdivision algorithm.
Fig. 4: Best split lines are evaluated for the continuous contour and each subsequent sub-contour. The procedure is recursively repeated until the area is filled with triangles.
7.
8.
The N meshed loops represent the area boundary and are unique and non-intersecting; While loops are non-intersecting, { 3a. Cycle all N loops, inner loops first, the outer loop last { 3aa. Activate the ALF algorithm on the ith loop 3ab. Check if the new loop self-intersects. If it does, turn off the loop-front mesher for this loop and go to 3ac. 3ac. Continue the cycle, go to the next loop } } Connect all N loops into a continuous contour M Activate the subdivision algorithm While the compound contour is not completely filled { 6a. Get the best splitting line A that makes an angle close to 60 degree with the contour. The splitting line divides the contour into a sub-contour on the left (Cl ) and one on the right(Cr). 6b. while the left sub-contour Cl is unfilled { Repeat step 6a } 6c. while the right sub-contour Cr stays unfilled { Repeat step 6a } } Cycle all nodes that have a nodal valency, if Vi ≠ 6 { 7a. Swap edges of triangles so as to reduce the valency gradient ||(Vi – 6)|| 7b. Stop iterations when no edge swap has happened in the last iteration } The 2D mesh is smoothed using a variational smoother [17].
3.1. Controlling Hybridity Fig. 5: Final hybrid mesh after clean-up and smoothing. This mesh was driven by a background sizing function or size map.
This new CSALF-T algorithm is genetically hybrid in the sense that it represents a symbiotic and synergistic coalescence of two distinctly different algorithmic paradigms. It yields meshes that combine the characteristics of a boundary conforming ALF algorithm and a self-segmenting subdivision technique producing high-quality sizing-sensitive meshes. The grade of hybridity, however, can be user-controlled. This property adds the flexibility necessary to obtain both locally and globally desired mesh quality for any given mesh area. Fig. 7 shows a mesh produced by the hybrid algorithm with a single boundary layer. In Fig. 8, the layers have been doubled, while Fig. 9, depicts a full-grown hybrid mesh, where each boundary loop has been grown with the ALF meshing technique to the point when the new resultant loops begin intersecting within a tolerance, δ = 2Sli , where Sli denotes the average loop front size for loop i.
Fig. 6: Same mesh area meshed with a pure subdivision technique. This mesh was driven by the same background sizing function.
The overall CSALF-T algorithmic logic can be expressed as follows: 1. A mesh area is defined in a 2D domain with N meshed loops 30
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
“visited” segment as it represents a trailing edge, or the real segment of the previous loop-front. Virtual
segment Real
segment Fig. 10: A typical ALF
Fig. 7: Hybrid mesh with a single boundary conforming layer
The virtual segment helps advancing the loop front. The angle, θ, between the real and virtual segments of the loop front is used to characterize the loop front. Table 1 lists the various loop fronts supported by the algorithm. Q denotes the new point that is created upstream of the loop-front, P denotes the point downstream of the loop-front that mostly pre-exists (created in certain special cases). For a flat front, all additional new points R, S and T are created between P and Q.
Fig. 8: Hybrid mesh with two boundary conforming layers
4.1. New Point Placement When a loop-front is advanced, the new or optimal point placement depends on the type of the loop-front. For an obtuse loop-front, the position of the new point Q can be expressed as: rQ = rB + Vt g
Where rB is the position vector of point B. Vt is the bisector of angle ABC and grading, g, is assumed to be the harmonic mean of the sizes of the real segment points:
Fig. 9: A full-fledged hybrid mesh where boundary layers are grown until they begin to collide.
g = 2 g B g C /( g B + g C )
3.2. Controlling Layer Growth
(3)
Where gA, gB, gC are the grading values at points A, B & C. For a perfectly flat front the position of the optimal point Q can be expressed as:
An important and attractive feature of the present algorithm is that the user could optionally control the growth pattern of the boundary conforming layers. Structural analysis of automotive engine blocks or similar chunky components with an abundance of cylindrical holes very often needs structured meshes around those boundaries. A localized grading function could be defined to control layer growth as: g i = Fg i−1
(2)
rQ = 0.5(rB + rC ) N AB / 2 g
(4)
Where NAB/2 denotes the normal vector at the mid-point of the real segment of the loop-front (and thus is also the bisector of angle ABC) and the grading, g, is defined as before. The grading at the new interior point Q is discussed in Section 5.3. Each new point is tested for proximity with its immediate neighbors in an attempt to avoid creating thin, nearly-squished triangles as illustrated in Fig. 11(a). The decision to merge points P and Q and eliminate the thin triangle PBQ depends on mean quality score of the resulting elements in comparison to the original set.
(1)
Where gi is the average grading of the i-th layer, gi-1, the average grading at the previous (i-1) layer and F is the growth function.
4. Advancing Loop Front Algorithm The ALF approach differs from traditional advancing fronts in the sense that a series of “loop fronts” are considered for mesh advancement. When all loop fronts of a loop are advanced successfully, a new loop results that imitates and preserves the profile of the starting loop. This results in a perfectly layered mesh near inner and outer boundaries of the mesh area – a feature which is often preferred by structural and computational fluid dynamics analysts. Each loop front as shown in Fig. 10 consists of a real segment BC which is advanced, and a virtual segment AB (represented by the previous element edge on the loop). The virtual segment is always a
P
Q
A
P,Q A
B
B C
C
Fig. 11(a): Point P and Q are close squishing filler element PBQ. P and Q are merged, triangle PBQ is removed.
31
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37 Table 1: Loop front models and advancement rules
Loop front type
Loop front description
No. of new points
New element
No. of filler elements
Acute Loop Front 70 ≥ θ
None
∆ABC
None
Obtuse Loop Front 70 < θ ≤ 140
None. New point Q and previous loop font point P must coincide. Point P is overwritten.
∆PBC
None
1 -Pt Q
∆QBC
1, ∆PBQ
2-Pts, Q & R
∆QBC
2, ∆PBR, ∆RBQ
-
3- Pts, Q, R, S
∆QBC
3, ∆PBS, ∆SBR, ∆RBQ
-
4-Pts Q, R, S, T
∆QBC
4, ∆PBT, ∆TBS, ∆SBR, ∆RBQ
Flat Loop Front 140 < θ ≤ 210
Flat Loop Front 210 < θ ≤ 270
Flat Loop Front 270 < θ ≤ 300 Flat Loop Front 300 < θ ≤ 360
4.2. Filler Elements A characteristic of loop-front advancement is that while the real segment of the loop-front advances, the pockets between the loop-fronts are continuously filled by “filler elements”. Fig. 11(b) depicts how a set of zig-zag advancing fronts result when a loop boundary is traditionally advanced. Fig. 11(c) shows the result of an ALF. The shaded pockets represent the filler elements that are backfilled while a loop-front advances. Filler elements constitute an important advantage of the ALF over traditional advancing front in the sense that a single pass of advancement over a loop leads to a new loop that replicates the shape of the original loop. Simultaneously, all elements formed during this pass, represent the advanced “layer”.
Filler elements
Fig. 11(c): Loop-front advancement showing the filler elements
4.3. Loop Closure Loop closing is a delicate affair. Exceptions need to be made to the forward creation theorems (as illustrated and explained in Table 1) for the various loop-fronts in this case. Table 2 lists the various stencils used for each-pair of loop-front types. The terminal loop front is represented by ABC while the first loop-front is BCE. Pt D represents the first new advancing point of the loop. Pt Q denotes the last new advancing point which, at the time of loop closure, has already been created. To close the loop, 1 or 2 terminal elements need to be created based on the pairing type.
Fig. 11(b): Traditional advancing fronts generated around a loop
32
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37 Table 2: Loop front closure stencils
Last Front (ABC)
First Front (BCE) Acute
Elements to create None
Obtuse
∆ ABC Points A and D (first new point of the first front) are merged.
Description Not applicable
A,D E
Pt A ≡ Pt D
Acute
B
C A
∆ ABC
D
Flat Pt A ≡ Pt P of the first loop-front.
Acute
B C E FIRST FRONT
Q
∆ QBD / ∆s QBC & QCD If the combined quality of ∆s QBC & QCD > ∆s QBD & DBC, the latter pair results
D,E
A
B
A Obtuse
C
D Q
∆ QBC
E
Obtuse Pt Q ≡ Pt D (merged)
B
C Q
D,E
∆ PBC Flat Pt P ≡ Pt Q
A
B
C D,E
Q ∆ QBD Acute
Pt D ≡ Pt E Pt Q ≡ Pt P for last loop-front ABC
A
B
Q
Flat
C D
∆s QBD & DBC
E
Obtuse
Flat
A Q,
B
A
B
C D
P
∆s QBP & PBC C
E
5.1. Connecting Loops
5. Subdivision Algorithm
In order to connect all loops to a single continuous loop, a Cartesian grid of the global element size is constructed in the background. Given a mesh area with n loops, these cells are used to identify a pair of nodes representing the shortest distance between outer loop lo and any inner loop li along a line whose optimum angular deviation φ (discussed in Section 5.2) is minimum . The connecting line is checked for intersection with any other loops. Once this connection is made the problem now is reduced to one connecting n-1 loops. The process is repeated until it a single continuous loop results.
The recursive subdivision algorithm consists of the following steps: 1. Join all loops into a single continuous loop 2. Recursively split the continuous loop by a bestsplit-line 3. Determine the best split line 4. Estimate the number of nodes to be generated on the split line 5. Space the nodes on the split line 6. Go to step 3 until mesh is done. 33
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
To evaluate the grading at any interior point i(x, y), its owner triangle j in the background mesh is identified by a space hashing mechanism. The grading at point i is thus expressed in terms of the field values at the vertices of triangle j as:
5.2. Selecting the Best Split Line The split line functional Φ for a split line joining boundary nodes j and k, is expressed as a linear combination of normalized parameters, L, φ and ε using: Φ = A1 L + A2 ϕ + A3 ε
(5)
3
g i ( x, y ) = ∑ N k g jk ( x, y )
The normalized length parameter L is given by L = ljk/ld; ljk is the length of the split line jk (as shown in Fig. 12(b)), ld is the characteristic length, which is the diagonal of the rectangular box bounding the mesh area B ≡ [(xmin,ymin) , (xmax, ymax)] and given by: l d2
2
= ( x max − x min ) + ( y max − y min )
2
gjk (x, y) denote the grading at the vertices of triangle j Nk represent the shape functions of triangle j.
5.4. Split line Discretization Split line discretization is extremely critical to the ability of the mesh to adapt to a given size field. The first step is to determine the number of nodes n, to be generated on the split line. In order to determine this, a set of s sample points is first created on the split line with an uniform spacing. s is calculated as:
(6)
The normalized split angle φ is expressed as the normalized sum of the deviations of the 4 split angles (shown in Fig. 12(b)) from the ideal triangular angle π/3: 4
∑ ϕi − π / 3
ϕ=
i =1
s = l jk ( g j + g k ) / 2 g j g k − 1
(7)
2π
(10)
k =1
(11)
The grading values at these s sample points are determined from eqn. (10). The grading distribution along the split line is assumed to be an s+2-polynomial variation of the natural line coordinate ξ as:
The percentage of length error ε resulting from fitting n nodes on the split line based on the grading values of sample points is discussed elsewhere [10] in details. The minimum value of the split line functional gives the best split line. However, many of the split line candidates in a concave loop are invalid as they fall outside the domain (as shown in Fig. 12(a)). A boundary visibility criterion is set up to eliminate these invalid candidates.
gi (ξ ) = 1 + C1ξ i + C2ξ i2 + C3ξ i3 + ... + Cs + 2ξ is + 2
(12)
Substituting the grading values at these s+2 interior sample points, the simultaneous equation family (13) is solved to determine the coefficients C1,C2,...Cs+2. For computational efficiency, the grading function could be limited to a quintic order, i.e. s < 4 using: g1 = 1 + C1ξ1 + C2ξ12 + C3ξ13 + ... + Cs + 2ξ1s + 2 g 2 = 1 + C1ξ 2 + C2ξ 22 + C3ξ 23 + ... + Cs + 2ξ 2s + 2
Split line JK
...
(13)
g s + 2 = 1 + C1ξ s + 2 + C2ξ s2+ 2 + C3ξ s3+ 2 + ... + Csξ ss++22
The number of nodes n to be generated on the split line jk is estimated as:
Fig. 12(a): An invalid split line JK joining nodes j and k of the single continuous loop.
1
n = l jk / g1 , where, g1 = ∫ gξ dξ
Based on experience with a large range of mesh areas, a range for the constants are heuristically determined as: A1 = 0.43-0.5, A2 = 0.28-0.32, and A3 = 0.18-0.23. (8) k
In the natural or parametric coordinates of the split line these n nodes will be equally spaced. The location of the i-th node on the split line can be expressed in terms of its grading value gi, coordinates of the previous point p on the same line, and the coordinates of the two end nodes j and k. The following pair of equations need to be solved to evaluate the location of node i. The split line functional Φ for a split line joining boundary nodes j and k, is expressed as a linear combination of normalized parameters, L, φ and ε as:
Valid split line jk
φ3 φ4 φ1
(14)
ξ =0
φ2
j
xi2 (1 + m 2 ) + 2 xi [ x p + m(c − y p )] + x 2p + (c − y p ) 2 + gi2 = 0
Fig. 12(b): A valid split line joining nodes j and k.
5.3. Sizing Function
(15)
and the equation of the split line is:
The size or grading of the mesh at any interior node is evaluated from the size field represented by the background mesh as: g = Γ ( x, y ) . (9)
yi = mxi + c
(16)
Where the slope and intercept of the split line are: m = ( yk − y j ) /( xk − x j ) c = ( xk y j − x j yk ) /( xk − x j )
34
(17)
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
domain and meshed with a constant size. The subdivision algorithm produces a fairly decent mesh with a gross quality measure of Фm = 0.975. Fig. 13(b) depicts the hybrid mesh on the same part, transformed to the 3D surface from 2D. It is important to note (as highlighted in Fig. 13(c)) that most interior cut-outs and as well as the exterior boundary loops have several layers of structured high quality triangles in their vicinity. Some of the smaller holes towards the tail end do not exhibit the same property as they are too close to each other. The overall quality of this mesh is Фm = 0.985, about 7% higher than the subdivision mesh. The local mesh quality near the cut-outs is even higher.
6. Mesh Quality A minor cleaning operation is done on the mesh using edge swapping. The ideal nodal valency in a triangular mesh is 6. All nodes are marked that are non-hexavalent. A valency gradient functional for a mesh with n interior nodes can be defined as: n
V = ∑ Vi − 6
(18)
i
Edge-swapping is attempted amongst the elements connected to all non-hexavalent nodes in an iterative manner so as to minimize the valency gradient functional V. Finally, variational smoothing [17] is performed on the resulting mesh. The variational smoother employs different mesh smoothing algorithms on each node based on its valency and connectivity pattern. In case of an all triangular mesh, it mostly combines a few modified length-weighted Laplacian schemes. One of them is based on the in-center of the connected triangles. The governing equation for variational smoothing can be expressed as: n
Pi' = ∑ F j (c, V ) * Ω j (c, V )
(19)
j =1
where Pi ' is new position of node i, Fj and Ωj are the variational weight factor and the positional function for j-th element respectively. c denotes the connectivity pattern of the node, while V indicates its valency. Important node merging and/or loop closure template selection decisions are made based on the mean element quality of the mesh. A mesh quality number Ф for each triangle is determined using a popular relation proposed by Tristano et. al [18]. This number varies between 0.0 (worst) and 1.0 (perfect). The mean quality number Фm for the mesh with n elements is expressed as a geometric mean of the mesh quality numbers of individual elements in the mesh using:
Fig. 13(a): Subdivision mesh on a reinforced body panel. Mesh patterns do not conform to the interior cut-outs. Фm = 0.975
1/ n
n Φm = ∏Φi (20) i=1 This mean mesh quality number also varies between 0.0 and 1.0.
7. Results Three problems have been discussed in this section. Each one of these mesh areas represent a flattened 3D surface in 2D space. The mesh generated by the new hybrid algorithm is compared to a traditional (I-DEAS) recursive subdivision mesh. The second example shows the ability of the hybrid mesher to treat heavily transitioning meshes with boundary conformity. Comparisons are made to results produced by subdivision and traditional advancing front methods. The third example elucidates how layer growth around inner boundaries can be optionally controlled by the user.
7.1. Comparison with Subdivision Meshes Figs. 13(a)-(c) illustrate the characteristics of the hybrid algorithm in comparison with the recursive subdivision algorithms of Sluiter-Hansen family [8-10]. An automotive body panel shown below, with a stereo lithographic (STL) representation, is flattened into a 2D
Fig. 13(b): Hybrid mesh on the reinforced body panel. Most interior boundaries show layered high-quality ALF meshes in their neighbourhood. Фm = 0.982
35
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
Fig. 14(a): A flattened bracket in 2D meshed by the subdivision algorithm. The size map, driving the transitioning 2D mesh, is based on surface curvature. Фm = 0.991
Fig. 13(c): A close-up of the interior cut-outs showing layered structured meshes generated by the ALF algorithm.
7.2. Ability to Create Sharply Transitioning Hybrid Meshes The hybrid mesher has an ability to create meshes that are driven by a background sizing function or size map that has steep size gradients. Figs. 14(a)-(d) illustrate an example where a bracket (STL representation) is flattened into 2D space and meshed with several algorithms. Each mesh is driven by a background size map that represents the surface curvature field. Fig. 14(a) shows the result of a Sluiter-Hansen family subdivision mesh. The dense narrow bands denote two 90 degree bends of the bracket as shown in Fig. 14(d). The triangular mesh adapts to the surface curvature quite elegantly and has a high gross mesh quality number of Фm = 0.991. However, the cut-outs, represented by the circular inner loops, which are the potential high-stress areas, have unstructured relatively poor quality local meshes in their neighborhood. This is a common complaint from the structural analyst. Fig. 14(b) shows a traditional advancing front mesh on the same mesh area. This mesh a gross mesh quality number of Фm = 0.987. The mesh in the vicinity of the cut-outs is relatively improved. A single layer of uniform equilateral triangles can be observed around the holes. However, as expected, in the high size transition areas, the mesh is not high-precision. The bands representing the bends in the bracket are not as sharp and crisp as they are in the subdivision mesh, Fig.14 (a). Fig. 14(c) shows the result of the hybrid mesher. It can be clearly seen that while the mesh adapts to the high curvature regions of the bracket as effectively as the subdivision algorithm, around the inner loops or holes, it also tends to build 2-3 layers of locally structured high-quality triangular meshes. The complementary strengths of the two algorithms seem to co-exist in the mesh shown in Fig. 14(c). The same mesh is transformed to 3D space and sown in Fig. 14(d). This mesh has a gross mesh quality number of Фm = 0.992.
Fig. 14(b): An advancing front mesh on the same area constructed with an internal advancing front mesher. Фm = 0.987.
Fig. 14(c): Same area meshed with the new hybrid mesher. Фm = 0.992
36
N. Mukherjee. 2010. Int. J. Vehicle Structures & Systems, 2(1), 28-37
ACKNOWLEDGEMENTS: The author expresses his sincere thanks to the Digital Simulation division of Siemens Industry, who sponsored this investigation. He thanks his colleague Jean Cabello for his constant encouragement. REFERENCES: [1] S.J. Owen. 1998. A survey of unstructured mesh generation technology, Proc. 7th Int. Meshing Roundtable, 239-267. [2] P.J. Frey and P.L. George. 2000. Mesh Generation, Hermes Science, UK. [3] D.L. Marcum. 1998. Advancing-front/local-reconnection unstructured grid generation, Computational Fluid Dynamics Review, 140. [4] R. Lohner. 1996. Progress in grid generation via the advancing front technique, Engg. With Computers, 12, 186-210. [5] S.H. Lo. 1991. Volume discretization into tetrahedra – II. 3D triangulation by advancing front approach, Computers & Structures, 39(5), 501-511. [6] S. Pirzadeh. 1993. Unstructured viscous grid generation by advancing-layers method, AIAA J., 420-434. [7] J. Peraire, J. Peiro, L. Formaggia, K. Morgan, and O.C. Zienkiewicz. 1988. Finite element Euler computations in three dimensions, Int. J. Num. Methods in Engg., 26, 2135-2159.
Fig. 14(d): 2D Hybrid mesh (see Fig. 14(c)) transformed to 3D
7.3. Ability to Control Layer Growth Figs. 15(a) and (b) exemplify how mesh layer growth around loops can be user controlled. The layer growth factor in this case, is part of the auxiliary mesh definition and is fed by the user. The outer loop of mesh area is advanced with a constant size, while the inner loop is grown from a denser discretization to the global size by a ramp function.
[8] M.L. Sluiter and D.L. Hansen. 1982. A general purpose automatic mesh generator for shell and solid finite elements, ASME Computers in Engg., 29-34. [9] L.H.Th.M. S. Van Buekering, and M.L.C. Sluiter. 1978. TRIQUAMESH User’s Guide, Report WE 78-01, Eindhoven University of Technology, Netherlands. [10] J.A. Talbert and A.R. Parkinson. 1991. Development of an automatic, two-dimensional finite element mesh generator using quadrilateral elements and bezier curve boundary definitions, Int. J. Num. Methods in Engg., 29, 1551-1567. [11] J. Sarrate and A. Huerta. 2000. Efficient unstructured quadrilateral mesh generation self-organizing mesh generation program, Int. J. Num. Methods in Engg., 49, 1327-1350. [12] A.A. Mezentsev, A. Munjiza, and J.P. Latham. 2005. Unstructured computational meshes for subdivision geometry of scanned geological objects, Proc. 14th Int. Meshing Roundtable, 73-89. [13] D. Berzin, N. Kojekine, and I. Hagiwara. 2001. Finite element mesh generation using subdivision technique, Nihon Kikai Gakkai Sekkei Kogaku, 11, 207-210. [14] B. Joe. 1995. Quadrilateral mesh generation in polygonal regions, Computer Aided Design, 27, 209-222. [15] D. Nowottny. 1997. Quadrilateral mesh generation via geometrically optimized domain decomposition, Proc. 6th Int. Meshing Roundtable, 309-320. [16] J. Cabello. 2003. Towards Quality Surface Meshing, Proc. 12th Int. Meshing Roundtable, 201-213. [17] N. Mukherjee. 2002. A hybrid variational 3D smoother for orphaned shell meshes, Proc., 11th Int. Meshing Roundtable, 379-390. [18] J.R. Tristano, S.J. Owen, and S.A. Cannan. 1998. Advancing front surface mesh generation in parametric space using a Riemannian surface definition, Proc. 7th Int. Meshing Roundtable, 429-445.
Fig. 15(a): Unsmoothed hybrid mesh.
Fig. 15(b): Detail showing how layers around the inner loop have been grown outward following a ramp function.
8. Conclusion This paper proposes a hybrid triangular meshing algorithm for 2D domains. The proposed algorithm combines a modified version of Sluiter and Hansen’s [8] recursive subdivision technique with an ALF method. The ALF approach is an improvisation of the traditional advancing front methodology designed especially for closed loops. The new hybrid algorithm is robust, graciously adapts to a variable size map and produces high quality triangular meshes that are boundary conforming. Over and above, it allows users to control layer growth. Examples illustrated prove the merits of the hybrid mesher. 37