Joaquim Bento - PowerPoint PPT Presentation

1 / 143
About This Presentation
Title:

Joaquim Bento

Description:

Define intial bounding box (root of quadtree) ... Cubit, Sandia National Labs. Gambit, Fluent Inc. Sweeping. Unstructured Hex. Tetrahedra splitting ... – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 144
Provided by: sjo72
Category:
Tags: bento | cubit | joaquim

less

Transcript and Presenter's Notes

Title: Joaquim Bento


1
A Brief Survey on Mesh Generation
  • Joaquim Bento
  • CAVALCANTE-NETO

Computer Graphics, Virtual Reality and Animation
Group www.crab.ufc.br

Federal University of Ceará www.ufc.br
2
Summary
  • Meshing Algorithms
  • Tri/Tet Methods
  • Quad/Hex Methods
  • Hybrid Methods
  • Mesh Post Processing
  • Smoothing
  • Topology Improvement

3
Meshing Algorithms(Owen, 2003)
4
Tri/Tet Methods
Octree Advancing Front Delaunay
5
Octree/Quadtree
  • Define intial bounding box (root of quadtree)
  • Recursively break into 4 leaves per root to
    resolve geometry
  • Find intersections of leaves with geometry
    boundary
  • Mesh each leaf using corners, side nodes and
    intersections with geometry
  • Delete Outside
  • (Yerry and Shephard, 84), (Shepherd and Georges,
    91)

6
Octree/Quadtree
QMG, Cornell University
7
Octree/Quadtree
QMG, Cornell University
8
Advancing Front
  • Begin with boundary mesh - define as initial
    front
  • For each edge (face) on front, locate ideal node
    C based on front AB

9
Advancing Front
D
A
B
  • Determine if any other nodes on current front are
    within search radius r of ideal location C
    (Choose D instead of C)

10
Advancing Front
D
  • Book-Keeping New front edges added and deleted
    from front as triangles are formed
  • Continue until no front edges remain on front

11
Advancing Front
  • Book-Keeping New front edges added and deleted
    from front as triangles are formed
  • Continue until no front edges remain on front

12
Advancing Front
  • Book-Keeping New front edges added and deleted
    from front as triangles are formed
  • Continue until no front edges remain on front

13
Advancing Front
  • Book-Keeping New front edges added and deleted
    from front as triangles are formed
  • Continue until no front edges remain on front

14
Advancing Front
r
C
A
B
  • Where multiple choices are available, use best
    quality (closest shape to equilateral)
  • Reject any that would intersect existing front
  • Reject any inverted triangles (AB X AC gt 0)
  • (Lohner,8896)(Lo,91)

15
Delaunay
Empty Circle (Sphere) Property No other vertex
is contained within the circumcircle
(circumsphere) of any triangle (tetrahedron)
16
Delaunay
Delaunay Triangulation Obeys empty-circle
(sphere) property
17
Delaunay
Non-Delaunay Triangulation
18
Delaunay
X
  • Lawson Algorithm
  • Locate triangle containing X
  • Subdivide triangle
  • Recursively check adjoining triangles to ensure
    empty-circle property. Swap diagonal if needed
  • (Lawson,77)

19
Delaunay
X
  • Lawson Algorithm
  • Locate triangle containing X
  • Subdivide triangle
  • Recursively check adjoining triangles to ensure
    empty-circle property. Swap diagonal if needed
  • (Lawson,77)

20
Delaunay
  • Bowyer-Watson Algorithm
  • Locate triangle that contains the point
  • Search for all triangles whose circumcircle
    contain the point (dltr)
  • Delete the triangles (creating a void in the
    mesh)
  • Form new triangles from the new point and the
    void boundary
  • (Watson,81)

X
21
Delaunay
  • Bowyer-Watson Algorithm
  • Locate triangle that contains the point
  • Search for all triangles whose circumcircle
    contain the point (dltr)
  • Delete the triangles (creating a void in the
    mesh)
  • Form new triangles from the new point and the
    void boundary
  • (Watson,81)

X
22
Delaunay
  • Begin with Bounding Triangles (or Tetrahedra)

23
Delaunay
  • Insert boundary nodes using Delaunay method
    (Lawson or Bowyer-Watson)

24
Delaunay
  • Insert boundary nodes using Delaunay method
    (Lawson or Bowyer-Watson)

25
Delaunay
  • Insert boundary nodes using Delaunay method
    (Lawson or Bowyer-Watson)

26
Delaunay
  • Insert boundary nodes using Delaunay method
    (Lawson or Bowyer-Watson)

27
Delaunay
  • Insert boundary nodes using Delaunay method
    (Lawson or Bowyer-Watson)

28
Delaunay
  • Recover boundary
  • Delete outside triangles
  • Insert internal nodes

29
Delaunay
h
  • Grid Based
  • Nodes introduced based on a regular lattice
  • Lattice could be rectangular, triangular,
    quadtree, etc
  • Outside nodes ignored

Node Insertion
30
Delaunay
  • Grid Based
  • Nodes introduced based on a regular lattice
  • Lattice could be rectangular, triangular,
    quadtree, etc
  • Outside nodes ignored

Node Insertion
31
Delaunay
  • Centroid
  • Nodes introduced at triangle centroids
  • Continues until edge length,

Node Insertion
32
Delaunay
l
  • Centroid
  • Nodes introduced at triangle centroids
  • Continues until edge length,

Node Insertion
33
Delaunay
  • Circumcenter (Guaranteed Quality)
  • Nodes introduced at triangle circumcenters
  • Order of insertion based on minimum angle of any
    triangle
  • Continues until minimum angle gt predefined
    minimum

Node Insertion
(Chew,Ruppert,Shewchuk)
34
Delaunay
  • Circumcenter (Guaranteed Quality)
  • Nodes introduced at triangle circumcenters
  • Order of insertion based on minimum angle of any
    triangle
  • Continues until minimum angle gt predefined
    minimum

Node Insertion
(Chew,Ruppert,Shewchuk)
35
Delaunay
A
B
C
  • Advancing Front
  • Front structure maintained throughout
  • Nodes introduced at ideal location from current
    front edge

(Marcum,95)
Node Insertion
36
Delaunay
  • Advancing Front
  • Front structure maintained throughout
  • Nodes introduced at ideal location from current
    front edge

(Marcum,95)
Node Insertion
37
Delaunay
  • Voronoi-Segment
  • Nodes introduced at midpoint of segment
    connecting the circumcircle centers of two
    adjacent triangles

(Rebay,93)
Node Insertion
38
Delaunay
  • Voronoi-Segment
  • Nodes introduced at midpoint of segment
    connecting the circumcircle centers of two
    adjacent triangles

(Rebay,93)
Node Insertion
39
Delaunay
h
h
h
  • Edges
  • Nodes introduced at along existing edges at lh
  • Check to ensure nodes on nearby edges are not too
    close

(George,91)
Node Insertion
40
Delaunay
  • Edges
  • Nodes introduced at along existing edges at lh
  • Check to ensure nodes on nearby edges are not too
    close

(George,91)
Node Insertion
41
Delaunay
  • Boundary Intersection
  • Nodes and edges introduced where Delaunay edges
    intersect boundary

Boundary Constrained
42
Delaunay
  • Boundary Intersection
  • Nodes and edges introduced where Delaunay edges
    intersect boundary

Boundary Constrained
43
Delaunay
  • Local Swapping
  • Edges swapped between adjacent pairs of triangles
    until boundary is maintained

Boundary Constrained
44
Delaunay
  • Local Swapping
  • Edges swapped between adjacent pairs of triangles
    until boundary is maintained

Boundary Constrained
45
Delaunay
  • Local Swapping
  • Edges swapped between adjacent pairs of triangles
    until boundary is maintained

Boundary Constrained
46
Delaunay
  • Local Swapping
  • Edges swapped between adjacent pairs of triangles
    until boundary is maintained

Boundary Constrained
47
Delaunay
  • Local Swapping
  • Edges swapped between adjacent pairs of triangles
    until boundary is maintained

(George,91)(Owen,99)
Boundary Constrained
48
Delaunay
C
D
  • Local Swapping Example
  • Recover edge CD at vector Vs

Boundary Constrained
49
Delaunay
E3
C
D
E2
E1
  • Local Swapping Example
  • Make a list (queue) of all edges Ei, that
    intersect Vs

Boundary Constrained
50
Delaunay
E3
C
D
E2
  • Local Swapping Example
  • Swap the diagonal of adjacent triangle pairs for
    each edge in the list

Boundary Constrained
51
Delaunay
E3
C
D
  • Local Swapping Example
  • Check that resulting swaps do not cause
    overlapping triangles. I they do, then place
    edge at the back of the queue and try again later

52
Delaunay
C
D
  • Local Swapping Example
  • Check that resulting swaps do not cause
    overlapping triangles. If they do, then place
    edge at the back of the queue and try again later

53
Delaunay
C
D
  • Local Swapping Example
  • Final swap will recover the desired edge.
  • Resulting triangle quality may be poor if
    multiple swaps were necessary
  • Does not maintain Delaunay criterion!

54
Quad/Hex Methods
Structured
Unstructured
  • Requires geometry to conform to specific
    characteristics
  • Regular patterns of quads/hexes formed based on
    characteristics of geometry
  • No specific requirements for geometry
  • quads/hexes placed to conform to geometry.
  • No connectivity requirement (although
    optimization of connectivity is beneficial)
  • Internal nodes always attached to same number of
    elements

55
Structured
Algorithm
Geometry Requirements
  • Trans-finite Interpolation (TFI)
  • maps a regular lattice of quads onto polygon
  • 4 topological sides
  • opposite sides must have similar intervals

(Thompson,8899)
(Cook,82)
Mapped Meshing
56
Structured
Geometry Requirements
  • 6 topological surfaces
  • opposite surfaces must have similar mapped meshes

3D Mapped Meshing
57
Structured
Block-Structured
http//www.gridpro.com/gridgallery/tmachinery.html
http//www.pointwise.com/case/747.htm
Mapped Meshing
58
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
59
Structured
linking surfaces
target
source
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
60
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
61
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
62
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
63
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
64
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
65
Structured
  • Geometry Requirements
  • source and target surfaces topologicaly similar
  • linking surfaces mapable or submapable

Sweeping
66
Structured
Gambit, Fluent Inc.
Sweeping
Cubit, Sandia National Labs
67
Unstructured Hex
  • Tetrahedra splitting
  • Each tetrahedtra split into 4 hexahedra
  • Typically results in poor angles

68
Unstructured Hex
  • Tetrahedra splitting
  • Each tetrahedtra split into 4 hexahedra
  • Typically results in poor angles

(Taniguchi, 96)
69
Unstructured Hex
Example of geometry meshed by tetrahedra splitting
70
Unstructured-Quad
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)
71
Unstructured-Quad
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)
72
Unstructured-Quad
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)
73
Unstructured-Quad
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)
74
Unstructured-Quad
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)
75
Unstructured-Quad
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)
76
Unstructured-Quad
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)
77
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
78
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
79
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
80
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
81
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
82
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
83
Unstructured-Hex
Plastering
  • 3D extension of paving
  • Row-by row or element-by-element

(Blacker, 93)
84
Unstructured-Hex
Exterior Hex mesh
Remaining Void
Ford Crankshaft
PlasteringTet Meshing
Hex-Dominant Meshing
85
Unstructured-Quad
Q-Morph
86
Unstructured-Quad
Q-Morph
87
Unstructured-Quad
Q-Morph
88
Unstructured-Quad
Q-Morph
89
Unstructured-Quad
Q-Morph
90
Unstructured-Quad
Q-Morph
91
Unstructured-Hex
(Owen and Saigal, 00)
H-Morph
Hex-Dominant Meshing
92
Unstructured-Hex
(Owen and Saigal, 00)
H-Morph
Hex-Dominant Meshing
93
Unstructured-Hex
94
Direct
Grid-Based
  • Generate regular grid of quads/hexes on the
    interior of model
  • Fit elements to the boundary by projecting
    interior faces towards the surfaces
  • Lower quality elements near boundary
  • Non-boundary conforming

95
Direct
Grid-Based
  • Generate regular grid of quads/hexes on the
    interior of model
  • Fit elements to the boundary by projecting
    interior faces towards the surfaces
  • Lower quality elements near boundary
  • Non-boundary conforming

96
Direct
Grid-Based
  • Generate regular grid of quads/hexes on the
    interior of model
  • Fit elements to the boundary by projecting
    interior faces towards the surfaces
  • Lower quality elements near boundary
  • Non-boundary conforming

97
Direct
Grid-Based
  • Generate regular grid of quads/hexes on the
    interior of model
  • Fit elements to the boundary by projecting
    interior faces towards the surfaces
  • Lower quality elements near boundary
  • Non-boundary conforming

98
Direct
(Schneiders,96)
Grid-Based
99
Unstructured-Hex
Grid-Based
100
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
101
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
102
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
103
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
104
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
105
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
106
Direct
Medial Axis
  • Medial Object - Roll a Maximal circle or sphere
    through the model. The center traces the medial
    object
  • Medial Object used as a tool to automatically
    decompose model into simpler mapable or sweepable
    parts

(Price, 9597)(Tam,91)
107
Direct
3D Medial Object examples (from FEGS website,
URL http//www.fegs.co.uk/medial.html)
108
Direct
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)
109
Direct
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)
110
Direct
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)
111
Direct
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)
112
Direct
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)
113
Direct
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)
114
Direct
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)
115
Direct
Paving
  • Row Choice - beginning and ending node of next
    sequence or row of elements to be added is found
  • Closure Check - Check that more than six nodes
    remain in paving boundary (Use special closure
    techniques)
  • Row Generation - Add the row to the boundary
  • Smooth - smooth the floating nodes to improve
    mesh quality
  • Seam - Small interior angles are seamed by
    connecting opposing elements
  • Row adjustment - insert tucks or wedges into the
    row to prevent elements from becoming too large
    or too small
  • Intersection - Paving boundary is checked for
    intersection with itself or with another paving
    boundary. Intersection are connected to form new
    paving boundaries
  • Cleanup - Completed mesh is adjusted to improve
    local quality or topology

(Blacker,91)
116
Hybrid Methods
CFD Meshing
Image courtesy of Roy P. Koomullil, Engineering
Research Center, Mississippi State University,
http//www.erc.msstate.edu/roy/
Image courtesy of acelab, University of Texas,
Austin, http//acelab.ae.utexas.edu
117
Hybrid Methods
Heat sink meshed with hexes, tets and pyramids
118
Hybrid Methods
Pyramid Elements for maintaining compatibility
between hex and tet elements (Owen,00)
119
Mesh Post-Processing
Smoothing
Topological Improvement
120
Post-Processing
Smoothing
Adjust locations of nodes without changing mesh
topology (element connectivity)
Topological Improvement
Change connectivity without affecting node
locations
121
Post-Processing
Smoothing
  • Averaging Methods
  • Optimization Based
  • Distortion Metrics
  • Combined Laplacian/Optimization based smoothing

122
Smoothing
P4
Averaging Methods
P3
P
P5
P2
P1
Laplacian
(Field, 1988)
123
Smoothing
P4
Averaging Methods
P3
P
P5
Centroid of attached nodes
Can create inverted elements
P2
P1
Laplacian
(Field, 1988)
124
Smoothing
P4
Averaging Methods
P
Centroid of attached nodes
P5
P1
Can create inverted elements
P3
P6
P2
Laplacian
125
Smoothing
P4
Averaging Methods
Centroid of attached nodes
P5
P1
Can create inverted elements
P3
P
P6
P2
Laplacian
126
Smoothing
P4
Averaging Methods
Constrained Laplacian Do not move node unless
minimum distortion metric is improved
P
Centroid of attached nodes
P5
P1
Can create inverted elements
P3
P6
P2
Laplacian
127
Smoothing
Averaging Methods
Weighted average of triangle centroids
C4
C4
P
C3
C1
A1
C2
Aiarea of triangle i
A2
Cicentroid of triangle i
Area Centroid Weighted
128
Smoothing
P4
P3
Averaging Methods
Average of ideal triangles
P
P5
P2
Average Equilateral
P1
129
Post-Processing
Smoothing
  • Averaging Methods
  • Optimization Based
  • Distortion Metrics
  • Combined Laplacian/Optimization based smoothing

Topological Improvement
  • Triangles
  • Tetrahedra
  • Quads

130
Topology Improvement
Diagonal Flip
Possible Criteria
Comparison before/after
Delaunay criterion
Distortion metrics
Node valence
Deviation from surface
(Edelsbrunner, Shah, 1996)
(Canann, Muthukrishnan, Phillips, 1996)
131
Topology Improvement
Diagonal Flip
Possible Criteria
Comparison before/after
Delaunay criterion
Distortion metrics
Node valence
Deviation from surface
(Edelsbrunner, Shah, 1996)
132
Topology Improvement
Node valence number of edges connected to node
7
6
7
6
Ideal node valence for triangle mesh is 6
edges/node
Swapping can improve node valence
Allowing Smoothing to do a better job
(Canann, Muthukrishnan, Phillips, 1996)
133
Topology Improvement
Deviation from Surface
d
Swapping can enforce better geometric conformity
to surface
134
Topology Improvement
2-3 Swap
2-2 Swap
Edge Suppress
Terahedral Transformations
abce, acbd
aceb, adcb
Criteria for swaps comparison before/after
distortion metrics
abnini1 i1N
(Joe, 1995)
abde, bcde, cade
adeb, edcb
nm,knm.jnm.ia, nm,knm.jnm.ib m1M
M no. unique trias in polygon Pn1,n2,n3
135
Topology Improvement
Quad Topology Improvement
6
Example Element Open
Criteria 6 valent node on interior of mesh
(Staten, Canann, 1997)
136
Topology Improvement
Element Open
Two-Edge Node Elimination
Diagonal Swap
Two-Edge Node Insertion
Element Close
Five Basic Quad Clean-up Operations
(Staten, Canann, 1997)
137
Topology Improvement
Multi-Step Quad Cleanup
3
5
5
3
Criteria 5 valent nodes on opposite nodes of quad
(Staten, Canann, 1997)
138
References
139
References
140
References
141
References
142
References
143
Acknowledgements
  • Steve Owen, www.andrew.cmu.edu/user/sowen
  • Nikos Chrisochoides, www.cs.wm.edu/nikos
  • Michael Wolf, www.cs.uiuc.edu/homes/mmwolf
  • Daniel Siqueira, www.crab.ufc.br
Write a Comment
User Comments (0)
About PowerShow.com