1 / 84

New results on mesh refinement

Explore new results in mesh refinement for CAD models, Navier-Stokes equations, and heat transfer simulations. Find out about the importance of aspect ratio, good grading, and quality triangulation in mesh generation techniques like Delaunay refinement. Discover how to achieve optimal mesh quality and runtime efficiency with various algorithms like quadtree refinement and Ruppert's method. Join Benoît Hudson, Gary Miller, and Todd Phillips in advancing the field of meshing technology. Papers available at http://www.cs.cmu.edu/~bhudson.

Download Presentation

New results on mesh refinement

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. New results onmesh refinement Benoît Hudson, CMU Joint work with Gary Miller and Todd Phillips Papers available at http://www.cs.cmu.edu/~bhudson

  2. CAD model

  3. Will it work?

  4. Equations Navier-Stokes: Heat transfer:

  5. Mesh Weak form Solve Visualize Run simulations! Partial Diff. Eqs. CAD model

  6. Input Points Segments Polygons

  7. Input Points Segments Polygons ‘P’ courtesy of Shewchuk

  8. Output ‘P’ courtesy of Shewchuk

  9. Simpler Input

  10. Two possible meshes

  11. Which is better? Example: f(x,y) = 1-x2

  12. 0 0 1 0 0 1 0 0 1 0 0 This is a bad mesh f(x,y) = 1-x2 At mesh vertices: • read the value At other points p: • Find t that contains p • Weighted average of points of t

  13. Still bad at boundary f(x,y) = 1-x2 At mesh vertices: • read the value At other points p: • Find t that contains p • Weighted average of points of t This is a better mesh 0 0 1 0 0 1 0 0 1 0 0

  14. Good aspect ratio Þ good interpolation R Good aspect ratio if: r Equivalent: all angles ³a

  15. Aspect ratio Bad aspect ratio if: R r Equivalent: some angle <a

  16. Still bad at boundary This is a better mesh 0 0 1 This mesh is Delaunay: best possible for those points 0 0 1 0 0 1 0 0

  17. This is a good mesh Add Steiner points

  18. This is a good mesh 0 0 0 0

  19. Formal problem • Input: • Piecewise Linear Complex (PLC) • points, segments, polygons, … • quality bound: angle ³a • Output: • quality triangulation (angle ³a) • all features appear (perhaps subdivided) • O(mopt) vertices

  20. Good aspect ratio Þ bounded degree Big features Big triangles Small feature Small triangles Grade linearly away from small feature Grading Good aspect ratio Þ good grading

  21. Outline • Two older methods • quadtree refinement • Delaunay refinement • Our algorithm: SVR as a hybrid • Parallel SVR Dynamic meshing: too much for this talk. See me afterwards.

  22. Older Solutions • 1950-now: construct mesh by hand! • Takes days to months. • Automatic methods: ca. 1980-now • no quality, size, or time bounds • BEG90: quality and size in O(n lg n + m) (buggy proof, fixed in BET93) • Rup92: smaller in practice, no time bound.

  23. Simpler input Just points for now

  24. Quadtree refinement [BEG90, MV92, BET93] Þ

  25. Quadtree rules • Unbalanced • Neighbor is small Crowded • two points in cell, or • one point in cell, one in neighbour

  26. Quadtree

  27. Quadtree

  28. Quadtree

  29. Quadtree in a word • Quality mesh (17°) • O(mopt) output size • O(n lg n + m) runtime • General approach: top-down (think: binary search tree)

  30. Delaunay Refinement [Rup92, She97]

  31. Add a bounding box

  32. Triangulate (use Delaunay)

  33. Identify skinny triangle

  34. Find circumcenter

  35. Insert, retriangulate

  36. Find more skinny triangles

  37. Find more skinny triangles

  38. Find more skinny triangles

  39. Find more skinny triangles

  40. Find more skinny triangles

  41. Find more skinny triangles

  42. In practice, 35°often works. Ruppert’s algorithm in a word • Quality mesh (any a£ 20.7°) • O(mopt) output size • O(n2+ m) runtime worst case • works fast in practice • General approach: bottom-up

  43. Compare and contrast 69 triangles, 17° 35 triangles, 30°

  44. Ruppert’s algorithm in a word • Quality mesh • O(mopt) output size • smaller than quadtree in practice • O(n2+ m) runtime worst case • works fast in practice • General approach: bottom-up

  45. Restrictions • Ruppert’s algorithm handles segments only at 60° angles to each other. • 3d extensions [She97, MPW02]: segment segment face segment face face Smaller angles may cause infinite loops 60° ~70° 90°

  46. Meshing well, quickly Hudson, Miller, Phillips 2006Sparse Voronoi Refinement15th International Meshing Roundtable

  47. The Goal Ruppert’s small meshes Quadtree’s fast runtime In dimension 3+!

  48. The intuition Quadtree’s fast time: slowly zero in on small features, keep mesh good quality always. Large size: warp to input too late. SVR: always good quality, resolve when necessary Ruppert’s small size: immediately resolve all features. Ruppert’s bad timing: allow horrid mesh quality.

  49. SVR

  50. Add a bounding box

More Related