Stability Aware Delaunay Refinement

Embed Size (px)

Citation preview

  • 7/28/2019 Stability Aware Delaunay Refinement

    1/50

    Stability Aware Delaunay Refinement

    Bishal Acharya

    Department of Computer Science UNLV

    July 11 2013

  • 7/28/2019 Stability Aware Delaunay Refinement

    2/50

    Main Contributions

    Development of efficient algorithms for stable mesh refinement

    Proposing a new technique for reliable mesh refinement

    Propose two algorithms for reliable mesh refinement

    User friendly implementations of refinement algorithms in Java

    Results of experimental investigations

    Original mesh refined mesh

  • 7/28/2019 Stability Aware Delaunay Refinement

    3/50

    Purpose of Mesh Refinement

    Obtain better quality solution in finite element analysisTo remove bad triangles in the mesh

    Offer control over the size of the triangles in the mesh

    Make the mesh more stable

    Initial mesh refined mesh

  • 7/28/2019 Stability Aware Delaunay Refinement

    4/50

    Planar Graph

    A graph that can be drawn in the plane without any intersecting edges A planar straight line graph PSLG is a planar graph with all straight edge

    planar Non planar PSLG

  • 7/28/2019 Stability Aware Delaunay Refinement

    5/50

    What is a Delaunay Triangulation ?

    Triangulation proposed by Borish Delaunay in 1934

    If an empty circle passes through two nodes then that forms Delaunay edge

    The circumcircle of any triangle is empty

    It is a type of planar graph which tries to maximize the minimum angle

    Research on Delaunay triangulation are still actively conducted. [ Fortune 1988Yvinec, Mariett 2010 ]

    Circumscribing circle should be empty Circumcircle of any triangle i

  • 7/28/2019 Stability Aware Delaunay Refinement

    6/50

    Relationship with Voronoi DiagramDelaunay triangulation is the dual of Voronoi diagram

    Overlay of Voronoi Diagram & Delaunay Tr

  • 7/28/2019 Stability Aware Delaunay Refinement

    7/50

    Empty Circle Test

    CircumscribingCircumscribing circle is empty

  • 7/28/2019 Stability Aware Delaunay Refinement

    8/50

    Data Structure for Storing 2D - Mesh(Doubly Connected Edge List)

    Each edge is represented by a pair of half-edgesRecord for half- edge

    Record for nodes

    v1 v2

    v4

    v3

    Planar Graph G Representation in DC

  • 7/28/2019 Stability Aware Delaunay Refinement

    9/50

    Face

    F1

    F2

  • 7/28/2019 Stability Aware Delaunay Refinement

    10/50

    Review of Mesh Refinement

    Refinement by quadrangulation [ 1998 ]Ruppert's Refinement [ 1994 ]

    Chew's Refinement [ 1987 ]

  • 7/28/2019 Stability Aware Delaunay Refinement

    11/50

    Characterizing Skinny Triangles

    Height of a skinny triangle is much longer than its base

    Skinny triangle can either be a Cap or a Needle .One of the goals of mesh refinement is to eliminate the skinny triangles

  • 7/28/2019 Stability Aware Delaunay Refinement

    12/50

    Mesh Refinement By Quadrangulation

    r

    S

    S

    St

    q

  • 7/28/2019 Stability Aware Delaunay Refinement

    13/50

    Center of Gravity Refinement

    Refine by inserting a new point at CG of the triangles in the mesh.

  • 7/28/2019 Stability Aware Delaunay Refinement

    14/50

    Circumcircle Refinement

    Refine by inserting a new point at CC of the triangles in the mesh.

  • 7/28/2019 Stability Aware Delaunay Refinement

    15/50

    Ruppert's Mesh Refinement

    Produces refined mesh with quality triangles

    Input to the algorithm is PSLG

    Two operations for refinement are split an encroached segment at isplit a skinny triangle at its circumcircle

    Terminates for poor quality threshold of over 30 degrees

  • 7/28/2019 Stability Aware Delaunay Refinement

    16/50

    Encroached Segment

    Encroached

    point lies insid

    Encroached segment 2

    point lies inside the circle

  • 7/28/2019 Stability Aware Delaunay Refinement

    17/50

    Segment Split

    Segment to split Mesh after spli

    new point inserted

    at midpoint of theold segment

  • 7/28/2019 Stability Aware Delaunay Refinement

    18/50

  • 7/28/2019 Stability Aware Delaunay Refinement

    19/50

    Ruppert's Algorithm

  • 7/28/2019 Stability Aware Delaunay Refinement

    20/50

    Nontermination of Ruppert's Algorithm1 st ab is encroached by point csplit ab into half by inserting d

    2 nd newly inserted point d encroachesupon segment ac . so, segment ac issplit into half by inserting e

    e

    encroachment and splitcontinues forever.

  • 7/28/2019 Stability Aware Delaunay Refinement

    21/50

    Small Angle Non-termination Solution

  • 7/28/2019 Stability Aware Delaunay Refinement

    22/50

    Ruppert's Mesh Refinement

    refined mesh with angle : 3 area : 0.34

  • 7/28/2019 Stability Aware Delaunay Refinement

    23/50

    Stable Mesh Refinement

    Ruppert's algorithm only focuses on the quality aspect of a mesh

    Insertion of new vertex into the mesh can possibly change the connectivity of edges in the triangulation.

    A stable mesh requires that the insertion of a new node brings about least chanin the connectivity of existing edges of the triangulation.

    We propose two criteria for inserting a new node into the triangulation.

    Two algorithms are presented for stable mesh refinement

  • 7/28/2019 Stability Aware Delaunay Refinement

    24/50

    Stable Node Position

    Initial pos

    Final pos

    Dashed edges are edges before point is moved

    Dotted edges are newly formed edges

  • 7/28/2019 Stability Aware Delaunay Refinement

    25/50

  • 7/28/2019 Stability Aware Delaunay Refinement

    26/50

    Limit Edge & Radial Triangles

    Limit

    radia

  • 7/28/2019 Stability Aware Delaunay Refinement

    27/50

    Radial Roaming Region RR(i)

    radi

    radialregio

  • 7/28/2019 Stability Aware Delaunay Refinement

    28/50

    Lateral Triangles

  • 7/28/2019 Stability Aware Delaunay Refinement

    29/50

    Lateral Roaming Region LR(i)L

    lateral roaming

  • 7/28/2019 Stability Aware Delaunay Refinement

    30/50

    Free Roaming Region R(i)

    radial roamin

    g

    free roaming

  • 7/28/2019 Stability Aware Delaunay Refinement

    31/50

  • 7/28/2019 Stability Aware Delaunay Refinement

    32/50

    CG of a Regular Polygon

  • 7/28/2019 Stability Aware Delaunay Refinement

    33/50

    Proposed Algorithm 1

  • 7/28/2019 Stability Aware Delaunay Refinement

    34/50

    Largest Empty Circle

  • 7/28/2019 Stability Aware Delaunay Refinement

    35/50

    Proposed Algorithm 2

    2

  • 7/28/2019 Stability Aware Delaunay Refinement

    36/50

    Snapshots 1 : Random Points

  • 7/28/2019 Stability Aware Delaunay Refinement

    37/50

    Results & Snapshots 2

    quadra

    1. resua resulskinnyangle itwo.

    2. runs3. origtrianglhas 6k

    4. doesaccoun

  • 7/28/2019 Stability Aware Delaunay Refinement

    38/50

    Results & Snapshots 3

    CG ref

    1. resua resulskinnyregion

    2. runs

    3. If ork trianmesh h

    4. doesaccoun

  • 7/28/2019 Stability Aware Delaunay Refinement

    39/50

    Results & Snapshots 4

    CC ref

    1. skinnot locregion

    2. runs

    3. If ork trianmesh h

    4. doesaccoun

  • 7/28/2019 Stability Aware Delaunay Refinement

    40/50

    Results & Snapshots 5

    Rupperesults

    1. skinremovmesh.

    2. runstime

    3. Numtrianglthe siz

    4. doesaccoun

  • 7/28/2019 Stability Aware Delaunay Refinement

    41/50

    Snapshots 6 : Radial discs & RadialRoaming Region

  • 7/28/2019 Stability Aware Delaunay Refinement

    42/50

    Snapshots 7 : lateral discs & lateralroaming region

  • 7/28/2019 Stability Aware Delaunay Refinement

    43/50

    Snapshots 8 : Free roaming region

    faor

  • 7/28/2019 Stability Aware Delaunay Refinement

    44/50

    Tabulated Results 1

  • 7/28/2019 Stability Aware Delaunay Refinement

    45/50

    Tabulated Results 2

  • 7/28/2019 Stability Aware Delaunay Refinement

    46/50

    Tabulated Results 3

  • 7/28/2019 Stability Aware Delaunay Refinement

    47/50

    Conclusion

    Introduced the concept of free roaming region in mesh refinement

    Proposed polynomial time algorithms for reliable mesh refinement

    Investigated stability in existing mesh refinement algorithms

    Presented results of experimental investigations

  • 7/28/2019 Stability Aware Delaunay Refinement

    48/50

    Future work & extensions

    Generalization of proposed algorithm for exterior nodes

    Reduce time complexity of proposed algorithms

    Get more insight into free region for stable refinement

  • 7/28/2019 Stability Aware Delaunay Refinement

    49/50

    Demo

  • 7/28/2019 Stability Aware Delaunay Refinement

    50/50

    Thank You !

    Questions ?