1 / 136

Technical History of Hex Mesh Generation

Technical History of Hex Mesh Generation. Scott A. Mitchell Sandia National Labs. Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract DE-AC04-94AL85000. Outline. Introduction

blevinso
Télécharger la présentation

Technical History of Hex Mesh Generation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Technical History of Hex Mesh Generation Scott A. Mitchell Sandia National Labs Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company,for the United States Department of Energy under contract DE-AC04-94AL85000.

  2. Outline • Introduction • Relationship Map • Sweep-like techniques • 3d techniques • Synthesis • Where are we now? • Hopes

  3. Introduction

  4. Introduction • What I will cover • What I won’t cover • Why is hex meshing hard

  5. What I will cover • Asked to give technical talk • Unstructed hex meshing algorithms and ideas • Relationships between algorithms • Technical threads from one technique to another • Focus on assembly meshing problems • Multiple interlocking parts • Focus on connectivity problem • 3d Algorithms • A little sweeping

  6. What I won’t cover • Tools, packaging, ease of use… • Nodal positioning for good quality • Bias and sizing control • Except as approach to connectivity problem • I’ll get some names right, but not all, and leave some people out. Sorry, no offense intended.

  7. What I won’t cover • Techniques involving • Mixed elements • Hex-dominant methods • Non-conforming meshes • Overset grids • Primitives and Special algorithms for restricted classes of geometries • Sphere-like assemblies (Hex3d at LANL…) • Air around airplanes, cars,… • CFD block primitives • Medial-axis and Midpoint Subdivision

  8. Why is Hex Meshing Hard? • Connectivity of tet meshing is “easy” • Delaunay triangulations • Given set of points, can connect them up to form triangles, tetrahedra, d-simplices • Empty-sphere property shows you how • Caveats • Good quality is difficult in 3 dimensions • Boundary constraints is difficult in 3 dimensions • Octree (subdivision) techniques • Keep dividing polyhedron until you get simplices • No new points on the boundary are necessary • Advancing front techniques • Remaining space always dividable into tetrahedra

  9. q q ? ? Euler: Why is Hex Meshing Hard? • Quads harder than tris (i.e. even 2d is harder) • Can’t just divide polygons into quads • New points on the boundary may be necessary • In practice, an even number of boundary edges can be divided into quads (with new interior points). • Necessary and sufficient

  10. 3D Approaches • Assume: assembly problem • Fixed boundary mesh • Geometry first • constrained by topology • Topology first • unconstrained • fix-up afterwards • constrained by geometry

  11. Relationship Map • Will refer to these map for context throughout talk

  12. Sweep Relationship Map 2D 1-1 Sweeping / Projection / Rotation (lots) Sweeping Node Placement Strategies M-1 Sweeping (several) 2.5D Good Source Surface Mesh Strategies Cooper Tool M-M Sweeping Inside-out 3d Multi-axis Cooper Tool 2.75D Grafting

  13. samitch: be careful to imply conceptual relationship, not cause and effect of efforts or people 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  14. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  15. Paving/Plastering • ~12 years ago • Blacker, Stephenson, Cass, Benzley • Paving • 2d advancing front • Advance based on geometric criteria • Merge connectivity when fronts collide • Theme: geometry first, connectivity second

  16. Paving Paving • Advancing Front: Begins with front at boundary • Forms rows or single of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  17. Paving Paving • Advancing Front: Begins with front at boundary • Forms rows of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  18. Paving Form new row and check for overlap Paving • Advancing Front: Begins with front at boundary • Forms rows of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  19. Paving Insert “Wedge” Paving • Advancing Front: Begins with front at boundary • Forms rows of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  20. Paving Seams Paving • Advancing Front: Begins with front at boundary • Forms rows of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  21. Paving Close Loops and smooth Paving • Advancing Front: Begins with front at boundary • Forms rows of elements based on front angles • Must have even number of intervals for all-quad mesh (Blacker,92)(Cass,96)

  22. Paving • Interesting / relevant details for later • Single loop: if seaming, keep two resulting loops even ? • Multiple loops? • Finesse by having each loop even at all stage ?

  23. Plastering • ~10 years ago, Blacker, Canann, Stephenson • Paving worked so well, why not try paving in 3d? = Plastering • Start with fixed surface mesh • Add proto-hexes (faces) one by one, conforming to bdy • Seam together nearby points, edges, faces • Build hexes

  24. Plastering • Kind of worked • Could fill up most of space

  25. Plastering • Difficulties • Advancing fronts rarely seemed to close • Seams and Wedges (knives) Blacker et al. Remove from front for now Drive or collapse later • Ted Blacker to Pete Murdoch • Find some way of closing up remaining region

  26. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  27. Plastering as hex dominant • Years later • Knives are ok finite elements, as are pyramids • Leave knives in? • vaporware • Hex-tet interface, fill remaining void with pyramids and tets • Geode transition template • Developed but not used • We’ll leave this thread and come back to it later • Ted Blacker to Pete Murdoch (Meyers, Stephenson, Benzley) • Find some way of closing up remaining region

  28. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  29. STC Dual Structure Rediscovered for Engr. • Dual of tri / tet mesh • is just the dual! • Dual of quad / hex mesh • is structure of arrangement of curves or surfaces • Murdoch, 16 September 1993

  30. STC Dual Structure Rediscovered • Rediscovered a couple of times • Physicists: divide high-dimensional space into cubes to study relativity • A.B. Zamalodchikov: Tetrahedron equations and the relativistic S-matrix of straight strings in 2+1 dimensions, Comm. Math. Phys. 79, 489-505 (1981) • Mathematics: arrangements • B. Grünbaum: Arrangements and Spreads, Reg. Conf. Ser. in Math. no 10, Amer. Math Soc. (1972) • Topology: geometric • I. R. Aitchison, J. H. Rubinstein: An introduction to polyhedral metrics of nonpositive curvature on 3-manifolds, Geometry of manifolds, ed S Donaldson and C Thomas, Cambridge Univ. Press 1990

  31. Plastering’s downfall • Seaming and connecting together based on geometry won’t create this nice structure.

  32. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  33. Murdoch’s thesis (1995) • “The Spatial Twist Continuum (S.T.C.) is a dual representation of the hexahedral mesh. The S.T.C. method of representing a mesh inherently captures the global connectivity constraint of all hexahedral meshes and thereby allows the construction of the mesh in a robust ordered or random manner” • Ideas • Geometric curvature and continuity of twist planes • Envision mostly regular arrangement, with careful attention paid to few places of irregular connectivity, and how to combine them together

  34. Murdoch’s vaporware STC fold algorithm • “…a valid hexahedral mesh will have a valid S.T.C., the question is then whether to create the S.T.C. first or use it as a tool to guide the internal mesh connectivity” • Suggested creating surface and volume mesh simultaneously by inserting geometric twist planes one by one, guided by desired mesh density functions • Seemed hard • Could you do that for an assembly? Or just single volume? • How to define geometry of twist-planes? • How to ensure dual of surface mesh captured the topology of the model? Compare to octree, inside out method by Schneiders (which hadn’t been done yet): ½ time spent on surface isomorphism!

  35. Murdoch’s vaporware STC fold algorithm • To my knowledge, no serious investment in simultaneous surface and volume approach. They all create the surface mesh, then try to get the volume mesh • If it worked for fixed surface mesh, it would solve the assembly problem • Refinement and coarsening, mesh improvement, flipping, sheet pushing = after initial arrangement, mostly topology • Ostenson’s idea • Thuston’s minimal energy surface (soap bubble) idea to define geometry • Get a good surface mesh – visit later • Shepherd’s splicing • Mattias Muller-Hanneman • WW surface mesh fixup • WW add geode templates • Surface mesh first, then volume, turned out to be hard, too!

  36. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  37. Whisker Weaving State List • Instead of Plastering hexes, • With so much structure capturing these implicit constraints, why not start with the STC, then dualize to get hexes? • Blacker, Tautges, Mitchell

  38. Whisker Weaving State List Ideas • Main ideas of state list Whisker Weaving • Start with fixed surface mesh • This defines “boundary loops” of the sheets = twist-planes purple green red blue

  39. Whisker Weaving State List Ideas • Add dual of hex (STC vertex) from bdy inward, one at a time • Compare to plastering… • Each sheet is 2d: did we reduce this 3d problem to a set of 2d problems? I think not…although it is easier to understand and visualize than free-floating primal edges. crossing = weaving

  40. Whisker Weaving State List Ideas • Now it’s different than Plastering • Try to get good local connectivity • Connectivity Rules about where to add, when to seam, … • Easily identify seaming = joining cases • Rarely join two loops together • Keep sheets as disk • Hmm, knives=wedges sometimes show up at the end of chords where loops self-intersect…try tracing a knife • Geometric rules: consider geometric dihedral angles of faces near surface mesh, no flat hexes • Heroic effort by Tautges to build rules for good all-hexes and close the weave • In practice, often unclosed region left-over, like Plastering • In practice, very complicated sheets

  41. edge w/ 10 hexes WW complicated sheets • One or two sheets going through • most of the surface quads • Related to expected connectivity • of random graphs on lattice? • Red = knives (wedges)

  42. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  43. Schneiders Open Problem • Can anyone create an all-hex mesh conforming to the following surface mesh? • http://www-users.informatik.rwth-aachen.de/~roberts/open.html • He didn’t really say why you’d want to. But, if you could, then for any model, you could Plaster a while, add these, fill with tets, then divide into all-hex mesh. • Are there “bad” surface meshes that aren’t fillable?

  44. 3D Relationship Map Paving/Plastering THEX STC dual structure rediscovered discovery Hex-to-void Schneider’s open problem Existence Proofs Slicing doughnuts Dual cycle Elimination & Shelling Whisker Weavingcurve contraction Dual- Particle Methods Whisker Weavingstate list construction STC folds Recursive bisection Linear-size geometry first topology first THEX Sweep-like techniques Geode ? Hex dominant? Refinement andcoarsening Local reconnection and smoothing Flipping, (planar faces) Inside-out techniques clean-up Geode betweenshells Prepare the boundary mesh:splicing

  45. Existence Proofs • Parallel thread, unknown at the time to Murdoch, Blacker, Mitchell • Mac Casel, of PDA, posting to sci-math: • Under what conditions can you hex-mesh a polyhedron without modifying its boundary? • Bill Thurston (world’s best topologist) • 25 Oct 1993, 39 days after Murdoch rediscovered the STC, knew about “STC” all along, answers in 1 ½ pages: • If the dual curves (loops) intersect an even number of times, then there is a topological hex mesh • “As for the geometric question: My first guess is it can be done geometrically if it can be done topologically, but it looks very tricky…. Which question are you really trying to answer?”

  46. Existence Proofs • Mitchell’s proof, very similar to Thurston’s outline, a couple years later (mid 1995) • Map surface mesh to a sphere (smooth) • Form STC loops – smooth closed curves • Extend loops into closed surfaces • Fix arrangement of surfaces to avoid degenerate elements • Dualize to form hexes • Map back to original object.

  47. Necessary Conditions

  48. Aside: What about tet meshing? • Tet’s have 4 (even) triangles, so all tet meshes are bounded by an even number of tets, too! • But triangle’s have 3 (odd) edges, so any triangle surface mesh has same parity of triangles as bounding edges • Any triangle mesh of a closed volume is even 1,3 2,4 Any triangle mesh of top has same parity as any triangle mesh of bottom. Hence sum is even

  49. Sufficient Conditions • Every pair of loops on sphere intersect each other even number of times • A single loop can self-intersect an even or odd number of times • Recall trouble with knives and self-intersecting loops…

  50. Sufficient Conditions • Topology theorems • For any single curve with even # self-intersections, can construct a surface • For any pair of curves with odd # self-intersections, can construct a surface • (Proof is constructive: rumor that non-constructive is false)

More Related