0% found this document useful (0 votes)
78 views203 pages

A Brief Introduction To Mesh Generation

The document provides an overview of mesh generation methods. It discusses that meshes are needed to simulate geometries numerically and outlines the standard simulation process. It also describes how geometries are represented in CAD software using entities like points, curves, surfaces and volumes. The document then discusses how CAD models need to be adapted for simulation through de-featuring and healing operations before being linked to mesh generation kernels.

Uploaded by

Pde Jack
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views203 pages

A Brief Introduction To Mesh Generation

The document provides an overview of mesh generation methods. It discusses that meshes are needed to simulate geometries numerically and outlines the standard simulation process. It also describes how geometries are represented in CAD software using entities like points, curves, surfaces and volumes. The document then discusses how CAD models need to be adapted for simulation through de-featuring and healing operations before being linked to mesh generation kernels.

Uploaded by

Pde Jack
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 203

A brief introduction to

mesh generation

Josep Sarrate

Laboratori de Càlcul Numèric (LaCàN)


Departament d’Enginyeria Civil i Ambiental
Universitat Politècnica de Catalunya (Spain)
http://www.lacan.upc.edu
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

2
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

3
Why do we need meshes?

No mesh

No simulation

4
Why do we need meshes?

Low quality mesh

Low accuracy in the simulation

5
1. Why do we need meshes?

▪ The simulation process


Standard simulation process Adaptive simulation process

Get/import a geometric model Get/import a geometric model

Generate a geometric model Generate a geometric model


valid for the simulation valid for the simulation

Set boundary and initial conditions Set boundary and initial conditions

Generate a mesh Generate a mesh

Computational analysis Computational analysis

Refine / Remesh

Error estimation
Error > ε
Error < ε

Visualization Visualization
6
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

7
2. Geometry description
• How are geometries described?
• CAD (brep)

• Tessellation

• Images Image from MeshGems Image from CADfix

8
2. Geometry description

▪ Geometric models are developed mostly taking into account


visualization, design, prototype and manufacture constraints

▪ Can not be directly applied into a simulation process


▪ They must be adapted to the simulation process:
• Requirements prescribed by the physics of the problem
• Requirements prescribed by the numerical method
▪ Two major types of actions
• De-featuring
• Healing
9
2. Geometry description

▪ De-featuring: removing geometrical details that are not


relevant for the simulation process

Remove fillets, chambers,


blend surfaces

Remove imprints or
extrusions

Remove holes

10
2. Geometry description

▪ Healing: repairing errors in the geometrical model


Watertight: all the volumes must be completely closed

peated entities
Remove repeated

s: lost entities, detached entities, 


Other issues:
11
2. Geometry description

▪ How we can address theses issues?


• Using CAD packages
• CadFix (ITI TranscenData)
• Creo Elements/Pro (ProEngineer)
• Catia (Dassault Systems)
• Solid Works (Dassault Systems)
• Solid Edge (Siemens)
• Rhinoceros
• Some meshing environments provides tools
• Catia (Dassault Systems)
• CD-Adapco (Siemens)
• Ansys
• Abaqus (Dassault Systems)
• GiD

12
2. Geometry description

▪ How CAD models are linked to a meshing environment?


CAD Model

Geometry Mesh Generation


kernel kernel

Discrete Model
▪ The geometry and the mesh of the model are represented by
entities.
▪ In both cases it is of the major importance to take into
account:
• The topological relationship between entities
• The geometrical relationship between entities

13
2. Geometry description

▪ Geometry engines (kernels)


• Parasolid (Siemens)
• Acis (Dassault Systems)
• Open Cascade (Principia, open source engine)

▪ Some engines provide a file format to import / export the


model representation
• FBX/X_T (Parasolid)
• SAT (Acis)

Other open file formats


• STEP
• IGES

14
2. Geometry description

▪ CAD geometry representation


points:
(x,y,z) location

15
2. Geometry description

▪ CAD geometry representation


points:
(x,y,z) location

Curves:
bounded by two points

16
2. Geometry description

▪ CAD geometry representation


points:
(x,y,z) location

Curves:
bounded by two points

Surfaces:
closet set of curves

17
2. Geometry description

▪ CAD geometry representation


points:
(x,y,z) location

Curves:
bounded by two points

Surfaces:
closet set of curves

Volumes:
closet set of surfaces

18
2. Geometry description

▪ CAD geometry representation


Wire (loop):
points:
ordered set of curves on surface
(x,y,z) location

Curves:
bounded by two points

Surfaces:
closet set of curves

Volumes:
closet set of surfaces

19
2. Geometry description

▪ CAD geometry representation


Wire (loop):
points:
ordered set of curves on surface
(x,y,z) location

Curves:
bounded by two points

Surfaces: Edges:
closet set of curves Orientation of a curve w.r.t. a loop

Volumes:
closet set of surfaces

20
2. Geometry description

▪ CAD geometry representation


Wire (loop):
points:
ordered set of curves on surface
(x,y,z) location

Curves:
bounded by two points

Surfaces: Edges:
closet set of curves Orientation of a curve w.r.t. a loop

Volumes:
closet set of surfaces

Shell:
oriented set of surfaces
comprising a volume

21
2. Geometry description

▪ CAD geometry representatio


Wire (loop):
points:
ordered set of curves on surface
(x,y,z) location

Curves:
bounded by two points

Surfaces: Edges:
closet set of curves Orientation of a curve w.r.t. a loop

Volumes:
closet set of surfaces

Shell:
oriented set of durfaces Face:
comprising a volume oriented surface w.r.t. a shell

22
2. Geometry description

▪ CAD geometry representation


Wire (loop):
points:
ordered set of curves on surface
(x,y,z) location

Curves:
bounded by two points

Surfaces: Edges:
closet set of curves Orientation of a curve w.r.t. a loop

Volumes:
closet set of surfaces

Solid:
Shell:
oriented set of surfaces Face: Body (group):
comprising a volume oriented surface w.r.t. a shell Collection of solids

23
2. Geometry description

▪ CAD geometry description


Volume 1
Surface 7
Manifold Geometry:
Each volume maintains its
own set of unique surfaces

Volume 1

Volume 2
Surface 11
Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6 Surface 7

Volume 2

Surface 8 Surface 9 Surface 10 Surface 11

24
2. Geometry description

▪ CAD geometry description


Volume 1
Non-Manifold Geometry:
Volumes share matching
surfaces

Volume 1

Volume 2
Surface 11
Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6

Volume 2

Surface 8 Surface 9 Surface 10 Surface 11

25
2. Geometry description

▪ CAD geometry description


• Boundary Representation of the geometry (Brep)
• Hierarchical classification of geometrical and topological entities
Entity Topological Geometrical
dimension classification classification
0-D vertex point
1-D edge curve
wire
2-D face surface
shell
3-D solid volume
body
• From a meshing point of view, we are interested in non-manifold
representation of a geometry
• The hierarchical description of a CAD model can be exploited by
the meshing algorithms
26
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

27
3. Classification of mesh generation methods
▪ Type of meshes: depending on the number of adjacent elements to
each inner node
Structured mesh (constant) Unstructured mesh (non-constant)

Structured vs unstructured
Domain must verify some constraints Valid for arbitrary domains
More restrictive for dealing with non-constant More flexible for dealing with non-constant
element size element size
Preferable for aligning elements with boundaries Can be used for aligning elements with
/ material properties boundaries / material properties
Easier to develop More complex to develop

28
3. Classification of mesh generation methods

▪ Type of meshes: depending on the intersection between


elements
Conformal mesh Non-conformal mesh
- Empty set or an entity of inferior - Empty set or part of an entity of
dimension inferior dimension
- There are not any hanging nodes - There are hanging nodes

Conformal vs non-conformal
Flexible / restrictive for dealing with non- More flexible for dealing with non-
constant element size constant element size
More usual in industry Less usual in industry
29
3. Classification of mesh generation methods

▪ Type of meshes: depending on the intersection between


elements
Conformal mesh Non-conformal mesh
- Empty set or an entity of inferior - Empty set or part of an entity of
dimension inferior dimension
- There are not any hanging nodes - There are hanging nodes

Non-conformal meshes are useful for:


• structured meshes
+
• large gradients in the element size

Image from D. Hue et.al.


29
3. Classification of mesh generation methods

▪ 2D meshes are composed by polyhedral elements


▪ Most common 2D-element types:

Triangle (3 edges) Quadrilateral (4 edges)

Mesh composed by 245 tris Mesh composed by 1413 quads


30
3. Classification of mesh generation methods

▪ 3D meshes are composed by polyhedral elements


▪ Most common 3D-element types:

Tetrahedron (4 tris) Hexahedron (6 quads)

Mesh composed by 168 tetrahedra Mesh composed by 84 hexahedra


31
3. Classification of mesh generation methods

▪ 3D mixed meshes
▪ Other 3D elements

Pyramids (4 tris & 1 quad) Prisms(2 tris & 3 quad)

Images from Pointwise (http://www.pointwise.com /)


32
3. Classification of mesh generation methods

▪ 3D mixed meshes
▪ Other 3D elements

Pyramids (4 tris & 1 quad) Prisms(2 tris & 3 quad)

Images from Pointwise (http://www.pointwise.com /)


32
3. Classification of mesh generation methods

▪ Hierarchical mesh generation approach

Most of the meshing algorithms follow a bottom-up approach

Initial
Mesh points Mesh curves Mesh surfaces Mesh volumes
(adapted/healed)
(0-D entities) (1-D entities) (2-D entities) (3-D entities)
CAD model

33
3. Classification of mesh generation methods

▪ Classification of the meshing algorithms


Primitives TFI
Tris/Tets

Mapped Elliptic
Structured
Hyperbolic
Quads/Hex
Sub-mapping

Decomposition Sweeping

Meshing Block decomposition


Algorithms Delaunay

Tris/Tets Advancing front

Octree based

Tri / Tet combine


Unstructured Indirect Qmorph / Hmorph
Blossom
Paving / Plastering
Quads/Hex Advancing front
Unconstrained Plastering
Grid based
Direct
Cross-Field
Whisker Weaving
Dual Sheet manipulation
34
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

35
4. Structured mesh generation methods

▪ Why Structured meshes


Structured meshes are still preferred in a wide range of simulations where
a strict alignment of elements are required by the analysis:
• boundary layers in computational fluid dynamics
• composites in structural dynamics.
▪ Basic property
Extremely fast and robust for specific (but common in industry)
geometries
▪ Classification
• Kernel methods
• Methods based on primitives
• Methods based on Partial Differential Equations
• Algebraic interpolation methods (Transfinite Interpolation, TFI)
• Decomposition methods
• Submapping
• Sweeping
36
4. Structured mesh generation methods

▪ Methods based on primitives


Basic idea: identify simple geometrical shapes and mesh
them with a predetermined template

Properties:
• Limited applicability
• High quality meshes
• Implemented in several environments

37
3
4. Structured mesh generation methods

▪ Methods based on Partial Differential Equations


Extremely used in Computational Fluid Dynamics (CFD)
Used in industry as a kernel in multiblock decomposition

Image from https://sourceforge.net/projects/construct2d Image from https://bog.poinwise.com

▪ Properties
• Smooth meshes
• Control on the orthogonality of the mesh edges
• Require solving numerically a PDE (cost)

38
4. Structured mesh generation methods
▪ Determine a coordinate transformation that maps
the body-fitted non-uniform non-orthogonal physical space (x,y,z)

the transformed uniform orthogonal computational space (ξ,η,ξ)

Physical space Computational space

We require that:
• Any point of the computational space is mapped to a unique point of the physical space
(one-to-one)
• Each point of the physical space is the image of a point in the computational space (onto)
We assume that mapping is smooth and that the Jacobian is not null

(mapping ξ(x,y) is invertible).

39
4. Structured mesh generation methods
The most common elliptic PDE used for grid generation is the Poisson
equation:

where P(ξ,η) and Q(ξ,η) are used to control the distribution of points:
P(ξ,η)>0 the points are attracted to the “right”
P(ξ,η)<0 the points are attracted to the “left”
Q(ξ,η)>0 the points are attracted to the “top”
Q(ξ,η)<0 the points are attracted to the “bottom”
But this is not our objective !!!
Our goal is to create a mesh in the physical domain by performing all the
computations in the uniform rectangular space.

40
4. Structured mesh generation methods
▪ Our goal is to create a mesh in the physical domain by performing all the
computations in the uniform rectangular space.
▪ Since function is invertible we can define the inverse
transformation

Physical space Computational space

▪ After some analysis we get

where and

41
4. Structured mesh generation methods
▪ Laplacian method can be modified in order to control the shape of the grid

Grid with boundary Grid with cell height and


Laplacian grid Grid with cell height control
orthogonality control boundary orthogonality control
Images from “Handbook of grid generation”, Thompson et al.

▪ Other types of PDE are also used: hyperbolic equations


equations
▪ Extended to 3D problems
ms

Image from http://rtech-engineering.com Image from J. P. Steinbrenner & J.R. Chawner Image from R. Schalps , S. Shahpar & V. Gümmer

42
4. Structured mesh generation methods

▪ Algebraic methods (Transfinite Interpolation, TFI)


Transformations from a rectangular computational domain to an
arbitrarily shaped physical domain delimited by 4-logical sides
(2D) or 6-logical sides (3D)

▪ Properties:
• Fast (compared with PDE based methods)
• Direct control on the node location
• Less control on the grid smoothness
43
4. Structured mesh generation methods

▪ Mapping definition
Computational domain Physical domain

The image of a discrete subset

with

being

is a structured mesh
44
4. Structured mesh generation methods
▪ Linear TFI in 2D

TFI sets an univariate interpolation


l ti ini each
h direction
di ti off the
th computational space

For the linear TFI the blending functions are (other types can be used: cubic Hermite,)

We also consider the tensor product on these univariate interpolation

Finally, the transfinite mapping as the Boolean sum of the two interpolation

45
4. Structured mesh generation methods
▪ Grid spacing control
• The spacing between points in the physical domain is controlled by blending
functions: and
• Two approaches are used to control the spacing between points:
• Design a blending function to generate the desired grid concentration
• To define an intermediate control domain between the computational and physical
domains
• We define the intermediate
diate control space according
accord to
Control domain

Computational domain Physical domain

46
4. Structured mesh generation methods
▪ There exist a wide range of functions to define the intermediate space (the
spacing of grid points).
▪ One of the simplest choices is the
e single-exponential
gle-exponential function
sing

that maps onto

A=-3 A=0 A= 3
47
4. Structured mesh generation methods

▪ Submapping
A method to decompose and mesh a “blocky” geometry into
simple pieces that are equivalent to a quadrilateral (2D) or a box
(3D)

Properties:
• Full automatic decomposition
• Fast
• The decomposition leads to a compatible meshing of blocks
48
4. Structured mesh generation methods

▪ Overview of the algorithm


The submapping algorithm can be divided into two steps:
• Decomposition of the geometry into blocks ensuring a compatibility
between patches
• Discretization of each patchusing kernel methods (PDE’s, TFI,)

Initial blocky geometry Decomposed geometry Meshed geometry

Important: fully automated process !!!


(the user only prescribes the element size)

49
4. Structured mesh generation methods
▪ Two representations of the geometry are used:
• The physical space is the initial representation of the geometry
• The computational space is a representation of the initial
geometry in which each edge is parallel to the coordinate axes.

F D C

F E
A
B
C A B
D
Physical domain Computational domain
50
4. Structured mesh generation methods
▪ Vertex classification: End End
-i
+j
▪ End: Inner angle close to 90º. +i
-j Corner
▪ Side: Inner angle close to 180º End
+j
▪ Corner: Inner angle close to 270º.
+i
▪ Reversal: Inner angle close to 360º
End End

End End
-i
0o 90o 180o 270o 360o Reversal
-j +j
End Side Corner Reversal End
+j +j
+i +i

End End
▪ Edge classification

▪ +i: The edge is horizontal and goes from left to right.


▪ -i : The edge is horizontal and goes from right to left.
▪ +j: The edge is vertical and goes from down to up.
▪ -j : The edge is vertical and goes from up to down.

51
4. Structured mesh generation methods
▪ For a structured mesh, we impose the compatibility conditions:

is the number of elements on edge e.

▪ To keep the number of elements to a reasonable number, we will solve the


following integer linear programming problem:

More sophisticated objective function


can be defined to generate more
accurate node distributions

We have at least elements on edge e


Upper limit on the number of elements on edge e

The solution to this problem provides a mesh for the boundary


that accepts a structured mesh in the interior.

52
4. Structured mesh generation methods
▪ Creation of the computational domain: once the number of intervals on each
edge is computed we have to create them in the computational space

▪ Selecting a cutting edge: the start of a cutting edge will be a node classified as
corner or reversal
The cutting edge will be horizontal or vertical (the shortest one is selected)

53
4. Structured mesh generation methods
▪ Splitting the domain: once a cutting edge is found, we proceed to split the
y, iterate the process
domain and, recursively, p p
on each part

The process of decomposition ends when there are no corner nor reversal nodes
▪ Discretization of each subdomain: we mesh each subdomain of the geometry
using a classical structured mesh generator, for example TFI

54
4. Structured mesh generation methods
▪ Advanced issues
• Domains with holes: how to locate them?

Inner holes Through holes

• Ensuring a correct classification of the vertices


end end

side end

end side
How to classify these vertices?
Is it a correct classification?

55
4. Structured mesh generation methods
▪ Some examples

56
4. Structured mesh generation methods
▪ Some
me examples

57
4. Structured mesh generation methods

▪ Sweeping
A method to decompose and mesh extrusion domains
Extrusion Volume: a surface is swept along a path.
This volume is delimited by:
• Source surface
• Target surface (#logical facesS = #logical facesT)
Linking sides (4 logical faces, #lateral faces =
#logical facesS)

Classification
One-to-one sweeping Many-to-one sweeping Many-to-many sweeping

Properties:
• Full automatic decomposition
• The decomposition leads to a compatible meshing of blocks
• Fast
58
4. Structured mesh generation methods

Basic tasks of a one-to-one sweeping


Target surface
1. To mesh the source surface (structured or unstructured)
2. To project the source surface mesh onto the target surface
3. To create structured meshes over the linking sides (TFI, …)
Important: The structured meshes of the linking sides
define the boundary of the inner layers
Sweep path

4. To project the cap surface meshes along the sweep path


(creating the inner nodes)
Linking sides
5. Create 3D elements

Source surface

Inner layers
There is not a underlying surface defining the inner Target surface mesh
layers Mapped from the source surface
The inner layers are defined by mesh
1. one outer loop There is an underlying geometry
2. as many inner loops as inner holes describing the surface (usually
The inner layers are created using a weighted from the CAD model)
interpolation
1- From the cap meshes
2. Layer by layer (in an advancing front manner)

59
4. Structured mesh generation methods

60
4. Structured mesh generation methods
· Initial surface and sweep path

60
4. Structured mesh generation methods
· Initial surface and sweep path

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)
· Linking sides meshes
(structured, TFI)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)
· Linking sides meshes
(structured, TFI)

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)
· Linking sides meshes
(structured, TFI)
· 3D mesh

60
4. Structured mesh generation methods
· Initial surface and sweep path
· Sweep volume
· 0D mesh
· 1D mesh
· 2D mesh
· Source surface mesh
(unstructured)
· Target surface mesh
(projected using least-squares or
other methods)
· Linking sides meshes
(structured, TFI)
· 3D mesh
· inner nodes
(projected using least-squares or
other methods)
and 3D elements
60
4. Structured mesh generation methods
▪ Some examples: one-to-one sweep meshes

61
4. Structured mesh generation methods
▪ Some examples: many-to-many meshes

62
4. Structured mesh generation methods
▪ Some examples: many-to-many meshes

63
4. Structured mesh generation methods
▪ Some examples: many-to-many meshes

64
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

65
5. Unstructured mesh generation methods

▪ Classification
• Methods for triangular and tetrahedral meshes
• Tree-based methods
• Advancing front
• Delaunay
• Combined approaches (Advancing-front Delaunay approach)
• Methods for quadrilateral and hexahedral meshes
• Indirect methods
• Qmorh / Hmorph
• Blossom-quad
• Direct methods
• Grid based
• Medial axis
• Paving / Plastering
• Cross field

66
5.a. triangular and tetrahedral meshing

▪ Triangular and tetrahedral mesh generation


Triangular and tetrahedral meshes are preferred by several
authors because:
• Easier to adapt to geometric features of the model
• Easier to adapt to large gradients in the element size field
• Accept local refinement easier to use in an adaptive
strategy

Image from S. Borovikov et al.


67
5.a. triangular and tetrahedral meshing

▪ Classification
• Tree-based methods
• Use trees to describe the geometry
• Geometry details and size field are caught by tree refinement
• Use templates to catch the geometry
• Advancing-front methods
• Starting at the boundaries, new layers of elements are added (outside-to-inside-
approach)
• High quality meshes (specially for boundary layers)
• Efficient and robust
• Delaunay methods:
• Given an initial triangulation, new nodes are added according to Delaunay criteria
(therefore, the connectivity is updated)
• Theoretical results about the minimum angle of the triangulation
• Efficient and robust
• Combined approaches (Advancing-front Delaunay approach)
• Increase the efficiency (intersection checking routine, ) and robustness (merging
fronts, ) of the advancing-front method

68
5.a. triangular and tetrahedral meshing

▪ Octree-based methods
• How it works?

Images from X. Liang & Y. Zhang

• Basic steps
• Create the tree
• Generate the mesh
• element size compatibility
• boundary compatibility
• cell subdivision (templates)
• Optimize the mesh
69
5.a. triangular and tetrahedral meshing

▪ What’s a tree?
Hierarchic data structure (used here to localize points in space)
Branch (parental quad)
Leaf (terminal quad)

Root quad

Efficient algorithms to move through the tree


• vertical (top-down, bottom-up) traversal: O(N log(N))
• horizontal (neighbor at the same level): traversal: O(1)
70
5.a. triangular and tetrahedral meshing

▪ One-level difference rule enforcement (tree balancing)


each two cells sharing at least an edge are at the same or
subsequent levels of hierarchic tree data structure

Smoother transition in the element size !

71
5.a. triangular and tetrahedral meshing

▪ Boundary refinement using a recursive subdivision until


prescribed tolerance
• desired cell size, desired cell level
• geometry features (curvature, geometric details, )

▪ Global refinement by recursive subdivision according to the


prescribed element size (background mesh, grid, sources)

▪ Terminal cell classification


• interior / boundary / exterior
• in / out test (round-off errors!!!)

72
5.a. triangular and tetrahedral meshing

▪ Once we have the tree we generate the mesh:


• Exterior cells are deleted
• Inner cells are partitioned using templates
• one-level difference rule one midside maximum
• Finite number of templates

• Boundary cells
• We only mesh the inner part of the mesh
• Compatibility between the boundary and cell
• Global smoothing (no new nodes or elements !!!)

73
5.a. triangular and tetrahedral meshing

▪ Examples

Images from J. Wang & Z. Yu

Images from N.Molino et.al.

74
5.a. triangular and tetrahedral meshing

▪ Advancing front method


• Pre-meshed boundary
• Layers advance inward from the boundaries
nice alignment with the boundaries (boundary layers)
• The front is a dynamic data structure (grows / reduces / appears
/ disappears)
• Several fronts may exist

75
5.a. triangular and tetrahedral meshing

▪ Main algorithm
1. Data input (boundary mesh, T, and element-size field)
2. Initialization of the front, F, with T
3. Analysis of the front F as long as F is not empty
• Select a front entry, f (based on a criterion)
• Determine the best point position Popt
• Determine if a point P exists in the current mesh that should be used
instead of Popt
• Generate element K using f and Popt
• Check if element K intersects any mesh entity.
4. Update the front and the current mesh
• Remove f from front F and any entity of F used to form K
• Add those entities of the new element K that belongs to the new front
• Update the current mesh T
5. If the front is not empty, return to step 3
6. Mesh optimization

76
5.a. triangular and tetrahedral meshing

▪ Algorithm illustration

77
5.a. triangular and tetrahedral meshing

▪ Critical aspects of the method:


• Robustness.
• The identification of the local situation at some neighborhood of a
point
• Numerical precision
sion (round off errors): checking for intersection of
o
edges, faces, 

• Processing time.
• Extensive searching,
hing, sorting and checking routines
• Efficient data structure: efficient access to the “neighborhood” of
given entity (Alternating Digital Tree, ADT)
• Quality.
• No theoretical results on the quality of the final mesh
• Isotropic and anisotropic meshes

78
5.a. triangular and tetrahedral meshing

▪ Some examples

Images from R. Lohner


79
5.a. triangular and tetrahedral meshing

▪ Some examples

Images from R. Lohner


79
5.a. triangular and tetrahedral meshing

▪ Some examples

Images from
Y. Ito et al

80
5.a. triangular and tetrahedral meshing

▪ Delaunay based methods


Given a set of s points
we define the Voronoi diagram associated to S as the set of cells

• Vi are the set of points closer to Pi than any other point in S


• Vi are closed (bounded or not) polygons
• They tile the space

Joining all the pairs of points Pi and Pj across p


polyhedral
olyyhe
eddral boundaries result in
a triangulation of the convex hull of S.
This triangulation is called Delaunay Triangulation (DT)

81
5.a. triangular and tetrahedral meshing
Theoretical properties
Empty Circle criterion: The circumcircle around every triangle of the DT contains no
vertices of the triangulation other than the three vertices that define the triangle

Min-max criterion: Of all p


possible
ossible triangulations
ngulat of a group
p of vertices,, the DT is the one
group o
that maximizes the minimum angle in the triangulation

Min circumcircle criterion: The DT minimizes the largest circumcircle that can be
constructed around any triangle

82
5.a. triangular and tetrahedral meshing

Algorithms
•Topological flipping Algorithms. They generate a Delaunay
triangulation without using the Voronoi diagram
Lawson C.L. (1977)

•Non-incremental algorithms. They require all vertex positions to


be known in advance.

Divide and Conquer algorithms


Shanos M.I. & Hoey D. (1975)
Lee D.T. & Schachter B.J. (1980)
Guibas L. & Stolfi J. (1985)
Sweep line algorithms
Fortune S.J. (1987)
Zalik B. (2005)
83
5.a. triangular and tetrahedral meshing
•Incremental algorithms (point insertion algorithms). Vertices are
added to the triangulation one at the time.
Green P.J. & Sibson R. (1978)
Bowyer & Watson algorithm
Bowyer A. (1981)
Watson D.F. (1981)

Issues:
• Insertion point criterion
Chew P.L. (1993)
Weatherill N.P. (1993)
Rupert (1995)
Borouchaki H.& George PL. (1997)

• Reconnection of the inserted point to the triangulation while


maintaining the Delaunay properties of the mesh.
84
5.a. triangular and tetrahedral meshing
•Incremental algorithms (point insertion algorithms).
Edge-flipping algorithm (Lawson, 1977)

Algorithm:
1. Form initial triangulation using boundary
boundary points and outer box
2. Replace an undesired element (bad or large) by inserting its
circumcenter, and split it into three triangles
3. If any of the circumcircle these triangles contain the opposite corner node
of a neighbouring triangle flip the diagonals
4. For every new triangle created by flipping the circumcircle test also has
to be carried out
5. Repeat until mesh is good
Properties:
• Will converge with high element qualities in 2-D
• Does not extend to 3D

85
5.a. triangular and tetrahedral meshing
•Incremental algorithms (point insertion algorithms).
Insertion polygon method (Bowyer – Watson, 1981)

Algorithm:
1. Form initial triangulation using boundary points and outer box
2. Replace an undesired element (bad or large) by inserting its
circumcenter
3. Identify all triangles such that the new point falls inside their circumcenter
(this enclosed polygon is called the insertion polygon)
4. Retriangulate the insertion polygon
5. Repeat until mesh is good

1
5.a. triangular and tetrahedral meshing
•Incremental algorithms (point insertion algorithms).
Insertion polygon method (Bowyer – Watson, 1981)

Algorithm:

Properties:
• Will converge with high element qualities in 2-D
• Extends to 3D
• Very fast – time almost linear in number of nodes
2
5.a. triangular and tetrahedral meshing

Quality of the elements:

Bad shaped elements can be generated

Sliver tet Spear tet Splinter tet Needle tet

87
5.a. triangular and tetrahedral meshing

Geometric predicates:
The two well-known predicates needed for Dealunay triangulations are:
• The orientation test

Decides on which side of the line Decides on which side of the plane oriented by
defined by two points lies a third point three non-aligned points lies a third point
r

t q t q

p p

88
5.a. triangular and tetrahedral meshing
• The in-sphere test
Given three positive oriented points, decides Given four positive oriented points, decides
when a fourth point lies inside the when a fifth point lies inside the
circumscribing circle of the three points circumscribing sphere of the four points
r r

t t

s
p q p q

89
5.a. triangular and tetrahedral meshing
To make the incremental algorithms more robust it is needed to
incorporate:

▪ More checking and correction procedures


[Borouchaki H, George PL, Lo SH, IJNME 39 3407-3437 (1996)]

▪ Adaptive precision floating point arithmetic and fast robust geometric


predicates
[Shewchuck JR. “Delaunay Refinement mesh generation” PhD thesis,
Carnegie Mellon University, Pittsburgh, USA (1997)]
[http://www.eecs.berkeley.edu/~jrs/]

90
5.a. triangular and tetrahedral meshing
Boundary recovery (Constrained Delaunay)
y)
For non-convex domains Dalaunay triangulation
may not conform to the boundary or might not
respect a given set of edges

Local edge flip

Point insertion (constraint partitioning)

Enforcing the constraints (specific algorithms)

91
5.a. triangular and tetrahedral meshing

▪ Some examples

Image from A. Loseille and R. Löhner

92
5.a. triangular and tetrahedral meshing

▪ Some examples

Image from F. Alauzet and D. Marcum

93
5.a. triangular and tetrahedral meshing

▪ Some examples

Image from F. Alauzet and D. Marcum

93
5.a. triangular and tetrahedral meshing

▪ Some examples

Image from F. Alauzet and D. Marcum

93
5.a. triangular and tetrahedral meshing

▪ Some example

Images from A. Loseille


94
5.a. triangular and tetrahedral meshing

▪ Some example

Images from A. Loseille


94
5.a. triangular and tetrahedral meshing

▪ Some example

Images from A. Loseille


94
5.a. triangular and tetrahedral meshing

▪ Some example

Images from A. Loseille


94
5.b. Quadrilateral and hexahedral meshing

▪ Quadrilateral and hexahedral mesh generation


Quadrilateral and hexahedral meshes are more constrained, and
therefore much more difficult to generate. However:
• Preferred by several authors (mixed formulations)
• Perform better in some applications where a strict alignment of
elements can be required by the analysis:
• boundary layers in computational fluid dynamics
y
• composites
p in solid mechanics

95
5
5.b. Quadrilateral and hexahedral meshing

▪ Classification
• Indirect methods
• Tri/tet Combine
• Qmorph, Hmorph
• Blossom
• Direct methods
• Grid based methods: quadtrees (2D),
D), octrees (3D)
• Medial axis
• Advancing front methods: Paving (2D), Plastering
g (3D)
(3D)
• Partition methods: Gen4U
• Cross field methods
• Dual methods
• Whisker Weaving
• Sheet manipulation

96
5.b. Quadrilateral and hexahedral meshing

▪ Indirect methods
• All methods work well for 2D problems
• Do not guarantee a full unstructured hex mesh in 3D
▪ Tri/Tet combine
• Two triangles can be combined to generate a quad

• A triangle can be subdivided in three quads

• The algorithm starts at a given boundary.


• The principal operation is merge adjacent triangle. The algorithm
select the “best choice”.
• However, triangle splitting can also occur.
• The algorithm delivers an all-quad mesh
97
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

Images by Steve Owen


98
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

Images by Steve Owen


98
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

Images by Steve Owen


98
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

Images by Steve Owen


98
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

Images by Steve Owen


98
5.b. Quadrilateral and hexahedral meshing

▪ Qmorph / Hmorph
• Uses an advancing front approach
• Local swaps applied to improve resulting quad
• Any number of triangles merged to create a quad
• Hex dominant meshes in 3D

98
5.b. Quadrilateral and hexahedral meshing
1. Generate regular grid of
▪ Grid based methods quads/hexes on the interior of
model
2. Mark inner elements that do
not touch the boundary.
3. Remove elements outside
the domain
4. Fit elements to the boundary
by projecting interior faces
towards the surfaces
Note that:
• Lower quality elements near
boundary
• Non-boundary conforming
• Extended to 3D. However low
quality elements may appear at
the boundary (on going
research)
99
5.b. Quadrilateral and hexahedral meshing

▪ Grid based methods


• Graded meshes (mesh refinement) is obtained using quadtree
(2D) or octrees (3D)

• Also used to generate tetrahedral meshes


• Specific topological operators and smoothing techniques are
typically used to conform curved boundaries

100
5.b. Quadrilateral and hexahedral meshing

▪ Medial axis
• The Medial Axis (or skeleton) of a 2D region is defined as the
locus of the center of all the maximal inscribed circle of the
object.

Image from A. Tagliasacchi et al.


• Extension to 3D: medial surface or surface skeleton of a 3D
object is the locus of centers of maximally inscribed balls
• Can be understood as a n-1 representation of an n-dimensional
object
• Extensively used in many disciplines:
computer graphics, medical imaging, computer aided design, visualization,
digital inspection, metrology, robotics, ...
101
5.b. Quadrilateral and hexahedral meshing

▪ Mesh generation: used to obtain a bloc decomposition of the


domain into simple subregions suitable for meshing with
hexahedral elements

Each part can be meshed Medial axis is sensitive to Degeneration to a line Degeneration
with a compatible quad small boundary to a point
mesh perturbations

▪ Advanced algorithms to compute an approximation of the the


medial surface

102
5.b. Quadrilateral and hexahedral meshing

▪ Some examples

Images from P. Sampl

Image from M.A. Price & C.G. Armstrong

Images from W.R.Quadros


103
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

104
5.b. Quadrilateral and hexahedral meshing

▪ Paving method (2D) / PLASTERING (3D)


• Pre-meshed boundary
• Layers advance inward from the boundaries

▪ Advantages:
• Fully automatic
• High quality meshes near the boundary
• Boundary meshes are respected (compatibility)
▪ Drawbacks
• May lead to mixed meshes in 3D
• Time consuming

104
5.b. Quadrilateral and hexahedral meshing

▪ Main operation

• Node classification

expanding
• Node location
• Wedge insertion (expanding areas)
contracting contracting
• Tuck formation (contracting areas)
• Seaming

• Small domains are closed using templates (loop closure)

• Front collision

105
5.b. Quadrilateral and hexahedral meshing

▪ Node classification
• Definition of node types from the internal angles

Side

Reversal
Corner

End

0o 90o 180o 270o 360o

End Side Corner Reversal

106
5.b. Quadrilateral and hexahedral meshing

▪ Node location

Element generation Node and element generation


at a row end node at a row side node

Node and element generation Node and element generation


at a row corner node at a row reversal node
107
5.b. Quadrilateral and hexahedral meshing

▪ Node location: wedge insertion

Node Ni is moved to position 1 Afterwards the front


A new quadrilateral
and another node is created at is smoothed
element is inserted
position 2

108
5.b. Quadrilateral and hexahedral meshing

▪ Node location: tuck formation

Node Ni+1 is
Contraction of size Two quadrilateral merged with node The front is
of the element elements are Ni-1 and a new smoothed after tuck
sides removed quadrilateral formation
element is formed

109
5.b. Quadrilateral and hexahedral meshing

▪ Seaming

The small angle at node Nj is


Nodes Ni-1 and Ni+1
The front overlaps with itself eliminated by merging nodes Nj-1
are merged into Nj
and Nj+1

Seaming is delayed to avoid


the formation of a badly Paving front overlaps itself Seaming is performed
shaped quadrilateral element

110
5.b. Quadrilateral and hexahedral meshing

▪ Small domains are closed using templates (loop closure)

▪ Extends to 3D (PLASTERING)
• Fails to generate a fully unstructured hex mesh for some
geometries
• Hex meshes are too much constrained !

111
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

112
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

113
5.b. Quadrilateral and hexahedral meshing

▪ Unconstrained Plastering
• Unmeshed boundary
• Layers advance inward from the boundaries

▪ Advantages:
• Fully automatic
• High quality meshes near the boundary
▪ Drawbacks
• May lead to mixed meshes
• Time consuming

113
5.b. Quadrilateral and hexahedral meshing

Images from M. Staten et al.

114
5.b. Quadrilateral and hexahedral meshing

Images from M. Staten et al.

114
5.b. Quadrilateral and hexahedral meshing

Images from M. Staten et al.

114
5.b. Quadrilateral and hexahedral meshing

Images from M. Staten et al.

114
5.b. Quadrilateral and hexahedral meshing

▪ Cross field based methods


• These methods initially sought a globally smooth
parameterization of the surface that does not require any
previous partition of the geometry.
• These parameterizations are derived from a
directional field
• Curvature
• Based on a PDE
• They provide well shaped
quadrilateral regions that
are almost structured

Images from F. Kälberer et al. Images from N. Ray et al.

115
5.b. Quadrilateral and hexahedral meshing

▪ These cross fields are used to compute an automatic


partitioning of an arbitrary geometry
▪ The cross field is prescribed on the boundary and propagated
towards the inner part using
• PDE
• fast marching algorithm
▪ Similar to sub-mapping but
• for arbitrary geometries !!!
• solve a PDE instead of linear integer problem
▪ A compatible quad mesh is generated from the partitioning

Images from N. Kowalski et al.


116
5.b. Quadrilateral and hexahedral meshing

▪ The method can be extended to surfaces

Images from H.J. Fogg et al.

▪ Also extended to hexahedral meshes

▪ Still exhibit some limitations Images from Y. Li et al.


• No guarantee of all-hex mesh for any
• Further research is needed to deal with non-constant element size
117
Layout of the course

1. Why do we need meshes?


2. Geometry description

3. Classification of mesh generation methods


4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

118
6. Mesh optimization and mesh adaption

▪ Summary
• Mesh optimization
• Quality measures
• Topological mesh optimization techniques
• Tri / Tets
• Quad / Hexes
• Mesh smoothing techniques
• Geometry based methods
• Optimization based methods

• Mesh adaption
• Basic concepts
• Embedded adaption
• New mesh generation

2D Images from V. Dolejsi

119
6. Mesh optimization and mesh adaption

▪ Quality measures
• Element quality. A continuous strictly monotonic function
▪ maximum for an ideal element and minimum for degenerated elements

▪ invariant under translation,


ti rotation,
t ti reflection and uniform scaling
• Mesh quality. Based on the quality of the elements in a mesh:
• Minimum / Maximum
• Arithmetic average / Geometric average

120
6. Mesh optimization and mesh adaption
▪ Examples
▪ Ratio between the inradius and the longest edge
▪ Ratio between the inradius and the circumradius

Singular
Ideal
Singular
Ideal
Invalid Valid

121
6. Mesh optimization and mesh adaption

▪ Which is the ideal for a given problem?


Distortion

Singular
▪ Algebraic quality measures
We can compute fS

Ideal
Quality
y

Singular
Shape Distortion

Ideal
Shape Quality
Invalid Valid

122
6. Mesh optimization and mesh adaption

▪ Topological mesh optimization techniques


• Objective. Improve the quality of a given mesh by
modifying the mesh topology (connectivity)
• Classification. According the dimension and element type
• 2D • 3D
Triangles Tetrahedra
Quadrilaterals Hexahedra
• Simple in 2D
• More complicated in 3D
• Tetrahedra. Optimize the number of edges around a node and the
number of faces around and edge. Complex series of local
topology operators !!
• Hexahedra. Difficult !! Local modifications propagate far away

123
6. Mesh optimization and mesh adaption

▪ Triangles (1/2)
• Edge swapping. Swap the shared edge of two triangles forming
a convex quadrilateral. It is the only local topological operator in
two dimensions.

• Node suppression. The set of the possible remeshings of the


polygon related to the triangles around a node are analyzed (in
terms of quality). Optimum remeshing is chosen.

5 triangles around The 5 triangulations related to a 5 points polygon


a node
124
6. Mesh optimization and mesh adaption

▪ Triangles (2/2)
• Edge suppression. Replace an edge by a node

• Edge splitting. Replace 2 triangles sharing and edge by 4


triangles adding a node along the shared edge.

125
6. Mesh optimization and mesh adaption

▪ Quadrilaterals
• Node suppression. Suppress all nodes with only to adjacent
quadrilaterals (doublet).

• Element removal.

• Edge removal.

126
6. Mesh optimization and mesh adaption

▪ Quadrilaterals boundary clean up


• Element removal at boundary.

• Element open at boundary.

• Removal of an element with two edges on boundary.

boundary

127
6. Mesh optimization and mesh adaption

▪ Tetrahedra
• Face swapping. Each inner face separates two tetrahedra, 5
nodes. There are two configurations:
• Inner tetrahedra. From 2 to 3 tetrahedra adding interior edge.

• Coplanar boundary. Base are coplanar on the boundary. We can


switch from 2 to 2 tetrahedra by swapping inner face.

Coplanar trianglesat boundary


128
6. Mesh optimization and mesh adaption

▪ Hexahedra
• Doublet. 2 quadrilateral faces sharing 2 edges !!
doublet face
doublet node
doublet face
doublet face
doublet node

doublet face

2 quadrilaterals 2 hexahedra

doublet

We cannot delete top and bottom edges

?
129
6. Mesh optimization and mesh adaption

▪ Hexahedra
• Pillowing (nonlocal in 3D):
• For every doublet face find shrink set

• Shrink sets

• Connect

130
6. Mesh optimization and mesh adaption

▪ How to apply topological operators?

1. Select a sequence of local operators


• Ordered sequence of operators: some operators can destroy
improvements of previous ones !!
2. For each operator
• Calculate mesh quality
• Select those elements to be improved
• Use topology operators and propose solutions
• Calculate the quality for the proposed solutions
• Select best solution (initial or proposed solutions)
3. Use next operator, step 2

131
6. Mesh optimization and mesh adaption

▪ Mesh smoothing
▪ Objective: Improve the quality of the mesh by changing the
location of nodes (no topological modifications)

▪ Classification:
• Laplacian like methods
• Based on mechanical analogies
• Optimization based methods

132
6. Mesh optimization and mesh adaption

▪ Laplacian smoothing
• General overview
• A number of smoothing techniques are lumped under this name
• It is the most commonly used and the simplest smoothing method.
• It can be applied to 2D (plane and surfaces) and 3D geometries.
• Advantages:
• This method is inexpensive to compute
• Drawbacks:
• It does not guarantee an improvement in the mesh quality
• Sometimes generate poor quality meshes
• Sometimes generate meshes with tangled elements (inner nodes
move out of the domain)

133
6. Mesh optimization and mesh adaption

▪ Laplacian smoothing
• For a structured and regular mesh:

• Extension to unstructured meshes

134
6. Mesh optimization and mesh adaption

▪ A more general formulation for the Laplacian method


This figure suggests a single isoparametric element with curved sides and
with the origin of the isoparametric coordinates at node “i “

The new location of node “i” is

Generalization for non structured meshes:

ω=0 laplacian method


ω=1 isoparametric method

135
6. Mesh optimization and mesh adaption

ω=0 ω=1
Laplacian method Isoparametric method

Extension to graded meshes:

ln is called the characteristic length


136
6. Mesh optimization and mesh adaption

▪ Extension to triangular meshes

All these methods has been extended to 3D (tets and hexes)

137
6. Mesh optimization and mesh adaption

▪ Smart Laplacian
• No effort is made to ensure that mesh quality is improved
• Poor elements (even tangled elements) can be generated

• Smart Laplacian algorithm


For each node
• Compute a quality measure:

• Compute the new position:

• Compute the new quality:

• If
138
6. Mesh optimization and mesh adaption

▪ Optimization based methods


• Minimization of an objective function:
• Several merit functions can be used: shape distortion measure

Shape Distortion

Shape Quality

Vertical Barriers !!!


Not can be used in a continuous
optimization procedure !!!

139
6. Mesh optimization and mesh adaption

▪ Regularization of the shape distortion measure

Singular
No Barriers !!!
Can be used in a continuous
optimization procedure !!!

Ideal
Untangle capabilities !!!

140
Layout of the course
1. Why do we need meshes?
2. Geometry description
3. Classification of mesh generation methods
4. Structured mesh generation methods
5. Unstructured mesh generation methods
6. Mesh optimization and mesh adaption
7. Concluding remarks

141
8. Concluding remarks

▪ Mesh generation is
• a required step in the numerical simulation process
has a major impact in industry
• directly related to the geometry representation (CAD model,
images, )
• directly related to the physics of the problem
• directly related to the numerical method used in the
simulation
• a thrilling research field where engineering and
mathematical skills are combined
• a path that we are paving
Torture
Painful process
Innocuous treatment
Pleasant experience
142
8. Concluding remarks

▪ Research lines (tentative list)


• Automatic geometry (CAD, image, ) adaption (cleaning,
healing, )
• Automatic geometry decomposition
• Unstructured hexahedral mesh generation (there not exist an
automatic unstructured mesh generation algorithm for
hexahedral meshes)
• Anisotropic mesh adaption
• High-order mesh generation
• Mesh morphing
• N-1 model representation (medial axis, skeletons, )
• Specific methods/applications require specific meshes:
• always something to do 
• hopefully we will still get paid !!!

143
8. Concluding remarks

▪ Suggested readings
• Thompson J.F., Soni B.K., Weatherill N.P, Handbook of Grid
Generation, CRC Press, 1999
• Frey P., George P.L., Mesh Generation, John Wiley & Sons,
2000
• George P.L., Borouchaki H., Delaunay Triangulation and
Meshing, Hermes, Paris, 1998
• Lo, S.H., Finite Element Mesh Generation. London: CRC Press,
2015
• Topping B.H.V., Muylle J., Putanowicz R. Cheng B., Finite
Element Mesh Generation, Saxe-Coburg Publications, 2004
• Knupp P., Steinberg S., Fundamentals of Grid Generation, CRC
Press, 1993
• International Meshing Roundtable (http://imr.sandia.gov/)

144
nk y o u !
T h a
145

You might also like