computational modeling sciences department 1 steve owen an introduction to mesh generation...

234
Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation An Introduction to Mesh Generation Algorithms Algorithms Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL85000.

Upload: stephany-mckenzie

Post on 18-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

1

Steve Owen

An Introduction to Mesh Generation AlgorithmsAn Introduction to Mesh Generation Algorithms

Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL85000.

Page 2: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

2

Overview

• The Simulation Process• Geometry Basics• The Mesh Generation

Process• Meshing Algorithms

– Tri/Tet Methods– Quad/Hex Methods– Hybrid Methods– Surface Meshing

• Algorithm Characteristics

Page 3: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

3

Simulation Process

3

2

1. Build CAD Model 2. Mesh 3. Apply Loads and Boundary Conditions

4. Computational Analysis 5. Visualization

2 kN

Page 4: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

4

Adaptive Simulation Process

3

2

1. Build CAD Model 2. Mesh 3. Apply Loads and Boundary Conditions

4. Computational Analysis

7. Visualization

2 kN

5. Error Estimation

Error?

6. Remesh/Refine/Improve

Adaptivity Loop

Error <

Error >

Usersupplies meshing

parameters

Analysis Codesupplies meshing

parameters

Page 5: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

5

Geometry

Mesh Generation

Geometry Engine

Page 6: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

6

Geometry

vertices: x,y,z location

Page 7: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

7

Geometry

vertices: x,y,z location

curves: bounded by two vertices

Page 8: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

8

Geometry

vertices: x,y,z location

surfaces: closed set of curves

curves: bounded by two vertices

Page 9: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

9

Geometry

vertices: x,y,z location

surfaces: closed set of curves

volumes: closed set of surfaces

curves: bounded by two vertices

Page 10: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

10

Geometry

body: collection of volumes

vertices: x,y,z location

surfaces: closed set of curves

volumes: closed set of surfaces

curves: bounded by two vertices

Page 11: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

11

Geometry

body: collection of volumes

vertices: x,y,z location

volumes: closed set of surfaces

surfaces: closed set of curves

loops: ordered set of curves on surface

curves: bounded by two vertices

Page 12: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

12

Geometry

body: collection of volumes

vertices: x,y,z location

volumes: closed set of surfaces

loops: ordered set of curves on surface

surfaces: closed set of curves (loops)

coedges: orientation of curve w.r.t. loop

curves: bounded by two vertices

Page 13: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

13

Geometry

body: collection of volumes

vertices: x,y,z location

volumes: closed set of surfaces (shells)

surfaces: closed set of curves (loops)

loops: ordered set of curves on surface

coedges: orientation of curve w.r.t. loop

shell: oriented set of surfaces comprising a volume

curves: bounded by two vertices

Page 14: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

14

Geometry

body: collection of volumes

vertices: x,y,z location

volumes: closed set of surfaces (shells)

surfaces: closed set of curves (loops)

loops: ordered set of curves on surface

coedges: orientation of curve w.r.t. loop

shell: oriented set of surfaces comprising a volume

curves: bounded by two vertices

Page 15: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

15

Geometry

body: collection of volumes

vertices: x,y,z location

volumes: closed set of surfaces (shells)

surfaces: closed set of curves (loops)

loops: ordered set of curves on surface

coedges: orientation of curve w.r.t. loop

shell: oriented set of surfaces comprising a volume

coface: oriented surface w.r.t. shell

curves: bounded by two vertices

Page 16: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

16

Geometry

Volume 1

Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6

Volume 2

Surface 8 Surface 9 Surface 10 Surface 11

Surface 7

Volume 1

Volume 2

Surface 11

Surface 7

Manifold Geometry: Each volume maintains its own set of unique surfaces

Page 17: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

17

Geometry

Volume 1

Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6

Volume 2

Surface 8 Surface 9 Surface 10

Surface 7

Volume 1

Volume 2

Surface 7

Non-Manifold Geometry: Volumes share matching surfaces

Page 18: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

18

Mesh Generation Process

Mesh Vertices

Mesh Curves

Verify/correct for sizing criteria on

curves

Set up sizing function for

surface

Mesh surface

Set up sizing function for

volume

Mesh volume

Smooth/Cleanup surface mesh

Verify Quality

Verify Quality

Smooth/Cleanup volume mesh

For each surface

For each volume

The Mesh Generation Process

Apply Manual Sizing, Match

Intervals

Page 19: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

19

Meshing Algorithms

Page 20: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

20

Tri/Tet Methods

http://www.simulog.fr/mesh/gener2.htm

OctreeAdvancing FrontDelaunay

http://www.ansys.com

Page 21: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

21

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)

Page 22: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

22

Octree/Quadtree

QMG, Cornell University

Page 23: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

23

Octree/Quadtree

QMG, Cornell University

Page 24: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

24

Advancing Front

A B

C

•Begin with boundary mesh - define as initial front•For each edge (face) on front, locate ideal node C based on front AB

Page 25: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

25

Advancing Front

A B

Cr

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

D

Page 26: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

26

Advancing Front

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

D

Page 27: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

27

Advancing Front

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

Page 28: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

28

Advancing Front

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

Page 29: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

29

Advancing Front

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

Page 30: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

30

Advancing Front

A

B

C

•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| > 0)•(Lohner,88;96)(Lo,91)

r

Page 31: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

31

Advancing Front

Ansys, Inc.www.ansys.com

Page 32: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

32

Delaunay

TriangleJonathon Shewchukhttp://www-2.cs.cmu.edu/~quake/triangle.html

Tetmesh-GHS3DINRIA, Francehttp://www.simulog.fr/tetmesh/

Page 33: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

33

Delaunay

circumcircle

Empty Circle (Sphere) Property: No other vertex is contained within the circumcircle (circumsphere) of any triangle (tetrahedron)

Page 34: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

34

Delaunay Triangulation: Obeys empty-circle (sphere) property

Delaunay

Page 35: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

35

Non-Delaunay Triangulation

Delaunay

Page 36: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

36

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

X

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

Delaunay

Page 37: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

37

X

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

Delaunay

Page 38: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

38

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

X

r cd

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

Delaunay

Page 39: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

39

X

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

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

Delaunay

Page 40: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

40

•Begin with Bounding Triangles (or Tetrahedra)

Delaunay

Page 41: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

41

Delaunay

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

Page 42: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

42

Delaunay

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

Page 43: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

43

Delaunay

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

Page 44: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

44

Delaunay

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

Page 45: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

45

Delaunay

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

Page 46: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

46

Delaunay

•Recover boundary•Delete outside triangles•Insert internal nodes

Page 47: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

47

Delaunay

Node Insertion

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

h

Page 48: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

48

Delaunay

Node Insertion

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

Page 49: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

49

Delaunay

Node Insertion

Centroid•Nodes introduced at triangle centroids•Continues until edge length, hl

Page 50: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

50

Delaunay

Node Insertion

Centroid•Nodes introduced at triangle centroids•Continues until edge length, hl

l

Page 51: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

51

Delaunay

Node Insertion

Circumcenter (“Guaranteed Quality”)•Nodes introduced at triangle circumcenters•Order of insertion based on minimum angle of any triangle•Continues until minimum angle > predefined minimum

)30( (Chew,Ruppert,Shewchuk)

Page 52: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

52

Delaunay

Circumcenter (“Guaranteed Quality”)•Nodes introduced at triangle circumcenters•Order of insertion based on minimum angle of any triangle•Continues until minimum angle > predefined minimum )30(

Node Insertion (Chew,Ruppert,Shewchuk)

Page 53: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

53

Delaunay

Advancing Front•“Front” structure maintained throughout•Nodes introduced at ideal location from current front edge

Node Insertion

A B

C

(Marcum,95)

Page 54: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

54

Delaunay

Advancing Front•“Front” structure maintained throughout•Nodes introduced at ideal location from current front edge

Node Insertion(Marcum,95)

Page 55: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

55

Delaunay

Voronoi-Segment•Nodes introduced at midpoint of segment connecting the circumcircle centers of two adjacent triangles

Node Insertion(Rebay,93)

Page 56: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

56

Delaunay

Voronoi-Segment•Nodes introduced at midpoint of segment connecting the circumcircle centers of two adjacent triangles

Node Insertion(Rebay,93)

Page 57: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

57

Delaunay

Edges•Nodes introduced at along existing edges at l=h•Check to ensure nodes on nearby edges are not too close

Node Insertion

h

h

h

(George,91)

Page 58: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

58

Delaunay

Edges•Nodes introduced at along existing edges at l=h•Check to ensure nodes on nearby edges are not too close

Node Insertion(George,91)

Page 59: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

59

Delaunay

Boundary Constrained

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

Page 60: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

60

Delaunay

Boundary Constrained

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

Page 61: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

61

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

Page 62: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

62

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

Page 63: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

63

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

Page 64: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

64

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

Page 65: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

65

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

(George,91)(Owen,99)

Page 66: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

66

D C

VS

Delaunay

Local Swapping Example•Recover edge CD at vector Vs

Boundary Constrained

Page 67: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

67

D C

E1

E2

E3

E4E5

E6E7

E8

Local Swapping Example•Make a list (queue) of all edges Ei, that intersect Vs

Delaunay

Boundary Constrained

Page 68: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

68

D CE1

E2

E3

E4E5

E6E7

E8

Delaunay

Local Swapping Example•Swap the diagonal of adjacent triangle pairs for each edge in the list

Boundary Constrained

Page 69: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

69

D C

E2

E3

E4E5

E6E7

E8

Delaunay

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

Page 70: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

70

D C

E3

E4E5

E6E7

E8

Delaunay

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

Page 71: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

71

D C

E6

Delaunay

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!

Page 72: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

72

Delaunay

A

C

D E

B

Boundary Constrained

3D Local Swapping•Requires both boundary edge recovery and boundary face recovery

Edge Recovery•Force edges into triangulation by performing 2-3 swap transformation

ABC = non-conforming face

DE = edge to be recovered

(George,91;99)(Owen,00)

Page 73: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

73

Delaunay

A

B

C

D E

Boundary Constrained

3D Local Swapping•Requires both boundary edge recovery and boundary face recovery

Edge Recovery•Force edges into triangulation by performing 2-3 swap transformation

ABC = non-conforming face

DE = edge to be recovered

ABCEACBD

2-3 Swap

(George,91;99)(Owen,00)

Page 74: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

74

Delaunay

A

B

C

D E

Boundary Constrained

3D Local Swapping•Requires both boundary edge recovery and boundary face recovery

Edge Recovery•Force edges into triangulation by performing 2-3 swap transformation

ABCEACBD

2-3 SwapBAEDCBEDACED

DE = edge recovered

(George,91;99)(Owen,00)

Page 75: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

75

Delaunay

A

C

D E

B

Boundary Constrained

3D Local Swapping•Requires both boundary edge recovery and boundary face recovery

Edge Recovery•Force edges into triangulation by performing 2-3 swap transformation

DE = edge recovered

ABCEACBD

2-3 SwapBAEDCBEDECED

(George,91;99)(Owen,00)

Page 76: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

76

Delaunay

A B

A BS

S

3D Edge Recovery•Form queue of faces through which edge AB will pass•Perform 2-3 swap transformations on all faces in the list•If overlapping tets result, place back on queue and try again later•If still cannot recover edge, then insert “steiner” point

Edge AB to be recovered

Exploded view of tets intersected by AB

Page 77: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

78

Quad/HexMethods

Structured•Requires geometry to conform to specific characteristics•Regular patterns of quads/hexes formed based on characteristics of geometry

Unstructured•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

Page 78: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

79

Structured

6

6

3

3

Mapped Meshing

•4 topological sides•opposite sides must have similar intervals

Geometry Requirements

Algorithm

•Trans-finite Interpolation (TFI)•maps a regular lattice of quads onto polygon (Thompson,88;99)(Cook,82)

Page 79: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

80

Structured

3D Mapped Meshing

•6 topological surfaces•opposite surfaces must have similar mapped meshes

Geometry Requirements

Page 80: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

81

Structured

http://www.gridpro.com/gridgallery/tmachinery.html http://www.pointwise.com/case/747.htm

Mapped Meshing

Block-Structured

Page 81: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

82

Structured

i

j

+3i

+3i

+2j

q -1j

Sub-Mapping

•Blocky-type surfaces (principally 90 degree angles)

Geometry Requirements

0iInterval

0jInterval

(White,95)

Page 82: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

83

Structured

Sub-Mapping

•Automatically decomposes surface into mappable regions based on assigned intervals

(White,95)

Page 83: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

84

Structured

Sweeping

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

Page 84: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

85

Structured

source

target

Sweeping

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

linking surfaces

Page 85: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

86

Structured

Sweeping

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

Page 86: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

87

Structured

Sweeping

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

Page 87: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

88

Structured

Sweeping

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

Page 88: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

89

Structured

Sweeping

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

Page 89: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

90

Structured

Sweeping

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

Page 90: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

91

Structured

Sweeping

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

Page 91: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

92

Structured

Cubit, Sandia National Labs

Gambit, Fluent Inc.

Sweeping

Page 92: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

93

Sweeping

Sweep Direction

1-to-1 sweepable

Page 93: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

94

Sweeping

n-to-1 sweepable

Sweep Direction

Page 94: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

95

Sweeping

n-to-m sweepable

Multi-Sweep

Sweep Direction

Page 95: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

96

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 96: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

97

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 97: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

98

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 98: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

99

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 99: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

100

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 100: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

101

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 101: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

102

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 102: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

103

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 103: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

104

Sweeping

Sweep Direction

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

The fundamental strategy of multi-sweep is to convert an n-to-m

sweepable volume into a number of n-to-1 sweepable volumes.

Page 104: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

105

Decomp Sweep Overview

Sweep Direction

Page 105: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

106

Decomp Sweep Overview

Sweep Direction

Page 106: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

107

Sweeping

(White, 2004)CCSweep

Page 107: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

108

Medial Axis

Medial Axis

(Price, 95;97)(Tam,91)

•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

Page 108: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

109

Medial Axis

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, 95;97)(Tam,91)

Page 109: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

110

Medial Axis

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, 95;97)(Tam,91)

Page 110: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

111

Medial Axis

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, 95;97)(Tam,91)

Page 111: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

112

Medial Axis

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, 95;97)(Tam,91)

Page 112: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

113

Medial Axis

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, 95;97)(Tam,91)

Page 113: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

114

Medial Axis

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, 95;97)(Tam,91)

Page 114: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

115

Medial Axis

Medial Axis + Midpoint Subdivision (Price, 95) (Sheffer, 98)

Embedded Voronoi Graph

Page 115: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

116

Meshing Algorithms

Page 116: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

117

Indirect Quad

Triangle splitting•Each triangle split into 3 quads•Typically results in poor angles

Page 117: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

118

Indirect Hex

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

Page 118: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

119

Indirect Hex

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

Page 119: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

120

Indirect Hex

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

(Taniguchi, 96)

Page 120: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

121

Indirect Hex

Example of geometry meshed by tetrahedra splitting

Page 121: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

122

Indirect

Triangle Merge•Two adjacent triangles combined into a single quad •Test for best local choice for combination•Triangles can remain if attention is not paid to order of combination

Page 122: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

123

Indirect

Triangle Merge•Two adjacent triangles combined into a single quad •Test for best local choice for combination•Triangles can remain if attention is not paid to order of combination

Page 123: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

124

Indirect

Triangle Merge•Two adjacent triangles combined into a single quad •Test for best local choice for combination•Triangles can remain if attention is not paid to order of combination

Page 124: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

125

Indirect

Directed Triangle Merge•Merging begins at a boundary•Advances from one set of triangles to the next•Attempts to maintain even number of intervals on any loop•Can produce all-quad mesh•Can also incorporate triangle splitting•(Lee and Lo, 94)

Page 125: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

126

Indirect

A B

NB

e e

NA

e e C

D

Triangle Merge w/ local transformations (“Q-Morph)•Uses an advancing front approach•Local swaps applied to improve resulting quad•Any number of triangles merged to create a quad•Attempts to maintain even number of intervals on any loop•Produces all-quad mesh from even intervals•(Owen, 99)

Page 126: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

127

Q-Morph

Unstructured-Quad

Page 127: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

128

Q-Morph

Unstructured-Quad

Page 128: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

129

Q-Morph

Unstructured-Quad

Page 129: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

130

Q-Morph

Unstructured-Quad

Page 130: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

131

Q-Morph

Unstructured-Quad

Page 131: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

132

Q-Morph

Unstructured-Quad

Page 132: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

133

Indirect

Q-Morph Lee,Lo Method

Page 133: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

134

Indirect

AB

CD

AB

CD

E

AB

CD

EF

AB

CD

EF

G

AB

CD

EF

GH

AB

CD

EF

GH

Tetrahedral Merge w/ local transformations (“H-Morph”)

Page 134: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

135

Unstructured-Hex

H-Morph“Hex-Dominant Meshing”

(Owen and Saigal, 00)

Page 135: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

136

Unstructured-Hex

(Owen and Saigal, 00)

H-Morph“Hex-Dominant Meshing”

Page 136: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

137

Unstructured-Hex

Page 137: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

138

Meshing Algorithms

Page 138: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

139

Unstructured-Hex

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

Page 139: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

140

Unstructured-Hex

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

Page 140: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

141

Unstructured-Hex

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

Page 141: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

142

Unstructured-Hex

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

Page 142: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

143

Unstructured-Hex

Grid-Based

(Schneiders,96)

Page 143: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

144

Unstructured-Hex

http://www.numeca.be/hexpress_home.html

Grid-Based

Gambit, Fluent, Inc.

Page 144: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

145

Direct 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)

Page 145: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

146

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)

Page 146: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

147

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)

Page 147: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

148

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

Form new row and check for

overlap

(Blacker,92)(Cass,96)

Page 148: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

149

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

Insert “Wedge

(Blacker,92)(Cass,96)

Page 149: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

150

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

Seams

(Blacker,92)(Cass,96)

Page 150: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

151

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

Close Loops and smooth

(Blacker,92)(Cass,96)

Page 151: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

152

Unstructured-Hex

Plastering(Blacker, 93)•3D extension of “paving”

•Row-by row or element-by-element

Page 152: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

153

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 153: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

154

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 154: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

155

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 155: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

156

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 156: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

157

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 157: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

158

Unstructured-Hex

Plastering•3D extension of “paving”•Row-by row or element-by-element

(Blacker, 93)

Page 158: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

159

Unstructured-Hex

Exterior Hex mesh Remaining Void

Ford Crankshaft

Plastering+Tet Meshing“Hex-Dominant Meshing”

Page 159: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

160

Direct

Whisker Weaving•First constructs dual of the quad/hex mesh•Inserts quad/hex at the intersections of the dual chords

Page 160: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

161

Direct

Whisker Weaving•Spatial Twist Continuum - Dual of a 3D hex mesh (Murdoch, 96)•Hexes formed at intersection of twist planes

Page 161: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

162

Direct

Whisker Weaving•Spatial Twist Continuum - Dual of a 3D hex mesh (Murdoch, 96)•Hexes formed at intersection of twist planes

Twist Plane

Page 162: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

163

Direct

Whisker Weaving•Spatial Twist Continuum - Dual of a 3D hex mesh (Murdoch, 96)•Hexes formed at intersection of twist planes

Twist Plane

Page 163: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

164

Direct

Whisker Weaving•Spatial Twist Continuum - Dual of a 3D hex mesh (Murdoch, 96)•Hexes formed at intersection of twist planes

Twist Planes

Page 164: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

165

Direct

Whisker Weaving•Define the topology of the twist planes using whisker diagrams•Each whisker diagram represents a closed loop of the surface dual•Each boundary vertex on the diagram represents a quad face on the surface•Objective is to resolve internal connectivity by “weaving” the chords following a set of basic rules

(Tautges,95;96)Whisker diagrams used to resolve hex mesh above

Page 165: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

166

Hex Meshing Research

Unconstrained Paving

Remove constraint that we must define number of quad when row is advanced.

This constrains only 1 DOF.

Remove constraint of pre-meshed boundary.

Page 166: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

167

Hex Meshing Research

Unconstrained PavingEach Row Advancement Constrains Only 1 DOF

Quads are only completely defined when 2 unconstrained rows cross

Quad Elements

Page 167: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

168

Hex Meshing Research

Unconstrained PavingEach Row Advancement Constrains Only 1 DOF

Page 168: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

169

Hex Meshing Research

Unconstrained Plastering

Page 169: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

170

Hex Meshing Research

Unconstrained Plastering(DOF = 2)

Page 170: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

171

Hex Meshing Research

Unconstrained Plastering(DOF = 1)

Page 171: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

172

Hex Meshing Research

Unconstrained Plastering

(DOF = 0)

Page 172: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

173

Hex Meshing Research

Unconstrained Plastering

Page 173: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

174

Hex Meshing Research

Unconstrained Plastering

Page 174: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

175

Hex Meshing Research

Unconstrained Plastering

Page 175: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

176

Hex Meshing Research

Unconstrained Plastering

Page 176: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

177

Hex Meshing Research

Unconstrained Plastering

Page 177: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

178

Hex Meshing Research

Unconstrained Plastering

Page 178: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

179

Hybrid Methods

CFD Meshing

Image courtesy of acelab, University of Texas, Austin, http://acelab.ae.utexas.edu

Image courtesy of Roy P. Koomullil, Engineering Research Center, Mississippi State University, http://www.erc.msstate.edu/~roy/

Page 179: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

180

Hybrid Methods

Advancing Layers Method

Page 180: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

181

Hybrid Methods

Advancing Layers Method

Discretize Boundary

Page 181: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

182

Hybrid Methods

Advancing Layers Method

Define Normals at boundary nodes

(Pirzadeh, 1994)

Page 182: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

183

Hybrid Methods

Advancing Layers Method

Generate nodes along normals according to distribution functionForm layer

Distance from wall

Ele

men

t siz

e

distribution function

Page 183: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

184

Hybrid Methods

Advancing Layers Method

Generate nodes along normals according to distribution functionForm layer

Distance from wall

Ele

men

t siz

e

distribution function

Page 184: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

185

Hybrid Methods

Advancing Layers Method

Generate nodes along normals according to distribution functionForm layer

Distance from wall

Ele

men

t siz

e

distribution function

Page 185: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

186

Hybrid Methods

Advancing Layers Method

Define new boundary for triangle mesher

Page 186: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

187

Hybrid Methods

Mesh with triangles

Page 187: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

188

Hybrid Methods

Convex Corner Concave Corner

Page 188: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

189

Hybrid Methods

Convex Corner Concave Corner

Page 189: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

190

Hybrid Methods

Convex Corner Concave Corner

Page 190: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

191

Hybrid Methods

Convex Corner Concave Corner

Blend Regions

Page 191: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

192

Hybrid Meshes

Convex Corner Concave Corner

Blend Regions

Page 192: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

193

Hybrid Methods

Convex Corner Concave Corner

Blend Regions

Page 193: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

194

Hybrid Methods

Convex Corner Concave Corner

Smoothed Normals

Page 194: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

195

Hybrid Methods

Convex Corner Concave Corner

Smoothed Normals

Page 195: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

196

Hybrid Methods

Convex Corner Concave Corner

Smoothed Normals

Page 196: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

197

Hybrid Methods

Multiple Normals

Define Normals every degrees

Page 197: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

198

Hybrid Methods

Multiple Normals

Page 198: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

199

Hybrid Methods

Intersecting Boundary Layers

Page 199: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

200

Hybrid Methods

Intersecting Boundary Layers

Page 200: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

201

Hybrid Methods

Intersecting Boundary Layers

Delete overalppaing elements

Page 201: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

202

Hybrid Methods

Intersecting Boundary Layers

Page 202: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

203

Hybrid Methods

Image courtesy of SCOREC, Rensselaer Polytechnic Institute, http://www.scorec.rpi.edu/

(Garimella, Shephard, 2000)

Page 203: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

204

Hex-Tet Interface

Conforming quad-triangle Conforming hex-tet?

Non-Conforming Diagonal Edge

Non-Conforming Node

Page 204: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

205

Hex-Tet Interface

Solutions•Free Edge (Non-conforming)•Multi-point Constraint•Pyramid

Page 205: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

206

Hex-Tet Interface

Heat sink meshed with hexes, tets and pyramids

Page 206: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

207

Hex-Tet Interface

Pyramid Elements for maintaining compatibility between hex and tet elements (Owen,00)

Page 207: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

208

Hex-Tet Interface

Tetrahedral transformations to form Pyramids•Use 2-3 swaps to obtain 2 tets at diagonal•combine 2 tets to form pyramid

A,B N1

N2

N3N4

N5 A,B N1

N2

N3N4

N5

A,B N1

N3N4

N5 A,B N1

N3

N5

(a) (b)

(c)A

B

N5 N1

N4 N3

N2

(d)

Page 208: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

209

Hex-Tet Interface

Tetrahedral transformations to form Pyramids•Use 2-3 swaps to obtain 2 tets at diagonal•combine 2 tets to form pyramid

A,B N1

N2

N3N4

N5 A,B N1

N2

N3N4

N5

A,B N1

N3N4

N5 A,B N1

N3

N5

(a) (b)

(c)A

B

N5 N1

N4 N3

N2

(d)

Page 209: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

210

Hex-Tet Interface

Tetrahedral transformations to form Pyramids•Use 2-3 swaps to obtain 2 tets at diagonal•combine 2 tets to form pyramid

A,B N1

N2

N3N4

N5 A,B N1

N2

N3N4

N5

A,B N1

N3N4

N5 A,B N1

N3

N5

(a) (b)

(c)A

B

N5 N1

N4 N3

(d)

Page 210: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

211

Hex-Tet Interface

(d)

Tetrahedral transformations to form Pyramids•Use 2-3 swaps to obtain 2 tets at diagonal•combine 2 tets to form pyramid

A,B N1

N2

N3N4

N5 A,B N1

N2

N3N4

N5

A,B N1

N3N4

N5 A,B N1

N3

N5

(a) (b)

(c)A

B

N5

N3

N1

Page 211: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

212

Hex-Tet Interface

(d)

Tetrahedral transformations to form Pyramids•Use 2-3 swaps to obtain 2 tets at diagonal•combine 2 tets to form pyramid

A,B N1

N2

N3N4

N5 A,B N1

N2

N3N4

N5

A,B N1

N3N4

N5 A,B N1

N3

N5

(a) (b)

(c)A

B

N5

N3

N1

Page 212: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

213

Hex-Tet Interface

N1N4

B

A

N2N3

Non-Conforming Condition:Tets at quad diagonal A-B

Pyramid Open Method

N

N

N14

B

A

C

N23

•Insert C at midpoint AB:•Split all tets at edge AB

B

N1A

C

N2N3

N4

•Move C to average N1,N2…Nn

•Create New Pyramid A,Nn,B,N1,C

Page 213: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

214

Surface Meshing

Direct 3D Meshing Parametric Space Meshing

u

v

•Elements formed in 3D using actual x-y-z representation of surface

•Elements formed in 2D using parametric representation of surface•Node locations later mapped to 3D

Page 214: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

215

Surface Meshing

A

B

3D Surface Advancing Front•form triangle from front edge AB

Page 215: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

216

A

B

Surface Meshing

C

NC

3D Surface Advancing Front•Define tangent plane at front by averaging normals at A and B

Tangent plane

Page 216: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

217

Surface Meshing

A

B

C

NC

D

3D Surface Advancing Front•define D to create ideal triangle on tangent plane

Page 217: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

218

A

B

C

NC

D

3D Surface Advancing Front•project D to surface (find closest point on surface)

Surface Meshing

Page 218: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

219

Surface Meshing

3D Surface Advancing Front•Must determine overlapping or intersecting triangles in 3D. (Floating point robustness issues)•Extensive use of geometry evaluators (for normals and projections)•Typically slower than parametric implementations•Generally higher quality elements•Avoids problems with poor parametric representations (typical in many CAD environments)•(Lo,96;97); (Cass,96)

Page 219: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

220

Surface Meshing

Parametric Space Mesh Generation•Parameterization of the NURBS provided by the CAD model can be used to reduce the mesh generation to 2D

u

v

u

v

Page 220: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

221

Surface Meshing

Parametric Space Mesh Generation•Isotropic: Target element shapes are equilateral triangles

•Equilateral elements in parametric space may be distorted when mapped to 3D space.•If parametric space resembles 3D space without too much distortion from u-v space to x-y-z space, then isotropic methods can be used.

u

v

u

v

Page 221: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

222

Surface Meshing

•Parametric space can be “customized” or warped so that isotropic methods can be used.•Works well for many cases.•In general, isotropic mesh generation does not work well for parametric meshing

u

v

u

v

Parametric Space Mesh Generation

Warped parametric space

Page 222: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

223

Surface Meshing

u

v

u

v

•Anisotropic: Triangles are stretched based on a specified vector field

•Triangles appear stretched in 2d (parametric space), but are near equilateral in 3D

Parametric Space Mesh Generation

Page 223: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

224

Surface Meshing

•Stretching is based on field of surface derivatives

Parametric Space Mesh Generation

u

v

x

y

z

z

u

y

u

x

u

,,

z

v

y

v

x

v

,,

z

v

y

v

x

v

,,v

z

u

y

u

x

u

,,u

uu E vu F vv G

GF

FE)(XM

•Metric, M can be defined at every location on surface. Metric at location X is:

Page 224: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

225

Surface Meshing

•Distances in parametric space can now be measured as a function of direction and location on the surface. Distance from point X to Q is defined as:

XQXQXQl T )()( XM

u

v

x

y

z

Parametric Space Mesh Generation

X

Q

)(XQl

u

v

X Q)(XQl

M(X)

Page 225: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

226

Surface Meshing

Parametric Space Mesh Generation•Use essentially the same isotropic methods for 2D mesh generation, except distances and angles are now measured with respect to the local metric tensor M(X).•Can use Delaunay (George, 99) or Advancing Front Methods (Tristano,98)

Page 226: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

227

Surface Meshing

Parametric Space Mesh Generation

•Is generally faster than 3D methods•Is generally more robust (No 3D intersection calculations)•Poor parameterization can cause problems•Not possible if no parameterization is provided

•Can generate your own parametric space (Flatten 3D surface into 2D) (Marcum, 99) (Sheffer,00)

Page 227: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

228

Algorithm Characteristics

1. Conforming Mesh•Elements conform to a prescribed surface mesh

2. Boundary Sensitive•Rows/layers of elements roughly conform to the contours of the boundary

3. Orientation Insensitive•Rotating/Scaling geometry will not change the resulting mesh

4. Regular Node Valence•Inherent in the algorithm is the ability to maintain (nearly) the same number of elements adjacent each node)

5. Arbitrary Geometry•The algorithm does not rely on a specific class/shape of geometry

6. Commercial Viability (Robustness/Speed)•The algorithm has been used in a commercial setting

Page 228: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

229

Map

ped

Sub-

map

Tri

Spl

itT

ri M

erge

Q-M

orph

Gri

d-B

ased

Med

ial A

xis

Pavi

ngM

appe

dSu

b-m

apSw

eepi

ngT

et S

plit

Tet

Mer

geH

-Mor

phG

rid-

Bas

edM

edia

l Sur

f.Pl

aste

ring

Whi

sker

W.

Algorithm Characteristics

Tris Hexes

Qua

dtre

eD

elau

nay

Adv

. Fro

n tO

ctre

eD

elau

nay

Adv

. Fro

nt

QuadsTets

Conforming Mesh

Boundary Sensitive

Orientation Insensitive

Commercially Viability

Regular Node Valence

Arbitrary Geometry

1

2

3

4

5

6

Page 229: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

230

More Info

http://www.andrew.cmu.edu/~sowen/mesh.html

Meshing Research Corner

Page 230: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

231

References

Blacker, Ted D. and R. J. Myers,. “Seams and Wedges in Plastering: A 3D Hexahedral Mesh Generation Algorithm,” Engineering With Computers, 2, 83-93 (1993)

Blacker, Ted D., “The Cooper Tool”, Proceedings, 5th International Meshing Roundtable, 13-29 (1996)

Blacker, Ted D., and Michael B. Stephenson. “Paving: A New Approach to Automated Quadrilateral Mesh Generation”, International Journal for Numerical Methods in Engineering, 32, 811-847 (1991)

Canann, Scott A., Joseph R. Tristano and Matthew L. Staten, “An approach to combined Laplacian and optimization-based smoothing for triangular, quadrilateral and quad-dominant meshes,” Proc. 7th International Meshing Roundtable, pp.479-494 (1998)

Canann, S. A., S. N. Muthukrishnan, and R. Phillips, “Topological refinement procedures for triangular finite element meshes,” Engineering with Computers, 12 (3/4), 243-255 (1996)

Cass, Roger J, Steven E. Benzley, Ray J. Meyers and Ted D. Blacker. “Generalized 3-D Paving: An Automated Quadrilateral Surface Mesh Generation Algorithm”, International Journal for Numerical Methods in Engineering, 39, 1475-1489 (1996)

Chew, Paul L., "Guaranteed-Quality Triangular Meshes", TR 89-983, Department of Computer Science, Cornell University, Ithaca, NY, (1989)

Cook, W.A., and W.R. Oakes, “Mapping Methods for Generating Three-Dimensional Meshes”, Computers in Mechanical Engineering, August, 67-72 (1982)

CUBIT Mesh Generation Toolkit, URL:http://endo.sandia.gov/cubit (2001)

Edelsbrunner, H. and N. Shah, “Incremental topological flipping works for regular triangular,” Proc. 8th Symposium on Computational Geometry, pp. 43-52 (1992)

Field, D. “Laplacian smoothing and Delaunay triangulations,” Communications in Numerical Methods in Engineering, 4, 709-712, (1988)

Freitag, Lori A. and Patrick M. Knupp, “Tetrahedral element shape optimization via the Jacobian determinant and the condition number,” Proc. 8 th International Meshing Roundtable, pp. 247-258 (1999)

Freitag, Lori, “On Combining Laplacian and optimization-based smoothing techniques,” AMD Trends in Unstructured Mesh Genertation, ASME, 220, 37-43, July 1997

Garmilla, Rao V. and Mark S. Shephard, “Boundary layer mesh generation for viscous flow simulations,” International Journal for Numerical Methods in Engineering, 49, 193-218 (2000)

Page 231: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

232

References

George, P. L., F. Hecht and E. Saltel, "Automatic Mesh Generator with Specified Boundary", Computer Methods in Applied Mechanics and Engineering, 92, 269-288 (1991)

George, Paul-Louis and Houman Borouchaki, “Delaunay Triangulation and Meshing”, Hermes, Paris, 1998

Joe, B. Geompack90 software URL: http://tor-pw1.attcanada.ca/~bjoe/index.htm (1999)

Joe, B., "GEOMPACK - A Software Package for the Generation of Meshes Using Geometric Algorithms", Advances in Engineering Software, 56(13), 325-331 (1991)

Joe, B., “Construction of improved quality triangulations using local transformations,” SIAM Journal on Scientific Computing, 16, 1292-1307 (1995)

Lau, T.S. and S.H. Lo, “Finite Element Mesh Generation Over Analytical Surfaces”, Computers and Structures, 59(2), 301-309 (1996)

Lau, T.S., S. H. Lo and C. K. Lee, “Generation of Quadrilateral Mesh over Analytical Curved Surfaces,” Finite Elements in Analysis and Design, 27, 251-272 (1997)

Khawaja, Aly and Yannis Kallinderis, “Hybrid grid generation for turbomachinery and aerospace applications,” International Journal for Numerical Methods in Engineering, 49, 145-166 (2000)

Knupp, P. “Algebraic Mesh Quality Metrics for Unstructured Initial Meshes,” SAND 2001-1448J, Sandia National Laboratories, submitted 2001

Lawson, C. L., "Software for C1 Surface Interpolation", Mathematical Software III, 161-194 (1977)

Lee, C.K, and S.H. Lo, “A New Scheme for the Generation of a Graded Quadrilateral Mesh,” Computers and Structures, 52, 847-857 (1994)

Liu, Anwei, and Barry Joe, “Relationship between tetrahedron shape measures,” BIT, 34, 268-287 (1994)

Liu, Shang-Sheng and Rajit Gadh, "Basic LOgical Bulk Shapes (BLOBS) for Finite Element Hexahedral Mesh Generation", 5th International Meshing Roundtable, 291-306 (1996)

Lo, S. H., “Volume Discretization into Tetrahedra - II. 3D Triangulation by Advancing Front Approach”, Computers and Structures, 39(5), 501-511 (1991)

Lo, S. H., “Volume Discretization into Tetrahedra-I. Verification and Orientation of Boundary Surfaces”, Computers and Structures, 39(5), 493-500 (1991)

Lohner, R. K. Morgan and O.C. Zienkiewicz, “Adaptive grid refinement for thr compressible Euler equations, “in I. Babuska, O. C. Zienkiewicz, J. Gago, and E.R. Oliviera (Eds.) Accuracy estimates and adaptive Refinements in Finite Element Computations, Wiley, p. 281-297 (1986)

Page 232: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

233

References

Lohner, R., “Progress in Grid Generation via the Advancing Front Technique”, Engineering with Computers, 12, 186-210 (1996)

Lohner, Rainald, Paresh Parikh and Clyde Gumbert, "Interactive Generation of Unstructured Grid for Three Dimensional Problems", Numerical Grid Generation in Computational Fluid Mechanics `88, Pineridge Press, 687-697 (1988)

Lohner, Rainald and Juan Cebral, “Generation of non-isotropic unstructured grids via directional enrichment,” International Journal for Numerical Methods in Engineering, 49, 219-232 (2000)

Marcum, David L. and Nigel P. Weatherill, “Unstructured Grid Generation Using Iterative Point Insertion and Local Reconnection”, AIAA Journal, 33(9),1619-1625 (1995)

Marcum, David L. and J. Adam Gaither “Unstructured Surface Grid Generation using Global Mapping and Physical Space Approximation”, Proceedings 8th International Meshing Roundtable, 397-406 (1999)

Mitchell, Scott A., "High Fidelity Interval Assignment", Proceedings, 6th International Meshing Roundtable, 33-44 (1997)

Murdoch, Peter, and Steven E. Benzley, “The Spatial Twist Continuum”, Proceedings, 4th International Meshing Roundtable, 243-251 (1995)

Owen, Steve J. and Sunil Saigal, "H-Morph: An Indirect Approach to Advancing Front Hex Meshing". International Journal for Numerical Methods in Engineering, Vol 49, No 1-2, (2000) pp. 289-312

Owen, Steven J. "Constrained Triangulation: Application to Hex-Dominant Mesh Generation", Proceedings, 8th International Meshing Roundtable, 31-41 (1999)

Owen, Steven J. and Sunil Saigal, "Formation of Pyramid Elements for Hex to Tet Transitions", Computer Methods in Applied Mechanics in Engineering, Accepted for publication (approx. November 2000)

Owen, Steven J. and Sunil Saigal, "Surface Mesh Sizing Control", International Journal for Numerical Methods in Engineering, Vol. 47, No. 1-3, (2000) pp.497-511.

Owen, Steven J., M. L. Staten, S. A. Canann, and S. Saigal "Q-Morph: An Indirect Approach to Advancing Front Quad Meshing", International Journal for Numerical Methods in Engineering, Vol 44, No. 9, (1999) pp. 1317-1340

Pirzadeh S. “Viscous unstructured grids by the advancing-layers method”, In proceedings 32nd Aerospace Sciences Meeting and Exhibit, AIAA-94-0417, Reno, NV 1994.

Price, M.A. and C.G. Armstrong, “Hexahedral Mesh Generation by Medial Surface Subdivision: Part I”, International Journal for Numerical Methods in Engineering. 38(19), 3335-3359 (1995)

Page 233: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

234

References

Price, M.A. and C.G. Armstrong, “Hexahedral Mesh Generation by Medial Surface Subdivision: Part II,” International Journal for Numerical Methods in Engineering, 40, 111-136 (1997)

Rebay, S., “Efficient Unstructured Mesh Generation by Means of Delaunay Triangulation and Bowyer-Watson Algorithm”, Journal Of Computational Physics, 106,125-138 (1993)

Ruppert, Jim, “A New and Simple Algorithm for Quality 2-Dimensional Mesh Generation”, Technical Report UCB/CSD 92/694, University of California at Berkely, Berkely California (1992)

Salem, Ahmed Z. I., Scott A. Canann and Sunil Saigal, “Mid-node admissible spaces for quadratic triangular arbitrarily curved 2D finite elements,” International Journal for Numerical Methods in Engineering, 50, 253-272 (2001)

Schneiders, Robert, “A Grid-Based Algorithm for the Generation of Hexahedral Element Meshes”, Engineering With Computers, 12, 168-177 (1996)

Shephard, Mark S. and Marcel K. Georges, “Three-Dimensional Mesh Generation by Finite Octree Technique”, International Journal for Numerical Methods in Engineering, 32, 709-749 (1991)

Sheffer, Alla and E. de Sturler, “Surface Parameterization for Meshing by Triangulation Flattening”, Proceedings, 9th International Meshing Roundtable (2000)

Sheffer, Alla, Michal Etzion, Ari Rappoport, Michal Bercovier, “Proceedings 7th International Meshing Roundtable,” pp.347-364 (1998)

Shewchuk, Jonathan Richard, “Triangle: Engineering a 2D Quality Mesh Generator and Delaunay Triangulator”, URL: http://www.cs.cmu.edu/~quake/triangle.html (1996)

Shimada K., “Physically-based Mesh Generation: Automated triangulation of surfaces and volumes via bubble packing,” Ph.D. Thesis, MEDept., MIT, Cambridge , MA (1993)

Shimada, K., “Anisotropic triangular meshing of parametric surfaces via close packing ofellipsoidal bubbles,” Proc. 6th International Meshing Roundtable, pp. 375-390(1997)

Staten, Matthew L. and Scott A. Canann, “Post Refinement Element Shape Improvement for Quadrilateral Meshes,” AMD-220, Trends in Unstructured Mesh Generation, ASME 1997 pp.9-16

Staten, M. L., S. A. Canann and S. J. Owen, “BMSweep: Locating interior nodes during sweeping”, Engineering With Computers, vol 5, No. 3. (1999) pp.212-218

Staten, Mathew. L., Steven J. Owen, Ted D. Blacker, “Unconstrained Plastering”, Proceedings 14th International meshing Roundtable (2005)

Talbert, J.A., and A.R. Parkinson, “Development of an Automatic, Two Dimensional Finite Element Mesh Generator using Quadrilateral Elements and Bezier Curve Boundary Definitions”, International Journal for Numerical Methods in Engineering, 29, 1551-1567 (1991)

Page 234: Computational Modeling Sciences Department 1 Steve Owen An Introduction to Mesh Generation Algorithms Sandia is a multiprogram laboratory operated by Sandia

Computational Modeling Sciences Department

235

References

Tam, T. K. H. and C. G. Armstrong. “2D Finite Element Mesh Generation by Medial Axis Subdivision”, Advances in Engineering Software, 13, 313-324 (1991)

Taniguchi, Takeo, Tomoaki Goda, Harald Kasper and Werner Zielke, "Hexahedral Mesh Generation of Complex Composite Domain", 5th International Conference on Grid Generation in Computational Field Simmulations, Mississippi State University. 699-707 (1996)

Tautges, Timothy J., Shang-sheng Liu, Yong Lu, Jason Kraftcheck and Rajit Gadh, "Feature Recognition Applications in Mesh Generation", Trends in Unstructured Mesh Generation, ASME, AMD-220, 117-121 (1997)

Tautges, Timothy J., Ted Blacker and Scott Mitchell, “The Whisker-Weaving Algorithm: A Connectivity Based Method for Constructing All-Hexahedral Finite Element Meshes,” International Journal for Numerical Methods in Engineering, 39, 3327-3349 (1996)

Tautges, Timothy J., “The Common Geometry Module (CGM): A Generic Extensible Geometry Interface,” Proceedings, 9th International Meshing Roundtable, pp. 337-347 (2000)

Thompson, Joe F, Bharat K. Soni, Nigel P. Weatherill Eds. Handbook of Grid Generation, CRC Press, 1999

Watson, David F., “Computing the Delaunay Tesselation with Application to Voronoi Polytopes”, The Computer Journal, 24(2) 167-172 (1981)

Weatherill, N. P. and O. Hassan, “Efficient Three-dimensional Delaunay Triangulation with Automatic Point Creation and Imposed Boundary Constraints”, International Journal for Numerical Methods in Engineering, 37, 2005-2039 (1994)

White, David R. and Paul Kinney, “Redesign of the Paving Algorithm: Robustness Enhancements through Element by Element Meshing,” Proceedings, 6th International Meshing Roundtable, 323-335 (1997)

White, David R.,. “Automated Hexahedral Mesh Generation by Virtual Decomposition”, Proceedings, 4th International Meshing Roundtable, pp.165-176 (1995)

Yerry, Mark A. and Mark S, Shephard, “Three-Dimensional Mesh Generation by Modified Octree Technique”, International Journal for Numerical Methods in Engineering, 20, 1965-1990 (1984)