100% found this document useful (2 votes)
787 views

Mesh Generation in CFD PDF

Uploaded by

Cora
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
100% found this document useful (2 votes)
787 views

Mesh Generation in CFD PDF

Uploaded by

Cora
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/ 433

1

CFD Open Series


Patch 1.86.7

Mesh Generation in
CFD
Edited and Adapted by :
Ideen Sadrehaghighi, Ph.D.

Cyliner Head -
(Polyhedral cells) Mixer (SAMM cells)

Typical Turbo-Machine Wing-Body-Pylon-Nacelle


Mesh (Hexahedral cells) (Tetrahedral cells)

ANNAPOLIS, MD
2

Figure I Painting by Lu Xinjian - Constellation / Virgo, Dia. 150cm, Acrylic on Canvas, 2015

Figure II Artistic Rendering by Lu Xinjian - City DNA /London 200 x 400, Acrylic on Canvas, 2013
3

Figure III Using Simulation to Understand Avian Nest Design Strategies +FE Mesh Generation
Module of ScanIP to be Used for Conversion of the Segmented 3D Image Data into High Quality
Volumetric Meshes, Courtesy of Simpleware™ Product Group at Synopsys
4

Contents

1 Introduction ................................................................................................................................ 29
1.1 The Black Box Dilemma .................................................................................................................................... 29
1.1.1 Trust the Mesh Generated by the Software, or Take a Proactive Approach? .................. 29
1.1.2 Not All the Meshes Created Equal ..................................................................................... 29
1.1.3 The Mesh Types ................................................................................................................. 30
1.1.4 Regional Meshing .............................................................................................................. 31
1.1.5 Simulation Cost .................................................................................................................. 31
1.1.6 Physics vs. Mesh ................................................................................................................ 32
1.1.7 Meshing Generalities ......................................................................................................... 32
1.2 Classification of Mesh Generation Techniques ....................................................................................... 33
1.2.1 Field (Domain) Discretization Process (Mesh Generation)................................................ 35

2 Computer-Aided Design (CAD) ............................................................................................. 36


2.1 Software and Technology ................................................................................................................................ 36
2.1.1 Commercially Available CAD Systems: .............................................................................. 37
2.1.2 Freeware and Open Source ............................................................................................... 38
2.2 Solid (Geometry) Modeling ............................................................................................................................. 38
2.2.1 Principal Characteristics of a Solid Modeling Software ..................................................... 38
2.2.2 Feature-Based Modeling ................................................................................................... 38
2.2.3 Constraint-Based Modeling ............................................................................................... 38
2.2.4 Parametric Modeling ......................................................................................................... 39
2.2.4.1 Parameter Space .......................................................................................................... 39
2.2.5 History-Based Modeling .................................................................................................... 39
2.2.6 Associative Modeling ......................................................................................................... 39
2.3 Constructive Solid Geometry (CSG) Representation of Solids.......................................................... 40
2.3.1 Basic Primitives .................................................................................................................. 40
2.3.2 Regularized Boolean Operators ......................................................................................... 40
2.4 The CSG Tree ......................................................................................................................................................... 41
2.5 Geometry Related Issues For Mesh Generation ..................................................................................... 41
2.5.1 Understanding the Analysis Requirements ....................................................................... 41
2.5.2 Dis-Featuring...................................................................................................................... 42
2.5.3 “Dirty” Geometry ............................................................................................................... 43
2.5.4 Non-Manifold Geometry ................................................................................................... 43

3 Topology and Blocking............................................................................................................ 45


3.1 Mesh Topology ..................................................................................................................................................... 45
3.2 Conformal Mapping of Simply-Connected (The Sponge Analogy) ................................................. 46
3.3 Domain Decomposition with Multi-Blocking .......................................................................................... 47
3.4 Further Remarks on Block Topology For Multi-Block Meshing ...................................................... 50
3.4.1 Hybrid Blocking .................................................................................................................. 53
3.4.2 Hierarchical Geometry Handling ....................................................................................... 55
3.4.3 Body Force Modeling ......................................................................................................... 55
3.4.4 Results ............................................................................................................................... 56
3.4.4.1 NASA CRM Wing-Body-Tail ........................................................................................... 56
3.4.4.2 Jet-Wing-Flap ................................................................................................................ 57
5

3.4.4.3 Engine-Wing-Flap ......................................................................................................... 58

4 Structured Mesh Generation ................................................................................................. 60


4.1 Complex Variables .............................................................................................................................................. 60
4.2 Algebraic Methods -Transfinite Interpolation (TFI) ............................................................................ 60
4.2.1 Blending Function .............................................................................................................. 60
4.2.1.1 Case Study- Rapid Meshing System For Turbomachinery ............................................ 63
4.3 PDE Smoother....................................................................................................................................................... 64
4.3.1 Elliptic Schemes ................................................................................................................. 65
4.3.1.1 Case Study – Orthogonal Elliptic Mesh Smoother ....................................................... 66
4.3.1.2 Orthogonality Adjustment Algorithm........................................................................... 66
4.3.1.3 Case Study - Boundary Orthogonality in Elliptic Mesh Generation.............................. 67
4.3.1.3.1 Boundary Orthogonality for Planar Grids........................................................... 69
4.3.1.3.2 Neumann Orthogonality..................................................................................... 70
4.3.1.3.3 Dirichlet Orthogonality ....................................................................................... 72
4.3.1.3.4 Blending of Orthogonal and Initial Control Functions........................................ 76
4.3.1.3.5 Boundary Orthogonality for Surface and Volume Meshes (3D) ........................ 78
4.3.1.4 Stretching Functions ..................................................................................................... 78
4.3.1.5 Extension to 3D............................................................................................................. 79
4.3.1.6 Mesh Quality Analysis .................................................................................................. 79
4.3.2 Hyperbolic Schemes .......................................................................................................... 79
4.3.3 Parabolic Schemes ............................................................................................................. 80
4.4 Variational Method ............................................................................................................................................. 80
4.4.1 Variational High-Order Mesh Generation ........................................................................ 81
4.5 Structured Adaptive Grid ................................................................................................................................. 82
4.5.1 Case Study – 2D Euler Flow Over an NACA Airfoil ............................................................. 83

5 Un-Structured Mesh Generation I ....................................................................................... 86


5.1 Spatial Discretization......................................................................................................................................... 86
5.2 Connectivity Information and Data Structure ......................................................................................... 87
5.3 Considerations for the Navier-Stokes Equation ..................................................................................... 88
5.4 Hierarchy of Unstructured Meshing............................................................................................................ 89
5.5 Unstructured Quadrilateral Mesh Generation (2D).............................................................................. 90
5.5.1 Geometry Representation ................................................................................................. 91
5.5.2 Local Mesh Generation Algorithm ..................................................................................... 91
5.5.3 Conversion of Triangular to Quadrilateral Meshes ........................................................... 93
5.6 Cartesian Meshes ................................................................................................................................................ 94
5.6.1 Background and Cartesian Grid Origins............................................................................. 94
5.6.2 Cartesian Grids Schemes ................................................................................................... 96
5.6.2.1 Adaptive Mesh Refinement (AMR)............................................................................... 97
5.6.2.2 Immersed Boundary Methods...................................................................................... 99
5.6.2.3 Volume of Fluid Methods ........................................................................................... 100
5.6.2.4 Reconstruction Schemes ............................................................................................ 100
5.6.2.5 Cut Cell Based Methods.............................................................................................. 100
5.6.2.6 Chimera Grid Schemes ............................................................................................... 101
5.6.2.7 Hybrid Grid Schemes .................................................................................................. 102
5.6.2.7.1 Composite Grid Approach ................................................................................ 103
6

5.6.3 Discussion ........................................................................................................................ 104


5.7 Octree Decomposition .................................................................................................................................... 106
5.8 Overset Meshes ................................................................................................................................................. 107

6 Un-Structured Mesh Generation II ................................................................................... 109


6.1 Advancing Front Method .............................................................................................................................. 109
6.1.1 Advancing Front Triangular Mesh Generator .................................................................. 110
6.1.2 Advancing Front Quadrilateral Meshing Using Triangle Transformations ...................... 112
6.1.2.1 Initial Triangle Mesh ................................................................................................... 112
6.1.2.2 Front Edge Classification ............................................................................................ 112
6.1.2.3 Front Edge Processing ................................................................................................ 112
6.1.2.4 Topological Clean-Up and Final Smoothing Process .................................................. 114
6.1.2.5 Example Problems ...................................................................................................... 114
6.1.2.6 Conclusion .................................................................................................................. 117
6.2 Delaunay Triangulation Method ................................................................................................................ 117
6.2.1 Properties of Delaunay Triangulation.............................................................................. 117
6.2.1.1 Delaunay Lemma ........................................................................................................ 118
6.2.1.2 Compactness .............................................................................................................. 118
6.2.2 Algorithms ....................................................................................................................... 118
6.2.3 Advantages ...................................................................................................................... 119
6.2.4 Delaunay Adaptive Refinement ....................................................................................... 120
6.2.5 Voronoi Diagrams ............................................................................................................ 121
6.2.6 Restricted Delaunay Triangulation .................................................................................. 122
6.3 Trimmed (SAMM) Cells ................................................................................................................................. 123
6.4 Polyhedral Cells ................................................................................................................................................ 123
6.4.1 Cell Decomposition .......................................................................................................... 124
6.4.2 Mesh Duality .................................................................................................................... 124
6.4.3 Methodology ................................................................................................................... 125
6.4.3.1 Polyhedral Mesh Generation and Evading Concave Geometrical Edges ................... 126
6.5 Treatment of Boundary Layer .................................................................................................................... 127
6.6 Domain Mesh Stretching in Unstructured Environment ................................................................. 129
6.7 Meshing from Image Data............................................................................................................................. 130
6.7.1 Case Study - Design Principles of Biologically Fabricated Avian Nests ............................ 131
6.7.1.1 Methods ..................................................................................................................... 132
6.7.1.1.1 Nests ................................................................................................................. 132
6.7.1.1.2 CT Scans ............................................................................................................ 132
6.7.1.1.3 Image Processing .............................................................................................. 132

7 Anisotropic Mesh Generation ............................................................................................ 135


7.1 Case Study - Anisotropic Mesh Generation via Discretized Riemannian Delaunay
Triangulations................................................................................................................................................................ 135
7.1.1 Anisotropic Delaunay Triangulations............................................................................... 137
7.1.1.1 Locally Uniform Anisotropic Meshes .......................................................................... 137
7.1.1.2 Metric Tensor ............................................................................................................. 138
7.1.1.3 Distortion .................................................................................................................... 139
7.1.1.4 Locally Uniform Anisotropic Meshes .......................................................................... 139
7.1.1.5 The Star Set................................................................................................................. 140
7

7.1.1.6 Stars and Inconsistencies............................................................................................ 141


7.1.2 Refinement Algorithm ..................................................................................................... 141
7.1.3 Discussion on the Parameters ......................................................................................... 142
7.1.3.1 Parameter φ0 ............................................................................................................. 142
7.1.3.2 Parameters r0 and ρ0................................................................................................... 143
7.1.3.3 Parameters β and δ .................................................................................................... 143
7.1.3.4 Parameters σ0 ............................................................................................................. 144
7.1.4 Results and Limitations.................................................................................................... 144
7.1.4.1 Uniform Metric Fields ................................................................................................. 144
7.1.4.2 Shock-Based Metric Fields on Planar Domains .......................................................... 144
7.1.4.3 Starred ........................................................................................................................ 145
7.1.4.4 Hyperbolic................................................................................................................... 145
7.1.4.4.1 Swirl .................................................................................................................. 146
7.1.4.4.2 Curvature-Based Metrics Fields on Surfaces .................................................... 146
7.1.4.4.3 Optimization ..................................................................................................... 147
7.1.4.5 Discrete Riemannian Voronoi Diagrams..................................................................... 147
7.1.4.5.1 Advantages Over Isotropic Canvasses .............................................................. 147
7.1.4.5.2 Straight Riemannian Delaunay Triangulation................................................... 148
7.1.4.5.3 Curved Riemannian Delaunay Triangulation .................................................... 150
7.1.4.6 Conclusion .................................................................................................................. 150

8 Hybrid Meshes I ...................................................................................................................... 153


8.1 Recent Advances in Hybrid Mesh Generation and Literature Survey ........................................ 153
8.1.1 Parallel Consideration...................................................................................................... 153
8.1.2 Local Remeshing .............................................................................................................. 153
8.1.3 Background Mesh ............................................................................................................ 154
8.1.4 Boundary Viscous Meshes & Sharp Corners ................................................................... 155
8.1.5 Procedures for Mesh Generation .................................................................................... 155
8.1.6 Dynamic Mesh ................................................................................................................. 157
8.1.7 Adaptation ....................................................................................................................... 158
8.2 Accuracy Consideration................................................................................................................................. 159
8.2.1 Comparing Mesh Type for Viscous Accuracy................................................................... 160
8.3 Extrusion Layer for Boundaries ................................................................................................................. 160
8.3.1 Extrude............................................................................................................................. 160
8.3.2 Sweep .............................................................................................................................. 161
8.3.3 Typical Automated Meshing with Prismatic Layer .......................................................... 162
8.3.4 Effect of Prismatic Extrusion Sub-Layer in Viscous Layer ................................................ 162
8.3.5 A Novel Methodology for Extrusion Layer Meshing........................................................ 163
8.4 Mesh Refinement.............................................................................................................................................. 164
8.4.1 R-Refinement ................................................................................................................... 165
8.4.2 H-Refinement .................................................................................................................. 165
8.4.2.1 Isotropic vs. Anisotropic Meshing .............................................................................. 166
8.4.3 P-Refinement ................................................................................................................... 167
8.5 Mesh Modification Operators...................................................................................................................... 168
8.5.1 Coarsening Triangulation Regions ................................................................................... 168
8.5.1.1 Case Study - Numerical Testing for Engine Nacelle .................................................... 169
8.5.1.2 Coarsening With/Without Local Re-Triangulation .................................................... 170
8.5.2 Refinement of Triangulation Region............................................................................... 170
8

8.5.2.1 Local Re-Triangulation ................................................................................................ 171


8.5.3 Refinement of Hexahedral Region (Near Wall) ............................................................... 172
8.5.3.1 Improvement to Near-Field Grid Generation Procedure (Hexahedral) ..................... 173
8.5.4 Discretization Improvement Through Chimera Technique for Sharp Corners ................ 175
8.6 Listing of Available Meshing Software .................................................................................................... 176
8.7 Meshing Challenges for Applied Aerodynamics .................................................................................. 176
8.7.1 Experience ....................................................................................................................... 177
8.7.2 Observations .................................................................................................................... 177

9 Hybrid Meshes II , Multi-Gridding & (Case Studies)................................................. 178


9.1 Case Study - Hybrid Unstructured Meshes for Common Research Model (CRM & JSM) via
ANSA®................................................................................................................................................................................ 178
9.1.1 Geometry and Mesh Generation Background................................................................. 179
9.1.2 Geometry Handling.......................................................................................................... 180
9.1.2.1 The CRM Model ......................................................................................................... 180
9.1.2.2 The JSM Model ........................................................................................................... 180
9.1.3 Surface Meshing ............................................................................................................ 181
9.1.4 Volume Meshing .............................................................................................................. 185
9.1.4.1 Extrusion Layers Generation ...................................................................................... 185
9.1.4.2 Tetra Meshing............................................................................................................. 186
9.1.5 Sample CFD Results ......................................................................................................... 187
9.1.5.1 CRM ............................................................................................................................ 187
9.1.5.2 JSM ............................................................................................................................. 188
9.2 Multigrid Methods ........................................................................................................................................... 189
9.2.1 Multigrid Cycle ................................................................................................................. 190
9.2.2 Unstructured Mesh Cycling ............................................................................................. 190
9.2.3 Viscous Flow Consideration ............................................................................................. 192
9.2.3.1 Case Study 1 - Development and Application of Agglomerated Multigrid Methods for
Complex Geometries ................................................................................................................. 192
9.2.3.1.1 Introduction...................................................................................................... 193
9.2.3.1.2 Discretization .................................................................................................... 193
9.2.3.1.3 Agglomeration Scheme .................................................................................... 194
9.2.3.1.4 Single-Grid Iterations........................................................................................ 199
9.2.3.1.5 Multigrid V-Cycle .............................................................................................. 199
9.2.3.1.6 Inter-Grid Operators......................................................................................... 199
9.2.3.1.7 Coarse-Grid Discretization................................................................................ 200
9.2.3.1.8 Relaxations ....................................................................................................... 201
9.2.3.1.9 Cost of Multigrid V-Cycle .................................................................................. 201
9.2.3.1.10 Results for Complex Geometries ...................................................................... 203
9.2.3.1.11 Model Diffusion Equation................................................................................. 203
9.2.3.1.12 Inviscid Flows.................................................................................................... 204
9.2.3.1.13 Turbulent Flows (RANS).................................................................................... 204
9.2.3.1.14 Concluding Remarks ......................................................................................... 205
9.2.3.1.15 References ........................................................................................................ 205
9.2.4 Case Study 2 - A 3D Hybrid Grid Generation Technique and a Multigrid/Parallel Algorithm
Based on Anisotropic Agglomeration Approach............................................................................. 206
9.2.4.1 Introduction, Background and Contributors .............................................................. 206
9.2.4.2 Hybrid Grid Generation Technique Based on Anisotropic Agglomeration Approach 208
9

9.2.4.3 Prism Grid Generation Method Based on Anisotropic Agglomeration Approach ..... 209
9.2.4.3.1 Volume Agglomeration .................................................................................... 209
9.2.4.3.2 Interface Agglomeration .................................................................................. 210
9.2.4.4 Multigrid/Parallel Algorithm....................................................................................... 210
9.2.4.5 Multi-Level Coarser Grid Generation Based on Anisotropic Agglomeration Approach
210
9.2.4.6 Applications and Discussions ...................................................................................... 211
9.2.4.6.1 Subsonic Turbulence Flow Over 2D 30P30N Airfoil ......................................... 212
9.2.4.6.2 Transonic Turbulence Flow over ONERA M6 Wing .......................................... 212
9.2.4.6.3 Transonic Turbulence Flow over DLR-F6 Wing-Body Configuration ................ 213
9.2.4.7 Concluding Remarks ................................................................................................... 215

10 Adaptive Mesh (Unstructured) ......................................................................................... 218


10.1 Adaptive Meshing by Subdivision ....................................................................................................... 218
10.2 Adaptive Mesh Refinement (AMR) ..................................................................................................... 219
10.2.1 Generalities...................................................................................................................... 220
10.2.2 Cell Division for a Geometry ............................................................................................ 222
10.2.2.1 Division Criteria ..................................................................................................... 222
10.2.3 Uniform AMR ................................................................................................................... 223
10.2.3.1 Transient Inviscid Flow .......................................................................................... 223
10.2.4 Case Study 1 - An Adaptive Hybrid Mesh Generation Method for Complex Geometries
224
10.2.4.1 Mesh Stitching ....................................................................................................... 224
10.2.4.1.1 Removal of Background Mesh Elements .......................................................... 224
10.2.4.2 Triangulation ......................................................................................................... 224
10.2.4.3 Test Cases .............................................................................................................. 224
10.2.4.3.1 30P30N Multi-Element Airfoil .......................................................................... 224
10.2.4.3.2 2D Fuel Cell Slice............................................................................................... 225
10.2.5 Case Study 2 – Unstructured Mesh Adaptation for 2D Airfoil......................................... 225
10.2.5.1 Adaption Control Mechanism ............................................................................... 227
10.2.6 Case Study 3 – Parallel Implementation of Unstructured Mesh Refinement of Duct Flow
227
10.2.7 Case Study 4 – Generic Transonic Store Release............................................................. 228
10.2.8 Case Study 5 - Adaptive Hybrid Mesh Refinement for Multiphysics Applications .......... 229
10.2.8.1 Adaptive Hybrid Mesh Optimization ..................................................................... 230
10.2.8.2 Hybrid Adaptive Meshing ...................................................................................... 232
10.2.8.3 Meshing and Load Balancing. ................................................................................ 233
10.2.8.4 Conclusions............................................................................................................ 234
10.3 Strategies for Driving Mesh Adaptation in CFD............................................................................. 234
10.3.1.1 Feature-Based Adaption ........................................................................................ 235
10.3.1.2 Discretization Error and Recovery-Based Adaption .............................................. 236
10.3.1.3 Adjoint-Based Adaption ........................................................................................ 237
10.3.1.4 Truncation Error-Based Adaption.......................................................................... 237
10.3.2 Current Approach for Performing Mesh Adaptation ...................................................... 237
10.3.3 Case Study - Mesh Adaption Results for 1D Burgers Equation (Re = 32) ........................ 239
10.4 A Solution-Based Adaptive Redistribution Method for Unstructured Meshes ................ 240
10.4.1 Introduction & Literature Survey .................................................................................... 240
10.4.2 Feature Detection ............................................................................................................ 241
10

10.4.3 Extraction of Solution Feature Surfaces .......................................................................... 242


10.4.3.1 Case Study 1 - NACA0012 Wing-Section ............................................................... 243
10.4.3.2 Case Study 2 - Capsule Model ............................................................................... 244

11 Dynamic Meshing ................................................................................................................... 247


11.1 Type of Mesh Motion ................................................................................................................................ 247
11.2 Mesh Deformation ..................................................................................................................................... 248
11.3 Finite Volume in Dynamic Mesh .......................................................................................................... 248
11.4 Dynamic Mesh Techniques .................................................................................................................... 249
11.4.1 Laplacian Mesh Morphing ............................................................................................... 249
11.4.2 Pseudo-Solid Equation ..................................................................................................... 250
11.4.2.1 Case Study – Motion of a Cylinder ........................................................................ 250
11.4.3 Bi-harmonic Equation ...................................................................................................... 251
11.4.4 Radial Basis Function ....................................................................................................... 252
11.4.4.1 Case Study - Application to Outlet Guide Vane Geometry Matching ................... 253
11.4.5 Generalized Grid Interface .............................................................................................. 255
11.4.6 Overset Methods ............................................................................................................. 257
11.4.7 Delaunay Method ............................................................................................................ 257
11.4.7.1 Case Study - Airfoil Rotation .................................................................................. 258
11.4.8 Spring Analogy ................................................................................................................. 259
11.4.9 Six Degrees of Ferndom (6 DOF)...................................................................................... 259
11.4.9.1 Transitional Deformation ...................................................................................... 259
11.4.9.2 Rotational Deformation......................................................................................... 259
11.5 Dynamically Adaptive Mesh Refinement (DAMR) ....................................................................... 260
11.5.1 Case Study - Dynamically Adaptive Mesh Refinement FDTD: A Stable and Efficient
Technique for Time-Domain Simulations ....................................................................................... 261
11.5.1.1 Numerical Results .................................................................................................. 262

12 Assessment of Mesh Types................................................................................................ 264


12.1 Structured vs. Unstructured .................................................................................................................. 264
12.1.1 Time and Memory ........................................................................................................... 264
12.1.2 Resolution ........................................................................................................................ 264
12.1.3 Alignment ........................................................................................................................ 264
12.1.4 Definable Normal............................................................................................................. 264
Effect of Cell Topology in Truncation Error ..................................................................... 265
12.1.5 Polyhedral vs. Tetrahedral ............................................................................................... 265
12.1.5.1 Boundary Prismatic Cells ....................................................................................... 266
12.2 Accuracy Assessment of Gradient Calculation Methods ........................................................... 268
12.2.1 Geometric Properties ...................................................................................................... 268
12.2.2 Literature Survey ............................................................................................................. 268
12.2.3 Gradient Calculation ........................................................................................................ 269
12.2.3.1 Green-Gauss Gradient Method ............................................................................. 269
12.2.3.2 GG-Simple Face Averaging .................................................................................... 269
12.2.3.3 GG-Inverse Distance Weighted (IDW) Face Interpolation .................................... 270
12.2.4 Visual Inspection .............................................................................................................. 271
12.2.5 Results Based on L2 Norm ................................................................................................ 272
12.2.6 Concluding Remarks ........................................................................................................ 273
11

12.3 Automatic Mesh Generation Envisioned by Pointwise .............................................................. 273


12.3.1 Automated Solid Model Assembly .................................................................................. 273
12.3.2 Automated Surface Meshing ........................................................................................... 275
12.3.3 Automated Volume Meshing .......................................................................................... 275
12.3.4 Hybrid Meshes ................................................................................................................. 275
12.3.5 Automated Meshing via Scripted Templates .................................................................. 276
12.4 High-Order Mesh Generation ................................................................................................................ 276
12.4.1 High Order Edge Generation via Interpolating Curves .................................................... 278
12.4.1.1 Lagrange Interpolating Polynomials ...................................................................... 278
12.4.1.2 Hermite Interpolating Polynomials ....................................................................... 279
12.4.1.3 Bézier Curves ......................................................................................................... 279
12.4.2 High-Order Surface Generation ....................................................................................... 280
12.4.3 High-Order CFD Methods in Industrial Applications ....................................................... 283
12.4.3.1 Methodologies ...................................................................................................... 283
12.4.3.2 Analytic Curving ..................................................................................................... 284
12.4.3.3 Projection Curving ................................................................................................. 285
12.4.3.4 Case Study - Example Application of Elemental RP1 Road Car ............................. 286
12.4.4 Application of Optimization Framework ......................................................................... 290
12.4.4.1 Quality Metric........................................................................................................ 290
12.4.4.2 Case Study 1 - Simple 2D Demonstration Case ..................................................... 291
12.4.4.3 Dealing with Very High Polynomial Orders ........................................................... 291
12.4.4.4 Case Study 2 - Sphere Within a Cube .................................................................... 292
12.4.4.5 Case Study 3 - DLR F6 ........................................................................................... 294
12.4.4.6 Case Study 4 - CAD Sliding ..................................................................................... 295
12.4.4.7 Case Study 5 - Boeing Reduced Landing Gear ...................................................... 295
12.4.4.8 Case Study 6 - Example of application: NACA Wing .............................................. 298

13 Comparisons of Structured vs. Unstructured Meshes ............................................... 300


13.1 Case Study 1 – Flow through Pipe with 90 Deg, Bend ................................................................ 300
13.2 Case Study 2 - Comparison of Hexa-Structured and Hybrid-Unstructured Meshing
Approaches for Numerical Prediction of the Flow Around Marine Propellers .................................. 301
13.2.1 Introduction & Contributions .......................................................................................... 302
13.2.2 Propeller Models ............................................................................................................. 303
13.2.3 Numerical Method........................................................................................................... 303
13.2.4 Meshing ........................................................................................................................... 304
13.2.5 Results ............................................................................................................................. 305
13.2.5.1 Propeller A ............................................................................................................. 306
13.2.5.2 Propeller P5168 ..................................................................................................... 307
13.2.6 Conclusions ...................................................................................................................... 308
13.3 Case Study 3 – Structure & Unstructured Hybrid Meshing and its effect on Quality of
Solution on Turbine Blade ........................................................................................................................................ 309
13.3.1 Applications .......................................................................... Error! Bookmark not defined.
13.3.2 Results ............................................................................................................................. 309
13.4 Case Study 4 - Evaluation of Structured vs. Unstructured Meshes for Simulating
Respiratory Aerosol Dynamics ............................................................................................................................... 310
13.4.1 Bifurcation Model, Boundary Conditions, and Contributions ......................................... 310
13.4.2 Mesh Types ...................................................................................................................... 311
13.4.2.1 Structured .............................................................................................................. 311
12

13.4.2.2 Unstructured ......................................................................................................... 312


13.4.3 Governing Equations ....................................................................................................... 313
13.4.4 Numeric Method ............................................................................................................. 314
13.4.5 Results ............................................................................................................................. 316
13.4.5.1 Validation Studies .................................................................................................. 316
13.4.5.2 Grid Convergence .................................................................................................. 316
13.4.5.3 Velocity Fields ........................................................................................................ 318
13.4.5.4 Particle Deposition ................................................................................................ 318
13.4.6 Discussion ........................................................................................................................ 321
13.4.6.1 Advantages of Hexahedral Structured Mesh ........................................................ 322
13.4.7 Conclusion ....................................................................................................................... 323
13.5 Case Study 5 - Comparison Between Structured Hexahedral and Hybrid Tetrahedral
Meshes Generated by Commercial Software for CFD Hydraulic Turbine Analysis ........................... 323
13.5.1 Problem Description ........................................................................................................ 324
13.5.2 Geometry ......................................................................................................................... 325
13.5.3 Mesh Description............................................................................................................. 325
13.5.3.1 Structured Hexahedral Meshes ............................................................................. 326
13.5.3.2 Hybrid Tetrahedral Mesh ...................................................................................... 327
13.5.4 CFD Solution Strategy and Boundary Conditions ............................................................ 327
13.5.5 Results ............................................................................................................................. 328
13.5.6 Conclusion ....................................................................................................................... 330

14 Mesh Sensitivity and Mesh Independence Study ........................................................ 332


14.1 Different Types of Mesh Sensitivity.................................................................................................... 332
14.1.1 Symbolic Differentiation .................................................................................................. 332
14.1.2 Automatic Differentiation ............................................................................................... 332
14.1.2.1 Symbolic vs Automatic Differentiation.................................................................. 332
14.1.3 Finite Differencing ........................................................................................................... 332
14.2 Mesh Sensitivity via Direct Differentiation (DD) .......................................................................... 333
14.2.1 Surface Modeling Using NURBS....................................................................................... 333
14.2.1.1 Case Study - 2D Study of Airfoil Grid Sensitivity via Direct Differentiation (DD) .. 335
14.3 Adjoint Variable Sensitivity Analysis (AV) ...................................................................................... 336
14.3.1 Case Study - Using An Adjoint Approach to Eliminate Mesh Sensitivities in Computational
Design 338
14.3.1.1 Introduction ........................................................................................................... 338
14.3.1.2 Mesh Sensitivities via Forward Mode Differentiation........................................... 339
14.3.1.3 Adjoint Approach for Eliminating Mesh Sensitivities ............................................ 340
14.3.1.3.1 Implementation ................................................................................................ 341
14.3.2 Consistency of Linearization ............................................................................................ 342
14.3.3 Test Case - Slotted Wing–Body Configuration................................................................. 343
14.3.4 Summary and Conclusions............................................................................................... 344
14.3.5 References ....................................................................................................................... 345
14.4 Case Study - Mesh Sensitivity Through An Algorithm to Detect High-Γ Regions for
Unstructured Mesh in Two Dimensions.............................................................................................................. 347
14.4.1.1 Algorithm to Compute Γ........................................................................................ 347
14.4.2 Results ............................................................................................................................. 347
14.4.3 Concluding Remarks ........................................................................................................ 348
14.4.4 References ....................................................................................................................... 348
13

14.5 Mesh Independence Study ..................................................................................................................... 350

15 Some Common Meshing Attributes ................................................................................. 353


15.1 Some Special Issues in Meshing Envisioned by Commercial Venders ................................. 353
15.1.1 Centaur® ........................................................................................................................... 353
15.1.2 Pointwise® ........................................................................................................................ 354
15.1.2.1 Smooth Extrusion of Boundary Layer Meshes ...................................................... 354
15.1.2.2 Smoothing in Various Meshing Techniques .......................................................... 354
15.1.2.3 Optimization-Based Smoothing............................................................................. 355
15.1.2.4 Computing Weighted Condition Number (WCN) for Prisms ................................. 355
15.1.2.5 WCN for Hexahedra............................................................................................... 356
15.1.2.6 Smoothing and Limiting the Perturbation ........................................................... 357
15.1.2.7 Extruding and Smoothing the ONERA M6 ............................................................. 358
15.1.2.8 Automatic vs. Automated Meshing as Envisioned by Pointwise .......................... 358
15.1.3 Ansys® .............................................................................................................................. 359
15.1.3.1 Global Mesh Controls ............................................................................................ 359
15.1.3.2 Local Mesh Controls .............................................................................................. 359
15.1.4 COMSOL Multiphysics® ................................................................................................... 360
15.1.4.1 Generating a Tetrahedral Mesh in COMSOL Multiphysics®................................... 361
15.1.4.2 Choosing the Order of Your Meshing Sequence Operations ................................ 362
15.1.4.3 Using a Single Operation to Mesh Multiple Domains ........................................... 363
15.1.4.4 3D Example ............................................................................................................ 363
15.1.5 Mesh Models in STAR-CCM+ ........................................................................................... 365
15.1.5.1 Surface Mesh ......................................................................................................... 365
15.1.5.2 Volume Mesh ........................................................................................................ 365
15.1.5.3 Optional Models (Sub-Models) ............................................................................. 366
• Prism Layer Mesher .................................................................................................... 366
• Extruder ...................................................................................................................... 367
• Generalized cylinder meshes...................................................................................... 367
15.1.6 Some Meshing Tools in CD-Adapco®................................................................................ 367
15.2 Mesh Sizing ................................................................................................................................................... 369
15.2.1 Case Study 1 - Mesh Size Functions for Implicit Geometries and PDE-Based Gradient
Limiting 369
15.2.1.1 Introduction ........................................................................................................... 369
15.2.1.2 Discretization and Problem Statement ................................................................. 370
15.2.1.2.1 Background Meshes ......................................................................................... 370
15.2.1.2.2 Initialization of the Distance Function.............................................................. 371
15.2.1.2.3 The Mesh Size Function.................................................................................... 372
15.2.1.3 Curvature Adaptation ............................................................................................ 372
15.2.1.4 Feature Size Adaptation ........................................................................................ 374
15.2.1.5 Gradient Limiting ................................................................................................... 376
15.2.1.5.1 The Gradient Limiting Equation........................................................................ 377
15.2.1.5.2 Implementation ................................................................................................ 377
15.2.1.6 Results ................................................................................................................... 379
15.2.1.6.1 Mesh Size Functions in 2D and 3D ................................................................... 379
15.2.1.6.2 Performance and Accuracy .............................................................................. 382
15.2.1.7 Other Applications................................................................................................. 382
14

15.2.1.7.1 Numerical Adaptation ...................................................................................... 382


15.2.1.7.2 Meshing Images................................................................................................ 383
15.2.1.7.3 Space and Solution Dependent ...................................................................... 385
15.2.1.8 Conclusions............................................................................................................ 385
15.2.2 Case Study 2 - Neighborhood-Based Element Sizing Control for Finite Element Surface
Meshing 386
15.2.2.1 Introduction ........................................................................................................... 386
15.2.2.2 Background Mesh .................................................................................................. 387
15.2.2.3 Linear Interpolation ............................................................................................... 388
15.2.2.4 Natural Neighbor Interpolation ............................................................................. 388
15.2.2.5 Applications ........................................................................................................... 390
15.2.2.6 Boundary Layers .................................................................................................... 390
15.2.2.7 Surface Curvature .................................................................................................. 393
15.2.2.8 Conclusion ............................................................................................................. 395
15.2.3 Case Study 3 - Background Overlay Grid Size Functions ................................................. 396
15.2.3.1 Introduction ........................................................................................................... 396
15.2.3.2 Definitions of Size Functions ................................................................................. 398
15.2.3.2.1 Terminology...................................................................................................... 398
15.2.3.2.2 Fixed Size Function ........................................................................................... 399
15.2.3.2.3 Curvature Size Function ................................................................................... 399
15.2.3.2.4 Proximity Size Function .................................................................................... 399
15.2.3.3 Size Function Initialization ..................................................................................... 400
15.2.3.3.1 Fixed Size Function ........................................................................................... 400
15.2.3.3.2 Curvature Size Function .................................................................................. 400
15.2.3.3.3 Proximity Size Function .................................................................................... 400
15.2.3.4 Background Grid Generation ................................................................................. 401
15.2.3.4.1 Background Grid Initialization .......................................................................... 401
15.2.3.4.2 Establishing Values at The Background Grid Nodes ......................................... 402
15.2.3.4.3 Linear Interpolation .......................................................................................... 402
15.2.3.4.4 Background Grid Refinement ........................................................................... 403
15.2.3.4.5 Speed/Memory issues ...................................................................................... 404
15.2.3.5 Examples................................................................................................................ 404
15.2.3.5.1 Meshing the Clown Head ................................................................................. 405
15.2.3.5.2 Use of 2D and 3D Proximity Size Functions ...................................................... 405
15.2.3.5.3 Use of Combined Size Functions ...................................................................... 406
15.2.3.6 Conclusion ............................................................................................................. 407

16 Mesh Quality ............................................................................................................................ 409


16.1 Background .................................................................................................................................................. 409
16.2 Mesh Quality Metric .................................................................................................................................. 409
16.2.1 Mesh Quality from User’s Perspective ............................................................................ 411
16.2.2 Mesh Quality from Researcher’s Perspective ................................................................. 411
16.2.3 Mesh Quality from Solver’s Perspective.......................................................................... 411
16.2.3.1 CFD++..................................................................................................................... 412
16.2.3.2 Fluent and CFX ....................................................................................................... 412
16.2.3.3 Kestrel .................................................................................................................... 412
16.2.3.4 STAR-CCM+ ............................................................................................................ 413
15

16.2.3.5 Deducing Results ................................................................................................... 414


16.2.4 Some Geometric Properties ............................................................................................ 414
16.2.4.1 Aspect ratio ........................................................................................................... 414
16.2.4.2 Orthogonality ........................................................................................................ 414
16.2.4.3 Skewness ............................................................................................................... 415
16.2.4.4 Warpage ................................................................................................................ 415
16.2.4.5 Jacobian ................................................................................................................. 415
16.2.4.6 Tetrahedral Volume............................................................................................... 415
16.2.4.7 Polygonal Face Area and Centroid ........................................................................ 416
16.2.4.8 Polyhedral Volume and Centroid .......................................................................... 417
16.2.4.9 Case Study – Polyhedral Mesh Optimization Using The Interpolation Tensor ..... 417
16.2.4.9.1 Surface Mesh .................................................................................................... 417
16.2.4.9.2 Polyhedral Mesh............................................................................................... 419
16.2.4.9.3 Conclusions....................................................................................................... 419
16.3 Best Practice for Mesh Generation ..................................................................................................... 419
16.3.1 Geometry Modeling and Geometry Cleanup .................................................................. 419
16.3.2 Computational Domain ................................................................................................... 420
16.3.3 Choice of Grid .................................................................................................................. 420
16.3.4 Surface Meshing .............................................................................................................. 420
16.3.5 Volume Meshing .............................................................................................................. 421
16.3.6 Boundary Layer Meshing ................................................................................................. 421
16.3.7 Guidelines for Aerodynamics in General ......................................................................... 422
16.3.8 Guidelines for Automotive Aerodynamics ...................................................................... 422
16.3.8.1 Case Study - Best Practice & Guidelines for Handling Automotive External Mesh
Generation with FLUENT ........................................................................................................... 422
16.3.8.1.1 Meshing Strategies ........................................................................................... 423
16.3.8.1.2 Strategy A (Adaption) ....................................................................................... 423
16.3.8.1.3 Strategy B (Boxes) ............................................................................................ 423
16.3.8.1.4 Strategy C (Controls) ........................................................................................ 423
16.3.8.1.5 Surface Meshing ............................................................................................... 424
16.3.8.1.6 Volume Meshing............................................................................................... 424
16.3.8.1.7 Prismatic Layers ................................................................................................ 425
16.3.8.1.8 Hybrid Mesh Transition .................................................................................... 426
16.3.8.1.9 Tetrahedral Mesh ............................................................................................. 426
16.3.8.1.10 Hex-core Mesh ............................................................................................... 427
16.3.8.1.11 Buffer Layers ................................................................................................... 427
16.3.8.1.12 Local Refinement ............................................................................................ 427
16.3.8.1.13 Checking Quality ............................................................................................. 427
16.3.9 Improvement of Grid Quality .......................................................................................... 428

17 Appendix A ............................................................................................................................... 429


A.1 Computer Code for a Transfinite Interpolation ................................................................................... 429

List of Tables
Table 3.1 NASA CRM Free-Stream Conditions ................................................................................................ 57
Table 7.1 Nomenclature ........................................................................................................................................ 136
Table 7.2 Comparison of the number of vertices and quality of the mesh for different values of δ
- (Courtesy of [Labbe]) ............................................................................................................................................... 144
16

Table 8.1 Near-Field Grid Details....................................................................................................................... 174


Table 8.2 Currently Available Grid Generation Software ........................................................................ 176
Table 9.1 Abbreviations......................................................................................................................................... 179
Table 9.2 Admissible Agglomerations ............................................................................................................. 194
Table 9.3 Summary of discretization used to define the residual, ^R ................................................ 201
Table 9.4 Summary of costs and typical numbers of linear-sweeps. The multigrid cycle is a 5-
level V (2; 1) with a typical coarsening ratio 8. The numbers in parenthesis denote the number of
point and line sweeps, respectively, and the second set for RANS denotes the number of point
and line sweeps of the turbulent equation. ....................................................................................................... 202
Table 9.5 Summary of Jacobians, ∂^R*/∂U .................................................................................................... 202
Table 9.6 Summary of grid sizes and parameters for the inviscid cases........................................... 203
Table 9.7 Cost of V-cycle relative to a single-grid iteration and speed-up factor. The expected
speed-up factors have been computed with the actual coarsening ratio.............................................. 203
Table 13.1 Dimensions of Domains – (Courtesy of Morgut & Nobile) ............................................... 304
Table 13.2 Grids for Propeller A– (Courtesy of Morgut & Nobile)....................................................... 304
Table 13.3 Grids for Propeller P5168 – (Courtesy of Morgut & Nobile) ........................................... 304
Table 13.4 Results of Propeller A– (Courtesy of Morgut & Nobile)..................................................... 306
Table 13.5 Experimental setup of Propeller P5168 ................................................................................... 307
Table 13.6 Relative Percentage Differences of Computed Values Between Finer and Coarser
Mesh for propeller P5168 – (Courtesy of Morgut & Nobile) ...................................................................... 307
Table 13.7 Grid Convergence – (Courtesy of Samir Vinchurkar & Worth Longest) ..................... 317
Table 13.8 Mesh Densities for Structured Hexahedral and Hybrid Un-Structural Tetrahedral –
(Courtesy of Rousseau et al.) ................................................................................................................................... 326
Table 14.1 Pros & Cons of Different Grid Sensitivity Method (NDV = Number of Design
Variable) ........................................................................................................................................................................... 337
Table 14.2 Schemes used to obtain sensitivities ......................................................................................... 342
Table 14.3 Comparison of sensitivity derivatives for lift and drag coefficients using various
approaches ...................................................................................................................................................................... 343

List of Figures
Figure 1.1 Meshes Created using ANSYS Mosaic-Enabled Poly-Hex Core Meshing - Courtesy of
Sheffield Hallam University ......................................................................................................................................... 30
Figure 1.2 Methodology of General Grid Generation .................................................................................... 32
Figure 1.3 Examples of Structured Meshes for Turbine Blade ................................................................. 34
Figure 1.4 Classification of Grid Generation Algorithms (Courtesy of Steven Owen) .................... 34
Figure 1.5 Example of Unstructured Tetrahedral Meshes ......................................................................... 35
Figure 2.1 Anatomy of commercial CAD Systems .......................................................................................... 37
Figure 2.2 Fighter Airplane F-16 calculation ................................................................................................... 37
Figure 2.3 Example of a CSG Tree ......................................................................................................................... 40
Figure 2.4 Geometry Import and Preparation................................................................................................. 41
Figure 2.5 Different Analysis Require Different Geometric Representations .................................... 42
Figure 2.6 Small Feature (Left) vs Removed (Right) .................................................................................... 43
Figure 3.1 Domain Topology (O-Type, C-Type, and H-Type; from left to right) ............................... 45
Figure 3.2 C-H Type Topology for a Wing Section ......................................................................................... 46
Figure 3.3 Sponge Analogy ...................................................................................................................................... 46
Figure 3.4 Multi Block Representation for C-H Mesh Around a Wing ................................................... 47
Figure 3.5 Dual Block Grid Topology for a Generic Wing-Fuselage Configuration .......................... 48
Figure 3.6 Topology and Grid on a Multi-Block Wings via GridPro® ..................................................... 48
Figure 3.7 Multi-Block Gridding of Turbine Blade - (Courtesy of GridPro) ....................................... 49
17

Figure 3.8 Schwarz Concept of Iterating Between Domains ..................................................................... 49


Figure 3.9 Domain Decomposition for M6 Wing using TIL Scripts (Courtesy of GridPro) ........... 49
Figure 3.10 Multi-Blocking of a Wing-Fuselage Geometry by Ansys 2019-R2.................................... 50
Figure 3.11 Jet-Wing-Flap: Medial Axis Transform (Compression Shock) and Expansion
Features Close to the Geometry – Courtesy of [Ali et al]................................................................................. 52
Figure 3.12 Two dimensional jet-wing-flap geometry: (a) the distance field; (b) distance field
wrap and (c) corresponding medial axis (d) hybrid blocking around 2D geometry – Courtesy of
[Ali et al] .............................................................................................................................................................................. 53
Figure 3.13 Hierarchical Geometry Handling Strategy................................................................................ 55
Figure 3.14 NASA CRM Wing-Body-Tail (c) Hybrid Blocking (d) Mesh Cut Section – Courtesy
[Ali et al.] ............................................................................................................................................................................. 56
Figure 3.15 Jet-Wing-Flap (a) CAD, (b) CAD and the Medial Axis Cut Section, (c) Inner Hybrid
Blocking – Courtesy of [Ali et al] ............................................................................................................................... 57
Figure 3.16 Jet-Wing-Flap with Modified Inner Blocking (To Accommodate Shear Layers) –
Courtesy of [Ali et al]...................................................................................................................................................... 58
Figure 3.17 Engine-Wing-Flap (Top) Schematics Showing Geometric Zones and Domains with
Different Block Topologies (Bottom) Cut Section at z = 0 Plane – Courtesy of [Ali et al]................. 59
Figure 4.1 Exponential Distribution Functions.............................................................................................. 61
Figure 4.2 Hyperbolic Tangent Distribution Functions .............................................................................. 62
Figure 4.3 Grid for Dual-Block Generic Wing-Fuselage Geometry ......................................................... 62
Figure 4.4 Single Passage PADRAM Mesh for the Swept Back OGV - Courtesy of [Shahpar and
Lapworth] ........................................................................................................................................................................... 63
Figure 4.5 Detail of the Splitter C-Mesh, Hub Mesh and the Engine-Core Exit Mesh - Courtesy of
[Shahpar and Lapworth] .............................................................................................................................................. 64
Figure 4.6 Typical Elliptic Grid for an Airfoil with Orthogonality Enforced on the Boundary.... 66
Figure 4.7 Orthogonality Adjustments – (Courtesy of Chaitanya Varier)............................................ 67
Figure 4.8 Change in xξ when Boundary Point is Re-Positioned in Neumann Orthogonality ..... 70
Figure 4.9 An Algebraic Planar Mesh on a Bi-Cubic Geometry ................................................................ 71
Figure 4.10 An Elliptic Planar Mesh on a Bi-Cubic Geometry with Neumann Orthogonality ..... 72
Figure 4.11 Projection of Interior Algebraic Mesh Point to Orthogonal Position ............................ 73
Figure 4.12 Reflection of Orthogonalized Interior Mesh Point to Form External Ghost Point .. 73
Figure 4.13 An Elliptic Planar Mesh on a Bi-Cubic Geometry with Dirichlet Orthogonality........ 77
Figure 4.14 Euler Solution on a HSCT Wing-Fuselage ................................................................................. 80
Figure 4.15 Folded Grid by Transfinite Interpolation - Smooth Grid by Winslow Functional.... 81
Figure 4.16 1D Weight Function for High Gradient and Curvature........................................................ 83
Figure 4.17 Grid Adaption and Mack Contours for Supersonic Airfoil ................................................. 84
Figure 4.18 Mesh and Mach Contours for Transonic Flow ........................................................................ 85
Figure 5.1 Dual Mesh for Mixed Triangular-Quadrilateral Unstructured Mesh ...................................... 87
Figure 5.2 Hierarchy of Unstructured Meshing Methodologies............................................................... 90
Figure 5.3 Conventional configuration geometry (a), final structural mesh (Courtesy of Hwang
& Martins)........................................................................................................................................................................... 91
Figure 5.4 The Six Steps of the Unstructured Quad Meshing Algorithm .............................................. 92
Figure 5.5 Quadrilateral Mesh Generation ....................................................................................................... 93
Figure 5.6 Example of Cartesian Grid Near Curved Surface – (Courtesy of NASA Ames) ............. 94
Figure 5.7 Solid Surface Over-Layer Cartesian Cell and Resulting Cut and Split Cell – (Courtesy
of NASA Ames) .................................................................................................................................................................. 95
Figure 5.8 Example of Merge Cell Creation – (Courtesy of NASA Ames) ............................................. 96
Figure 5.9 Semi-Automatic Cartesian Mesh Generation with CFOW – Courtesy of Kawasaki ... 96
Figure 5.10 Boundary-Fitted Layer Grid for Multi-Element Airfoil ....................................................... 97
Figure 5.11 Example Adaptive Grid for Supersonic Wedge Flow – (Courtesy of NASA Ames) .. 97
18

Figure 5.12 Schematic image of Adaptive Mesh Refinement – (Courtesy of Hiroshi Abe) ........... 98
Figure 5.13 Pressure Contours in 2D Backward Step .................................................................................. 99
Figure 5.14 Example Chimera Grid Near Curved Surface (Courtesy of NASA Ames) ................. 101
Figure 5.15 Example Hybrid Grid Near Curved Surface – (Courtesy of NASA Ames).................. 103
Figure 5.16 Basic Superposition Example – (Courtesy of Kalinin, Mazo and Isaev) .................... 104
Figure 5.17 Example of Cartesian Grid on a Generic Airplane – (Source: Richard Smith 1996)
.............................................................................................................................................................................................. 105
Figure 5.18 Converging of an Octree Decomposition Around an Airfoil ........................................... 106
Figure 5.19 A close-up view of Nasty Cheese a well-known test-case featuring 30◦ Dihedral
angles – (Courtesy’s of [Mar´echal]) ..................................................................................................................... 107
Figure 5.20 Overset Mesh Combination.......................................................................................................... 107
Figure 5.21 Two Counter-Rotating Objects Embedded in Two Overset Regions with
Background Mesh – (Courtesy of Siemens) ....................................................................................................... 108
Figure 6.1 Closing stage of a Moving Front Method ................................................................................... 109
Figure 6.2 Mesh Parameters ................................................................................................................................ 110
Figure 6.3 Surface Mesh of SGI Logo ................................................................................................................ 111
Figure 6.4 States of a Front Edge – (Courtesy of Owen et al.)................................................................ 112
Figure 6.5 Steps demonstrating process of generating a quadrilateral from Front NA-NB -
(Courtesy of Owen et al.) ........................................................................................................................................... 113
Figure 6.6 Progression of Q-Morph- (Courtesy of Owen et al.) ............................................................. 114
Figure 6.7 Results of Q-Morph Compared with Lee’s (1994) Advancing Front Indirect............ 115
Figure 6.8 Large Transition Mesh for CFD Application - (Courtesy of Owen et al.) ..................... 116
Figure 6.9 Comparison of Q-Morph with Lee’s Algorithm Illustrating Element Boundary....... 116
Figure 6.10 Success and failure of the in sphere test of abcd with e. ................................................. 118
Figure 6.11 Robust and Fast way to Detect if point D lies in the Circumcircle of A, B, C ............ 119
Figure 6.12 Two-Three Tetrahedral swap ..................................................................................................... 119
Figure 6.13 Delaunay Triangulation (white) and Voronoi Diagram (blue) – Courtesy of
[Labbe]) ............................................................................................................................................................................ 120
Figure 6.14 2D Delaunay Triangulation of a Set of Vertices (Black) Restricted to a Curve (Blue)
.............................................................................................................................................................................................. 122
Figure 6.15 Meshing Types in SAMM ............................................................................................................... 123
Figure 6.16 Mesh Inside a Pyramid .................................................................................................................. 123
Figure 6.17 Typical Polyhedral Cell and their Decomposition .............................................................. 124
Figure 6.18 Dual Surface Triangulation Resulting in Polyhedron ....................................................... 125
Figure 6.19 (a) Cut of initial tetrahedral mesh of a simple 2-material model (b) Cut of initial
polyhedral mesh showing valid (green) and invalid (red) elements (c) Cut of untangled and
optimized polyhedral mesh (d) Full polyhedral mesh .................................................................................. 126
Figure 6.20 Boundary Layer Prisms Generated on a Cascade of a 2D Triangulation and Dual
Polyhedron ...................................................................................................................................................................... 128
Figure 6.21 3D Concept of Cascading for Boundary Layer ..................................................................... 129
Figure 6.22 Comparison of traditional voxel mesh with Simpleware mesh preserving
segmented domains without decreasing data resolution............................................................................ 131
Figure 6.23 Mechanical Characterization of Nest Material ..................................................................... 132
Figure 7.1 Representation of a 3D Metric with Eigenvalues λ1, λ2 and λ3 as an Ellipsoid –
(Courtesy of [Labbe]) .................................................................................................................................................. 138
Figure 7.2 An anisotropic Uniform Delaunay Triangulation (orange) and the Corresponding
Stretched .......................................................................................................................................................................... 140
Figure 7.3 Two stars Sp and Sq forming an inconsistent configuration - (Courtesy of [Labbe])
.............................................................................................................................................................................................. 141
19

Figure 7.4 Influence of the Parameter ψ0 in a 2D (shown on the left) and 3D Domain (shown on
the right) - (Courtesy of [Labbe]) .......................................................................................................................... 142
Figure 7.5 A square of side 10 and centered on the origin, endowed with the “Starred” metric
field ..................................................................................................................................................................................... 145
Figure 7.6 Anisotropic Triangulation of a Rectangle Endowed with the Hyperbolic Shock
Metric Field - (Courtesy of [Labbe]) ..................................................................................................................... 146
Figure 7.7 A square of side 6 and centered on the origin, endowed with the “Swirl” metric field
- (Courtesy of Labbé et al.)...................................................................................................................................... 146
Figure 7.8 The Optimized SRDT of 4000 Seeds in a Planar Domain Endowed with a Hyperbolic
Shock Induced Metric fFeld (left). On the right, a zoom on a rotational region of the metric field
shows the Difference between pre- (above) and post- (bottom) Optimization – (Courtesy of
Labbé et al.) .................................................................................................................................................................... 148
Figure 7.9 Isotropic and Anisotropic Canvas Sampling - (Courtesy of [Labbe])............................ 149
Figure 7.10 Unit Sphere Endowed with the Hyperbolic Metric field - (Courtesy of [Labbe]) .. 149
Figure 7.11 The discrete Riemannian Voronoi Diagram of 1020 seeds on the “Chair” surface,
with a curvature induced metric field; the edges of the curved Riemannian Delaunay
triangulation are traced in black - (Courtesy of [Labbe]) ............................................................................ 150
Figure 7.12 Discrete Riemannian Voronoi Diagram (top) and Curved Riemannian Delaunay
Triangulation (bottom) Endowed with the Hyperbolic Shock Metric Field - (Courtesy of [Labbe])
.............................................................................................................................................................................................. 151
Figure 8.1 Hybrid Grid and Steady State Solution ...................................................................................... 153
Figure 8.2 Local Remeshing ................................................................................................................................. 154
Figure 8.3 Hybrid Mesh on a Wing-Body-Pylon-Nacelle Configuration – Courtesy of Centrum®
.............................................................................................................................................................................................. 156
Figure 8.4 Comparison of Different Mesh Types for RANS Computations ....................................... 160
Figure 8.5 The Optional Target Side (colored white) is used to Define the Extrusion Distance
.............................................................................................................................................................................................. 161
Figure 8.6 The bottom-up revolve method sweeps the source side mesh by the specified angle
about the axis ................................................................................................................................................................. 162
Figure 8.7 Constructions of Authomated Hybrid Mesh ............................................................................ 162
Figure 8.8 Predominantly Polyhedral Meshing with Extrusion Layers ............................................. 163
Figure 8.9 Meshes Generated by a) Proposed Algorithm and b) Leading Commercial Vendor
.............................................................................................................................................................................................. 164
Figure 8.10 Adaptive Mesh Refinement Types ............................................................................................ 165
Figure 8.11 An H-refinement mesh about a Shuttle-like body (left) and Computed CP (right) 166
Figure 8.12 Isotropic vs. Anisotropic Meshing............................................................................................. 167
Figure 8.13 Coarsening by Edge Collapsing – Courtesy of [Cavallo]................................................... 168
Figure 8.14 Hierarchy of Successively Coarser Meshes Obtained by Uniform ............................... 169
Figure 8.15 Coarsening ratio for coarsening with and without local Re-triangulation. ............. 170
Figure 8.16 3 to 2 and 2 to 3 Swap ................................................................................................................... 171
Figure 8.17 Comparison of Coarse, Medium and Fine Grids: lateral view on fore-body with
Symmetry......................................................................................................................................................................... 174
Figure 8.18 Local Dissipation Error of Drag Coefficient on field cut-plane at x =1400 inch;
isometric/downstream view ................................................................................................................................... 175
Figure 8.19 Comparison of SolarChimera5 and Solar Grid at x = 1454 inch plane; Viscous Wall
Surface in Dark .............................................................................................................................................................. 176
Figure 8.20 HiLiftPW-3 Experience .................................................................................................................. 178
Figure 9.1 JSM Model with Engine Nacelle .................................................................................................... 179
Figure 9.2 Computational Domain of the HL-CRM Gapped Flaps Model .......................................... 180
20

Figure 9.3 Computational Domain and Separation of Zones of the JSM Model with Engine
Nacelle ............................................................................................................................................................................... 181
Figure 9.4 Three Locations of Problematic Areas of the JSM Geometry for the Generation of
Boundary Layers ........................................................................................................................................................... 181
Figure 9.5 Batch Mesh Setup for the JSM Model with Size Boxes for Local Mesh Control ......... 182
Figure 9.6 Resulting Layers for Isotropic Surface Mesh (Top) and Anisotropic (Bottom)........ 184
Figure 9.7 Close ups of Coarse CRM Gapped Flap Model with Comparison of Tridiagonal
Dominant (Top) vs. Quad Dominant (Bottom) Surface Mesh .................................................................... 185
Figure 9.8 Volume Mesh of the JSM .................................................................................................................. 187
Figure 9.9 CL and CD for CRM Geometry at 8 degree AoA using OpenFOAM and STAR-CCM+ . 188
Figure 9.10 Lift and Drag Coefficients for the JSM Geometry using OpenFOAM and STAR-CCM+
.............................................................................................................................................................................................. 189
Figure 9.11 Multi gridding Cycles ...................................................................................................................... 190
Figure 9.12 Sequence of gridding in unstructured multigrid scheme .............................................. 191
Figure 9.13 Illustration of a node-centered median-dual control volume ....................................... 193
Figure 9.14 Trailing-edge area of a 3D wing agglomerated by the hierarchical scheme. Primal
grid is shown by thin lines; agglomerated grid is shown by thick lines. ............................................... 194
Figure 9.15 Typical implicit line-agglomeration showing a curved solid body surface on the left
and a symmetry plane on the right. The projection of the line-agglomerations can be seen on the
symmetry plane............................................................................................................................................................. 195
Figure 9.16 Grids and convergence of the model diffusion equation for the F6 wing-body
combination .................................................................................................................................................................... 196
Figure 9.17 Grids and Convergence of the Model Diffusion Equation for the DPW-W2 case .. 197
Figure 9.18 Grids and Convergence for the wing-ap inviscid case. ..................................................... 198
Figure 9.19 Residual versus CPU time for the F6 wing-body case (RANS) ...................................... 204
Figure 9.20 Interface Agglomeration Procedure Wing – Courtesy of [Laiping et al.] ................. 209
Figure 9.21 Initial Hybrid Grids and Coarsen Grids Wing – Courtesy of [Laiping et al.] ........... 210
Figure 9.22 Initial Hybrid Grids and Coarsening Grids over 30P30N Airfoil Wing – Courtesy of
[Laiping et al.] ................................................................................................................................................................ 212
Figure 9.23 CP Distribution on Solid Wall Wing Courtesy of [Laiping et al.].................................. 212
Figure 9.24 Initial Hybrid Grids and Coarsening Grids over ONERA M6 Wing – Courtesy of
[Laiping et al.] ................................................................................................................................................................ 213
Figure 9.25 Close-up Views of Hybrid Grids After Agglomeration Wing – Courtesy of [Laiping
et al.]................................................................................................................................................................................... 214
Figure 9.26 Aerodynamic Force Coefficients for Different Angles of Attack (M∞ = 0.75) Wing –
Courtesy of [Laiping et al.] ....................................................................................................................................... 215
Figure 9.27 Hybrid Grids over DLR-F6-WBNP Configuration Wing – Courtesy of [Laiping et al.]
.............................................................................................................................................................................................. 216
Figure 9.28 CP Distributions at Three Typical Sections (M = 0.75, α = 1.0 deg) Wing – Courtesy
of [Laiping et al.]........................................................................................................................................................... 217
Figure 10.1 Example Adaptive Grid for Supersonic Wedge Flow ........................................................ 220
Figure 10.2 Schematic image of Adaptive Mesh Refinement ................................................................. 221
Figure 10.3 Octree Data Structure of Adaptive Cartesian Grid Method ............................................ 221
Figure 10.4 Schematic 2D view of angular variation of normal............................................................ 222
Figure 10.5 Pressure Contours in 2D Backward Step ............................................................................... 222
Figure 10.6 Selected Initial Meshes for the Transient Adaptive Procedure (Meshes 3, 20, 27
and 29) .............................................................................................................................................................................. 223
Figure 10.7 30P30N Multi-Element Airfoil & close up of slat ................................................................ 225
Figure 10.8 2D Fuel Cell Slice & Zoomed ........................................................................................................ 226
Figure 10.9 Grid Adaption using Supersonic Flow for an Airfoil (bow shock) ............................... 226
21

Figure 10.10 NACA 0012 Transonic test case: M∞ = 0.8, α=1.25 .......................................................... 226
Figure 10.11 Two-Pass Approach for Parallel Coarsening and Refinement. ........................................ 228
Figure 10.12 Store position, orientation, and surface pressures at selected points in trajectory...... 228
Figure 10.13 Adapted Mesh Partitioning During Store Dispense ............................................................. 228
Figure 10.14 Inter-Processor Partitioning Based on Laplace Coefficients....................................... 229
Figure 10.15 Hybrid Icosahedra Surface Mesh (left) and Multi-Material Hybrid Volume Mesh
(right) – (Courtesy of Khamayseh and Almeida)............................................................................................. 230
Figure 10.16 HTTR Multi-Material Geometry, Initial Coarse Mesh (left), Refined Mesh (right) )
– (Courtesy of Khamayseh and Almeida) ........................................................................................................... 231
Figure 10.17 Orography field (left), r-adaptively (center) and h-adaptively (right) for climate
modeling ) – (Courtesy of Khamayseh and Almeida) .................................................................................... 232
Figure 10.18 Coupled orography field transfer with h-adaptively. Planar orography field (top),
.............................................................................................................................................................................................. 233
Figure 10.19 Meshing and Partitioning of Centrifugal Contactor ) – (Courtesy of Khamayseh
and Almeida) .................................................................................................................................................................. 234
Figure 10.20 Discretization Error in the Drag Coefficient for Transonic Flow over an Airfoil
(Reproduced from Dwight) ...................................................................................................................................... 236
Figure 10.21 Steady-State Burgers Equation for Reynolds Number 32 ............................................ 239
Figure 10.22 Adaption Schemes Applied to Burgers Equation Left) numerical solutions and
right) local nodal spacing Δx. ................................................................................................................................... 239
Figure 10.23 Extraction of a Flow Feature & Redistributed Volume Meshes ................................... 243
Figure 10.24 Hybrid Meshes for the NACA0012 Wing-Section and Cp Distribution (-1.0 to 1.0)
.............................................................................................................................................................................................. 244
Figure 10.25 Adaptive Re-meshing of Capsule ............................................................................................ 245
Figure 11.1 Mesh Deformation Problem ........................................................................................................ 248
Figure 11.2 Cylinder Motion in 2D .................................................................................................................... 251
Figure 11.3 Mesh Deformation via Bi-Harmonic Equations................................................................... 252
Figure 11.4 Mesh Deformation via Laplace & RBF Methods .................................................................. 253
Figure 11.5 Outlet Guide Vane (OGV) Boundary Surfaces Defined for a Single Passage ............ 254
Figure 11.6 Typical Angular Variation Between the Computed Distance Field Vector and the
Surface Normal (OGV not shown to scale) ......................................................................................................... 255
Figure 11.7 GGI interface ...................................................................................................................................... 256
Figure 11.8 Overset Method ................................................................................................................................ 257
Figure 11.9 Delaunay Method of Dynamic mesh......................................................................................... 258
Figure 11.10 Mesh Before and After the Translational Deformations ............................................... 259
Figure 11.11 Mesh Before and After the x-axis Rotational Deformation .......................................... 260
Figure 11.12 Spiral Inductor Geometry where P1 and P2 denote port 1 and Part 2 ................... 262
Figure 11.13 Vertical field evolution and associated mesh refinement in the microstrip spiral
inductor, simulated by a two-level dynamic AMR-FDTD ............................................................................. 262
Figure 11.1 Backward facing step in a duct using Polyhedral, Hexahedral and Tetrahedral cells
.............................................................................................................................................................................................. 264
Figure 12.2 Effect of truncation error on Hex and Tet cells ................................................................... 265
Figure 12.3 Average Bees Being Smarter than CFD Engineer? (Courtesy of Stephen Ferguson)
.............................................................................................................................................................................................. 265
Figure 12.4 Polyhedral cells vs Tetrahedral cells ....................................................................................... 266
Figure 12.5 Boundary prims cells for tetrahedral (left) and polyhedral (right) cells – (Courtesy
of CD-Adapco) ................................................................................................................................................................ 267
Figure 12.6 GG simple face averaging .............................................................................................................. 269
Figure 12.7 GG Inverse Distance Weighted (IDW) Face Interpolation .............................................. 270
Figure 12.8 Methodologies for various Gradient Order of Accuracy .................................................. 271
22

Figure 12.9 Global Error Norms for x-Direction Gradient for Various Gradient Methods ........ 272
Figure 12.10 Notional Launch Vehicle was Imported from an IGES file – (Courtesy of Pointwise
Inc.) ..................................................................................................................................................................................... 274
Figure 12.11 Broken Rules are Dsplayed on-screen as a Guide to Repair – (Courtesy of
Pointwise Inc.) ............................................................................................................................................................... 274
Figure 12.12 T-Rex Mesh Generates Near-Wall Hex Layers for Boundary Layer Resolution and
Transitions to an Isotropic Tetrahedral Mesh in the Far Field – (Courtesy of Pointwise Inc.) .... 276
Figure 12.13 Visualization of Boundary Conforming Anisotropic Elements................................... 277
Figure 12.14 Linear vs Full Curving (Non-Linear) Mesh (Courtesy of Karman) ........................... 278
Figure 12.15 Visualization of Three Non-Linear Interpolating Polynomial .................................... 279
Figure 12.16 Distribution of points in a Fourth-Order Triangle and the Six Spring System
Linking the Free Nodes - Fekete Distribution................................................................................................... 282
Figure 12.17 The High-Order Surface Created Using the Affine Mapping with / without
Optimization in a Region of High Distortion in the CAD Surface (left to right) .................................. 282
Figure 12.18 The Elemental RP1 Road Car.................................................................................................... 286
Figure 12.19 High-Order Surface Meshing for 2 Designs ........................................................................ 287
Figure 12.20 Surface Simulation for Pressure - D1 (left) D2 (right)................................................... 288
Figure 12.21 Underside of the RP1 car surface mesh, design 1 (D1) left, design 2 (D2) right. 289
Figure 12.22 Optimization of An Originally Invalid (blue) 2D Example Mesh ............................... 291
Figure 12.23 Optimization of 10th Quadrilateral Mesh Showing the Initial Configuration and
Optimization using the Hyper Elastic and Distortion Functional............................................................. 292
Figure 12.24 Shows the Displacement Residual and Quality, Q, of the Cube Sphere Mesh....... 293
Figure 12.25 Optimization of 4th Order Sphere mesh from the Initial Configuration.................. 293
Figure 12.26 Optimization of the DLR F6 Geometry ................................................................................. 294
Figure 12.27 Cross Section of a Semi-Sphere Case Highlighting the Sliding of CAD .................... 295
Figure 12.28 Hybrid prismatic-tetrahedral mesh of the Boeing reduced landing gear
configuration before (a) and after (b) optimization, and after the isoperimetric splitting is
applied (c). Note that the color of the surface triangles is not related to mesh quality .................. 296
Figure 12.29 Element Quality Histograms of the Boeing Reduced Landing Gear Configuration
for Initial and various Optimization Settings .................................................................................................... 297
Figure 12.30 High-Order Mesh of the NACA Wing ..................................................................................... 298
Figure 12.31 Enlargements of Regions of the NACA Wing Mesh.......................................................... 299
Figure 13.1 Comparison of Hex (16 K Cells) and Tet (440 K Cells) for a Pipe with 90 Degree
Bend ................................................................................................................................................................................... 300
Figure 13.2 Results of Hex vs Tet Meshes as well as Hybrid Mesh in a Pipe with 90 Degree
Bend ................................................................................................................................................................................... 301
Figure 13.3 Design of Propellers, (left) Propeller P5168, ....................................................................... 303
Figure 13.4 Computational Domain– (Courtesy of Morgut & Nobile)................................................ 303
Figure 13.5 Meshing for Propeller P5168– (Courtesy of Morgut & Nobile) .................................... 305
Figure 13.6 KT , KQ and η Curves of Propeller A – (Courtesy of Morgut & Nobile) ........................ 306
Figure 13.7 KT and KQ curves of Propeller P5168 – (Courtesy of Morgut & Nobile) .................... 307
Figure 13.8 Flow Around Turbine Blade – (Courtsy of Sasaki et al.) .................................................. 309
Figure 13.9 Geometric Blocking Used (a) Structured Hexahedral (178 Blocks) and (b)
Unstructured Hexahedral (80 Blocks) – (Courtesy of Samir Vinchurkar & Worth Longest)........ 311
Figure 13.10 Four Meshing Styles of the PRB Model (a) Structured Hexahedral, (b)
Unstructured Hexahedral, (c) Prismatic, and (d) Hybrid – (Courtesy of Samir Vinchurkar &
Worth Longest) ............................................................................................................................................................. 312
Figure 13.11 Velocity Vectors (a) Structured Hexahedral Mesh with 214 K C.V. (b)
Unstructured Hexahedral Mesh with 318 K, C. V. (c) Prismatic Mesh with 510K C. V, (d) Hybrid
Mesh with 608 K C. V. – (Courtesy of Samir Vinchurkar & Worth Longest) ........................................ 319
23

Figure 13.12 Deposition Locations for 10 lm Particles in the Planar Geometry for the (a)
Structured Hexahedral Mesh, (b) Unstructured Hexahedral Mesh, (c) Prismatic Mesh, and (d)
Hybrid Mesh – (Courtesy of Samir Vinchurkar & Worth Longest) .......................................................... 320
Figure 13.13 Boundary Layer Transition Between Prismatic and Volume Elements – (Courtesy
of Rousseau et al.)......................................................................................................................................................... 324
Figure 13.14 Example of a hydraulic turbine spiral case (half domain) ........................................... 325
Figure 13.15 Geometry of the Stay Vanes and Wicket Gates, Left: Geometry A, Right: Geometry
B – (Courtesy of Rousseau et al.) ............................................................................................................................ 325
Figure 13.16 Structured Hexahedral Mesh of the Geometry A on the Symmetrical Surface and
Close Up – (Courtesy of Rousseau et al.) ............................................................................................................. 326
Figure 13.17 Hybrid Tetrahedral Medium Mesh on the Symmetric Surface of the Geometry A
(left) & Mesh in the wake of a Hydraulic Profile (wicket gates trailing edge)(right) – (Courtesy of
Rousseau et al.).............................................................................................................................................................. 327
Figure 13.18 Relative Total Head Loss on the Meridian Plane for the Geometry A with fine
mesh, left: Structured Hexahedral, right: Hybrid Tetrahedral – (Courtesy of Rousseau et al.) ... 328
Figure 13.19 Meridian Velocity Near a Stay Vane with fine mesh for Geometry A, left:
Structured Hexahedral, right: Hybrid Tetrahedral – (Courtesy of Rousseau et al.) ......................... 329
Figure 13.20 Meridian Velocity on the Meridian Plane for the Geometry B – (Courtesy of
Rousseau et al.).............................................................................................................................................................. 330
Figure 14.1 B-Spline Approximation of NACA0012 (left) and RAE2822 (right) Airfoils ........... 334
Figure 14.2 Six Control Point Representation of a Generic Airfoil ...................................................... 334
Figure 14.3 Free Form Deformation (FFD) for Volume Grid with Control Points (Courtesy of
Kenway et al.) ................................................................................................................................................................. 335
Figure 14.4 Sample Grid and Grid Sensitivity............................................................................................... 336
Figure 14.5 ONERA M6 grid used for evaluating ........................................................................................ 342
Figure 14.6 Convergence rates for direct and adjoint modes. ............................................................... 343
Figure 14.7 Surface grid for slotted wing–body .......................................................................................... 344
Figure 14.8 Lift-to-drag ratio during unconstrained optimization of wing–body configuration
.............................................................................................................................................................................................. 344
Figure 14.9 Results for irregular but non-curved triangular grids ( Γ = 0 everywhere ). .......... 348
Figure 14.10 Results for an irregular triangular grid over a Joukowsky airfoil. Note that the
contours are plotted in (c) and (d) with a restricted range, [0; 25], to visualize the variation near
the airfoil. The maximum value is 902,788 and the average is 10,505. ................................................. 349
Figure 14.11 Results for an irregular triangular grid over a half-cylinder domain with straight
boundaries....................................................................................................................................................................... 350
Figure 14.12 Mesh Independence ..................................................................................................................... 351
Figure 14.13 Effects of Mesh Density on Solution Domain ..................................................................... 351
Figure 15.1 Mega Meshing for Aircraft Landing & Takeoff – Courtesy of Centaur©..................... 353
Figure 15.2 Vectors used for computing the weighted condition number of a prism at the
corner shared by edges E, F, and G ........................................................................................................................ 355
Figure 15.3 Transforming an Ideal Corner (left) to the Desired Shape (right) .............................. 356
Figure 15.4 Computing the Weight Vector for the Bottom (left) and top (right) Faces of a Prism
.............................................................................................................................................................................................. 356
Figure 15.5 Computing the Weight Vector for the Bottom (left) and Top (right) Faces of a
Hexahedron..................................................................................................................................................................... 357
Figure 15.6 Close-Up View of a Hybrid Mesh Near the Tip of the ONERA M-6 Wing .................. 358
Figure 15.7 40 Extrusion layers on the Symmetry Plane of the ONERA-M6 Wing at the Leading
Edge for Smoothing Exponent P = 0 (left) and P = 2 (right) ....................................................................... 358
Figure 15.8 Preprocessing Workflow .............................................................................................................. 360
Figure 15.9 A Tetrahedral Mesh of a Gas Turbine ...................................................................................... 361
24

Figure 15.10 Skewness of Element Quality (Before Changing the Order of Meshing) ................ 362
Figure 15.11 Skewness of Element Quality (After Changing the Order of Meshing) ................... 363
Figure 15.12 The Coil Geometry - The Zoomed in View shows the Narrow Region Between the
Coil Turns......................................................................................................................................................................... 364
Figure 15.13 Resulting Mesh ............................................................................................................................... 364
Figure 15.14 Meshing Tools in CD-Adapco.................................................................................................... 366
Figure 15.15 Constructions of Hybrid Mesh ................................................................................................. 367
Figure 15.16 Predominantly Polyhedral Meshing with Advanced (Extrusion) Layer in
Boundaries ...................................................................................................................................................................... 368
Figure 15.17 Combined Volume and Extrusion Layer Meshes ............................................................. 368
Figure 15.18 Background Grids for Discretization of the Distance Fnction and the Mesh Size
Function............................................................................................................................................................................ 371
Figure 15.19 Example of gradient limiting with an unstructured background grid .................... 379
Figure 15.20 Another example of gradient limiting, showing that non-convex regions are
handled correctly.......................................................................................................................................................... 380
Figure 15.21 A mesh Size Function Taking into account both Feature Size, Curvature, and
Gradient Limiting. The Feature Size is computed as the sum of the distance function and the
distance to the medial axis. ...................................................................................................................................... 380
Figure 15.22 Generation of a Mesh Size Function for a Geometry with Smooth Boundaries. . 381
Figure 15.23 Cross-Sections of a 3D Mesh Size Function and a Sample Tetrahedral Mesh ...... 381
Figure 15.24 Numerical adaptation for compressible flow .................................................................... 383
Figure 15.25 Gradient limiting with space-dependent g(x). .................................................................. 384
Figure 15.26 Meshing objects in an image ..................................................................................................... 384
Figure 15.27 Gradient limiting with solution-dependent g(h). The distances between the level
sets of h(x) are smaller for small h, giving a faster increase in mesh size. ........................................... 385
Figure 15.28 Delaunay Tessellation of Boundary Vertices used for Background Mesh ............. 387
Figure 15.29 Boundary and Transition Layers Adjacent to Model Boundary ................................ 390
Figure 15.30 Placement of Sizing Vertices at the Boundary and Transition Layers .................... 391
Figure 15.31 Background Mesh used for Boundary Layer Mesh. Contours Generated From
Natural Neighbor Interpolation are Over-Laid ................................................................................................ 391
Figure 15.32 Boundary Layer Mesh With 1:200 Transition................................................................... 392
Figure 15.33 Close-Up of Boundary Layers in Previous Figure ............................................................ 392
Figure 15.34 Approximation of Radius of Curvature Between Two Points A,B on a Surface .. 393
Figure 15.35 Background mesh and contours of sizing function for .................................................. 394
Figure 15.36 Parametric surface meshed with two different max spanning angles (φ). Left
φ=15 degrees, right: φ=30 degrees ...................................................................................................................... 395
Figure 15.37 Comparison of meshing results from: (a) pre-meshed inner circle with no growth
control and (b) from size function with growth controlled ........................................................................ 396
Figure 15.38 Demonstration of the Effective Domain of Size Function ............................................. 399
Figure 15.39 Refinement of Proximity Facets .............................................................................................. 400
Figure 15.40 Refining Criterion for a Background Cell (A - Actual Size Distribution from
Defined Size Functions, B – Size by Linear Interpolation from 8 corner points, C – Source Entities
Possibly with Smaller Size Inside the Cell) ........................................................................................................ 404
Figure 15.41 Meshing the Nasty Clown Using a Single Curvature Size Function .......................... 405
Figure 15.42 Use of Proximity Size Functions in Volume Meshing ..................................................... 406
Figure 15.43 Use of Proximity and Curvature Size Functions in Meshing a Volume with Airfoil
Voids .................................................................................................................................................................................. 407
Figure 15.44 Meshing Results Using Composite Size Functions where Three kinds of Size
Functions are Attached to the Volume ................................................................................................................ 407
Figure 16.1 Predicted Mesh Quality (Volume, Aspect Ratio, and Stretch) ....................................... 410
25

Figure 16.2 A simple Demonstration of How a Poor Mesh from a Cell Geometry Perspective 412
Figure 16.3 Using Kestrel one can Show a Correlation Between Mesh and Solution Quality .. 413
Figure 16.4 Concept of Orthogonality in Cells .............................................................................................. 414
Figure 16.5 Skewness and Warpage................................................................................................................. 415
Figure 16.6 Tetrahedral Volume ........................................................................................................................ 415
Figure 16.7 Triangulation of a polygon ........................................................................................................... 416
Figure 16.8 Tetrahedralization of a Polyhedral (showing a single face) .......................................... 417
Figure 16.9 Boundary (top) and Interior of Polyhedral Mesh............................................................... 418
Figure 16.10 Initial Surface Mesh (top) and Smoothed surface mesh (bottom) ........................... 418
Figure 16.11 Multi-Connected Non-Convex region with a Clearly Invalid Initial 2D Planar Mesh
(left),................................................................................................................................................................................... 418
Figure 16.12 General Estimation of Surface Mesh Element Size .......................................................... 421
Figure 16.13 Mesh Resolution for Sideview Mirror – Courtesy of Lanfrit ...................................... 424
Figure 16.14 Prism Layer Growth – Courtesy of Lanfrit ......................................................................... 425
Figure 16.15 Handling Prism Sides using Non-conformal Interfaces – Courtesy of Lanfrit .... 426
Figure 16.16 Impact of Local Refinement on Tetrahedral Mesh – Courtesy of Lanfrit .............. 427
Figure 17.1 Symmetry plane (XY) ..................................................................................................................... 430

Contributors

➢ Roy Koomullil, Bharat Soni, Rajkeshar Singh ,”A comprehensive generalized mesh system for
CFD applications”, Mathematics and Computers in Simulation 78 (2008).
➢ Narayan, K. Lalit. Computer Aided Design and Manufacturing. New Delhi, 2008.
➢ Duggal, Vijay. Cadd Primer: A General Guide to Computer Aided Design and Drafting-Cadd,
Mailmax Pub. ISBN 978-0962916595, 2000.
➢ Christophe Geuzaine, Emilie Marchandise , and Jean-Francois Remacle, “An introduction to
Geometrical Modelling and Mesh Generation”, The Gmsh Companion.
➢ Butlin, G., Stops C., “CAD Data Repair”, Proc. 5th Int. Meshing Roundtable, pp. 7-12, 1996.
➢ Mezentsev, A.A. and Woehler, T., “Methods and algorithms of automated CAD repair for
incremental surface meshing”, Proc. 8th Int. Meshing Roundtable, Sandia report SAND 99-
2288, pp. 299-309, 1999.
➢ Ribo, R., Bugeda, G. and Onate, E., “Some algorithms to correct a geometry in order to create a
finite element mesh”, Computers and Structures, 80:1399-1408, 2002.
➢ Richardson LF. Weather prediction by numerical process. Cambridge: Cambridge University
Press; 1921.
➢ Edelsbrunner H. “Geometry and topology for mesh generation”, Cambridge: Cambridge
university, 2001.
➢ Baker, T., “Mesh generation: Art or science?” MAE Department, Princeton University,
Princeton, NJ.
➢ Steven J. Owen, “A Survey of Unstructured Mesh Generation Technology”, Carnegie Mellon
University, PA.
➢ Steven Owen: Introduction to unstructured mesh generation, 2005. Baker, T.,J., “Mesh
generation: Art or science?”, MAE Department, Princeton University, Princeton, NJ.
➢ Bauer F, Garabedian P, Korn D. Supercritical wing sections I, Lecture Notes in Economics and
Mathematical Systems, vol. 66. Berlin: Springer; 1972.
26

➢ Moretti G.”Grid generation using classical techniques”. Proceedings of the NASA Langley
workshop on numerical grid generation techniques, Langley, VA, October, 1980.
➢ Caughey DA, “A systematic procedure for generating useful conformal mappings”, Int J Num
Meth Eng 1978.
➢ Eriksson LE,”Generation of boundary-conforming grids around wing-body configurations
using transfinite interpolation”, AIAA J 1982; 20:1313–20.
➢ An overview of Grid Pro/az3000 for automated grid generation.
➢ Churchill, R., V., “Introduction to Complex Variables”, McGraw-Hill, New York.
➢ Joe F. Thompson, Z. U. A. Warsi, C. Wayne Mastin, “Numerical Grid Generation -Foundations
and Applications”, North Holland, 1985.
➢ Peter Eiseman and Robert E. Smith, “Applications of Algebraic Grid Generation”, April 1990.
➢ Sadrehaghighi, I., Smith, R.E., Tiwari, S., N., “Grid Sensitivity and Aerodynamic Optimization Of
Generic Airfoils”, Journal of Aircraft, Volume 32, No. 6, Pages 1234-1239.
➢ M. Farrashkhalvat and J.P. Miles, “Basic Structured Grid Generation”, An imprint of Elsevier
Science Linacre House, Jordan Hill, Oxford OX2 8DP, 200 Wheeler Rd, Burlington MA 01803,
First published 2003.
➢ Feng Liu, Shanhong Ji, and Guojun Liao,” An Adaptive Grid Method and Its Application to Steady
Euler Flow Calculations”, Siam J. Sci. Comput. C° 1998 Society For Industrial And Applied
Mathematics Vol. 20, No. 3, Pp. 811{825.
➢ Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
➢ Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured
meshes for the GMGW-1 workshop using ANSA”, AIAA, January 2018.
➢ David A. Venditti and David L. Darmofal, “Grid Adaptation for Functional Outputs:
Application to Two Dimensional Inviscid Flows", Journal of Computational Physics 176, 40–
69 (2002).
➢ Cavallo, P.A., Sinha, N., and Feldman, G.M.,” Parallel Unstructured Mesh Adaptation For
Transient Moving Body And Aero propulsive Applications”, Combustion Research and Flow
Technology, Inc. (CRAFT Tech), PA.
➢ Cavallo, P.A., Sinha, N., and Feldman, G.M.,”Parallel Unstructured Mesh Adaptation For
Transient Moving Body And Aeropropulsive Applications”, Combustion Research and Flow
Technology, Inc. (CRAFT Tech), PA 18947.
➢ Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume
Method”, ISSN 1333–1124, UDK 532.5:519.6.
➢ JIA Huana, SUN Qin b, “A Comparison of Two Dynamic Mesh Methods in Fluid –Structure
interaction”, School of Aeronautics, Northwestern Polytechnic University, Xi‘an china. 2nd
International Conference on Electronic & Mechanical Engineering and Information
Technology (EMEIT-2012).
➢ Fluent, “Meshing and CFD Accuracy”, CFD Summit, June 2005.
➢ Mitja Morgut, Enrico Nobile, “Comparison of Hexa-Structured and Hybrid-Unstructured
Meshing Approaches for Numerical Prediction of the Flow Around Marine Propellers”, First
International Symposium on Marine Propulsions smp’09, Trondheim, Norway, June 2009.
➢ Daisuke Sasaki, Caleb Dhanasekaran, Bill Dawes, Shahrokh Shahpar, “Efficient Unstructured
Hybrid Meshing and its Quality Improvement for Design Optimization of Turbomachinery”,
European Conference on Computational Fluid Dynamics, ECCOMAS CFD 2006.
➢ Samir Vinchurkar, P. Worth Longest, “Evaluation of hexahedral, prismatic and hybrid mesh
styles for simulating respiratory aerosol dynamics”, Computers & Fluids, 2008.
➢ Sadrehaghighi, I., Smith, R.E., Tiwari, S., N., “Grid Sensitivity and Aerodynamic Optimization Of
Generic Airfoils”, Journal of Aircraft, Volume 32, No. 6, Pages 1234-1239.
27

➢ Philippe Martineau Rousseau, Azzeddine Soulaïmani and Michel Sabourin, “Comparison


between structured hexahedral and hybrid tetrahedral meshes generated by commercial
software for CFD hydraulic turbine analysis”, Conferece Paper, May 2013.
➢ Ahmed Khamayseh and Valmor de Almeida, “Adaptive Hybrid Mesh Refinement for
Multiphysics Applications”, Journal of Physics: Conference Series 78 (2007) 012039.
➢ Kenneth Wong is Digital Engineering’s resident blogger and senior editor.
➢ Biswas, R., and Strawn, R.C., "Tetrahedral and Hexahedral Mesh Adaptation for CFD
Problems", NAS Technical Report NAS-97-007, 1997.
➢ H.L. De Cougny and MS. Shephard, 'Local modification tools for adaptive mesh enrichment and
their parallelization', Scientific Computation Research Center, RPI, NY.
➢ Zhang Laiping, Zhao Zhong W. Huang and R. D. Russell, Moving mesh strategy based on a gradient
flow equation for two-dimensional problems, SIAM J. Sci. Comput. 20(3), 998 (1999).
➢ Hector D. Ceniceros and Thomas Y. Hou, “An Efficient Dynamically Adaptive Mesh for
Potentially Singular Solutions”, Journal of Computational Physics 172, 609–639 (2001).
➢ Yaxun Liu and Costas D. Sarris, “Dynamically Adaptive Mesh Refinement FDTD: A Stable And
Efficient Technique For Time-Domain Simulations”, Department of Electrical and Computer
Engineering University of Toronto, Toronto, ON, M5S 3G4, Canada.
➢ Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a multigrid/parallel
algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.
➢ Lars Tysell, “Hybrid grid generation for viscous flow computations around complex
geometries”, Technical Reports from Royal Institute of Technology, Department of Mechanics,
Stockholm, Sweden, 2010.
➢ L¨ohner, R., A parallel Advancing Front Grid Generation Scheme. Paper AIAA 2000.
➢ Larwood, B., Weatherill, N. P., Hassan, O. & Morgan, K. 2003, Domain Decomposition Approach
for Parallel Unstructured Mesh Generation. International Journal for Numerical Methods in
Engineering, 2003.
➢ Weatherill, N. P., Hassan, O., Morgan, K., Jones, J. & Larwood, B., “Towards Fully Parallel
Aerospace Simulations on Unstructured Meshes”. International Journal for Numerical Methods
in Engineering, 2001.
➢ Ito, Y., Murayama, M., Yamamoto, K., Shih, A. & Soni, B., Development of a Grid Generator to
Support 3-D Multizone Navier-Stokes Analysis. Paper AIAA-2008-7180.
➢ Eliasson, P., Nordstr¨om, J., Peng, S-H. & Tysell, L.,”Effect of Edge-based Discretization Schemes
in Computations of the DLR F6 Wing-Body Configuration”. Paper AIAA-2008-4153.
➢ Berglind, T., Numerical Simulation of Store Separation for Quasi-Steady Flow. FOI-R-2761-SE,
FOI, Swedish Defense Research Agency, 2009.
➢ Berglind, T., Peng, S-H. & Tysell, L., FoT25: Studies of Embedded Weapons Bays - Summary
Report. FOI-R-2775-SE, FOI, Swedish Defense Research Agency, 2009.
➢ Zaib Ali, James Tyacke, Paul G. Tucker, Shahrokh Shahparb, “Block topology generation for
structured multi-block meshing with hierarchical geometry handling”, 25th International
Meshing Roundtable (IMR25), 2016.
➢ Jeffrey Slotnick, “Meshing Challenges for Applied Aerodynamics”, Boeing, January 2019.
➢ Shahrokh Shahpar and Leigh Lapworth, “PADRAM: Parametric Design And Rapid Meshing
System For Turbomachinery Optimization”, Proceedings of ASME Turbo Expo 2003, USA.
➢ Marco Lanfrit, “Best practice guidelines for handling Automotive External Aerodynamics with
FLUENT”, Fluent Deutschland GmbH, Birkenweg 14a, 64295 Darmstadt/Germany.
➢ John Chawner, Pointwise, Inc.
➢ Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London,
Faculty of Engineering Department of Aeronautics, A thesis submitted for the Degree of
Doctor of Philosophy, 2017.
28

➢ Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient
Limiting”, Dept. of Mathematics, Massachusetts Institute of Technology.
➢ Steven J. Owen and Sunil Saigal, “Neighborhood-Based Element Sizing Control for Finite
Element Surface Meshing”, Department of Civil and Environmental Engineering, Carnegie
Mellon University And ANSYS Inc. 275 Technology Drive, Cannonsburg, PA, USA.
➢ Hiroaki Nishikawa, Boris Diskin and James L. Thomas, “Development and Application of
Agglomerated Multigrid Methods for Complex Geometries “, 40th Fluid Dynamics Conference
and Exhibit, 28 June - 1 July 2010, Chicago, Illinois.
29

1 Introduction
1.1 The Black Box Dilemma1
1.1.1 Trust the Mesh Generated by the Software, or Take a Proactive Approach?
Are you the type who likes to take a peek inside the black box to see how it works? Or are you one
who’s willing to put your faith in the black box? Argued [Kenneth Wong] of Digital Engineering’s.
The answer to that may offer clues to the type of meshing applications that appeal to you. But that’s
not the only factor. Your own finite element analysis (FEA) skills also play a role. Most simulation
programs aimed at design engineers offer fully or almost fully automated meshing. In other words,
the software makes most or all of the mesh-related decisions required. Your part may be limited to
selecting the desired resolution or the level of details fine meshing (high resolution, takes more time,
but more accurate) or coarse meshing (low resolution, takes less time, but more approximations
involved).
There are good reasons to keep the meshing process hidden inside the black box, as it were. It takes
a lot of experience and expertise (perhaps even a Ph.D.) to understand the difference between, say, a
hexahedral mesh and a tetrahedral mesh; or tri elements and quad elements. It takes considerable
simulation runs to know what type of meshing methods work well for a particular set of solid
geometry. It requires yet another level of wisdom to know how to manually readjust the software-
generated meshes to more accurately account for the problematic curvatures, corners and joints in
your geometry. These are beyond the scope of what most design engineers do. Therefore, many argue
presenting a design engineer with a menu of these choices is counterproductive. On the other hand,
expert users with a lot of analysis experience know the correlations between mesh types and
accuracy, so they may want to get more involved in the meshing process. For this reason, high-end
analysis software usually offers much more knobs and dials in the meshing process. Depriving expert
users of these choices would force them to accept what they know to be unacceptable
approximations. To navigate between the two different approaches, you need at least some
understanding of how meshing works, automated or manual.
1.1.2 Not All the Meshes Created Equal
According to [Abdullah Karimi], CFD analyst for Southland Industries, uses fluid dynamics programs
to examine airflow and heat distribution to develop the best residential heating solutions for his
company’s clients. Via an online blog by Southland Industries, Karimi penned an article titled “How
Not to Mesh Up: Six Mistakes to Avoid When Generating CFD Grids”. His first tip: Never use the first
iteration of automatically generated mesh. “I’ve realized even some people with Ph.D.’s don’t have a
good grasp on meshing,” he says. “People say, garbage in, garbage out. I say, good mesh equals good
results. But the vast majority of the times I’ve seen the [software’s] automatically generated initial
mesh is too coarse. The mesh may not even work, and if it does, the result may not be accurate.” If
the automatically generated mesh significantly distorts the original geometry’s prominent
characteristics—such as rounded corners, sharp angles and smooth curves it may be a sign that the
mesh needs manual intervention in those specific regions. “You should at least take a look at the
mesh. You can check to see if there are sudden size transitions, aspect ratio for skewness and
triangular distortions. Just by visually inspecting the mesh, you can get a good idea if this may or may
not work for your problem,” says Karimi.
In his article, Karimi advises, “Don’t hit ‘Run’ without a mesh quality inspection. Depending on the
robustness of the solution scheme, this could cause serious issues like straightaway divergence of the
solution ... There are several quality metrics that need attention depending on mesh type and flow
problem. Some of these metrics include skewness, aspect ratio, orthogonality [and] negative volume.”

1 Kenneth Wong is Digital Engineering’s resident blogger and senior editor.


30

1.1.3 The Mesh Types


With its designer friendly Altair Inspire (previously solidThinking Inspire) and expert-centric
Altair HyperMesh software, Altair offers different approaches to meshing. “In Inspire, meshing is
mostly hidden from the user,” explains Paul Eder, senior director of HyperWorks shell meshing, CAD
and geometry at Altair. “The users choose to solve either in the first order [which prioritizes speed]
or second order [which prioritizes accuracy].” By contrast, in HyperMesh, “We expose a lot more
knobs and dials, because it’s for advanced users who understand the type of meshes they want to
generate,” he adds. A similar strategy is seen in ANSYS software offerings. “Two of our products,
ANSYS Forte and Discovery Live, provide a fully automated meshing experience,” says Bill Kulp, lead
product marketing manager for Fluids at ANSYS. “ANSYS Discovery Live provides instantaneous 3D
simulation so there is no time to make a mesh. On the other hand, our [general-purpose CFD package]
ANSYS Fluent users need to solve a wide variety of fluid flow problems that can be most accurately
approached by optimizing the mesh for the task at hand.”
“Push-button automated meshing is our goal because we want to take this time-consuming job away
from the engineers so they can concentrate on the innovation and optimization of their products,”
adds [Andy Wade], lead application engineer at ANSYS. “Automated meshing will enable AI and
digital twins to run simulations in the future and so this area is becoming the focus.” In theory, design
engineers and simulation analysts could use different products, but in reality, some design engineers
have sufficient expertise to make critical meshing decisions; and some analysis experts prefer the
efficiency of automated or semi-automated meshing. So even with different products, satisfying both
crowds is a difficult balancing act for vendors. Though the meshing process is mostly kept in the
background in Altair Inspire, “If you’re an advanced user and want to see the meshes, you have the
option to,” says Eder. “At the same time, we also offer automation in HyperMesh, because even some
expert users want the same ease of use seen in Inspire.” “Tools such as ANSYS Discovery Live takes
the meshing away completely from the user, whereas Discovery AIM features automatic physics-
aware meshing, so the user can allow the product to do the hard work but if they want to see the

Figure 1.1 Meshes Created using ANSYS Mosaic-Enabled Poly-Hex Core Meshing - Courtesy of
Sheffield Hallam University
31

mesh and tweak it they can take control,” says Wade. Figure 1.1 shows meshes were created using
ANSYS Mosaic-enabled Poly-Hex core meshing that automatically combines disparate meshes with
polyhedral elements for fast, accurate flow resolution. ANSYS Fluent provides Mosaic-enabled
meshing as part of a single-window, task-based workflow. Image courtesy of Sheffield Hallam
University, Centre for Sports Engineering Research; and ANSYS.
1.1.4 Regional Meshing
The relatively new startup OnScale recently began offering on-demand multi-physics simulation
from the browser. Some firms like Rescale offer high-performance computing (HPC) resources
needed to run simulation, but not the software. By contrast, OnScale offers both the hardware and
the multi-physics solver required to process jobs. “We offer automatic meshing as well as user-
defined meshing. Users can define the level of fidelity desired,” explains Gerald Harvey, OnScale’s
founder and VP of engineering. “OnScale gives you the ability to refine the grid and apply finer
meshes in specific regions.” Not every corner, section or region in your geometry needs fine meshing.
With simple geometry, a coarse mesh with fewer elements may suffice. But in certain regions where
curvature, contact and joints create complex stress concentrations or flow patterns, a finer mesh
(simply put, a higher number of meshes to cover the area) is warranted. Advanced simulation
programs usually offer tools to specify how to treat these regions. Even in programs that target
design engineers, some tools may be available to treat these regions differently.“ In Altair FEA
products like SimLab, you can perform automatic local mesh refinement,” says Eder. “So you can run
an analysis, review the results, then automatically refine the mesh in areas of high strain energy error
density for subsequent runs. In [expert-targeted] HyperMesh, you also have many more manual
mesh refinement options.”
1.1.5 Simulation Cost
OnScale’s Harvey suggests running a mesh study to understand the correlation between the stress
effects and the mesh types and mesh density chosen. This can offer clues on how meshing affects the
FEA results. “Every engineer should conduct a mesh convergence study test the meshes with some
key performance indicators (KPIs) to find a happy medium,” says Harvey. “Suppose you’re looking at
the design of a bracket. Then look at how the different meshes affect the bend angle of the bracket,
for example.” Calculating simulation cost is complex, in part due to the mix of licensing policies in the
market. But fundamentally, two parameters are involved: the time it takes and the hardware it uses.
The need to find simplified meshes (as simple as possible without infringing on the accuracy of
results) largely stems from the desire to keep these two parameters as low as possible. “If you have
a simple solid part and you put 3D meshes on it, it takes more times than necessary to run,” notes
Eder. In such a case, running simulation in a 2D cross-section of the geometry may be much more
efficient. “And think of how many iterations you plan to run, because you’ll be paying that penalty for
every single run,” he adds.
ANSYS’ Wade points out that most solvers prefer hexahedral elements or quad surface mesh because
“they fill the space very efficiently and using such elements when transient or explicit analysis is
required can give massive gains in solve times (minimizing CPU effort for calculations). Hex elements
can follow the flow direction better as well, which has some accuracy benefits. Tetrahedra, polys and
other unstructured methods are very popular because they don’t require the decomposition
(chopping up) of the space like a hex mesh; as a result, they are excellent for automation and really
minimize manual effort.” Another tip from Karimi’s article: “Don’t fill the domain with a ridiculous
number of tetrahedrons. So many times, I see meshing engineers filling up their CFD [computational
fluid dynamics] domains [the target region for fluid analysis] with a large number of tetrahedrons
and then struggling to get simulation results on time.” Certain programs are equipped to make the
mesh selection easier. “With OnScale, you can conduct a study on a sweep of design, with mesh being
one of the variables,” Harvey points out. “In OnScale, the run wouldn’t cost you significantly, because
it would be a one-off cost. And the payback is well worth it.”
32

1.1.6 Physics vs. Mesh


Choosing the right kind of mesh, applying the right density to critical regions and selecting the right
kind of coarseness or looseness affect the accuracy and speed of the simulation job. That is an exercise
in tradeoffs, so there’s no black-and-white answer. “Meshing is always an exercise in tradeoffs in the
quality of the mesh versus the speed of the solution,” says Karimi. “If you just want to see if a part will
stand up to stresses and daily beating over time, and you’re not looking at the lowest level of details
but at a high level of generality, then getting your physics correct is more important than the mesh,”
says Eder. That means, at the general concept design level, the loads and boundary conditions—such
as temperature, forces and direction of the forces may be more important than the type of meshes
selected.
1.1.7 Meshing Generalities
A pre-processing step for the computational field simulation is the discretization of the domain of
interest and is called mesh generation. The process of mesh generation can be broadly classified into
two categories based on the topology of the elements that fill the domain. These two basic categories
are known as structured and unstructured meshes. The different types of meshes have their
advantages and disadvantages in terms of both solution accuracy and the complexity of the mesh
generation process. A structured mesh is defined as a set of hexahedral elements with an implicit
connectivity of the points in the mesh. The structured mesh generation for complex geometries is a
time-consuming task due to the possible need of breaking the domain manually into several blocks
depending on the nature of the geometry. An unstructured mesh is defined as a set of elements,
commonly tetrahedrons, with an explicitly defined connectivity. The unstructured mesh generation
process involves two basic steps: point creation and definition of connectivity between these points.
Flexibility and automation make the unstructured mesh a favorable choice although solution
accuracy may be relatively unfavorable compared to the structured mesh due to the presence of
skewed elements in sensitive regions like boundary layers.
In an attempt to combine the advantages of both structured and unstructured meshes, another
approach in practice is hybrid mesh generation. In a hybrid mesh, the viscous region is filled with
prismatic or hexahedral cells while the rest of the domain is filled with tetrahedral cells. It has been
observed that a hybrid mesh in viscous regions creates a lesser number of elements than a completely
unstructured mesh with a similar resolution. This type of mesh has no restrictions on the number of
edges or faces on a cell, which makes it extremely flexible for topological adaptation. It is given that
unstructured mesh has an advantage over the structured mesh in handling complex geometries,
mesh adaptation using local refinement and de-refinements, moving mesh capability by locally
repairing the bad quality elements, and load balancing using appropriate graph partitioning
algorithms. In the case of a non-matched block-to-block boundary, interpolation issues have to be
handled properly to satisfy the conservation principles. However, the structured mesh has a better
accuracy for viscous calculations due to the fact that it can handle cells with very high aspect ratio

Surface Volume Optimization


CAD Data CFD
Grid Grid of Grid

Figure 1.2 Methodology of General Grid Generation


33

cells in the boundary layer2. Precipitate of most grid generation procedure can be summarized as
Figure 1.2 provided that everything goes according to plan.

1.2 Classification of Mesh Generation Techniques


As discussed before, the mesh generation techniques can be divided to two major categories of
structured and un-structured mesh. Strictly speaking, a structured mesh can be recognized by all
interior nodes of the mesh having an equal number of adjacent elements. For our purposes, the mesh
generated by a structured grid generator is typically all quad or hexahedral. Algorithms employed
generally involve complex iterative smoothing techniques that attempt to align elements with
boundaries or physical domains. Where non-trivial boundaries are required, block structured
techniques can be employed which allow the user to break the domain up into topological blocks3.
Structured grid generators are most commonly used within the CFD field, where strict alignment of
elements can be required by the analysis code or necessary to capture physical phenomenon4.
Unstructured mesh generation, on the other hand, relaxes the node valence requirement, allowing
any number of elements to meet at a single node. Triangle and Tetrahedral meshes are most
commonly thought of when referring to unstructured meshing, although quadrilateral and
hexahedral meshes can also be unstructured. While there is certainly some overlap between
structured and unstructured mesh generation technologies, the main feature which distinguish the
two fields are the unique iterative smoothing algorithms employed by structured grid generation.
The semi-complete picture of grid generation algorithm is updated by [S. Owens ] and presented here
as reference5 (see Error! Reference source not found.). In general, on the structure side, some m
apping techniques such as Transfinite Interpolation (TFI), or Elliptic operator are used extensively
and proven to be sufficient for majority of applications. On unstructured side, the same could be said
about Advancing Front or Delaunay triangulation. The above table is too broad and extensive for
our purpose. Our concentration, as red circles indicate, would be on the:

➢ Structured Meshes
• Complex Variables (Restricted to 2D)
• Algebraic Techniques (TFI)
• PDE Methods (PDE)

➢ Unstructured Meshes
• Delany Triangulation
• Advancing Front
• Octree Method
• Polyhedral Meshes
• Overset Meshes
• Cartesian Meshes

➢ Hybrid Meshes
➢ Adaptive Meshes
• Structured
• Unstructured

2 Roy Koomullil, Bharat Soni, Rajkeshar Singh ,”A comprehensive generalized mesh system for CFD applications”,
Mathematics and Computers in Simulation 78 (2008) 605–617.
3 Steven J. Owen, “A Survey of Unstructured Mesh Generation Technology”, Carnegie Mellon University, PA.
4 Introduction: An Initial Guide to CFD and to this Volume; page 1, 2007.
5 Steven Owen: Introduction to unstructured mesh generation, 2005.
34

Figure 1.4 Classification of Grid Generation Algorithms (Courtesy of Steven Owen)

Figure 1.3 Examples of Structured Meshes for Turbine Blade


35

1.2.1 Field (Domain) Discretization Process (Mesh Generation)


Once a mathematical model is selected, we can start with the major process of a simulation, namely
the domain discretization process. Since the computer recognizes only numbers, we have to
translate our geometrical and mathematical models into numbers which of course called
discretization. The first action is to discretize the space, including the geometries and solid bodies
present in the flow field or enclosing the flow
domain. This set of points, which replaces the
continuity of the real space by a finite number of
isolated points in space, is called a grid or a mesh.
The process of grid generation is in general
extremely complex and requires dedicated
software tools to help in defining grids that follow
the solid surfaces (this is called ‘body-fitted’ grids)
and have a minimum level of regularity. We wish
already here to draw your attention to the fact that,
when dealing with complex geometries, the grid
generation process can be very delicate and time
consuming. Grid generation is a major step in
setting up a CFD analysis, since, as we will see the
outcome of a CFD simulation and its accuracy can
be extremely dependent on the grid properties and
quality. Please notice here that the whole object of Figure 1.5 Example of Unstructured
the simulation is for the computer to provide the Tetrahedral Meshes
numerical values of all the relevant flow variables,
such as velocity, pressure, temperature, etc., at the positions of the mesh points. Hence, this first step
of grid generation is essential and cannot be omitted. Without a grid, there is no possibility to start a
CFD simulation. Figure 1.3 shows examples of 2D and 3D structured grids, while Figure 1.5
displays an example of mainly tetrahedral unstructured grids.
36

2 Computer-Aided Design (CAD)


Computer-Aided Design (CAD) is the use of computer systems (or workstations) to aid in the
creation, modification, analysis, or optimization of a design6. CAD software is used to increase the
productivity of the designer, improve the quality of design, improve communications through
documentation, and to create a database for manufacturing. CAD output is often in the form of
electronic files for print, machining, or other manufacturing operations. The term CADD (for
Computer Aided Design and Drafting) is also used7. CAD may be used to design curves and figures
in two-dimensional (2D) space; or curves, surfaces, and solids in three-dimensional (3D) space. CAD
is an important industrial art extensively used in many applications, including automotive,
shipbuilding, and aerospace industries, industrial and architectural design, prosthetics, and many
more. CAD is also widely used to produce computer animation for special effects in movies,
advertising and technical manuals, often called DCC digital content creation. The modern ubiquity
and power of computers means that even perfume bottles and shampoo dispensers are designed
using techniques unheard of by engineers of the 1960s. Because of its enormous economic
importance, CAD has been a major driving force for research in computational geometry, computer
graphics (both hardware and software), and discrete differential geometry8.
CAD is an important industrial art extensively used in many applications, including automotive,
shipbuilding, and aerospace industries, industrial and architectural design, prosthetics, and many
more. CAD is also widely used to produce computer animation for special effects in movies,
advertising and technical manuals, often called DCC digital content creation. The modern ubiquity
and power of computers means that even perfume bottles and shampoo dispensers are designed
using techniques unheard of by engineers of the 1960s. Because of its enormous economic
importance, CAD has been a major driving force for research in computational geometry, computer
graphics (both hardware and software), and discrete differential geometry9.

2.1 Software and Technology


Originally software for Computer-Aided Design systems was developed with computer languages
such as Fortran, ALGOL but with the advancement of object-oriented programming methods this has
radically changed. Typical modern parametric feature based modeler and freeform surface systems
are built around a number of key C modules with their own APIs. A CAD system can be seen as built
up from the interaction of a graphical user interface (GUI) with NURBS geometry or boundary
representation (B-rep) data via a geometric modeling kernel. A geometry constraint engine may also
be employed to manage the associative relationships between geometry, such as wireframe
geometry in a sketch or components in an assembly. Unexpected capabilities of these associative
relationships have led to a new form of prototyping called digital prototyping. In contrast to physical
prototypes, which entail manufacturing time in the design. That said, CAD models can be generated
by a computer after the physical prototype has been scanned using an industrial CT scanning
machine. Depending on the nature of the business, digital or physical prototypes can be initially
chosen according to specific needs.
Today, CAD systems exist for all the major platforms (Windows, Linux, UNIX and Mac OS X); some
packages support multiple platforms. CAD software enables engineers and architects to design,
inspect and manage engineering projects within an integrated graphical user interface (GUI) on a

6 Narayan, K. Lalit (2008). Computer Aided Design and Manufacturing. New Delhi: Prentice Hall of India. p. 3.
7 Duggal, Vijay (2000). Cadd Primer: A General Guide to Computer Aided Design and Drafting-Cadd, Mailmax
Pub. ISBN 978-0962916595.
8 Wikipedia.
9 Same Source.
37

personal computer system. Most


applications support solid modeling with
boundary representation (B-Rep) and CAD
Management
NURBS geometry, and enable the same to
be published in a variety of formats. A
geometric modeling kernel is a software Grid
component that provides solid modeling Generation
and surface modeling features to CAD
management applications. Based on
market statistics, commercial software
from Autodesk, Dassault Systems,
Siemens PLM Software and PTC dominate
the CAD industry. Presently, most of CFD
commercially available CAD systems,
such as SolidWorks, Autodesk or Siemens
NX, calming to be able to do faster design
loops, are also including a CFD analysis
tool (some with limited capabilities), and
Grid Generation kernel, in their product. Figure 2.1 Anatomy of commercial CAD Systems
(see Figure 2.1).
For example, using SolidWorks, to
solve the symmetric algebraic
problem for pressure-correction, an
original double preconditioned
iterative procedure is used10. It is
based on a specially-developed
multigrid method from [Hackbusch
(1985)]. This is an external flow
around a F-16 fighter (Mach Number
equals 0.6 and 0.85). The geometry
is a native CAD model of the airplane
with external tanks and armaments.
Flow into the intake and exhaust
from the engine’s nozzle are both
taking into account. Calculations
were performed with relatively
coarse grid of approximately
200,000 cells. (see Figure 2.2)
Calculation results are compared
with the test data from [Nguyen, Luat
T. et al.].
2.1.1 Commercially Available CAD
Systems: Figure 2.2 Fighter Airplane F-16 calculation
The following is a list of major CAD
applications.
➢ Alibre Design ➢ Autodesk Inventor
➢ Autodesk AutoCAD ➢ Bentley Systems Micro Station

10 Solidworks, “Numerical Basis of CAD-Embedded CFD”, White Paper.


38

➢ Bricsys BricsCAD ➢ ProgeCAD


➢ Dassault Systemes CATIA ➢ SpaceClaim
➢ Dassault Systemes SolidWorks ➢ PunchCAD
➢ Kubotek KeyCreator ➢ Rhinoceros 3D
➢ Siemens NX ➢ VariCAD
➢ Siemens Solid Edge ➢ Vectorworks
➢ PTC PTC Creo (formerly known as ➢ Cobalt
Pro/ENGINEER) ➢ Gravotech Type3
➢ Trimble SketchUp ➢ RoutCad
➢ AgiliCity Modelur ➢ SketchUp
➢ TurboCAD ➢ Onshape
➢ IRONCAD ➢ ActCAD
➢ MEDUSA ➢ Remo 3D

2.1.2 Freeware and Open Source


➢ 123D
➢ LibreCAD
➢ FreeCAD
➢ BRL-CAD
➢ OpenSCAD
➢ QCad
➢ SolveSpace

2.2 Solid (Geometry) Modeling


A solid model is a computer model of a 3D solid. It is a virtual representation of the shape of a solid11.
Solid models can be simple parts, or complex assemblies of multiple parts. We aim here at explaining
how such solids can be described on a computer. We will principally focus on the ability of such solid
models to serve as input to numerical simulations.
2.2.1 Principal Characteristics of a Solid Modeling Software
A solid modeling software may have some specific characteristics that enables to enhance both its
efficiency and the productivity of the solid modeling process:
2.2.2 Feature-Based Modeling
Features are defined to be parametric shapes associated with attributes such as intrinsic geometric
parameters (length, width, depth etc.), position and orientation, geometric tolerances, material
properties, and references to other features. Feature-based modelers allow operations such as
creating holes, fillets, chamfers, bosses, and pockets to be associated with specific edges and faces.
When the edges or faces move because of a regeneration, the feature operation moves along with it,
keeping the original relationships.
2.2.3 Constraint-Based Modeling
There are two types of constraints. Dimensional constraints are used to specify distances between
items. Geometric constraints define positional relationships between entities in the model in terms
of the geometry. Examples of geometric constraints include tangency, parallelism, symmetry,
concentricity. Constraint-based modeling allows the engineer or designer to incorporate intelligence
into the design. The initial sketch of a two-dimensional profile in constraint-based solid modeling

11Christophe Geuzaine, Emilie Marchandise , and Jean-Francois Remacle, “An introduction to Geometrical
Modelling and Mesh Generation”, The Gmsh Companion.
39

does not need to be created with a great deal of accuracy. It just needs to represent the basic geometry
of the cross section. The exact size and shape of the profile is defined through assigning enough
parameters to fully constrain it.
2.2.4 Parametric Modeling
Parametric modeling means that parameters of the model may be modified to change the geometry
of the model. A dimension is a simple example of a parameter. When a dimension is changed, the
geometry of the part is updated. Thus, the parameter drives the geometry. An additional feature of
parametric modeling is that parameters can reference other parameters through relations or
equations. The power of this approach is that when one dimension is modified, all linked dimensions
are updated according to specified mathematical relations, instead of having to update all related
dimensions individually. Simply put, parametric modelling involves the building or design of 3D
geometrical models piece by piece. The process usually starts with a 2D sketch followed by the
integration of constraints, dimensions, and entities to form a defined 3D model. These constraints,
dimensions, and other entities are known as parameters.
Conversely, non-parametric modelling involves a direct approach to building 3D models without
having to work with provided parameters. Therefore, you will not be required to start with a 2D
draft and produce a 3D model by adding different entities. This means you directly model your ideas
without working with pre-set constraints. That is also why non-parametric modelling is also known
as direct modelling. Today, it is a bit difficult to find CAD applications that are solely nonparametric.
This is because most CAD producers integrate features of parametric modelling with features of
nonparametric models.
2.2.4.1 Parameter Space
The parameter space is the space of possible parameter values that define a particular mathematical
model, often a subset of finite-dimensional Euclidean space. Often the parameters are inputs of
a function, in which case the technical term for the parameter space is domain of a function. The
ranges of values of the parameters may form the axes of a plot, and particular outcomes of the model
may be plotted against these axes to illustrate how different regions of the parameter space produce
different types of behavior in the model12.
2.2.5 History-Based Modeling
The last aspect of solid modeling is that the order in which parts are created is critical. This is known
as history-based modeling. For example, a hole cannot be created before a solid volume of material
in which the hole occurs has been modeled. If the solid volume is deleted, then the hole is deleted
with it. This is known as a parent-child relation. The child (hole) cannot exist without the parent
(solid volume) existing first. Parent-child relations are critical to maintaining design intent in a part.
Most solid modeling software recognizes that if you delete a feature with a hole in it, you do not want
the hole to remain floating around without being attached to the feature. Consequently, careful
thought and planning of the base feature and initial additional features can have a significant effect
on the ease of adding subsequent features and making modifications.
2.2.6 Associative Modeling
The associative character of solid modeling software causes modifications in one object to \ripple
though" all associated objects. For instance, suppose that you change the diameter of a hole on the
engineering drawing that was created based on your original solid model. The diameter of the hole
will be automatically changed in the solid model of the part, too. In addition, the diameter of the hole
will be updated on any assembly that includes that part. Similarly, changing the dimension in the part
model will automatically result in updated values of that dimension in the drawing or assembly
incorporating the part. This aspect of solid model software makes the modification of parts much

12 Wikipedia,
40

easier and less prone to error. As a result of being feature based, constraint based, parametric, history
based, and associative, modern solid modeling software captures \design intent", not just the design.
This comes about because the solid modeling software incorporates engineering knowledge into the
solid model with features, constraints, and relationships that preserve the intended geometric
relationships in the model.

2.3 Constructive Solid Geometry (CSG) Representation of Solids


We discuss here briefly the Constructive Solid Geometry (CSG) representation of solids. CSG allow to
construct complex solid through primitives, Boolean operators and rigid motions.
2.3.1 Basic Primitives
The standard CSG basic primitives are the sphere, the torus, the parallelepiped (block), the cylinder
and the cone. All those primitives defined bounded closed orientable domains. All basic primitives
are defined in the world system of coordinates. Rigid motions (rotations, translations) and scaling
can be applied to re-position the primitives.
2.3.2 Regularized Boolean Operators
Each primitive divides the 3D space into two parts: the one that is inside the primitive and the one
that is outside. The closure of a primitive is the surface that separates its interior with its exterior. It
is easy to think a primitive
as a set where standard
Boolean operations like
union, intersection and
difference can be defined.
Basic primitives can be
combined using Boolean
operations. Three Boolean
operators are defined.
Consider two primitives A
and B.

➢ The Union A ⋃ B
operation returns of
all the points x ∈ R3
that are either inside
A or inside B.
➢ The Intersection A ⋂
B operation returns
of all the points x ∈
R3 that are both
inside A and inside
B.
➢ The Difference A n B
operation returns of
all the points x ∈ R3
that are inside A and Figure 2.3 Example of a CSG Tree
outside B.

Regularized Boolean operators differ from the set-theoretic ones in that dangling lower dimensional
structures are eliminated, all remaining faces, edges and vertices belonging to the closure of the
resulting volume.
41

2.4 The CSG Tree


A CSG object can be easily represented in a tree structure where the leaves of the tree are simple
primitives, nodes of the tree are solids, edges of the tree are Boolean operations and where the root
of the tree is a solid that is the final CSG object. Figure 2.3 shows an example of a simple CSG tree.
Most of the current commercial solid modelers enable to use CSG trees. Designing robust algorithms
for computing both the geometry and the topology of surface intersections is a complex problem. A
few number of software enable to perform CSG computations efficiently and, to our best knowledge,
only one is open source. In Gmsh, we have interfaced Open cascade primitives and operators to build
the solid of Figure 2.3.

2.5 Geometry Related Issues For Mesh Generation


One of the major issues of mesh generation is access to CAD geometry in an accurate and efficient
manner, as addresses by [Beall et al.]13. Here, we will provide an overview the process of accessing
CAD geometry for mesh generation and will review several of the issues associated with accessing
CAD geometry for mesh generation. The techniques for CAD geometry access to be reviewed include:
Translation & Healing, Discrete Representations, Direct Geometry Access, and Unified Topology
Accessing Geometry Directly. The intent of this paper is to provide an overview to the alternative
approaches and how they address the specific issues related to accessing CAD geometry for mesh
generation. It is not the intent of this paper to provide detailed algorithms related to accessing or
repairing CAD data. There are several issues associated with effective and efficient access of CAD
geometry for mesh generation. This section will provide a quick overview of several of the major
issues and the ramifications that this issues have on mesh generation. In summary, the geometry
import can be devised in three steps, following [Yasuda]14 for HL CRM mesh development, where
CFLOW compromises a grid generator and flow solver. (See Figure 2.4).

Figure 2.4 Geometry Import and Preparation

2.5.1 Understanding the Analysis Requirements


The first major issue with CAD geometry access for mesh generation is the need to understand the
analysis requirements. The appropriate mesh and geometry to be used for meshing is a function of
the analysis to be performed and the desired accuracy. There does not exist an optimal mesh

13Mark W. Beall1, Joe Walsh2, Mark S. Shephard, “Accessing CAD Geometry For Mesh Generation”.
14Hidemasa Yasuda, Taku Nagata, Atsushi Tajima, Akio Ochi, “KHI Contribution to GMGW-1”, Kawasaki, 1st
Geometry and Mesh Generation Workshop Denver, CO June 3-4, 2017.
42

independent of the analysis to be performed. A-prior element shape quality test have often been used
as a misleading indicator of a good mesh independent of the analysis to be performed or the accuracy
desired. The appropriate mesh is one that produces the desired accuracy for the problem to be
solved. In practice this is only achievable through adaptively. Different types of analyses require
different instances of the geometry to capture the physics. For example, we can perform a dynamic
structural response analysis and a Computational Fluid Dynamics (CFD) analysis on the same part.
The dynamic structural response analysis requires the solid geometry of the part while the CFD
analysis requires the geometry of the cavities through which the fluid will flow. This simple
illustration of different use of geometry representations is illustrated in Figure 2.5. Dynamic
structural response analysis requires solid geometry of the part. While CFD analysis requires
geometry of the flow cavities. Different types of analysis also require different resolutions of mesh to
achieve the desired accuracy on a particular design.

Figure 2.5 Different Analysis Require Different Geometric Representations

2.5.2 Dis-Featuring
Disfeaturing is one of the most complex issues associated with CAD geometry access for mesh
generation. Indeed one of the major issues that the CAD and CAE software industries have
encountered is developing a consistent definition of a feature. For the purposes of this paper we will
classify features into two main groups. The first group of features will be called “intended features”.
Intended features are features that were explicitly defined as features in the model that drive the
resulting geometry. In this case a feature-based modeling system was used to create a model which
contains intended features. Intended features can only be created by feature-based modeling
systems and can be suppressed by the original modeling system. The second group of features will
be called “artifact features”. Artifact features are features that are created indirectly by the modeling
process. One example of artifact features is the creation of engineering features such as holes by a
modeling system that is not feature-based. The second example of artifact features is the creation
of recognizable patterns of geometry / topology data that create a valid design model but also create
difficulties associated with mesh generation. Artifact features can be created from any modeling
system and cannot be suppressed in the original modeling system. Figure 2.6 illustrates small
features removed from geometry.
43

Part of the complexity associated with CAD geometry access for mesh generation is due to the fact
that historically analyses are performed too late in the design process and the design model contains
more details than are appropriate for analysis. Moving the analysis earlier in the design process will
help to reduce, but will not remove, the need for defeating. Since multiple analysis types may be
required for any design state there remains a need for defeating to various levels to support the range
of analysis to be performed.

Figure 2.6 Small Feature (Left) vs Removed (Right)

2.5.3 “Dirty” Geometry


Dirty geometry has been one of the most nagging issues related to geometry access. Dirty geometry
consists of gaps, overlaps and other incompatibilities in the model preventing the model from being
valid. These incompatibilities do not exist in the native CAD system and are introduced from
translating the native CAD geometry to another format. Differences in representations, methods and
tolerances between modeling engines create dirty geometry. Translators must then heal or repair
the geometry to represent it as a valid model in the non-native system15-16-17. Note that without
knowledge of the modeling system tolerances and methods, there is no a priori means to ensure a
healing process will successfully recover the correct model representation. To alleviate, recently,
ANSYS 2019 R2© rolled out a new fault-tolerant workflow that simplifies CFD meshing. However,
some of the most important and complex CFD simulations, still contain dirty, non-watertight
geometries. For instance, the geometry used in simulations of automotive front-end airflows,
external aerodynamics and complex external/internal flows can’t be meshed using the task-based
workflow. As a result, these geometries require extensive cleanup before simulation.

2.5.4 Non-Manifold Geometry


A non-manifold geometry is a 3D shape that cannot be unfolded into a 2D surface with all its normal
pointing the same direction. Examples include Multiply connected geometry, Several surfaces
connected to a single vertex, Internal faces, Disconnected vertices and edges etc. The non-

15 Butlin, G., Stops C., “CAD Data Repair”, Proc. 5th Int. Meshing Roundtable, pp. 7-12, 1996.
16 Mezentsev, A.A. and Woehler, T., “Methods and algorithms of automated CAD repair for incremental surface
meshing”, Proc. 8th Int. Meshing Roundtable, Sandia report SAND 99-2288, pp. 299-309, 1999.
17 Ribo, R., Bugeda, G. and Onate, E., “Some algorithms to correct a geometry in order to create a finite element

mesh”, Computers and Structures, 80:1399-1408, 2002.


44

manifold geometry is problematic in mesh generation sense and should be avoided or resolved prior
to that.
45

3 Topology and Blocking


Mesh generation or Domain Discretization has evolved to the point where highly complicated
domains can be covered by a variety of mesh types including hexahedral, tetrahedral and overset
meshes. It is an important and very tedious aspect of computational geometry and accounts for
almost 70% of CFD works. The concept of a mesh as a field or domain discretization of space has been
associated with computational methods since the first attempts to obtain numerical solutions of
partial differential equations18. Establishing a suitable mesh was long considered to be a rather
tedious exercise and a minor part of the computational effort involved in solving partial differential
equations by either a finite difference or finite element method. But mesh generation has steadily
evolved into a discipline in its own right drawing on ideas from other fields, in particular mathematics
and computer science, and gradually developing a distinct identity of its own. Two series of
international conferences are now devoted entirely to mesh generation and adaptation, and almost
all conferences on computational methods have sessions that feature this topic. In addition, it is
important to recognize the growing interest of the computer science community in mesh related
problems. In addition, it is important to recognize the growing interest of the computer science
community in mesh related problems19. Not only has this synergy brought new ideas and ways of
viewing mesh related questions, it has also opened up whole new areas of application including
medical imaging and segmentation, computer graphics and animation, and data interpolation and
compression.20.

3.1 Mesh Topology


Before we pay attention to the individual cell topology, we consider domain topology which are
compared for the 2D case, namely H, C, and O topologies. (See Figure 3.1). Meshes with H-H and C-
H topology were constructed for 3D comparison; however due to the incompatibility of the C-H
structure on a sharp wing tip or trailing edge with the current solver, no C-H studies are included.
Most of the studies were under lifting inviscid flow conditions. Multiple studies were conducted
under turbulent conditions but only one is included. Overall, when it comes to topology, the H mesh
scores first place followed by the C mesh and the O mesh comes last. For an interesting discussion in
regard to mesh topology, readers are encourage to consult the work by [Marcon et al.]21.

Figure 3.1 Domain Topology (O-Type, C-Type, and H-Type; from left to right)

18 Richardson LF. Weather prediction by numerical process. Cambridge: Cambridge University Press; 1921.
19 Edelsbrunner H. “Geometry and topology for mesh generation”, Cambridge: Cambridge university, 2001.
20 Baker, T., “Mesh generation: Art or science?” MAE Department, Princeton University, Princeton, NJ.
21 Julian Marcon, Michael Turner, and Joaquim Peiro, “High-order curvilinear hybrid mesh generation for CFD

simulations”, Imperial College London, South Kensington Campus, London SW7 2AZ, United Kingdom.
46

When it comes to mesh parameters, the studies show that with carefully chosen mesh spacing
around the leading edge, good orthogonality and skewness factors, smooth spacing variation, and a
reasonable number of nodes,
excellent CFD results can be
obtained from the mesh in
terms of accuracy of
computed functional,
determined convergence
order and adjoin error
estimation. Now with regard
to Topology of individual cells
where three types are
considered; Hexahedral,
Tetrahedral, and Polyhedral.
In essence, topology is a
structure of blocks that acts
as a framework for placing
mesh elements. Blocks are
laid out without gaps with
Figure 3.2 C-H Type Topology for a Wing Section
shared edges and corners and
contain same number of
elements along each side. Number of blocks will dictate the skewness of the grid elements. As a
example, Figure 3.2 displays a 3D C-H topology for a wing section, where red represents the C-type
and blue the H-type22.

3.2 Conformal Mapping of Simply-Connected (The Sponge Analogy)


It is perhaps not surprising that conformal mapping was among the first and most effective
techniques to carry out this task. The best way to the correspondence of a curvilinear grid in physical
domain, with logically rectangle grid in computational domain, is through sponge analogy. Consider
a rectangular sponge
within which an equally
spaced Cartesian grid has
been drowned. Now
wrapped the sponge
around a circular cylinder
and connect the two end of
sponge together. Clearly
the original Cartesian grid
now becomes a curvilinear
grid fitted the cylinder. But
the rectangle logical form
of grid lattice is still
preserved23. Figure 3.3 Figure 3.3 Sponge Analogy
spectacles a simply
connected (as oppose to multiple connected) region which obviously results in O-type grid. Since the
difference formulae were applied in mapped space it was necessary to transform the partial
differential equations to the coordinate system associated with the mapping. Conformal maps lead

22 D. Feszty, T. Jakubík, “ Grid Generation”, Széchenyi University.


23 Baker, T.,J., “Mesh generation: Art or science?”, MAE Department, Princeton University, Princeton, NJ.
47

to a new set of fairly straightforward equations without messy cross-derivative terms. In addition,
the orthogonality and smoothness properties of review of conformal mapping meshes obtained in
this manner produce a high quality mesh in physical space. Perhaps the first published application of
conformal mapping to (CFD) is circle plane mapping that transforms the space exterior to an airfoil
onto the interior of the unit circle. This particular conformal mapping technique extends back a long
way but its use for creating suitable meshes was a novel application. The same mapping was later
used by [Bauer et al.]24 when they developed the first transonic flow code for solving the full potential
equation. Other conformal mappings were developed to handle axisymmetric inlets and airfoil/slat
combinations. A comprehensive techniques for mesh generation has been given by Moretti25. Another
useful reference is the paper by26.

3.3 Domain Decomposition with Multi-Blocking


This problem was largely solved by the second significant development, the multi block strategy, or
Domain Decomposition. The basic idea, first formulated is to break up the domain into several
smaller blocks (essentially an ultra-coarse mesh) and then generate separate meshes in each
individual block. Figure 3.4 illustrates this idea
by showing a schematic of a three block
decomposition for the region around a wing. In
this example, one would use an H–H-mesh
combination in blocks 1 and 3, and a C–H-mesh
combination in block 2. A block corresponds to a
sub domain that is geometrically much simpler
than the full configuration and which can
therefore be easily meshed either by solving a
partial differential equation or, alternatively, by
an algebraic method27. It is, in fact, common
practice nowadays to create the mesh in any
particular block by an algebraic method such as
transfinite interpolation and then smooth the
mesh by some iterations of an elliptic solver. A
slightly more complicated topology of a dual
Block for generic airplane configuration shown Figure 3.4 Multi Block Representation for C-H
on Figure 3.5 (next page). Mesh Around a Wing
An example showing a multi block conformal
mapping for a M6 and Reference-H wings is illustrated in Figure 3.6(a) and Figure 3.6(b).
Another example of multi-block structure gridding for a Turbine Blade is giving by Figure 3.7.
GridPro© has developed a Topology Input Language (TIL) which can be used for similar
geometries with minimal effort28. The domain decomposition is in essence a “divide and conquer”
technique for arriving at the solution of problem defined over a domain from the solution of related
problems posed on subdomains. The main reason is that the solution of the subdomain is
qualitatively or quantitatively “easier” than the original one. Other factors are memory concern as

24 Bauer F, Garabedian P, Korn D. Supercritical wing sections I, Lecture Notes in Economics and Mathematical
Systems, vol. 66. Berlin: Springer; 1972.
25 Moretti G.”Grid generation using classical techniques”. Proceedings of the NASA Langley workshop on

numerical grid generation techniques, Langley, VA, October, 1980.


26 CaugheyDA, “A systematic procedure for generating useful conformal mappings”, Int J Num Meth Eng. 1978.
27 Eriksson LE,”Generation of boundary-conforming grids around wing-body configurations using transfinite

interpolation”, AIAA J 1982; 20:1313–20.


28 An overview of Grid Pro/az3000 for automated grid generation.
48

Figure 3.5 Dual Block Grid Topology for a Generic Wing-Fuselage Configuration

(a) M6 Wing (b) Reference H

Figure 3.6 Topology and Grid on a Multi-Block Wings via GridPro®


49

well as that the subdomain can be solved with


the aid of parallel programing. The issue of
domain decomposition is vast and it involves a
lot of math such as Schwarz concept29. He
purposed that simply:

➢ Solve the PDE in the circle with


boundaries taken from interior of square.
➢ Solve the PDE in the square with
Boundaries taken from interior of circle.

And then iterate as depicted in Figure 3.8. These


days, with aid of strong work stations with visual
aids, this is running on the background. The user
does not know, or cared, what algorithm in
running. Some of the vendors are opted for
automatic DD schemes, or at least to begin with. Figure 3.7 Multi-Block Gridding of Turbine
User has options to change the topology later. Blade - (Courtesy of GridPro)
But there is no free launch! There is usually a
script which should be
run prior to DD. An
example would be
GridPro® which is runes Iterate
a TIL (Topology Input
Language) script,
written in C. The DD Figure 3.8 Schwarz Concept of Iterating Between Domains
obtained using a TIL for
an M6 wing is shown in Figure 3.9.
Other venders have their own scripts or
input data depending. Another example
is Pointwise® which uses Glyph or
newer Glyph2 as a scripting for the
geometry. There are generally two
methods for generating the grid; Top to
Bottom (TTB) and inversely Bottom to
Top (BTT). A new arrivals from the
same vendor is ANSYS 19.2 which is
Mosaic technology automatically
combines a variety of boundary layer
meshes using high-quality polyhedral
meshes. Figure 3.10 displays a multi-
blocking of wing fuselage geometry
using Ansys 2019-R2. While most of
unstructured mesh engines use the TTB
approaches, majority of structured ones
are adapted to BTT. Some might think Figure 3.9 Domain Decomposition for M6 Wing using TIL
that multi-blocking approach is too Scripts (Courtesy of GridPro)

29David E. Keyes, “Domain Decomposition Methods for Partial Differential Equations”, Department of Applied
Physics & Applied Mathematics Columbia University.
50

tedious which of course is true. But the reward is in complete control of grid and its quality,
something which is usually hard to come by in automated unstructured grid generates.

Figure 3.10 Multi-Blocking of a Wing-Fuselage Geometry by Ansys 2019-R2

3.4 Further Remarks on Block Topology For Multi-Block Meshing


Multi-block structured mesh generation is among the most widely used meshing techniques in flow
simulations. There is essentially a fly by process and there in no specific rule, just only the users
ingenuity. But to be consistent, we include the development by [Ali et al.]30 which offers some
pointers in the topic. This is basically a two-stage process. In the first stage, a suitable blocking
topology is generated which divides the complex domain into simple sub-domains. The resulting
blocks are subsequently meshed. This structured blocking offers an efficient meshing strategy for
topologically simple configurations and standard templates exist for partitioning of such domains.
For example, the H-O-H type blocking is commonly used to mesh the turbine blade passage. However,
the modern day design challenges demand the computational analysis of more realistic geometries.
Aero-engine domains, for example, involving the fan, outlet guide vanes, gearbox shaft and nozzle
coupled with wing, flap and pylon are now being used for flow simulations. Meshing such multiply
linked and more diverse geometries requires significant user intervention, or writing of templates as
part of a library. Thus, an automatic or semiautomatic blocking strategy can be beneficial to reduce
the CFD design cycle time and could be a better alternative to the unstructured or hybrid meshing
methods.
Fully automatic 3D block topology generation is a complex problem and currently there is no ideal
block topology algorithm with all the desired features for structured mesh generation. However
various automatic blocking approaches have been proposed with varying levels of automation and

30Zaib Ali, James Tyacke, Paul G. Tucker, Shahrokh Shahparb, “Block topology generation for structured multi-
block meshing with hierarchical geometry handling”, 25th International Meshing Roundtable (IMR25), 2016.
51

geometric complexity handling. This include approaches based on medial axis31-32,


paving/plastering33-34 and more recently methods based on cross/frame field The medial axis
transform (MAT) based algorithms for the domain decomposition have been presented in. Here the
medial axis is generated using the Voronoi based method. A subdivision is created resulting in one
block for each medial vertex, medial edge and medial face. A midpoint subdivision is then used for
meshing the blocks. An alternative has been presented by [Rigby]35 called the ‘TopMaker’ approach,
which makes use of medial vertices and parts of medial axis to block the domain. Medial vertices are
defined as the points which are equidistant from three locations form the domain boundary.
Consequently, six types of medial edges and appropriate rules are defined for creating the blocks.
Further enhancements have been included to produce a good quality mesh however this technique
has yet to be extended for 3D.
Distance field based approaches are also widely used for the medial axis approximation and domain
decomposition36-37. A hybrid approach called differential MAT or d-MAT approach is presented in
[Xia and Tucker]38-39. Here, the hyperbolic-natured eikonal, level set equation is used to calculate the
distance field40. Medial axis point clouds are then extracted from the Laplacian or Hessian
determinant of the distance field. A thinning algorithm is then used for thinning the point clouds into
curves and surfaces. For illustration of the model, please refer to [Ali et al.]41.
Recent advancements in mesh generation are the methods based on the cross-fields (frame fields in
3D). A cross field is defined by assigning a set of four unit vectors to points at the discrete locations.
These unit vectors form a regular cross on the tangent plane. Thus the size and the orientation of the
quadrilateral cells can be specified by the cross field. A number of approaches have been put forward
for 2D and 3D cross field based domain decomposition and mesh generation. To generate the block
topology, the partitioning created by connecting the cross-field streamlines to the singularities can
be used. The resulting blocks of the cross field can then be mapped to a grid. The cross field approach
towards domain decomposition and mesh generation is novel and efficient but quite complex and
expensive. [LayTracks3D]42, is a hybrid hexahedral meshing method combining medial axis based
decomposition and the advancing front method. This technique produces good quality hexahedral
meshes but degenerate cells can be formed around the sharp concave features.

31 T. Tam, C. Armstrong, 2D finite element mesh generation by medial axis subdivision, Adv. Eng. Software (1991).
32 D. Sheehy, C. Armstrong, D. Robinson, Computing the medial surface of a solid from a domain Delaunay
triangulation, ACM Symposium on Solid Modeling Foundations and Applications, 1995.
33 T. D. Blacker, R. J. Myers, Seams and wedges in Plastering: A 3D hexahedral mesh generation algorithm,

Engineering with Computers 2 (1993).


34 M. L. Staten, S. J. Owen, T. D. Blacker, Unconstrained paving and plastering: A new idea for all hexahedral mesh

generation, Proceedings of 14th International Meshing Roundtable, Sandia National Lab, 2005.
35 D. Rigby, “A technique for automatic multi-block topology generation using the medial axis”, NASA/CR

FEDSM2003-45527 (2004).
36 P.-E. Danielsson, “Euclidean distance mapping, Computer Graphics and image processing”, (1980).
37 J. Vleugels, M. Overmars, Approximating generalized Voronoi diagrams in any dimension (1995). Technical

report UU-CS-1995-14 Utretcht University.


38 H. Xia, P. Tucker, Finite volume distance field and its application to medial axis transforms, International

Journal for Numerical Methods in Engineering 82(1) (2010).


39 H. Xia, P. Tucker, Fast equal and biased distance fields for medial axis transform with meshing in mind, Applied

Mathematical Modelling (2011).


40 P. Tucker, Differential equation-based wall distance computation for DES and RANS, Journal of Computational

Physics 190(1) (2003).


41 Zaib Ali, James Tyacke, Paul G. Tucker, Shahrokh Shahparb, “Block topology generation for structured multi-

block meshing with hierarchical geometry handling”, 25th International Meshing Roundtable (IMR25), 2016.
42 W. R. Quadros, LayTracks3D: a new approach to meshing general solids using medial axis transform, Procedia

Engineering 82 (2014).
52

[Malcevic]43 presents another automated blocking strategy based on a Cartesian fitting method.
While preserving the topology definition, a forward geometry simplification is performed followed
by fitting the model into a Cartesian framework. The next step is blocking the domain after which the
blocked model is mapped back on to the original geometry. Further operations such as removing
singularities by J-grid wrapping are performed to enhance the mesh quality. This technique has been
applied for meshing the end-wall cavities found in turbomachinery. This technique is very simple and
but has only been demonstrated for 2D cases so far. The method sometimes produces some
unnecessary mesh clustering across the block interfaces. An assessment of various automatic block
topology generation techniques surveyed above has been performed in44-45. The comparison has
been carried out using an adjoint based error analysis of the meshes generated by these block
topologies. It is found that, in general, the medial axis based approaches provide optimal blocking
and yields better accuracy in computing the functional of interest. Mostly, domains having internal
flows were used for this assessment. However, the medial axis based methods may not always yield
an optimal block topology when dealing with complex 3D geometries and external flows. To
overcome this limitation, a hybrid blocking technique is illustrated which makes use of the distance
field iso-surface in addition to the medial axis transform. This is demonstrated using a wing-body-
tail and a jet-wing-flap configurations. In addition to that, to reduce the meshing effort, a hierarchical
geometry handling approach is also defined and applied to an engine-wing-flap configuration. These
approaches are described next.

Figure 3.11 Jet-Wing-Flap: Medial Axis Transform (Compression Shock) and Expansion Features Close
to the Geometry – Courtesy of [Ali et al]

43 I. Malcevic, Automated blocking for structured CFD gridding with an application to turbomachinery secondary
flows, 20th AIAA Computational Fluid Dynamics Conference, Honolulu, Hawaii, 2011.
44 Z. Ali, P. G. Tucker, Multiblock structured mesh generation for turbomachinery flows, Proceedings of the 22nd

International Meshing Roundtable, Springer, 2014.


45 Z. Ali, Optimal block topology generation for CFD meshing, Ph.D. thesis, Department of Engineering, University

of Cambridge, UK, 2015.


53

3.4.1 Hybrid Blocking


Consider an aero-engine jet-wing-flap (JWF) domain with a far-field as shown in the Figure 3.11.
The medial axis close to the JWF geometry is shown in the enlarged view of 2D slice of domain in the
Figure 3.11. Here the distance field and the corresponding medial axis is computed with respect to
the geometry and the cylindrical far-field thus avoiding effect of the inlet and exit boundaries. The
solid lines represent the shock features i.e. the medial axis and the dashed lines show the expansion
features. Following this medial axis branches and even connecting the hanging and expansion
features, a poor quality blocking would be achieved. This is also because, to generate small branches
of the medial axis between the internal aero engine geometry parts would have to be combined with
very large branches between the aero engine and the far-field.
To overcome this limitation, the distance field function d can be used. An iso surface (contour in 2D)
of d is wrapped around the geometry to facilitate the MAT based block topology generation. The wall
distance computation is an intermediate step in the distance field based medial axis approximation
and hence is available for use without any extra cost. Thus using an iso surface of the distance field
instead of the far field for the medial axis computation can significantly improve the medial axis based
blocking. The hybrid blocking procedure is described below with the help of a simple 2D JWF
geometry. The extension of this methodology to the 3D cases also follows the same procedure as
demonstrated later.

1. The distance field is computed around the domain of interest as shown in the Figure 3.12
(a). An exact equation for the wall distance d is the hyperbolic eikonal equation which
models the front propagation from the surface at unit velocity.

|∇d| = 1 + Γ ∇2 d
Eq. 3.1
where Γ −→ 0 yielding viscosity solutions. The first arrival time of the front for a unit velocity
is equal to the wall distance. The eikonal equation is solved using a fast marching method46.
A suitable iso surface is then extracted from d. This iso surface selection is currently arbitrary
but it can be linked to a criteria. For example, the width of the shear layer regions in the jet
wake can dictate this selection upstream or it could be based upon the dimensionless wall
distance y+ value. The iso surface acts like a virtual geometry or a wrap around the real
domain (see Figure 3.12 (b)).

Figure 3.12 Two dimensional jet-wing-flap geometry: (a) the distance field; (b) distance field wrap and
(c) corresponding medial axis (d) hybrid blocking around 2D geometry – Courtesy of [Ali et al]

46H. Xia, P. Tucker, Finite volume distance field and its application to medial axis transforms, International
Journal for Numerical Methods in Engineering 82(1) (2010).
54

2. The next step is approximation of the medial axis between the geometry and the distance
field wrap. The Voronoi diagram based algorithm of [Dey and Zhao]47 is used here for the
medial axis approximation. This algorithm provides a more stable and continuous medial axis
for complex 3D domains than the voxel thinning approach. The input to this program is the
point cloud data of the geometry and the distance field iso surface. It makes use of the
observation that certain Voronoi facets are positioned close to the medial axis if their dual
Delaunay edges tilt away from the surface or are very long. Hence, the angle condition and
the ratio condition are defined to filter such tilted and long Delaunay edges and the medial
axis is approximated. Let VP be the Voronoi diagram for a dense point set P from a smooth
compact surface S ⊂ R3. This Vornoi diagram is a cell complex comprising of Voronoi cells Vp
p ∈ P and their facets, edges and vertices. Also, for each point x ∈ S ,

Vp = x ∈ ℝ3 ‖p − x‖ ≤ ‖q − x ‖ , ∀q ≠ p
Eq. 3.2
where p and q are any two points in P. Let DP be the Delaunay triangulation of P and dual to
the Voronoi complex. The Delaunay triangles incident to point p which are dual to the Voronoi
edges intersected by a tangent plane at p are used to construct the criteria. All the Delaunay
edges that make relatively large angle with the planes of the triangles are filtered. If the angle
between the vector tpq from p to q and the normal nptu to a triangle ptu is less than a threshold
angle π/2 − θ for all the triangles, then that associated Delaunay edge is filtered i.e.

π
max ∠ 𝐧𝐩𝐭𝐮 , t pq < −θ
2
Eq. 3.3
gives good results. The ratio condition is based on the comparison of the length of the
Delaunay edges with the circum-radii of the triangles. Thus those Delaunay edges are filtered
which satisfy the criteria:
‖p − q‖
min >ρ
r
Eq. 3.4
Where ∥p − q∥ defines the length of a Delaunay edge and ρ is the circum-radius of a triangle
ptu. A value of ρ = 8 is normally used for dense point clouds. The medial axis is generated as
a continuous surface which can be imported into the mesh generator. The medial axis for the
JWF slice is shown in the Figure 3.12 (c).

3. To complete the blocking process, additional rules as described in the Section 1 are manually
used. Applying the rules, for example to the 2D JWF slice, the expansion features are
connected to the nearest medial vertex or otherwise the medial axis as shown in the Figure
3.12 (d).
4. Once the critical parts of the domain have been blocked using the medial axis, the far-field
region can be partitioned using simple Cartesian fitting or H-type blocks. This is shown, for
example, in Figure 3.12 (d) with the green lines. This resulting domain decomposition is
significantly better than the one obtained initially shown in the Figure 3.11. There can still
be some regions where the block topology is unsatisfactory. Such areas must be manually
altered. Hence, a semi-automatic blocking process arises. The mesh is then generated in the
commercial program Pointwise.

47 T. K. Dey, W. Zhao, Approximate medial axis as a Voronoi subcomplex, Computer-Aided Design 36 (2004).
55

3.4.2 Hierarchical Geometry Handling


Modern day aero-engine design challenges demand performing realistic and multi-scale CFD
simulations of strongly coupled systems. This means that geometries are becoming highly complex
and as a result more effort is consumed in the mesh generation and flow modeling process. This can
have a strong impact on the duration of
the design optimization cycle. To this end,
a combination of the high and low fidelity
(structured multi-block)
meshing/modeling techniques can be
employed using a hierarchy of the
methods shown in the Figure 3.13. At
the bottom of this hierarchy is the
smeared representation of the geometry
through the use of the lower order
methods such as immersed boundary
method (IBM) and body force model
(BFM)48-49. Next in the hierarchy is the
real geometry resolved by the overset
meshes which present a useful option for
integrating various domains together
without adding extra complexity.
The information between the Figure 3.13 Hierarchical Geometry Handling Strategy
overlapping parts is exchanged through
interpolation. At the top is the cost effective alternative to the fully resolved/meshed geometry, a
combination of various high and low fidelity methods allows rapid addition and modeling of arbitrary
geometry effects. This helps in reducing the design cycle time. The objective here is not to present
any novel mesh generation method but to apply a zonal/hierarchical approach to handle complex
domains to reduce the meshing effort. Such an approach can be efficiently used to rapidly explore the
design space and can aid the development of high fidelity numerical tools.
3.4.3 Body Force Modeling
The engine-wing-flap geometry case to be presented later employs the hierarchical geometry
handling approach and uses a body force method to model the effect of the fan and outlet guide vanes.
This model is outlined next. Assuming an infinite number of blades, the aerodynamic effects of a blade
row are modeled using an axisymmetric flow in each infinitesimal blade passage and the body forces
are added as source terms. The parallel and normal components of these forces in cylindrical
coordinates system are given as:

kp kp kp
Fp,x = Vx Vrel , Fp,θ = Vθ Vrel , Fp,r = VV
s s s r rel
k n 𝑉𝜃 k n 𝑉𝑥
Fn,x = f (Vx Vθ , α) , Fn,θ = f (Vx Vθ , α)
s 𝑉𝑟𝑒𝑙 s 𝑉𝑟𝑒𝑙
Eq. 3.5

48 T. Cao, P. Hield, P. G. Tucker, Hierarchical immersed boundary method with smeared geometry, 54th AIAA
Aerospace Sciences Meeting, AIAA Science and Technology Forum and Exposition, 2016, pp. 2016–2130.
49 T. Cao, N. R. Vadlamani, P. G. Tucker, A. R. Smith, M. Slaby, C. T. J. Sheaf, Fan-intake interaction under high

incidence, Proc. of ASME Turbo Expo, Seoul, South Korea, 2016. ASME Paper Number GT2016–56561.
56

Here, Vx, Vθ and Vr are the axial, tangential and radial velocity components. Vrel is the magnitude of the
fluid velocity relative to the blade. Kp and Kn are calibration constants. Also, α and s are the local blade
metal angle and blade pitch respectively. The above equations can also be modified to produce local
blockage terms.

3.4.4 Results
3.4.4.1 NASA CRM Wing-Body-Tail
In this section, the hybrid blocking is applied to partition the domain around a 3D NASA Common
Research Model (CRM) horizontal wing-body-tail configuration. This model represents a modern,
transonic and commercial aircraft designed to cruise at M∞ = 0.85 and CL = 0.5. The geometric and
aerodynamic details about the model as described. Further information can be obtained from the
development by [Ali et al.]50. The medial axis around the wing and tail also provides a block topology
similar to O-type or C-type meshes. To assist the blocking, expansion features at the trailing edges of
the wing and the tail are joined to the nearest medial axis . After the blocking around the geometry is
complete, the far-field domain partitioning is carried out. The region is partitioned to create a H-type
mesh. The block topology around the model is shown in the Figure 3.14 (c). The volume and the
surface mesh cuts are displayed in the Figure 3.14 (d). The NASA CRM configuration has been the
test case for the 4th and 5th AIAA CFD drag prediction workshops51. The aim of the workshop is to
assess the state-of-the-art in the CFD methods for aircraft aerodynamic analysis. Here, we use the
same flow conditions as given in the workshop to compute the flow around the test case. The result
of MAT based topology was to create 256 blocks in 2 minutes, and gridding in 6 minutes. The
simulations are performed in HYDRA which is an unstructured, finite volume, edge-based and
compressible flow solver using MUSCL based flux differencing.
The simulation is carried out at M∞ = 0.85 and CL = 0.5 with Re = 5 × 106 based on the reference chord
length Cref = 7.00532 m. Table 3.1 describes the free-stream flow conditions. A coarse mesh of

Figure 3.14 NASA CRM Wing-Body-Tail (c) Hybrid Blocking (d) Mesh Cut Section – Courtesy [Ali et al.]

50 Zaib Ali, James Tyacke, Paul G. Tucker, Shahrokh Shahparb, “Block topology generation for structured multi-
block meshing with hierarchical geometry handling”, 25th International Meshing Roundtable (IMR25), 2016.
51 J. Vassberg, E. N. Tinoco, M. Mani, B. Rider, T. Zickuhr, D. Levy, O. P. Brodersen, B. Eisfeld, S. Crippa, R. A.

Wahls, et al., Summary of the Fourth AIAA CFD Drag Prediction Workshop (2010). AIAA Paper No. AIAA-2010.
57

approximately 4 million cells is used. The first grid node from the wall
is located at y+ ≈ 1. The Spalart Allmaras (SA) turbulence model is used M∞ 0.85
for this simulation. The flow angle for this mesh to gain CL = 0.5 is α = Ptotal 201326.9 Pa
2.36 deg. Ttotal 310.93 k
3.4.4.2 Jet-Wing-Flap Table 3.1 NASA CRM
In this section, the 3D jet-wing-flap case is presented. The geometry Free-Stream Conditions
comprises of co-axial nozzle, pylon and a wing with a flap as shown in
the Figure 3.15 (a). This realistic aero-engine geometry has been used
for detailed computational aero-acoustics analysis,. The pylon adds complexity to the otherwise
cylindrical nozzle topology along with the wing and the flap. Hence, blocking such a case demands
significant user insight. After wrapping the distance field, the medial axis is approximated. This is
shown in the Figure 3.15 (b). To simplify the blocking procedure, small medial axis branches are
removed for this case. This is followed by the inner blocking aided by the rules which is shown in the
Figure 3.15 (c). The far-field domain decomposition can be then be carried out at this stage.
However, one of the aims for the aero-acoustic jet simulations is to properly resolve the shear layers
in the far-field. This requires a good quality mesh aligned with the shear layer regions. The current
block topology as shown in the Figure 3.15 (c) is non-optimal for properly resolving the shear
layers produced by the bypass and the core flows. Hence a manual alteration of the blocking around
the pylon and the core flow exhaust is performed.

Figure 3.15 Jet-Wing-Flap (a) CAD, (b) CAD and the Medial Axis Cut Section, (c) Inner Hybrid Blocking –
Courtesy of [Ali et al]

The modified inner block topology with the far-field decomposition are shown in the Figure 3.16.
A RANS simulation using the SST k − ω is carried out on the mesh generated by the hybrid blocking.
The first grid node from the wall is located at y+ ≈ 1. The two cases presented above show how the
hybrid blocking approach can be effectively used to decompose and mesh the complex geometries.
The medial axis based domain decompositions also provide meshes having better flow alignment
when compared to other partitioning methods e.g. Cartesian fitting and cross field based techniques.
Hence, this technique further enhances the scope and applicability of these MAT based blocking
methods. Also, the blocking templates could be generated using this approach which can speed up
the mesh generation process and aid an inexperienced CFD user.
58

3.4.4.3 Engine-Wing-Flap
In the last section, a coaxial nozzle
with pylon and wing geometry was
presented which makes the rear or
downstream part of the aero-engine.
To carry out a more realistic
simulation, the front engine part
containing the axisymmetric intake,
hub and splitter geometry is added to
this rear part using the overset mesh
at the interface. This procedure
avoids re-blocking the domains to
have a cell to cell match between the
two zones. Also, a smeared fan
geometry is used where the fan is
modeled using the BFM (see the
schematic in Figure 3.17 (Top)).
The other downstream components
are imprinted and treated again with
the BFM but with localized sources. Figure 3.16 Jet-Wing-Flap with Modified Inner Blocking (To
These internal geometry components Accommodate Shear Layers) – Courtesy of [Ali et al]
include the downstream vanes,
gearbox shaft, and the engine supporting A-frames. Thus using a hierarchical geometry handling
approach, a complex domain can be readily meshed and analyzed for in a design optimization cycle.
A cut section of the mesh at z=0 plane is shown in the Figure 3.17 (Bottom). The total mesh size is
50 million. The internal geometry in the front part is modeled using a body force model which has
been extended to include the local blockage and wakes modeling. This is done by adding local
enhanced source terms to generate wake zones, which is similar to adding the source terms in the
IBM for simulating geometry or boundary on a non-conformal Cartesian mesh.
59

Figure 3.17 Engine-Wing-Flap (Top) Schematics Showing Geometric Zones and Domains with Different
Block Topologies (Bottom) Cut Section at z = 0 Plane – Courtesy of [Ali et al]
60

4 Structured Mesh Generation


In general, decomposition of the physical domain produces several blocks. Each block is usually
defined by six sides, and each side can be defined by either a surface, plane, line, or a point. If one side
of a block collapses to a line or a point, then there would be a singularity in the block. In some
instances, a block may have been defined by less than six surfaces. Once the surfaces are defined, the
interior grid can be computed by any standard grid generation technique. The cell information stored
in a 3D array, in random fashion and could be easily access.

4.1 Complex Variables


Complex variables techniques have the advantage that the transformation used are analytic as
opposed to those methods that are entirely numerical. Unfortunately, complex variable method are
restricted to two dimension. For this reason, the technique has limited applicability and will not be
covered here. For details readers should refer to Churchill52, Moretti, and Davis.

4.2 Algebraic Methods -Transfinite Interpolation (TFI)


Transfinite Interpolation has been used to generate the interior grid points from the boundary
surfaces. In 2D (I, J), we may inscribe a linear Lagrange interpolation function as:

N
ξ M
 η
r( , ) =   n   r(ξ n , η) +  ψ m   r( , m ) −
n =1 I m =1 J
N M
ξ η

n =1 m =1
 n  ψ m   r(ξ n , ηm )
I J
Eq. 4.1
Where now the "blending" functions, φn and ψm, are any functions which satisfy the cardinality
conditions:

ξ  η 
n  L  = δ nL n, L = 1,2,..., N and ψ m  L  = δ mL m, L = 1,2,...., M
 I   J 
Eq. 4.2
4.2.1 Blending Function
The interpolation function defined by Eq. 4.2 can be thought of two unidirectional interpolation the
corner points which has been duplicated. With N = M = 2, using the Lagrange interpolation
polynomials as the blending functions, is termed the transfinite bilinear interpolant. With N = M = 3,
this form is the transfinite bi-cubic-interpolation. Other candidates for the blending functions are the
Exponential, Hermit Interpolation Polynomials and Splines. For example, for n, L = 2, Eq. 4.3
shows a typical Exponential blending function as:

ξ − Xi
Exp [(Bi−1 ) −1
Xi − Xi−1 ]
r(ξ) = Yi + [Yi − Yi−1 ] for Xi−1 ≤ ξ ≤ Xi
Exp (Bi−1 ) − 1

where 0 ≤ X𝑖 , Y𝑖 ≤ 1 , 0 ≤ ξ , r(ξ) ≤1 , i =2, , , , m


Eq. 4.3

52 Churchill, R., V., “Introduction to Complex Variables”, McGraw-Hill, New York.


61

The integer m represents number of control points with coordinates {Xi, Yi}. The quantity Bi-1, called
the stretching parameter, is responsible for grid density. Specifying B1, values of Bi ≥ 2 are obtained
by matching the slopes at control points. This, guaranteeing a smooth grid transition between each
region, can be accomplished using Newton's iterative scheme which is quadratically convergent. The
greater the B , the less discontinuity will propagate. Similarly, a blending function could be
constructed for η direction. The spline-blended form gives the smoothest grid with continuous
second derivatives53. An example of exponential stretching (Bi = -2) is given by Figure 4.1.

Figure 4.1 Exponential Distribution Functions

The exponential function, while reasonable, is not the best choice when the variation in grid spacing
is large. The truncation error associated with the metric coefficients is proportional to the rate of
change of grid spacing. A large variation in grid spacing, such as the one resulting from exponential
function, would increase the truncation error, hence, attributing to the solution inaccuracies. A
suggested alternative to exponential function has been the usage of hyperbolic sine function given as

ξ − Xi
sinh [(Bi−1 )
Xi − Xi−1 ]
r(ξ) = Yi + [Yi − Yi−1 ] for Xi−1 ≤ ξ ≤ Xi
sinh (Bi−1 )
where 0 ≤ X𝑖 , Y𝑖 ≤ 1 , 0 ≤ ξ , r(ξ) ≤1 , i =2, , , , m
Eq. 4.4
The hyperbolic sine function gives a more uniform distribution in the immediate vicinity of the
boundary, resulting in less truncation error. This criteria makes the hyperbolic sine function an
excellent candidate for boundary layer type flows. A more appropriate function for flows with both
viscous and non-viscous effect would be the usage of a hyperbolic tangent function such as

53 Joe
F. Thompson, Z. U. A. Warsi, C. Wayne Mastin, “Numerical Grid Generation -Foundations and Applications”,
North Holland, 1985.
62

(B ) ξ − Xi
tanh [ i−1 ( − 1)]
2 Xi − Xi−1
r(ξ) = Yi + [Yi − Yi−1 ] for Xi−1 ≤ ξ ≤ Xi
Bi−1
tanh [ ]
2
w here 0 ≤ X𝑖 , Y𝑖 ≤ 1 , 0 ≤ ξ , r(ξ) ≤ 1 , i =2, , , , m
Eq. 4.5

Figure 4.2 Hyperbolic Tangent Distribution Functions

The hyperbolic tangent, as revealed in Figure 4.2, gives more uniform distribution on the inside as
well as on the outside of the boundary layer to capture the non-viscous effects of the solution. Such
overall improvement, makes the hyperbolic tangent a prime candidate for grid point
distribution in viscous flow analysis, as publicized in Figure 4.3 for a generic wing-fuselage. A
numerical approximation can be used to compute the grid-point distribution on a boundary curve.
This approach is widely used for complex configurations and care must be taken to insure
monotonicity of the distribution. For example, the natural cubic spline is C2 continuous and offers
great flexibility in grid spacing control. However,
some oscillations can be inadvertently introduced
into the control function. The problem can be
avoided by using a smoothing cubic spline
technique and specifying the amount of smoothing
as well as control points. Another choice would be
the usage of a lower order polynomial such as
Monotonic Rational Quadratic Spline (MRQS)
which is always monotonic and smooth. Other
advantage of MRQS over cubic spline is that it is an
explicit scheme and does not require any matrix
inversion. A sample coding in FORTRAN is given in
Appendix A and the resultant grid and topology for
a dual-block generic airplane geometry is displayed.
A pioneering work in control point form of Figure 4.3 Grid for Dual-Block Generic
Algebraic Grid Generation using a univariate Wing-Fuselage Geometry
interpolations can be attributed to [Eiseman and
63

Smith]54.
4.2.1.1 Case Study- Rapid Meshing System For Turbomachinery
PADRAM (Parametric Design and Rapid Meshing System), grid generation starts by dividing the
computational blocks into sub-blocks for the purpose of generation of the algebraic grid and the
control functions. O-type grid is used for the blades and H-type grids near the periodic boundary,
upstream and downstream blocks, C-type grids are used for semi-infinite boundaries such as the
splitter, pylon and RDF (Radial Drive Fairing). Transfinite interpolation (TFI) is used to generate the
initial grid based on a linear interpolation of the specified boundaries. TFI is very easy to program,
computationally efficient and the grid spacing is under direct control. PADRAM uses the following
double clustering functions [ Shahpar and Lapworth]55:

η−α
β + 1 1−α
(2α + β) [ ] + 2α − β
β−1
y= η−α where 1< β <∞ and 0 ≤ α ≤1
β + 1 1−α
(2α + 1) {1 + [ ] }
β−1
Eq. 4.6
Where η is the non-dimensional grid point distribution in the computational plane which varies
between zero and 1, β is the clustering function, more clustering is achieved by letting βto approach
1 and α is a non-dimensional quantity that indicates which grid location the clustering should be
attracted to, e.g. a value of 0.5 ensures clustering is uniformly done at both ends. Figure 4.4 (a)

(a) Mesh Topology for (b) Tip Clearance


Single OGV
Figure 4.4 Single Passage PADRAM Mesh for the Swept Back OGV - Courtesy of [Shahpar and
Lapworth]

54Peter Eiseman and Robert E. Smith, “Applications of Algebraic Grid Generation”, April 1990.
55Shahrokh Shahpar and Leigh Lapworth, “PADRAM: Parametric Design And Rapid Meshing System For
Turbomachinery Optimization”, Proceedings of ASME Turbo Expo 2003, USA.
64

shows the PADRAM mesh topology for a single OGV mesh. Note that the upstream and downstream
H-mesh can also be rotated to align the mesh with the blade inlet and exit metal angles. Tip Gaps Tip
clearance is often required for shroud less rotor blades such as fans, compressors and some turbines
as well as hub clearance for cantilevered stator blades. Tip leakage flows are often poorly resolved.
If the number of points in the tip clearance is too low, then the complex physical phenomena that
occur there cannot be accurately modelled. It has been found that the flow solution can be sensitive
how the gap is modelled and in some solvers the geometry is changed to alleviate the problem, e.g.
sheared H-meshes often use the so called “pinched” tip gap. However, PADRAM models the gap in a
consistent way that meshes the blade geometry. Once the O-grid is generated with the outer domain
of the blade, the grid corresponding to the solid part of the domain is constructed using the same
boundary node distribution. It is important to keep the mesh spacing in the inner and outer part of
the wall as close as possible to each other. Figure 4.4 (b) shows a typical tip gap mesh for a
compressor rotor generated in PADRAM (the tip gap has been increased to 5% span for
demonstration). PADRAM can construct a viscous mesh for the complete bypass assembly consisting
of 52 different staggered and three types over and under cambered OGVS, pylon, RDF and a splitter
in a matter of minutes. The details of the mesh near the OGV, Pylon, RDF and the splitter are shown
in Figure 4.5. For complete details, please see the work by [ Shahpar and Lapworth]56.

Figure 4.5 Detail of the Splitter C-Mesh, Hub Mesh and the Engine-Core Exit Mesh - Courtesy of
[Shahpar and Lapworth]

4.3 PDE Smoother


Like algebraic methods, differential equation methods are also used to generate grids. Grid
construction can be done using all three classes of partial differential equations. The generation of
field values of a function from boundary values can be done in various ways, e.g., by interpolation
between the boundaries, etc., as is discussed previously. The solution of such a boundary-value
problem, however, is a classic problem of partial differential equations, so that it is logical to take the
coordinates to be solutions of a system of partial differential equations. If the coordinate points
(and/or slopes) are specified on the entire closed boundary of the physical region, the equations must

56Shahrokh Shahpar and Leigh Lapworth, “PADRAM: Parametric Design And Rapid Meshing System For
Turbomachinery Optimization”, Proceedings of ASME Turbo Expo 2003, USA.
65

be elliptic, while if the specification is on only a portion of the boundary the equations would be
parabolic or hyperbolic. This latter case would occur, for instance, when an inner boundary of a
physical region is specified, but a surrounding outer boundary is arbitrary. The present chapter,
however, treats the general case of a completely specified boundary, which requires an elliptic partial
differential system.
4.3.1 Elliptic Schemes
At this stage grid is smooth enough to satisfy majority of applications, but if needed, further
smoothing is obtained with solution of elliptic partial differential equations (PDE). For 2D
formulation, forcing function terms are used to construct stretched layers of the cells close to the
domain boundaries.

ξ xx + ξ yy = P( , η) , ηxx + ηyy = Q( , η) Eq. 4.7

Where (ξ, η) are the coordinates in the computational domain. Control functions are computed using
the boundary point spacing, r, and then interpolated to the inner points57. The forcing terms (P, Q)
are computed as:
r  2 r r  2 r
ξ ξ 2 η η2
P=− 2
, Q= 2 Eq. 4.8
r r
ξ η

Once P and Q are obtained at each boundary the values for the inner points are obtained using a linear
interpolating along lines of constant ξ and η:

P( , ) = (1 − η) P1 ( ) + ηP2 ( ) 0  ξ 1
Q( , ) = (1 − ξ) Q1 ( ) + ξQ 2 ( )
Eq. 4.9
0  η 1

Grid control of orthogonality at boundaries is introduced adding a second term in P and Q as:

r  2 r r  2 r r  2 r r  2 r
ξ ξ 2 ξ η2 η η η ξ 2
2

P=− 2
−λ 2
, Q= 2
−λ 2 Eq. 4.10
r r r r
ξ η η ξ

Where 0 < λ < 1 is a factor that relaxes the orthogonality at the boundaries. It has been observed that
the range λ∈ [0.4-0.7] produces optimal results for our configurations. The elliptic PDEs are solved
using a multi-grid method and the smoother is based on a point-wise Newton solver. When the

57Thomas P., and Middlecoff J., ”Direct control of the Grid Point Distribution in Meshes Generated by Elliptic
Equations”, AIAA Journal Vol. 18, No. 6., 1980.
66

forcing terms are used the convergence


of the algorithm deteriorates slightly58.
An important property in regard to
coordinate system generation is the
inherent smoothness that prevails in the
solutions of elliptic systems.
Furthermore, boundary slope
discontinuities are not propagated into
the field. Finally, the smoothing
tendencies of elliptic operators, and the
extremum principles, allow grids to be
generated for any configurations Figure 4.6 Typical Elliptic Grid for an Airfoil with
without overlap of grid lines (see Figure Orthogonality Enforced on the Boundary
4.6). There are thus a number of
advantages to using a system of elliptic partial differential equations as a means of coordinate system
generation. A disadvantage, of course, is that a system of partial differential equations must be solved
to generate the coordinate system.
4.3.1.1 Case Study – Orthogonal Elliptic Mesh Smoother
This is a 2D orthogonal elliptic mesh generator which works by solving the Winslow PDE 59-60. It is
capable of modifying the meshes with stretching functions and an orthogonality adjustment
algorithm. This algorithm works by calculating curve slopes using a tilted parabola tangent line fitter
(original discovery). A distinct feature of the elliptic mesh solver is that it corrects overlapping
and misplaced grid line very well. Firstly to construct an initial mesh, the Transfinite Interpolation
algorithm is applied to the given domain constrained by the specified boundary conditions. This
algorithm is implemented by mapping each point within the domain (regardless of the boundaries)
to a new domain existing within the boundaries. This algorithm works by iteratively solving the
parametric vector equation. At the heart of the solver is the mesh smoothing algorithm, which at a
high level, works by solving the pair of Laplace equations. Coordinates of every point in the target
domain, mapped to a transformed, computational space using the change of variables method. This
renders the calculations simpler and faster to compute. However, we wish to solve the inverse
problem, where we transition from the computational space to the curvilinear solution space. Using
tensor mathematics, it can be shown that this problem entails solving the equations.
4.3.1.2 Orthogonality Adjustment Algorithm
In several computational fluid dynamics applications, an orthogonal mesh is necessary in certain
regions to ensure a high enough accuracy when performing calculations. However, it is not always
possible to achieve a fully orthogonal solution, and thus the problem becomes finding a nearly-
orthogonal solution to an arbitrarily defined domain. The implemented solution uses an iterative
approach to find the angles of intersection and adjust the position of the nodes until their respective
angles of intersection converge to a reasonable threshold value from 90 degrees. The exact method
makes use of the linear approximation of the grid lines intersecting at each node within the mesh.
(see Figure 4.7).

58 Sorenson R. L. and Steger J. L. Numerical Generation of Two dimensional Grids by the Use of Poisson Equations
with Grid Control, in Numerical Grid Generation Techniques, R. E Smith, ed.. NASA CP 2166, NASA Langley
Research Center, Hampton, VA, USA, 1980.
59 Chaitanya Varier 2017.
60 M. Farrashkhalvat and J.P. Miles, “Basic Structured Grid Generation”, An imprint of Elsevier Science Linacre

House, Jordan Hill, Oxford OX2 8DP, 200 Wheeler Rd, Burlington MA 01803, First published 2003.
67

(a) Before

(b) After

Figure 4.7 Orthogonality Adjustments – (Courtesy of Chaitanya Varier)

4.3.1.3 Case Study - Boundary Orthogonality in Elliptic Mesh Generation61


Experience in the field of computational simulation has shown that grid quality in terms of
smoothness and orthogonality affects the accuracy of numerical solutions. It has been pointed out by
[Thompson et al.]62 that skewness increases the truncation error in numerical differentiation.
Especially critical in many applications is orthogonality or near-orthogonality of a computational grid
near the boundaries of the grid. If the boundary does not correspond to a physical boundary in the
simulation, orthogonality can still be important to ensure a smooth transition of grid lines between
the grid and the adjacent grid presumed to be across the nonphysical boundary. If the grid boundary
corresponds to a physical boundary, then orthogonality may be necessary near the boundary to
reduce truncation errors occurring in the simulation of boundary layer phenomena, such as will be
present in a Navier–Stokes simulation. In this case, fine spacing near the boundary may also be
necessary to accurately resolve the boundary phenomena.
In elliptic grid generation, an initial grid (assumed to be algebraically computed using transfinite
interpolation of specified boundary data) is relaxed iteratively to satisfy a quasi-linear elliptic system
of partial differential equations (PDEs). The most popular method, the [Thompson, Thames, Mastin
(TTM)] method, incorporates user-specifiable control functions in the system of PDEs. If the control
functions are not used (i.e., set to zero), then the grid produced will be smoother than the initial grid,
and grid folding (possibly present in the initial grid) may be alleviated. However, nonuse of control
functions in general leads to nonorthogonality and loss of grid point spacing near the boundaries.
Imposition of boundary orthogonality can be effected in two different ways. In Neumann
orthogonality no control functions are used, but boundary grid points are allowed to slide along the
boundaries until boundary orthogonality is achieved and the elliptic system has iterated to

61 Ahmed Khamayseh, Andrew Kuprat, C. Wayne Mastin, “Boundary Orthogonality in Elliptic Grid Generation”,
CRC Press LLC, 1999.
62 Thompson, J.F., A general three-dimensional elliptic grid generation system on a composite block structure,

Comp. Meth. Appl. Mech. and Eng. 1987.


68

convergence.
This method, which is taken up here, is appropriate for nonphysical (internal) grid boundaries, since
grid spacing present in the initial boundary distribution is usually not maintained. Previous methods
for implementing Neumann orthogonality have relied on a Newton iteration method to locate the
orthogonal projection of an adjacent interior grid point onto the boundary. The Neumann
orthogonality method presented here uses a Taylor series to move boundary points to achieve
approximate orthogonality. Thus, there is no need for inner iterations to compute boundary grid
point positions.
In Dirichlet orthogonality , also taken up in this chapter, control functions (called orthogonal
control Functions ) are used to enforce orthogonality near the boundary while the initial boundary
grid point distribution is not disturbed. Early papers using this approach were written by
[Sorenson]63 and [Thomas & Middlecoff ]64. In Sorenson’s approach, the control functions are
assumed to be of a particular exponential form. Orthogonality and a specified spacing of the first grid
line off the boundary are achieved by updating the control functions during iterations of the elliptic
system. [Thompson]65 presents a similar technique for updating the orthogonal control functions.
This technique evaluates the control functions on the boundary and interpolates for interior values.
A user-specified grid spacing normal to the boundary is required.
The technique of [Spekreijse]66 automatically constructs control functions solely from the specified
boundary data without explicit user-specification of grid spacing normal to the boundary. Through
construction of an intermediate parametric domain by arclength interpolation of the specified
boundary point distribution, the technique ensures accurate transmission of the boundary point
distribution throughout the final orthogonal grid. Applications to planar and surface grids are given
in67.
Here, we present a technique similar to for updating of orthogonal control functions during elliptic
iteration68. However, our technique does not require explicit specification of grid spacing normal to
the boundary but, employs an interpolation of boundary values to supply the necessary information.
However, unlike69, this interpolation is not constructed in an auxiliary parametric domain, but is
simply the initial algebraic grid constructed using transfinite interpolation.
Although this grid is very likely skewed at the boundary, the first interior coordinate surface is
assumed to be correctly positioned in relation to the boundary, which is enough to give us the
required normal spacing information for iterative calculation of the control functions. Ghost points,
exterior to the boundary, are constructed from the interior coordinate surface, leading to potentially
smoother grids, since central differencing can now be employed at the boundary in the direction
normal to the boundary.
Since our technique does not employ the auxiliary parametric domain of70, theory and
implementation are simpler. The implementation of this technique for the case of volume grids is

63 Sorenson, R.L., A computer program to generate two-dimensional grids about airfoils and other shapes by the
use of Poisson’s equations, NASA TM 81198. NASA Ames Research Center, 1980.
64 Thomas, P.D. and Middlecoff, J.F., Direct control of the grid point distribution in meshes generated by elliptic

equations, AIAA J. 1980, 18, pp 652–656.


65 Thompson, J.F., A general three-dimensional elliptic grid generation system on a composite block structure,

Comp. Meth. Appl. Mech. and Eng. 1987.


66 Spekreijse, S.P., Elliptic grid generation based on Laplace equations and algebraic transformations, J. Com.

Phys. 1995,
67 See Previous.
68 Thompson, J.F., A general three-dimensional elliptic grid generation system on a composite block structure,

Comp. Meth. Appl. Mech. and Eng. 1987.


69 Spekreijse, S.P., Elliptic grid generation based on Laplace equations and algebraic transformations, J. Com.

Phys. 1995.
70 See Previous.
69

straightforward, and indeed we present an example. We mention here that [Soni]71 presents another
method of constructing an orthogonal grid by deriving spacing information from the initial algebraic
grid. However, unlike our method which uses ghost points at the boundary, this method does not
emphasize capture of grid spacing information at the boundary.
Instead, the algebraic grid influences the grid spacing of the elliptic grid in a uniform way throughout
the domain. With no special treatment of spacing at the boundary, considerable changes in normal
grid spacing can occur during the course of elliptic iteration. This may be unacceptable in applications
where the most numerically challenging physics occurs at the boundaries.
4.3.1.3.1 Boundary Orthogonality for Planar Grids
We assume an initial mapping x ( ξ, η) = (x (ξ , η) , y(ξ , η)) from computational space [0 , m] x [0 , n]
to the bounded physical domain Ω ⊂ R2. Here m , n are positive integers and grid lines are the lines
ξ = i , η = i with 0 ≤ i ≤ m , 0 ≤ j ≤ n being integers. The initial mapping x (ξ , η) is usually obtained
using algebraic grid generation methods such as linear transfinite interpolation. Given the initial
mapping, a general method for constructing curvilinear structured grids is based on partial
differential equations [Thompson et al. ]72. The coordinate functions x(ξ , η) and y(ξ , η) are iteratively
relaxed until they become solutions of the following quasi-linear elliptic system:

g12 (𝐗 ξξ + P 𝐗 ξ ) − 2g12 𝐗 ξη + g11 (𝐗 ηη + Q 𝐗 η ) = 0


Eq. 4.11
g11 = 𝐗 𝛏 . 𝐗 𝛏 = xξ2 + yη2
g12 = 𝐗 𝛏 . 𝐗 𝛈 = xξ xη + yξ yη
g 22 = 𝐗 𝛈 . 𝐗 𝛈 = xη2 + yη2

The control functions P and Q control the distribution of grid points. Using P = Q = 0 tends to generate
a grid with a uniform spacing. Often, there is a need to concentrate points in a certain area of the grid
such as along particular boundary segments in this case, it is necessary to derive appropriate values
for the control functions. To complete the mathematical specification of system Eq. 4.11, boundary
conditions at the four boundaries must be given. (These are the ξ = 0, ξ = m , η = 0, and η = n or “left,”
“right,” “bottom,” and “top” boundaries.) We assume the orthogonality condition

𝐗 𝝃 . 𝐗 𝜼 = 0 , ξ = 0, m & η = 0 , n
Eq. 4.12
We assume that the initial algebraic grid neither satisfies Eq. 4.11 nor Eq. 4.12. Nevertheless, the
initial grid may possess grid point density information that should be present in the final grid. If the
algebraic grid possesses important grid density information, such as concentration of grid points in
the vicinity of certain boundaries, then it is necessary to invoke “Dirichlet orthogonality” wherein
we use the freedom of specifying the control functions P, Q in such a fashion as to allow satisfaction
of Eq. 4.11, Eq. 4.12 without changing the initial boundary point distribution at all, and without
greatly changing the interior grid point distribution. If, however, the algebraic grid does not possess
relevant grid density information (such as may be the case when the grid is an “interior block” that
does not border any physical boundary), we attempt to solve Eq. 4.11, Eq. 4.12 using the simplest
assumption P = Q = 0. Since we are not using the degrees of freedom afforded by specifying the
control functions, we are forced to allow the boundary points to “slide to allow satisfaction of Eq.

Soni, B.K., Elliptic grid generation system: control functions revisited-I, Appl. Math. Com. 1993.
71
72Thompson, J.F., Warsi, Z.U.A., and Mastin, C.W., Numerical Grid Generation: Foundations and Applications.
North-Holland, New York, 1985.
70

4.11, Eq. 4.12. This is “Neumann orthogonality.” The composite case of having some boundaries
treated using Dirichlet orthogonality, some treated using Neumann orthogonality, and some
boundaries left untreated will be clear after our treatment of the pure Neumann and Dirichlet cases.
4.3.1.3.2 Neumann Orthogonality
As is typical, let us assume that the boundary segments are given to be parametric curves (e.g., B-
splines). If we set the control functions P,Q to zero, then it will be necessary to slide the boundary
nodes along the parametric curves in order to satisfy Eq. 4.11, Eq. 4.12. A standard discretization
of our system is central differencing in the ξ and η directions. The system is then applied to the
interior nodes to solve for xi,j= (xi,j , yi,j) using an iterative method. With regard to the implementation
of boundary conditions, suppose along the boundary segments ξ = 0 and ξ = m the variables x and y
can be expressed in terms of a parameter u as x = x (u ) and y = y (u). For the ξ = 0 and ξ = m
boundaries, let (xη)i,j denote the central difference (1/2)(xi,j+1–xi, j–1) along the boundaries (i = 0 or i =
m). Using one-sided differencing for xξ, Eq. 4.12 is discretized as

(𝐗 𝐢+𝟏,𝐣 − 𝐗 𝐢,𝐣 ) . (𝐗 η ) =0 , along ξ = i = 0


0,j
(𝐗 𝐢,𝐣−𝟏 − 𝐗 𝐢,𝐣 ) . (𝐗 η ) =0 , along ξ = i = m
m,j
Eq. 4.13
Solution of Eq. 4.13 for xi,j= (xi,j , yi,j) in effect causes the sliding of xi,j along the boundary so that the
grid segment between x i,j and its neighbor on the
first interior coordinate curve (ξ = 1 or ξ = m –1)
is orthogonal to the boundary curve. (See Figure
4.8). To solve for xi,j the old parameter value u0 is
used to solve for the new u to compute the new
xi,j. Using the Taylor expansion of x(u) about u0 to
give

x𝐢𝐣 = x(u) ≈ x(u0 ) + xu (u0 )u


Eq. 4.14
substituting Eq. 4.14 in Eq. 4.13 implies that

(𝐱 η ) . (𝐱 i,j − 𝐱(u0 ))
0,j
u = u0 +
(𝐱 η ) . 𝐱 u (u0 ) Figure 4.8 Change in xξ when Boundary Point is
0,j
Re-Positioned in Neumann Orthogonality
Eq. 4.15
to give xi,j = x(u) along the boundary ξ = 0.
Whereas, substituting Eq. 4.14 in Eq. 4.13 implies that

(𝐱 η ) . (𝐱 m−1,j − 𝐱(u0 ))
m,j
u = u0 +
(𝐱 η ) . 𝐱 u (u0 )
m,j
Eq. 4.16
to give xi,j= x (u) along the boundary ξ = m. Consider next the case where the boundaries are η = 0
and η = n. Orthogonality Eq. 4.12 with central differencing in the ξ direction and one-sided
differencing in the η direction implies
71

(𝐱 ξ )i,0 . (𝐱 i,1 − 𝐱(u0 ))


u = u0 +
(𝐱 ξ )i,0 . 𝐱 u (u0 )
Eq. 4.17
which gives along the boundary η = 0, and

(𝐱 ξ )0,n . (𝐱 i,n−1 − 𝐱(u0 ))


u = u0 +
(𝐱 ξ )0,n . 𝐱 u (u0 )
Eq. 4.18
to give xi,j = x(u) along the boundary η = n. These boundary condition equations are to be evaluated
for each cycle in the course of the iterative procedure. Note that a periodic boundary condition is
used in the case of doubly connected regions. Also note that during the relaxation process, “guards”
must be used to prevent a given boundary point from overtaking its neighbors when sliding along
the boundaries. Indeed, near obtuse corners, there is a tendency for grid points to try to slide along
the boundary curves past the corners in order to satisfy the orthogonality condition. An appropriate
guard would be to limit movement of each grid point so that its distance from its two boundary-curve
neighbors is reduced by at most 50% on a given iteration, down to a user-specified minimum length
δ in physical space.

Figure 4.9 An Algebraic Planar Mesh on a Bi-Cubic Geometry

As an application of Neumann orthogonality, consider Figure 4.9, which is an initial algebraic


planar grid on a bicubic geometry. The mesh is highly nonorthogonal at certain points along the
72

boundaries, and it possesses an undesirable concentration of points in the interior of the grid. In fact,
there is folding of the algebraic grid in this central region.
Figure 4.10 shows an elliptically smoothed grid using Neumann orthogonality. The grid is clearly
seen to be smooth, boundary-orthogonal, and no longer folds in the interior. For certain applications,
this grid may be entirely acceptable. However, if the bottom boundary of the grid corresponded to a
physical boundary, then the results of Figure 4.10 might be deemed unacceptable. This is because,
although orthogonality has been established, grid point distribution (both along the boundary and
normal to the boundary) has been significantly altered. In this case, the Dirichlet orthogonality
technique will have to be employed.

Figure 4.10 An Elliptic Planar Mesh on a Bi-Cubic Geometry with Neumann Orthogonality

4.3.1.3.3 Dirichlet Orthogonality


The above discussion shows how orthogonality can be imposed without use of control functions, by
sliding grid points along the boundary. Orthogonality can also be imposed by adjusting the control
functions near the boundary and keeping the boundary points fixed. This approach was originally
developed by [Sorenson]73 for imposing boundary orthogonality in two dimensions. [Sorenson]74 and
[Thompson]75 have extended this approach to three dimensions. However, as mentioned in the
introduction, our approach does not require user specification of grid spacing normal to the

73 Sorenson, R.L., A computer program to generate two-dimensional grids about airfoils and other shapes by the
use of Poisson’s equations, NASA TM 81198. NASA Ames Research Center, 1980.
74 Sorenson, R.L., Three-dimensional elliptic grid generation about fighter aircraft for zonal finite difference

computations, AIAA-86-0429. AIAA 24th Aerospace Science Conference, Reno, NV, 1986.
75 Thompson, J.F., A general three-dimensional elliptic grid generation system on a composite block structure,

Comp. Meth. Appl. Mech. and Eng. 1987.


73

boundary. Instead, our technique automatically derives normal grid spacing data from the initial
algebraic grid. Assuming boundary orthogonality Eq. 4.12, substitution of the inner product of xξ
and xη into Eq. 4.11 yields the following two equations for the control functions on the boundaries:

𝐗 ξ − 𝐗 ξξ 𝐗 ξ − 𝐗 ηη 𝐗 η − 𝐗 ηη 𝐗 η − 𝐗 ξξ
P=− − , Q= − −
g11 g 22 g11 g 22
Eq. 4.19
These control functions are called the orthogonal control functions because they were derived
using orthogonality considerations. They are evaluated at the boundaries and interpolated to the
interior using linear transfinite interpolation. These functions need to be updated at every iteration
during solution of the elliptic system. We now go into detail on how we evaluate the quantities
necessary in order to compute P and Q on the boundary using Eq. 4.19. Suppose we are at the “left”
boundary ξ = 0, but not at the corners (η ≠ 0 and
η ≠ n). The derivatives xη , xηη and the spacing
g22 = ||xη ||2 are determined using centered
difference formulas from the boundary point
distribution and do not change. However, the
g11, xξ , and xξξ terms are not determined by the
boundary distribution. Additional information
amounting to the desired grid spacing normal
to the boundary must be supplied.
A convenient way to infer the normal boundary
spacing from the initial algebraic grid is to
assume that the position of the first interior
grid line off the boundary is correct. Indeed,
near the boundary, it is usually the case that all
that is desired of the elliptic iteration is for it to
swing the intersecting grid lines so that they
Figure 4.11 Projection of Interior Algebraic Mesh
intersect the boundaries orthogonally, without
Point to Orthogonal Position
changing the positions of the grid lines
parallel to the boundary. This is shown
graphically in Figure 4.11, where we see a grid
point, from the first interior grid line, swung
along the grid line to the position where
orthogonality is established. The effect of
forcing all the grid points to swing over in this
fashion would thus be to establish boundary
orthogonality, but still leave the algebraic
interior grid line unchanged. The similarity of
Figure 4.8 and Figure 4.11 seems to indicate
that this process is analogous to, and hence just
as “natural” as, the process of sliding the
boundary points in the Neumann orthogonality
approach with zero control functions.
Unfortunately, this preceding approach entails
the direct specification of the positions of the
first interior layer of grid points off the Figure 4.12 Reflection of Orthogonalized Interior
boundary. This is not permissible for a couple of Mesh Point to Form External Ghost Point
reasons. First, since they are adjacent to two
74

different boundaries, the points x1,1, xm–1,1, x1,n–1, and xm–1,n–1 have contradictory definitions for their
placement. Second, and more importantly, the direct specification of the first layer of interior
boundary points together with the elliptic solution for the positions of the deeper interior grid points
can lead to an undesirable “kinky” transition between the directly placed points and the elliptically
solved for points. (This “kinkiness” is due to the fact that a perfectly smooth boundary-orthogonal
grid will probably exhibit some small degree of nonorthogonality as soon as one leaves the boundary
even as close to the boundary as the first interior line. Hence, forcing the grid points on the first
interior line to be exactly orthogonal to the boundary cannot lead to the smoothest possible
boundary-orthogonal grid.)
Nevertheless, our “natural” approach for deriving grid spacing information from the algebraic grid
can be modified in a simple way, as depicted in Figure 4.12. Here, the orthogonally-placed interior
point is reflected an equal distance across the boundary curve to form a “ghost point.” Repeatedly
done, this procedure in effect forms an “exterior curve” of ghost points that is the reflection of the
first (algebraic) grid line across the boundary curve. The ghost points are computed at the beginning
of the iteration and do not change. They are employed in the calculation of the normal second
derivative xξξ at the boundary and the normal spacing off the boundary; the fixedness of the ghost
points assures that the normal spacing is not lost during the course of iteration, as it sometimes is in
the Neumann orthogonality approach. Conversely, all of the interior grid points are free to change
throughout the course of the iteration, and so smoothness of the grid is not compromised. More
precisely, again at the “left” ξ = 0 boundary, let (xη )0,j denote the centrally differenced derivative
(½)(x0,j+1 – x0,j–1). Let (xoξ )0, j denote the one-sided derivative x1,j – x0,j evaluated on the initial algebraic
grid. Then condition Eq. 4.12 implies that if a is the unit vector normal to the boundary, then

𝐗ξ yη , −xη yη , −xη
𝐚≡ = =
‖𝐗 ξξ ‖ √g 22
√xη2 + yη2
Eq. 4.20
Now the condition from Figure 4.11 is

𝐱 𝝃 = P𝑎 (𝑥𝜉0 )
Eq. 4.21
where Pa= aaT is the orthogonal projection onto the one-dimensional subspace spanned by the unit
vector a. Thus we obtain

𝑦𝜂 , 𝑥𝜂
𝐱 𝝃 = 𝐚(𝐚. 𝑥𝜉0 ) = (y𝜂 𝑥𝜉0 − x𝜂 𝑦𝜉0 )
𝑔22
Eq. 4.22
Finally, the reflection operation of Figure 4.12 implies that the fixed ghost point location should be
given by
𝐱 −1,j = x0,j − (xη )
0,j
Eq. 4.23
This can also be viewed as a first-order Taylor expansion involving the orthogonal derivative (xξ )0, j:

𝐱 −1,j = x0,j − ∆ξ (xη )


0,j
Eq. 4.24
75

with Δξ = 1. The orthogonal derivative (xξ)0, j is computed in Eq. 4.22 using only data from the
boundary and the algebraic grid. Now in Eq. 4.19 the control function evaluation at the boundary,
the second derivative xξξ is computed using a centered difference approximation involving a ghost
point, a boundary point, and an iteratively updated interior point. The metric coefficient g11
describing spacing normal to the boundary is computed using Eq. 4.22 and is given by

(g11 )0,j = (𝐱 ξ ) . (𝐱 ξ )
0,j 0,j
Eq. 4.25
Finally, note that the value for (xξ )0, j used in Eq. 4.19 is not the fixed value given by Eq. 4.22, but is
the iteratively updated one-sided difference formula given by

( x𝛏 ) = 𝐱 i,j − 𝐱 0,j
𝟎,𝐣
Eq. 4.26
Evaluation of quantities at the ξ = m boundary is similar. Note, however, that the ghost point locations
are given by
𝐱 m+1,j = 𝐱 m,j − (𝐱 𝝃 )
0,j
Eq. 4.27
where (xξ )m, j is evaluated in Eq. 4.22 which is also valid for this boundary. On the “bottom” and “top”
boundaries η = 0 and η = n, it is now the derivatives xη , xηη , and the spacing g11 that are evaluated
using the fixed boundary data using central differences. Using similar reasoning to the “left” and
“right” boundary case, we obtain that for the “bottom” boundary the ghost point location is fixed to
be
(−yξ , xξ )
𝐱 i−1,j = 𝐱 i,0 − (𝐱 𝛈 ) where xη = (−yξ xη0 + xξ yη0 )
i,0 g11
Eq. 4.28
Here, (–yη ,xη ), g11 is evaluated using central differencing of the boundary data, and (xoη, yoη)
represents a one-sided derivative xi,1 – xi,0 evaluated on the initial algebraic grid. The metric
coefficient (g22)i,0 = (xη )i,0 . (xη )i,0 is now computed using Eq. 4.28, and xηη is computed using a ghost
point, a boundary point, and an iteratively updated interior point. The value of (xη )i,0 used in Eq.
4.19 is not the fixed value given in Eq. 4.28, but is the iteratively updated one-sided difference
formula given by
(𝐱 𝜼 )i,0 = 𝐱 i,1 − 𝐱 i,0
Eq. 4.29
Finally, the “upper” η = n boundary is similar, and we note that the ghost-point locations are given by

(𝐱 𝜼 )i,0 = 𝐱 i,1 − 𝐱 i,0


Eq. 4.30
with (xη )i,n, evaluated using Eq. 4.28. Quantities for the four corner points, x0,0, xm,0, x0,n and xm,n, are
computed somewhat differently in that no orthogonality considerations or ghost points are used.
Indeed, the values xξ , xξξ , xη , xηη , g11, g22 are all evaluated once using one-sided difference formulas
that use the specified boundary values and do not change during the course of iteration. We forego
imposition of orthogonality at the corners, because at the corners conformality is more important
than orthogonality. In other words, orthogonality at the corners should be sacrificed in order to
ensure that the resulting grid does not spill over the physical boundaries in the neighborhood of the
corners. For the case of highly obtuse or highly acute corners, it may in fact be necessary to relax
76

orthogonality in the regions that are within several grid lines of the corners. One way to do this is to
construct ghost points near the corners with the orthogonal projection operation Eq. 4.21 omitted
(i.e., constructed by simple extrapolation), and to use a blend of these ghost points and the ghost
points derived using the orthogonality assumption. To further ensure that the elliptic system
iterations do not cause grid folding near the boundaries, “guards” may be employed, similar to those
mentioned in the previous section on Neumann orthogonality. In practice, however, we have found
these to be unnecessary for Dirichlet orthogonality.
4.3.1.3.4 Blending of Orthogonal and Initial Control Functions
The orthogonal control functions in the interior of the grid are interpolated from the boundaries
using linear transfinite interpolation and updated during the iterative solution of the elliptic system.
If the initial algebraic grid is to be used only to infer correct spacing at the boundaries, then it is
sufficient to use these orthogonal control functions in the elliptic iteration. However, note that the
orthogonal control functions do not incorporate information from the algebraic grid beyond the first
interior grid line. Thus if it is desired to maintain the entire initial interior point distribution, then at
each iteration the orthogonal control functions must be smoothly blended with control functions that
represent the grid density information in the whole algebraic grid. These latter control functions we
refer to as “initial control function,” and their computation is now described. The elliptic system Eq.
4.11 can be solved simultaneously at each point of the algebraic grid for the two functions P and Q
by solving the following linear system:

g 22 𝐱 𝛏 g11 𝐱 η P R1 R1 = 2g12 𝐱 𝛏𝛈 − 𝐠 𝟐𝟐 𝐱 𝛏𝛏 − 𝐠 𝟏𝟏 𝐱 𝛈𝛈
[g 𝐲
22 ξ g11 𝐲η ] [Q] = [R 2 ] where {
R 2 = R1
Eq. 4.31
Where the derivatives here are represented by central differences, except at the boundaries where
one-sided difference formulas must be used. This produces control functions that will reproduce the
algebraic grid from the elliptic system solution in a single iteration. Thus, evaluation of the control
functions in this manner would be of trivial interest except when these control functions are
smoothed before being used in the elliptic generation system.
This smoothing is done by replacing the control function at each point with the average of the nearest
neighbors along one or more coordinate lines. However, we note that the P control function controls
spacing in the ξ-direction and the Q control function controls spacing in the η-direction. Since it is
desired that grid spacing normal to the boundaries be preserved between the initial algebraic grid
and the elliptically smoothed grid, we cannot allow smoothing of the P control function along ξ-
coordinate lines or smoothing of the Q control function along η-coordinate lines. This leaves us with
the following smoothing iteration where smoothing takes place only along allowed coordinate lines:

1 1
Pi,j = (Pi,j+1 + Pi,j−1 ) , Q i,j = (Q i+1,j + Q i−1,j )
2 2
Eq. 4.32
Smoothing of control functions is done for a small number of iterations. Finally, by blending the
smoothed initial control functions together with orthogonal control functions, we will produce
control functions that will result in preservation of grid density information throughout the grid,
along with boundary orthogonality. An appropriate blending function (bij) for this purpose is
exponential blending function as described before. Now the new blended values of the control
functions are computed as follows:

Pi,j = b𝑖,𝑗 P0 (i. j) + (1 − b𝑖,𝑗 )P1 (i, j)


77

Qi,j = bi,j Q 0 (i. j) + (1 − bi,j )Q1 (i, j)


Eq. 4.33
where PO and QO are the orthogonal control functions from Eq. 4.19. PI and Q1 are the smoothed
initial control functions computed using Eq. 4.31 and Eq. 4.32.
As an application of Dirichlet orthogonality, in Figure 4.13 we show the results of smoothing the
algebraic grid of Figure 4.9 using orthogonal control functions only. Like the grid produced using
Neumann orthogonality, the grid is smooth, boundary-orthogonal, and no longer folds in the interior.
However, unlike the grid of Figure 4.10, we see that the grid of Figure 4.13 preserves the grid
point density information of the algebraic grid at the boundaries. The effect of smoothing near the
boundaries has been essentially to slide nodes along the coordinate lines parallel to the boundaries,
without affecting the spacing between the coordinate lines normal to the boundary.

Figure 4.13 An Elliptic Planar Mesh on a Bi-Cubic Geometry with Dirichlet Orthogonality

We note that if the user for some reason wished to preserve the interior clustering of grid points in
the algebraic grid, then the above scheme given for blending initial control functions with orthogonal
control functions would have to be slightly modified. This is because the fact that the algebraic grid
is actually folded in the interior makes the evaluation of the initial control functions using Eq. 4.31
ill-defined.
This is easily remedied by evaluating the initial control functions using Eq. 4.31 at the boundaries
only using one-sided derivatives, and then defining them over the whole mesh using transfinite
interpolation. Since there is no folding of the algebraic grid at the boundaries, this is well-defined.
(The interpolated initial control functions will reflect the grid density information in the interior of
the initial grid, because the interior grid point distribution of the initial grid was computed using the
78

same process transfinite interpolation of boundary data.) Then we proceed as above, smoothing the
initial control functions and blending them with the orthogonal control functions.
Finally we note that if the algebraic initial grid possesses folding at the boundary, then using data
from the algebraic grid to evaluate either the initial control functions or the orthogonal control
functions at the boundary will not work. In this case, one could reject the algebraic grid entirely and
manually specify grid density information at the boundary. This would however defeat the purpose
of our approach, which is to simplify the grid generation process by reading grid density information
off of the algebraic grid. Instead, we suggest that in this case the geometry be subdivided into patches
sufficiently small so that the algebraic initial grids on these patches do not possess grid folding at the
boundaries.
4.3.1.3.5 Boundary Orthogonality for Surface and Volume Meshes (3D)
Now we turn our attention to applying the same principles of the previous section to the case of
surface grids. Our surface is assumed to be defined as a mapping x(u, v): R2 → R3. The (u, v) space is
the parametric space, which we conveniently take to be [0,1] × [0,1]. The parametric variables are
themselves taken to be functions of the computational variables ξ, η, which live in the usual [0, m] ×
[0, n] domain. Thus

𝐱 = (x, y, z) = (x(u, v), y(u, v), z(u, v)) and (u, v) = [u(ξ, η), v(ξ, η)]
Eq. 4.34
The mapping x(u, v) and its derivatives xu, xv , etc., are assumed to be known and evaluable at
reasonable cost. It is the aim of surface grid generation to provide a “good” mapping (u(ξ, η ), v(ξ, η
)) so that the composite mapping x( u(ξ, η ), v(ξ, η )) has desirable features, such as boundary
orthogonality and an acceptable distribution of grid points. A general method for constructing
curvilinear structured surface grids and its derivates are presented in [Khamayseh ]76 and will not
be repeated here. Interested renders, should consult the above mentioned source, as well as the
[Khamayseh & Mastin]77, [Warsi]78.
4.3.1.4 Stretching Functions
In order to further improve the quality of the mesh, one can introduce univariate stretching functions
to either compress or expand grid lines in order to correct non-uniformity where grid lines are more
or less dense. These functions are arbitrarily chosen and only reflect the distribution of grid lines. We
can derive a new set of equations by combining our previously established differential model for grid
generation and a set of univariate stretching functions of our choice. In order to do so in a
straightforward manner, we can transform our Cartesian coordinates to a new set of coordinates
which exists in a different space, called the parameter space. Then, we define our stretching functions
as onto and one-to-one univariate functions of ξ and η respectively. For additional info, please
consult the work by 79-80-81.

76 Ahmed Khamayseh, Andrew Kuprat, C. Wayne Mastin, “Boundary Orthogonality in Elliptic Grid Generation”,
CRC Press LLC, 1999.
77 Khamayseh, A. and Mastin, C W., Computational conformal mapping for surface grid generation, J. Com. Phys.

1996.
78 Warsi, Z.U.A., Numerical grid generation in arbitrary surfaces through a second-order differential geometric

model, J. Cot. Phys. 1986.


79 Chaitanya Varier 2017.
80 M. Farrashkhalvat and J.P. Miles, “Basic Structured Grid Generation”, An imprint of Elsevier Science Linacre

House, Jordan Hill, Oxford OX2 8DP, 200 Wheeler Rd, Burlington MA 01803, First published 2003.
81 Joe F. Thompson, Z. U. A. Warsi, C. Wayne Mastin, “Numerical Grid Generation – Foundations and Application”,

Mississippi State, Mississippi, January 1985.


79

4.3.1.5 Extension to 3D
If we wished to extend the elliptic solver to 3D, we would need to develop equations for transitioning
from a curvilinear coordinate system (ξ, η, ς) to a 3D Cartesian coordinate system (x, y, z). Using the
same elliptic model as before, we get the 3D version of the Winslow equations where each of the
metric tensor coefficients is determined by taking the cofactors of the contravariant tensor matrix.
The contravariant tensor matrix is used to obtain the coefficients for the Winslow equations, which
are the inverse of the Laplace equations as stated before. In general, if we wish to extend our elliptic
mesh solver to n dimensions, then we will have n sets of equations each with n!/(2(n - 2)! + n terms.
This renders the problem gradually more and more difficult to solve for higher dimensions with the
existing elliptic scheme, implying that a different type of PDE might be needed in these cases. Another
complication that arises in higher dimensions is adjusting grid lines to enforce orthogonality. Using
the aforementioned algorithm for adjusting grid lines to achieve either complete or partial
orthogonality on the boundary, we would need to iteratively solve three sets of two linear equations
for each node in the mesh, as well as solve three trigonometric equations per iteration to compute
the tangents. An excellent short web-cast from Pointwise© (right click here) is available regarding
their development in structured meshing for an axial rotor blade.
4.3.1.6 Mesh Quality Analysis
In order to determine the quality of the resulting mesh, it was necessary to construct an objective
means of quality measurement. Therefore, several statistical procedures were implemented in the
program to produce a meaningful mesh quality analysis report. The metrics which are presented
are divided into the following categories:

➢ Orthogonality Metrics
• Standard deviation of angles
• Mean angle
• Maximum deviation from 90 degrees
• Percentage of angles within x degrees from 90 degrees (x can be set as a constant in
the code)

➢ Cell Quality Metrics


• Average aspect ratio of all cells
• Standard deviation of all aspect ratios

4.3.2 Hyperbolic Schemes


This grid generation scheme is generally applicable to problems with open domains consistent with
the type of PDE describing the physical problem. The advantage associated with Hyperbolic PDEs is
that the governing equations need to be solved only once for generating grid. The initial point
distribution along with the approximate boundary conditions forms the required input and the
solution is the then marched outward. Steger and Sorenson82 proposed a volume orthogonality
method that uses Hyperbolic PDEs for mesh generation. For a 2D problem, considering
computational space to be given by Δξ = Δη =1, the inverse of the Jacobian is given by,

x ξ y η − x η yξ = I Eq. 4.35

Where I represents the area in physical space for a given area in computational space. The second

82Steger, J.L; Sorenson, R.L (1980). "Use of hyperbolic partial differential equation to generate body fitted
coordinates, Numerical Grid Generation Techniques". NASA conference publication 2166: 463–478.
80

equation links the orthogonality of grid lines at the boundary in physical space which can be written
as
dξ = 0 = ξ x dx + ξ y dy Eq. 4.36

For ξ and η surfaces to be perpendicular the equation becomes:

x ξ y η + yξ y η = 0
Eq. 4.37
The problem associated with such system
of equations is the specification of I. Poor
selection of I may lead to shock and
discontinuous propagation of this
information throughout the mesh. While
mesh being orthogonal is generated very
rapidly which comes out as an advantage
with this method. Figure 4.14 displays a
C-O type hyperbolic grid around an HSCT
wing-fuselage configuration, with
pressure contours mapped using an Euler
solution and M∞ = 2.4.
4.3.3 Parabolic Schemes
The solving technique is similar to that of
Figure 4.14 Euler Solution on a HSCT Wing-Fuselage
hyperbolic PDEs by advancing the
solution away from the initial data surface
satisfying the boundary conditions at the end. Nakamura (1982) and Edwards (1985) developed the
basic ideas for parabolic grid generation. The idea uses either of Laplace or the Poisson's equation
and especially treating the parts which controls elliptic behavior. The initial values are given as the
coordinates of the point along the surface η = 0 and the advancing the solutions to the outer surface
of the object satisfying the boundary conditions along ξ edges. The control of the grid spacing has not
been suggested till now. Nakamura and Edwards, grid control was accomplished using non-uniform
spacing. The parabolic grid generation shows an advantage over the hyperbolic grid generation that,
no shocks or discontinuities occur and the grid is relatively smooth. The specifications of initial values
and selection of step size to control the grid points is however time consuming, but these techniques
can be effective when familiarity and experience is gained.

4.4 Variational Method


These methods have evolved from elliptic grid generation. To solve an elliptic PDE is often equivalent
to minimizing a functional. Variational methods has been used for improving quality of a given grid83.
In the vibrational methods, a grid functional is defined. Grid functional is an algebraic expression of
the position vectors of the internal nodes of a mesh. Optimization of the grid functional may result in
a grid with desired properties such as orthogonal grid lines, equal cell areas, linear or parallelogram
cells and untangled mesh. There are many algebraic functional for grid generation and optimization.
For example, algebraic grid generation methods such as Transfinite Interpolations though, one of
simplest method of grid generation, but can produce folded grids for curved domains as seen in the
Figure 4.15. One other disadvantage of algebraic grid generation is that boundary discontinuity can
prorogate inside the domain. As indicated in Figure 4.15, Winslow functional smooth the grid, and

83 J.F. Thompson, B.K. Soni and N.P. Weatherill. Handbook of Grid Generation. CRC Press, 1998.
81

removes the folded grid lines. There are far too many algebraic functional for grid generation
optimization as reader should check with84.

Figure 4.15 Folded Grid by Transfinite Interpolation - Smooth Grid by Winslow Functional

4.4.1 Variational High-Order Mesh Generation 85


A literature review into high-order mesh generation, such as vibrational methods, has almost
exclusively centered around a posteriori approaches, whereby a coarse linear mesh is deformed to
accommodate the curvature at the boundary. The challenge in this approach is to determine a
method through which this curvature can be incorporated into the interior of the domain. Without
this, the mesh is at best of a low quality, and at worst, will self-intersect (see Figure 4.15 – left),
rendering it unsuitable for solver based calculations. Existing work in a posteriori generation has
broadly centered around two lines of investigation.
The first of these focuses around the concept of solid body deformation, whereby the mesh is treated
as a solid body which is deformed to incorporate curvature at the boundary. The work in this theme
has focused around determining which model is `best', either in terms of optimal quality or
computational efficiency. Some models investigated include linear elasticity, non-linear
hyperelasticity and more recently, thermo-elasticity and the Winslow equations.
The second theme follows a different route, whereby the mesh is equipped with an associated
functional that denotes its energy. A non-linear optimization problem is then solved in order to
minimize this functional and yield a valid mesh. Again, most studies in this area have focused around
this choice of functional, which include scaled Jacobian distortion metrics spring analogies for
surface deformation, unconstrained optimization of the Jacobian and a number of articles based
on a shape distortion metric. However, the connections between these two themes so far remain
uninvestigated.
In the linear mesh generation community, it is known that through the calculus of variations, the
elliptic partial differential equations defining these elasticity models can be recast into the
minimization of an energy functional, which takes as its arguments the mesh displacement and its
derivatives. However, the use of this approach in high-order mesh generation has remained mostly
unnoted, asides from brief remarks.

84 Sanjay Kumar Khattri, “Grid Generation and Adaptation by Functional”, Department of Mathematics,
University of Bergen, Norway.
85 Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London, Faculty of

Engineering Department of Aeronautics, A thesis submitted for the Degree of Doctor of Philosophy, 2017.
82

4.5 Structured Adaptive Grid


In an adaptive grid, the physics of the problem at hand must ultimately direct the grid points to
distribute themselves so that a functional relationship on these points can represent the physical
solution with sufficient accuracy 86. The idea is to have the grid point’s move as the physical solution
develops, concentrating in regions of large variation in the solution as they emerge. The mathematics
controls the points by sensing the gradients in the evolving physical solution, evaluating the accuracy
of the discrete representation of the solution, communicating the needs of the physics to the points,
and finally by providing mutual communication among the points as they respond to the physics. The
basic techniques involved then are as follows:

• A means of distributing points over the field in an orderly fashion, so that neighbors may be
easily identified and data can be stored and handled efficiently.
• A means of communication between points so that a smooth distribution is maintained as
points shift their position.
• A means of representing continuous functions by discrete values on a collection of points with
sufficient accuracy, and a means for evaluation of the error in this representation.
• A means for communicating the need for a redistribution of points in the light of the error
evaluation, and a means of controlling this redistribution.

Several considerations are involved here, some of which are conflicting. The points must concentrate,
and yet no region can be allowed to become devoid of points. The distribution also must retain a
sufficient degree of smoothness, and the grid must not become too skewed, else the truncation error
will be increased as noted. This means that points must not move independently, but rather each
point must somehow be coupled at least to its neighbors. Also, the grid points must not move too far
or too fast, else oscillations may occur. Finally the solution error, or other driving measure, must be
sensed, and there must be a mechanism for translating this into motion of the grid. The need for a
mutual influence among the points calls to mind either some elliptic system, thinking continuously,
of some sort of attraction (repulsion) between points, thinking discretely. Both approaches have been
taken with some success, and both are discussed below. It should be noted that the use of an
adaptive grid may not necessarily increase the computer time, even though more computations
are necessary, since convergence properties of the solution may be improved, and certainly
fewer points will be required. With the time derivatives at fixed values of the physical coordinates
transformed to time derivatives taken at fixed values of the curvilinear coordinates, no interpolation
is required when the adaptive grid moves. Thus the first derivative transformation given the chain
rule is given by
∂A ∂A ∂x
( ) =( ) + ∇A. ( ) or
∂t ξ,η,ζ ∂t x,y,z ∂t ξ,η,ζ
3
∂A ∂A ∂A ∂xi
( ) =( ) +∑ ( )
∂t ξ,η,ζ ∂t x,y,z ∂xi ⏟∂t
i=1
mesh movement
Eq. 4.38
The computation thus can be done on a fixed grid in the transformed space, without need of
interpolation, even though the grid points are in motion in physical space. The influence of the motion
of the grid points registered through the grid speeds, (xi)t, appearing in the transformed time

86 Joe
F. Thompson, J., F., Warsi, Z., U., A., Mastin, .W. “Numerical Grid Generation; Foundations and Applications”,
North-Holland Book, 1995.
83

derivative. This is the appropriate approach when the grid evolves with the solution at each Time
step. Some methods, however, change the grid only at selected time steps, and here interpolation
must be used to transfer the values from the old grid to the new since the grid movement is not
continuous. A combination of the weight functions given by Eq. 4.38 provides the desired tendency
toward concentration both in regions of high gradient and near extrema. The effect of the inclusion
of the curvature illustrated below:

1/2 2A
  A 
2
 x 2
w = (1 + β 2 K )1 + α 2    where K=
  x     A  2 
3/2
  1 +  
  x  
 
Eq. 4.39
Where α and β are parameters to be specified. Clearly, concentration near high gradients is
emphasized by large values of α , while concentration near extrema (or other regions of large
curvature) is emphasized by large β. (see Figure 4.16).

Figure 4.16 1D Weight Function for High Gradient and Curvature

4.5.1 Case Study – 2D Euler Flow Over an NACA Airfoil


In a grid adaptation method for structured grids without adding or removing grid points, adaptation
is achieved through moving the grid points toward the desired locations. Changes in the mesh point
locations can be controlled by two methods.87 In the first method, the arc elements forming the ides
of a control volume are directly related to specified functions. For a three-dimensional problem, this
implies that three arc elements need to be given. In the second method, the cell volume may be
altered by specifying that the volume of each element change according to a specific rule. To control
the cell size, only one relationship must be specified that relates the volume to the quantity
responsible for changes in the mesh. The specification of only one control function is an advantage in
simplicity but may be less flexible than independently controlling arc lengths. The cell volume control
method is applied successfully to calculating transonic Euler flows with shock waves. The method is
applied to computing the flow field over an airfoil. Figure 4.18 shows the initial C-mesh of an NACA
0012 airfoil and the adaptive one on the right, with their respective Mach contours. Two flow cases
were calculated over the initial grid. The first is a transonic case with free stream Mach number, M1
= 0.85 and an angle of attack, α = 1 where Left is without mesh adaption and Right is with. There is

87Feng Liu, Shanhong Ji, and Guojun Liao,” An Adaptive Grid Method and Its Application to Steady Euler Flow
Calculations”, Siam J. Sci. Comput. C° 1998 Society For Industrial And Applied Mathematics Vol. 20, No. 3.
84

one strong shock wave on the upper side of the airfoil and a weaker one on the lower side. It can be
seen from Figure 4.18 that the computed shock waves are rather thick. Shock waves zero thickness
in the inviscid limit. To get better computational results, particularly to capture the shock waves
more accurately, one would like to concentrate grid points around the shock waves. The deformation
method is applied to get a new grid with prescribed distribution of cell sizes based on gradients of
the flow field. The adaptive criterion here is to detect the shock waves. This suggests choosing the
monitor function f of the form:
1
= C1 (1 + C2P) Eq. 4.40
f
Where P is the pressure and C1and C2 are constants. It can be seen that grid points are clustered
closely in the areas where the two shock waves occur, although grid lines are somewhat skewed in
the clustered regions because the deformation method does not guarantee orthogonality. However,
since our flow solver is based on a finite volume scheme which does not require the use of an
orthogonal grid, we are content with the locally reduced cell sizes.

Figure 4.17 Grid Adaption and Mack Contours for Supersonic Airfoil

Another test case is the supersonic flow over the same airfoil with a free stream Mach number M∞ =
1.5, and α= 0. As can be seen, a strong bow shock wave appears in front of the airfoil leading edge. In
addition, there are two weak shocks emanating from the trailing edge of the airfoil the Mach number
distribution computed on the adapted grid. It can be seen that a sharper front of the bow shock is
captured compared with that on the initial un-adapted grid. The resolution of the two trailing edge
shocks is also slightly increased. The computational time needed for the grid adaptation and the flow
solver for the supersonic case is the same as that for the transonic case. (See Figure 4.17).
85

Figure 4.18 Mesh and Mach Contours for Transonic Flow


86

5 Un-Structured Mesh Generation I


The 1980s was witnessed the rapid development of alternative meshing techniques. The most
prominent of these are the unstructured methods based on triangles in 2D and tetrahedral in 3D.
Some of the earliest ideas for generating triangular meshes over planar regions can be found in a
review by Thacker88. It is interesting to note that until the mid-1980s little effort had been applied
to the problem of computing aerodynamic flow fields on meshes of triangles or tetrahedral. The first
attempts to solve the flow around a complete aircraft by means of a finite element solution on a
tetrahedral mesh are described in the papers of [Bristeau et al.] and [ Jameson et al.]. There are three
essentially different approaches to generating triangular or tetrahedral meshes, the Moving
(Advancing) front technique89, Delaunay base methods90,91,92 and the Octree approach93. Moving
front and Delaunay based methods create a triangulation that matches a prescribed boundary (a
specified set of points and edges in 2D, a specified set of points and triangular faces in 3D). The Octree
method, however, determines the boundary discretization as part of the domain meshing procedure
and is thus closely related to the Cartesian approach. Each method is discussed below.

5.1 Spatial Discretization


The previous section describes techniques for generating suitable meshes about arbitrary geometric
configurations. Once such a mesh has been generated, it serves as the basis for the spatial
discretization of the governing fluid dynamic equations. Unstructured mesh discretization
techniques can generally be classified as finite-volume or finite-element strategies, depending on
whether a discrete integral or Variational viewpoint is adopted, although many common
discretization may be simultaneously interpreted from both viewpoints. For finite-volume
formulations, a distinction between vertex-based and cell centered schemes can be made. In a vertex
based scheme, the flow variables are stored at the vertices of the mesh. The discrete equations usually
involve stencils that are defined by the nearest or next-to-nearest neighbors of each mesh point. In a
cell-centered scheme, the flow variables are stored at the centers of the cells or elements of the mesh.
The stencils of the discrete equations usually involve the nearest or next-to-nearest neighboring cells.
The equivalence between vertex-based and cell-centered schemes can be demonstrated with the
concept of a dual mesh. If a dual mesh point is created at each cell center and dual mesh edges are
drawn by joining neighboring cell centers, the cell-centered scheme can be seen to be equivalent to a
vertex-based scheme operating on the dual mesh. Figure 5.1 illustrates the dual mesh for a mixed
quadrilateral and triangular mesh in two dimensions and associated control-volumes with edge-
based fluxes for a vertex-based scheme. For a purely quadrilateral or hexahedral mesh, the dual mesh
also contains quadrilateral or hexahedral elements, and the number of vertices and edges in the
original and dual meshes is identical. For triangular or tetrahedral meshes, the number of dual mesh
vertices is larger than the number of original mesh vertices. This is due to the fact that a triangular
mesh contains twice as many triangles as vertices (neglecting boundary effects), and a tetrahedral

88 Thacker WC. A brief review of techniques for generating irregular computational grids. Intentional Journal
Numerical Meth Eng. 1980; 15:1335–41.
89 Lo SH. A new mesh generation scheme for arbitrary planar domains. Int J Num. Meth Eng. 1985;21:1403–2
90 Baker TJ. Three dimensional mesh generation by triangulation of arbitrary point sets, AIAA 8th CFD conference.

Honolulu, HI. AIAA paper 87-1124, 1987.


91 Weatherill NP. , “A method for generating irregular computational grids in multiply connected planar domains”,

International Journal Number Meth Fluids 1988; 8:181–97.


92 George PL, Hecht F, Saltel E. Constraint of the boundary and automatic mesh generation. Proceedings of the

second international conference on num grid gen comp fluid dyn, Miami, FL, 1988. p. 589–97.
93 YerryMA, Shephard MS., “Automatic three-dimensional mesh generation by the modified Octree technique”,

International J Numerical Meth Engineering 1984; 20:1965–90.


87

mesh five to six times more elements


than vertices. On the dual mesh, the
degree of a vertex (number of
incoming edges) is fixed and equal to
three for triangular elements, or four
for tetrahedral elements, whereas on
the original mesh, the degree of each
vertex is variable. Similar
relationships hold for other elements
such as prisms and pyramids.
Thus, cell-centered and vertex-based
schemes operating on the same grid
result in vastly different
discretization when non-
quadrilateral or non-hexahedral
elements are present. In particular, a
cell-centered scheme can be expected Figure 5.1 Dual Mesh for Mixed Triangular-Quadrilateral
Unstructured Mesh
to result in a much larger number of
unknowns while generating
relatively simple stencils of fixed size. The vertex-based scheme, on the other hand, will result in a
smaller number of unknowns with larger variable-size stencils. Because of the larger number of
unknowns, cell-centered schemes generally incur larger overheads than vertex-based schemes on
equivalent grids. However, there is evidence to suggest that they also provide more accurate
solutions on equivalent grids. The question of whether the additional overheads are offset by the
increase in accuracy is still an open one, especially since vertex-based schemes operate on more
complex stencils (more fluxes per unknown) than cell-centered schemes.

5.2 Connectivity Information and Data Structure


We must identify what information is required to identify the cell and all the neighbors of the cell in
the computational mesh. We can choose to locate the arbitrary points anywhere we want for the
unstructured grid. A point insertion scheme is used to insert the points independently and the cell
connectivity is determined. This suggests that the point be identified as they are inserted. Logic for
establishing new connectivity is determined once the points are inserted. Data that form grid point
that identifies grid cell are needed. As each cell is formed it is numbered and the points are sorted. In
addition the neighbor cell information is needed. Therefore, a brief discussion on data structures is
useful because the success of most discretization methods ultimately depends on how efficiently they
may be implemented94. Traditionally, finite-element methods have relied on element-based data
structures, where for each element of the mesh a list of the forming vertex addresses is stored (i.e.
four vertices for tetrahedral, eight vertices for hexahedra, etc.). For many fluid dynamics problems,
the discretization, which are typically thought of as summations of fluxes, can be implemented
more effectively using an edge-based data structure. For a vertex-based scheme, this corresponds
to storing, for each edge of the mesh, the addresses of the two vertices on either end of the edge. For
a cell-centered scheme, the relevant entity is the dual edge that joins two neighboring cell centroids
and pierces the face common to these two cells. The discretization may be evaluated by computing a
flux on each edge, which is then added to and subtracted from the respective control volumes on each
end of the edge. In order to compute this flux, a face area must be stored for each edge, which
corresponds to the area of the dual control-volume face associated with the mesh edge in the vertex-
based scheme, and to the area of the cell face pierced by the dual edge in the cell-centered scheme.

94 Wikipedia.
88

The use of edge-based data structures results in lower memory overheads and increased
computational throughputs because redundant computations are eliminated and the gather-scatter
required for vectorization in supercomputers is minimized. Furthermore, because sets of edges can
be used as building blocks for arbitrarily shaped elements, hybrid meshes with mixed element types
may be handled by a single edge-based data structure, at least for inviscid flows. For viscous flows,
the Galerkin finite-element discretization of the diffusion terms on simplicial meshes results in a
nearest-neighbor stencil and thus may be implemented using an edge-based data structure95.
However, this is not the case for non-simplicial meshes, since the resulting stencils involve vertices
that are not connected to the center vertex by a mesh edge (such as diagonally opposed vertices in
hexahedral elements). In these situations, the element-based data structure must be retained96. An
alternative is to resort to the thin-layer approximation of the viscous terms on non-simplicial meshes,
which can be implemented exclusively along edges97. The limitations of this approach are obvious,
although it is justifiable for highly stretched prismatic or hexahedral meshes, where stream wise
resolution has been sacrificed for efficiency.
An interesting property of the edge-based data structure is that it can provide an interpretation of
the discrete operator as a sparse matrix. For nearest neighbor stencil discretization, all points in the
stencil are joined to the center point by a mesh edge. The discretization operator can be written as a
sparse matrix, where each nonzero entry in the matrix corresponds to a stencil coefficient or edge of
the mesh. For systems of equations, the edges correspond to nonzero block matrix entries in the large
sparse matrix. This interpretation has implications for the implementation of implicit and algebraic
multigrid solution schemes 98-99. One of the disadvantages of the edge-based data structure is that it
requires a preprocessing operation to extract a unique list of edges from the list of mesh elements
and to compute the associated edge coefficients. For unsteady flows with dynamic meshes, this
preprocessing must be performed every time the mesh is altered, although this may be done locally.
Additionally, for dynamic grid cases, the element data structures are generally required for
performing mesh motion or adaptation, since edge lists represent a lower-level description of the
mesh100.

5.3 Considerations for the Navier-Stokes Equation


The above discussion on discretization is principally concerned with the purely convective terms that
arise in the context of inviscid flows. With the exception of the finite-element methods described
above, where convection and diffusion terms can be treated in a unified manner, additional viscous
terms must be discretized for the Navier-Stokes equations. These terms are diffusive in nature and
generally take the form of second differences. Stable second-order discretization can therefore be
constructed using simple central differences. For cell-centered schemes, one approach consists of
first computing the gradients at the mesh vertices and then averaging these to the cell faces in order
to compute second derivatives at cell centers (Frink101). For vertex based schemes, a similar two-pass
procedure based on finite-volume central difference arguments can be used to construct the viscous

95 Mavriplis DJ, “Unstructured mesh generation and adaptively”, VKI Lect. Ser. Computational Fluid Dynamics,
26th, VKI-LS 1995.
96 Braaten ME, Connell SD., “Three dimensional unstructured adaptive multigrid scheme for the Navier-Stokes

equations”, AIAA J. 34(2):281–90, 1996.


97 Mavriplis DJ, Venkatakrishnan V.,”A unified multigrid solver for the Navier-Stokes equations on mixed element

meshes”, .AIAA Pap. 95-1666, 1995.


98 Venkatakrishnan V, Mavriplis DJ., ”Implicit solvers for unstructured meshes”, J. Computational. Phys.

105(1):83–91, 1993.
99 Mavriplis DJ, Venkatakrishnan V., “A unified multigrid solver for the Navier-Stokes equations on mixed element

meshes”, AIAA Pap. 95-1666, 1995.


100 Annual. Rev. Fluid Mech. 1997.29:473-514, journals.annualreviews.org by Pennsylvania State University.
101 Frink NT.. Recent progress toward a three dimensional unstructured Navier-Stokes flow solver. AIAA 1994.
89

term discretization. For simplicial meshes, gradients can first be computed on the mesh elements,
which can then be interpolated to the control-volume faces in order to form second differences at the
mesh vertices. This type of discretization can be derived more formally using a Galerkin finite-
element procedure and assumes linear variation of the flow variables on the mesh elements. The
resulting discretization produces a nearest-neighbor stencil and may be implemented as a single loop
over the edges of the mesh, rather than as a two-pass procedure that computes intermediate cell-
based gradients; [Barth]102 and [Mavriplis]103. For non-simplicial meshes, Galerkin finite-element
formulations using bilinear or trilinear variations on quadrilateral or hexahedral elements can be
constructed. The resulting stencils, however, are no longer compact, as they involve vertices within
mesh elements that are not connected by a mesh edge, such as diagonally opposed vertices in
hexahedral elements [Braaten & Connell104].
An alternative strategy for discretizing viscous terms for vertex-based schemes is to employ the
vertex-based gradients already computed in the context of second-order upwind schemes (using a
Green-Gauss integration around the vertex-based control volumes, for example), instead of the
element-based gradients described above. A vertex-based second difference can then be computed
by integrating these gradients themselves around the control-volume boundaries [Luo et al 1993].
This approach enables the viscous term discretization to be assembled on meshes of arbitrary
element types using the same data structures as required for the upwind convection terms. The
principal drawback of this method is that it results in a large stencil that involves neighbors and next
to-neighbors, which on a structured mesh reduces to a stencil of size 2h, where h represents the mesh
spacing. This not only reduces overall accuracy but is also ineffective at damping odd-even
oscillations in the numerical scheme. For high-Reynolds-number flows of practical interest, the
Reynolds-averaged form of the Navier-Stokes equations is generally employed, which requires the
use of additional turbulence-modeling equation(s). Although algebraic models can be implemented
on unstructured grids [Mavriplis]105, they were conceived for simple wall-bounded flows and are
thus ill suited for flows over complex geometries. The current practice is to employ two-equation
models of the K-ε or K-ω type, or simpler one-equation eddy viscosity models [Baldwin & Barth
1992], [Spalart & Allmaras]106. These equations contain convective, diffusive, and source terms that
can be discretized in a manner analogous to the discretization of the flow equations. Turbulence
modeling equations often result in stiff numerical systems, and care must be taken to devise schemes
that preserve positivity of the turbulence quantities at all stages of the solution process. A common
practice is to discretize the convective terms using a first order upwind strategy, from which a
positive scheme that obeys a maximum principle can be obtained.

5.4 Hierarchy of Unstructured Meshing


It is possible, in principle, to cut up a triangle into three quadrilaterals by inserting an extra point at
the triangle barycenter and an extra point at the mid-point of each edge. A similar division of a
tetrahedron into four hexahedra is also possible. At first sight, this would appear to be a
straightforward way to create unstructured quadrilateral or hexahedral meshes from 2D or 3D
triangulations. In practice, the quality of the resulting meshes is generally very poor. Alternative ways
to create unstructured hexahedral meshes have been based on paving techniques107 (essentially a

102 Barth TJ. 1992. Aspects of unstructured grids and finite-element volume solvers for the Euler and Navier
Stokes equations. Von Karman Inst. Lect. Ser., AGARD Publ. R-787
103 Mavriplis DJ. 1995b. A three-dimensional multigrid Reynolds-averaged Navier-Stokes solver for unstructured

meshes. AIAA J.33(3):445–53


104 Braaten ME, Connell SD. 1996. Three dimensional unstructured adaptive multigrid scheme for the Navier-Stokes

equations. AIAA J. 34(2):281–90


105 Mavriplis DJ. 1991a. Algebraic turbulence modeling for unstructured and adaptive meshes. AIAA J. 1993.
106 Spalart PR, Allmaras SR. 1992. A one-equation turbulence model for aerodynamic flows. AIAA Pap. 92-0439
107 Zhu JZ, Zienkiewicz OC, Hinton E, Wu J, “A new approach to the development of automatic quadrilateral
90

moving front approach), Octree decomposition together with a means of merging, or snapping, the
outermost Octree hexahedra to the boundary, or by making use of the medial axis in 2D, medial
surface in 3D, to produce a type of multi-block decomposition that is more amenable to meshing by
paving108. The possibility of automatically generating unstructured hexahedral meshes is tantalizing
and offers the prospect of providing automated mesh generation suitable for solid mechanics
computations using finite element methods as well as meshes suitable for the computation of the
RANS equations. Much depends on the mesh quality near solid boundaries and it remains to be seen
whether any of the current approaches to hexahedral mesh generation can provide the required
flexibility in terms of geometry handled and the necessary quality in terms of mesh orthogonality
near solid boundaries. Figure 5.2. displays different methodologies which currently available in
mesh generation engines.

Hexahedral Hybrid Tetrahedral

Single Block Tetrahedral/ Octree


(Fully
Structurd) Hexahedral Decompostion

Tetrahedral/
Multiblock Advancing
(contiguous) Primatic Front
Cartesian

Multiblock (Hexahedral
Overset +assorted Delany
(Chimera Polyhedral

Fully
unstructured
Hexahedral

Figure 5.2 Hierarchy of Unstructured Meshing Methodologies

5.5 Unstructured Quadrilateral Mesh Generation (2D)


Because commercial aircraft are built with thin-walled structures, their structural performance is
well-modeled using shell-element meshes [Hwang and Martins]109. However, creating these meshes
for the full aircraft configuration can be challenging and presents a bottleneck in the design process,
especially in a configuration-level design space. The aim is to presents an algorithm that

Mesh generation”, Inter J Number Meth Eng. 1991; 32:849–66.


108 Sheehy, DJ, Armstrong CG, Robinson DJ,”Computing the medial surface of a solid from a domain Delaunay

triangulation”, Proceedings of the ACM symposium on solid modeling and applications, Salt Lake City, UT, New
York: ACM Press; 1995. p. 201–12.
109 J. T. Hwang and J. R. R. A. Martins, “An unstructured quadrilateral mesh generation algorithm for aircraft

structures”. Aerospace Science and Technology, 59:172182, 2016. doi:10.1016/j.ast.2016.10.010.


91

automatically creates unstructured quadrilateral meshes for the full airframe based on just the
description of the desired structural members. The approach consists in representing each node in
the mesh as a linear combination of points on the geometry so that the structural mesh morphs as
the geometry changes, as it would, for example, in aero-structural optimization. The algorithm
divides the aircraft skin into 4-sided domains based on the underlying B-spline representation of the
geometry. It meshes each domain independently using an algorithm based on constrained Delaunay
triangulation, triangle merging and splitting to obtain a quadrilateral mesh, and elliptical smoothing.
Examples of full configuration structural meshes are provided, and a mesh convergence study is
performed to show that element quality can be maintained as the structural mesh is refined. Here,
presented an automatic unstructured quadrilateral mesh generation algorithm for aircraft structures
that uniquely satisfies the four requirements mentioned above. The algorithms starts with a B-spline
surface geometry representation and a list of requested structural members defined in terms of
parametric locations on the surfaces. It then splits the geometry into domains, meshes each domain
independently using Constrained Delaunay triangulation (CDT) as well as merging and splitting
operations, and then applies Laplacian smoothing as a final step.
5.5.1 Geometry Representation
The only requirements on the geometry
representation are that it is continuous
and watertight. Representing the
geometry using untrimmed B-spline
surfaces, though this is not the only choice
with which the structural mesh
generation algorithm would work. B-
splines are piecewise polynomials used
frequently in computer-aided design
because of their favorable mathematical
properties: compact support for a desired
order and smoothness, and flexibility in
terms of the number of control points and
polynomial degree. B-spline surfaces are
tensor products of B-spline curves that
maintain the advantages of smoothness
and sparsity. Figure 5.3 illustrates how a
conventional wing-body-tail aircraft Figure 5.3 Conventional configuration geometry (a),
geometry can be constructed with 4-sided final structural mesh (Courtesy of Hwang & Martins)
B-spline surfaces110.
5.5.2 Local Mesh Generation Algorithm
In general, 2D quad meshing algorithms fall under three general categories: domain-decomposition,
advancing-front, and triangulation-based methods. The first two recursively splitting the domain
through heuristic algorithms and marching out from boundaries, respectively are not suitable for the
current problem because of the line constraints imposed by the structural members intersecting the
skin. Two additional ideas that have been successful are topology clean-up and smoothing. There has
been work dealing with line constraints in structural mesh generation for marine engineering. The
local mesh generation algorithm consists of six stages, as illustrated in Figure 5.4. The figure shows
a domain for illustrative purposes, containing a vertical edge extending from the top to the bottom of
the domain, two diagonal edges intentionally chosen to form a triangular region, and a shorter edge
that is floating by itself near the center of the domain. The six stages are as follows:

110 Same as previous.


92

1. Initial domain: We start with a 4-sided domain representing a single B-spline surface, with
the internal members intersecting this surface pre-determined.
2. Discretization: We discretize the boundaries and the interior of the domain. The boundaries
are simply discretized using a global parameter representing the requested resolution. This
guarantees that the bounding edges shared by two neighboring domains always agree on the
boundary nodes because all domains use the same resolution parameter. The interior of the
domain is populated with a grid of points that are spaced based on the sizes of the element
boundaries, as measured from the preview mesh.
3. Triangulation: We perform CDT on the domain while respecting the edges from the
boundaries and from the intersecting structural members.
4. Quad-dominant mesh: From the triangulation, we obtain a quad-dominant mesh by ranking
all potential merges of adjacent triangles based on how close the angles would be to 90
degrees. The triangles are merged according to this ranking until no possible merges remain.
5. Fully-quad mesh: We split all quads into four smaller quads and all triangles into three quads
using its centroid to obtain a fully quad mesh.
6. Smoothing: We perform an elliptical smoothing operator (Laplacian) as the last step
Other noticeable sources regarding Quad meshing are by [Remacle et al,]111, and [Verma &

Figure 5.4 The Six Steps of the Unstructured Quad Meshing Algorithm

111J.-F. Remacle, J. Lambrechts, B. Seny, E. Marchandise, A. Johnen and C. Geuzaine, “Blossom-Quad: a non-
uniform quadrilateral mesh generator using a minimum cost perfect matching algorithm”, Int. J. Numerical
Meth. Eng. 2010; 00:1-6
93

Tautges]112.
5.5.3 Conversion of Triangular to Quadrilateral Meshes
Another simple strategy is developing by [Lyra & de Carvalho]113 where quadrilateral mesh
generated from triangular meshes. Unstructured quadrilateral meshes can be automatically
generated in several different ways and do not impose serious topological restrictions on the meshes,
being appropriated to deal with complex geometries, naturally allowing local non-uniform mesh
refinement. Several different approaches have been proposed to generate unstructured quadrilateral
meshes. These methodologies can be divided into two basic groups:

(1) Initial triangulation (2) Intermediate mesh

(3) Mesh non-optimized (4) Final quadrilateral mesh

Figure 5.5 Quadrilateral Mesh Generation

112 Chaman Singh Verma and Tim Tautges, “Jaal: Engineering a high quality all-quadrilateral mesh generator”,
Argonne National Laboratory, Argonne IL, 60439.
113 Paulo Roberto M. Lyra, Darlan Karlo E. de Carvalho, “A Computational Methodology for Automatic Two-

Dimensional Anisotropic Mesh Generation and Adaptation”, Methodology for Automatic Two-Dimensional
Anisotropic Mesh Generation and Adaptation.
94

➢ those that try to generate quadrilaterals directly,


➢ and those that convert a previously generated mesh of triangles into a mesh of quadrilaterals

The conversion of triangular meshes is particularly attractive because these meshes can inherit the
properties of the triangular meshes, whose generators are very well developed and once it is always
possible to build a triangular mesh over any arbitrary 2D domain, quadrilateral meshes can be
constructed as general as the triangular ones. It also allows the use of any triangular mesh generator
as a “black box”. As we generate a quadrilateral mesh using the conversion strategy, the quadrilateral
mesh inherits the characteristics of the initial triangulation. For both, iso and anisotropic meshes this
strategy consists of four main steps, as presented .

1. Generate a triangular mesh (either iso or anisotropic);


2. Remove an edge between two adjacent triangles, to forma quadrilateral;
3. Split all elements in the intermediate mixed mesh(triangles into three quadrilaterals and
quadrilaterals into four quadrilaterals);
4. Perform some post processing steps in order to enhance mesh quality.

The standard strategy of merging triangles into quadrilaterals consists in eliminating a common edge
that belongs to two adjacent triangles. Following the work done by [Xie and Ramaekers (1994)] and
[Alquati and Groehs (1995)], our mesh generator is such that it refrains from merging triangles that
would form a non-convex quadrilateral. Besides, for anisotropic meshes, the merging process will
remove a common edge between two adjacent triangles, only if the two quadrilaterals to be created
satisfy a quality criteria which is controlled by two
geometric parameters. The adopted procedure
generates a quadrilateral mesh with edges that are
approximately half of those of the corresponding
triangular elements and usually this is not a
serious concern, since the user can generate a
coarser initial triangulation to obtain the desired
mesh density. The four steps involved in the
quadrilateral mesh generation can be seen in
Figure 5.5 (1-4).

5.6 Cartesian Meshes


5.6.1 Background and Cartesian Grid Origins
Cartesian grids have been utilized in solving a
variety of CFD problems from potential flows to
Navier-Stokes equations114. Cartesian grids
consist of a collection of non-overlapping,
connected control volumes with coordinate Figure 5.6 Example of Cartesian Grid Near
aligned edges. Thus, the edge (or face in three Curved Surface – (Courtesy of NASA Ames)
dimensions) normal for all complete cells are
aligned with one of the coordinate directions. Figure 5.6 shows a typical two-dimensional Cartesian
grid around a curved surface. Cartesian gridding techniques have become the focus of recent research
due to their ability to easily handle complex geometries in the grid generation phase. The ease with
which higher order schemes can be applied and the natural connection between the grid refinement

114Stephen M. Ruffin, NASA Ames Research Center in coordination with Georgia Institute of Technology,
“GSRP/David Marshall: Fully Automated Cartesian Grid CFD Application for MDO in High Speed Flows”, 2003.
95

techniques and multigrid acceleration schemes. The difficulties in using Cartesian grids arise from
the fact that the control volumes adjacent to the surfaces are not usually aligned with the surfaces
and thus special techniques need to be employed to handle the non-Cartesian (cut or split) cells in
these regions. Cut cells are created when the intersection of the Cartesian cell and the solid surface
results in one computational volume with only a fraction of the original volume and possibly non-
Cartesian aligned edges, see Figure 5.7 (a). Split cells are created when the intersection of the
Cartesian cell and the solid surface results in two or more computational volumes which might have
non-Cartesian aligned edges, see Figure 5.7 (b).

(a) Cut 1 (b) Cut 2

Figure 5.7 Solid Surface Over-Layer Cartesian Cell and Resulting Cut and Split Cell – (Courtesy of NASA
Ames)

The original use of Cartesian grids involved solving the 2D full potential equation by [Purvis and
Burkhalter]115, followed shortly afterwards by [Wedan and South]116, in which a non-body-oriented
structured grid was created on which the full potential equation was solved. Their solution strategy
was to use finite volume techniques in order to more easily handle the computational cells that were
intersected by the solid surface. Additionally, they used linear approximations in the cut cells for the
reconstruction of the wall boundary conditions which provided a simple algorithm for
implementation and preserved the structure of their coefficient matrix during the solution iteration
so that no extra computational costs were incurred for the cut cells. However, this did not preserve
the actual body curvature and also only provided a linear approximation to the actual surface lengths
and area for the cut cells, and thus could not exactly model curved surfaces. Also, little mention was
made of any attempts at cell refinement to more accurately capture the surface geometry and flow
features. Earlier, [Clarke et al.]117 used Cartesian grids to solve the two-dimension Euler equations
(again on non-grid aligned surfaces). They attempted to more accurately model the solid surface
boundary conditions by utilizing the local surface curvature in reconstructing the wall boundary
conditions. They also provided more accurate modeling of the cut cell lengths and areas by using the
actual surface geometry in their calculations and not linear approximations. Additionally, they noted
that clustering was needed in certain critical regions in order to produce accurate results, and this
was achieved by clustering entire grid lines. Cut cells that were too small (less than 50% of the
original cell size) were merged with neighbor cells in order to avoid time stepping problems
associated with very small computational cells. [Gaffney and Hassan]118 extended this research to

115 J. W. Purvis and J. E. Burkhalter. Prediction of Critical Mach Number for Store Configurations. AIAA J.,1979.
116 B. Wedan and J. C. South, Jr. A Method for Solving the Transonic Full-Potential Equation for General
Configurations. In AIAA 6th Computational Fluid Dynamics Conference, Danvers, MA, July 1983. AIAA-83-1889.
117 D. K. Clarke, M.D. Salas, and H. A. Hassan. Euler Calculations for Multi element Airfoils Using Cartesian Grids.

AIAA Journal, 24(3):353-358, March 1986.


118 R. L. Gaffney, H. A. Hassan, and M.D. Salas. Euler Calculations for Wings Using Cartesian Grids. AIAA 25th

Aerospace Sciences Meeting, Reno, NV, January 1987. AIAA-87-0356.


96

3D. Figure 5.8 demonstrates the case


of cell merging.
5.6.2 Cartesian Grids Schemes
While the majority of research into
Cartesian grids has focused on solving
the Euler equations in 2-3 D, there has
been some efforts into the utilization
of Cartesian grids to solve the Navier-
Stokes equations. These efforts have
focused on solving the full N-S
equations using either the Adaptive
Mesh Refinement (AMR), Immersed Figure 5.8 Example of Merge Cell Creation – (Courtesy of
Boundary, Volume-of-Fluid, NASA Ames)
Reconstruction, Cut Cell Based
techniques, or Coupling Body-Fitted Grid solutions of the Navier-Stokes equations with a Cartesian
background grid. The Grid Coupling technique has its foundations in the idea of the viscous/inviscid
coupling. Cartesian grids do not, in general, provide grids that are body aligned, however some work
has been performed applying the thin-layer techniques to Cartesian grids. Hybrid Methods do exist
which couple a body oriented grid solving the thin-layer Navier-Stokes equations with a background
Cartesian grid119. A methodology by [Kawasaki]120 grid, which conducts automatic Cartesian based
grid generation with octree Adaptive Mesh Refinement, and with Layered grid near surface for
boundary layer. (see Figure 5.9). As an example, please see the wing section of HL CRM with full

Figure 5.9 Semi-Automatic Cartesian Mesh Generation with CFOW – Courtesy of Kawasaki

R. L. Meakin. On Adaptive Refinement and Overset Structured Grids. 13th AIAA, 1997.
119

Hidemasa Yasuda, Taku Nagata, Atsushi Tajima, Akio Ochi, “014 - KHI Contribution to GMGW-1”, Kawasaki
120

Heavy Industries, Ltd. With cooperation of Kawaju Gifu Engineering Co., Ltd., 1st Geometry and Mesh
Generation Workshop Denver, CO June 3-4, 2017.
97

gap meshing, as depicted in Figure 5.10 of the same project.


5.6.2.1 Adaptive Mesh Refinement (AMR)
[Berger and LeVeque]121 addressed several deficiencies that existed in the established uniform grid
methodologies. First, they applied the concept of Adaptive Mesh Refinement (AMR) in order to
improve the accuracy in critical regions without adversely affecting the efficiency of the numerical
integration scheme. The use of AMR effectively allowed the clustering of blocks of computational
grids as the solution process evolved only in the region that they were needed (and not clustering
entire grid lines), by using Richardson-type extrapolation error estimates to identify regions of large
errors and adding grid blocks in those regions.

Figure 5.10 Boundary-Fitted Layer Grid for Multi-Element Airfoil

An example of AMR is Figure


5.11 which represents a simple
adapted grid for a supersonic
wedge flow with four levels of
adaption. As can be seen in the
figure, there are more control
volumes where gradients are to
be expected, specifically along
the surface to capture the
geometry and along the oblique
shock. In regions with small
gradients, there is a lower
density of control volumes. Also
notice that in this figure there is
at most a 2:1 ratio at the
refinement interface, which is Figure 5.11 Example Adaptive Grid for Supersonic Wedge Flow –
typical of most A MR schemes, in (Courtesy of NASA Ames)
order to promote stability in the
numerical schemes.
One problem with [Berger and LeVeque's] original implementation of AMR on Cartesian grids was
the problem of state variable conservation during the AMR stages. They carefully constructed
conservative schemes for the inter-grid transfer to address the problem. They also used the idea of
wave propagation and directional differencing in order to increase the stability near the small
boundary cells. This helped keep the CFL of the boundary cells reasonably close to the CFL of the

121M. J. Berger and R. J. LeVeque. An Adaptive Cartesian Mesh Algorithm for the Euler Equations in Arbitrary
Geometries. 9th AIAA Computational Fluid Dynamics Conference, Buffalo, NY, June 1989. AIAA-89-1930-CP.
98

flow cells and allowed larger time steps to be taken with the solver remaining stable. Several
researchers have extended [Berger and LeVeque's] research into areas such as multigrid Cartesian
grids, higher accuracy flow solvers using more sophisticated flux approximations, time-accurate
unsteady flows, and a front tracking AMR scheme that attempted to track the discontinuities (such
as shocks) as the solution evolved in order to provide more accuracy in the refined mesh calculations.
According to recent investigation by [Hiroshi Abe ]122, Cartesian grid method fall into two
categories with the demand of accurate solutions. One keeps its structured grid nature and
introduces embedding structured sub grids within the underlying coarse structured grids.
Adaptive Mesh Refinement (AMR) is one of them. Figure 5.12 (a) shows an example of AMR in
two dimension. The intersected cells by a circle in the underlying coarse grids are tagged in blue. The
blue-tagged cells are to be refined. In the AMR procedure, several embedded rectangle patches are
defined so as to contain the blue tagged cells. Then, the embedded rectangle patch areas are refined.

(a) Intersecting meshes with a (b) 2D case of Adaptive


circle are tagged (blue) Cartesian grid method

Figure 5.12 Schematic image of Adaptive Mesh Refinement – (Courtesy of Hiroshi Abe)

The other considers the Cartesian mesh as an unstructured collection of h-refined meshes. The data
structure is not the same as structured grids but the same as unstructured grids. Adaptive Cartesian
grid method was introduced as an unstructured Cartesian grid method and has shown the great
success in simulating complex geometries. Figure 5.12 (a) shows a case of two dimensional
adaptive Cartesian grid method. Beginning with a root cell covering whole domain, the intersected
cells by the circle are recursively bisected. This simple procedure finally gives Figure 5.12 (b).
Further examples provided a 2D backward step (see Figure 5.13).

122Hiroshi Abe, “Blocked Adaptive Cartesian Grid FD-TD Method for Electromagnetic Field with Complex
Geometries”, International Conference on Modeling and Simulation Technology, Tokyo, JAPAN, 2011.
99

5.6.2.2 Immersed Boundary Methods


The immersed boundary method was originally developed by [Peskin]123-124 for heart valve
modeling using the Navier-Stokes equations in two dimensions. The heart valves were modeled as
flexible surfaces that can propagate with the flow, subject to certain limitations such as hinge points
or rigid regions on the surfaces. Instead of remeshing the computational domain as the surface is
propagated, the cells that contain the surface have a body force added to their momentum equations
that represents the reactive force that the body is applying to the fluid in response to the fluid surface
pressure and shear stress. [Goldstein et al.]125 applied [Peskin's] work to incompressible, solid body
flows using a force feedback approach. In this formulation, the surface force takes the form of a
feedback loop function that acts on the surface cell to bring the surface velocity to zero by adjusting
the applied forces appropriately. This approach requires an extremely small time step (CFL around
1-3) in order for it to remain stable.

Figure 5.13 Pressure Contours in 2D Backward Step

In order to more accurately determine the appropriate surface forces to add to the momentum
equations, [Fadlun et al.]126 developed a second-order boundary interpolation scheme for three
dimensional incompressible flows by using linear interpolation to reconstruct the state information
at the surface. This approach resulted in the use of larger time steps (CFL around 1.5) and better
accuracy at the surface. Further advances by [Lai and Peskin]127 developed second-order methods
for moving membranes. Additionally, [Kim et al.]128 developed a second-order method with both
momentum and mass sources in order to improve the overall accuracy of their results. While these

123 C. S. Peskin. Numerical Analysis of Blood Flow in the Heart. Journal of Computational Physics, 1977.
124 C. S. Peskin. The Fluid Dynamics of Heart Valves: Experimental, Theoretical, and Computational Methods.
Annual Review of Fluid Mechanics, 14:235-259, 1982.
125 D. Goldstein, R. Handler, and L. Sirovich. Modeling a No-Slip Flow Boundary with an External Force Field.

Journal of Computational Physics, 105(2):354-366, 1993.


126 E. A Fadlun, R. Verzicco, P. Orlandi, and J. Mohd-Yusof. Combined Immersed Boundary Finite-Difference

Methods for Three-Dimensional Complex. Journal of Computational Physics, 161(1):35-60, 2000.


127 M.-C. Lai and C. S. Peskin. An Immersed Boundary Method with Formal Second Order Accuracy and Reduced

Numerical Viscosity. Journal of Computational Physics, 160(12):705-719, 2000.


128 J. Kim, K. Kim, and H. Choi. An Immersed-Boundary Finite-Volume Method for Simulations of Flow in Complex

Geometries. Journal of Computational Physics, 171(1):132-150, 2001.


100

schemes handle the Navier-Stokes equations on Cartesian grids, they all suffer from numerical
stability problems that typically require numerical diffusion. Also, the surface is not sharply resolved,
and is typically smeared between 2 or 3 cells. This can cause problems when flow details are needed
near the surface.
5.6.2.3 Volume of Fluid Methods
Another approach to solving the Navier-Stokes equations on Cartesian grids is the volume of fluid
method. In this method, a scalar transport equation is solved in addition to the Navier-Stokes
equations. The scalar is a value between 0 and 1 that represents the volume fraction that the fluid (or
gas) occupies in that cell. The typical use of this scheme is free surface flows, where the scalar
represents the amount of the cell that the fluid occupies, and interfacial flows, where the scalar
represents the volume fraction that a species occupies in the cell.
[Hirt and Nichols]129 originally developed this method as part of an incompressible free-surface
Navier-Stokes solver. In order to retain the incompressible invariance in the transport equation,
strict mass conservation was required of the numerical solver. They also used a first order accurate
surface reconstruction technique which causes problems resolving the interface boundaries. The
volume of fluid schemes typically work well when the interface curvature is small with respect to the
surface modeling. Otherwise, artificial discontinuities can develop as well as the inability to resolve
the small scale features at the interfaces. Additionally, without accurate propagation of the scalar
transport equation and sophisticated schemes to resolve the interface boundaries, artificial mixing
can occur.
5.6.2.4 Reconstruction Schemes
Another class of schemes used to solve the Navier-Stokes equations on Cartesian grids are the
reconstruction based schemes. These have been proposed by [Ye et al.]130-131 and [Majumdar et al.]132.
These schemes are all based around the idea of interpolating the state information to the nodes in
the computational domain around the surface. [Ye et al.] have developed a two-dimensional
incompressible Navier-Stokes equation solver. The solver use the cell merging technique to eliminate
any surface cells that are smaller than 50% of their full size. Then, the state information for the faces
of the new cell are found by utilizing a linear-quadratic two-dimensional interpolation from the
surrounding cells. This technique results in a slow convergence of the pressure Poisson equation and
requires acceleration techniques. This technique has been extended to moving boundaries.
[Majumdar et al.] have developed two-dimensional, turbulent Reynolds Averaged Navier-Stokes
solver on uniform Cartesian grids. This solver uses interpolation polynomials in one and two
dimensions to reconstruct the state of the cells that are inside the body. Thus, the solution process is
performed over uniform cells at the surface. The interpolation process can cause numerical
instabilities due to the negative coefficients that can arise with certain interpolation polynomials.
5.6.2.5 Cut Cell Based Methods
[Fryrnier et al.]133 developed the first work in the application of the full Navier-Stokes equations on
Cartesian grids using the cut cell approach. The solution procedure was a straight-forward finite-

129 C. W. Hirt and B. D. Nichols. Volume of Fluid (VOF) Method for Dynamics of Free Boundaries. Journal of
Computational Physics, 39(1):201-221, 1981.
130 T. Ye, R. Mittal, H. S. Udaykumar, and W. Shyy. An Accurate Cartesian Grid Method for Viscous Incompressible

Flows with Complex Immersed Boundaries. Journal of Computational Physics, 156(2):209-240, 1999.
131 T. Ye, R. R. Mittal, H. S. Udaykumar, and W. Shyy. A Cartesian Grid Method for Viscous Incompressible Flows

with Complex Immersed Boundaries. In AIAA 3rd Weakly Ionized Gases Workshop, Norfolk, VA, November 1999.
132 S. Majumdar, G. Iaccarino, and P. Durbin. RANS Solvers with Adaptive Structured Boundary Non-Conforming

Grids. Annual Research Briefs 208782, Center for Turbulence Research, Stanford University, Stanford, CA, 2001.
133 P. D. Fryrnier, Jr., H. A. Hassan, and M.D. Salas. Navier-Stokes Calculations Using Cartesian Grids: I. Laminar

Flows. AIAA Journal, 26(10):1181-1188, October 1988.


101

volume approach with the Cartesian grids clustered using grid line. Their results demonstrated
strong dependencies on the smoothness of the surface grid where non-smooth surface grids
produced non-smooth skin-friction and surface pressure values. A large number of standard viscous
flux formulations for cut cell based schemes were analyzed to ascertain their accuracy and positivity
characteristics. These viscous flux formulations fell into two categories:

1. Green-Gauss reconstructions where the divergence theorem was applied to cells neighboring
the face that the flux was being calculated to build the integration path,
2. polynomial based reconstructions that used a Lagrange polynomial and a set of support cells
to interpolate the state variables where they were needed with the polynomial being
differentiated to obtain the needed gradients.

This research focused on the accuracy of the various formulations via a standard Taylor series
approximation analysis and on the positivity of the formulations. The positivity is a measure of how
well the discretization satisfies the local maximum principle that holds for all homogeneous, second
order partial differential equations (PDEs). The local maximum principle simply states that the
solution to a homogeneous, second order PDE at one point is bounded by the values of its neighbors.
It is a statement of the diffusive nature of second order PDEs, and thus it is a necessary requirement
for any discretization of a homogeneous, second order PDE. The results of this effort were that all of
the schemes demonstrated (to some degree) a competition between the accuracy of the scheme and
the viscous stencil positivity for non-uniform cells, i.e. any attempt to improve the
accuracy/positivity adversely effected the resulting positivity/accuracy.
The resulting numerical analysis was performed for low to moderate Reynolds number flows. Cases
where the surface was predominantly aligned with the coordinate directions showed excellent
agreement with theoretical values, but when the body was not aligned with the coordinate directions
(thus, the surface had cut cells of varying volume fractions of the uncut cells) large oscillations
occurred in the results due to the sensitivity of the viscous stencil to the grid smoothness (for both
cut cells and coarse/fine cell interfaces). Another impediment to utilizing this scheme for high
Reynolds number flows was the large number
of control volumes needed to adequately
resolve the viscous regions. Even with AMR
this became prohibitively large for even
moderately complex geometries. In addition
to the viscous flux formulation results, AMR
was applied to Coirier's solution strategies
with a positive effect, but without fully
eliminating the viscous stencil sensitivity on
the cut cell smoothness. Another approach
that was discussed was the use of embedded,
body oriented grids to capture the boundary
layers, but no numerical results were given.
5.6.2.6 Chimera Grid Schemes
The use of a collection of grids to cover the
computational domain is known as chimera
gridding. Typically, a body-oriented
structured grid is used around each
component of the solid surfaces. Each of these Figure 5.14 Example Chimera Grid Near Curved
structured grids are then overlaid onto a Surface (Courtesy of NASA Ames)
background Cartesian mesh. Figure 5.14
102

shows an example of a two-dimensional chimera grid collection around a simple curved surface.
Notice that there is no simple mapping of cells in the body oriented grid and the background
Cartesian grid. This feature is one of the drawbacks to chimera gridding schemes, but it is only a
performance penalty when the grid needs to be generated during initialization and after any AMR
processes.
The development of chimera gridding schemes were not solely founded in the viscous/inviscid
coupling problems, but chimera gridding schemes were applicable to that use. Throughout the
history of chimera gridding there have been a number of motivations for their investigation such as
increasing grid point resolution near solid bodies, overcoming structured gridding issues associated
with modeling complex geometries. [Atta]134 developed one of the first uses of chimera grids for the
full potential equation in two-dimensions using a finite difference formulation. A uniform Cartesian
grid was used for the background grid and a body-fitted 0-type structured grid was used around the
body. The two grids were coupled via boundary information exchanges during the iteration process.
First, the solution around the body fitted grid was converged through an outer iteration using a
Dirichlet boundary condition imposed on the outer boundary. Next, the outer grid was converged
using a Neumann boundary condition on the inner boundary, utilizing the solution information from
the body solution. This information was then used to converge the body fitted grid once again. This
cycle continued until the solution approached steady-state.
This procedure required each grid (body and background) to have at least one complete cell inside
the domain of the other, with the inner grid having an extent of between 1 and 3 chord lengths in all
directions. Significant effort was needed to minimize the overlapping region in order to achieve
optimal performance. [Atta] later extended this methodology to three-dimensions as well as more
complex configurations. [Steger et al.]135 developed a finite-difference chimera grid scheme that
could handle a much larger variety of configurations compared to Atta's work. While limited to two-
dimensions, they presented results for an airfoil-flap, cascading blades, a non-lifting bi-plane and an
inlet with center body configuration. All of these configurations were handled automatically by their
solver with little changes to the standard finite-difference formulations. State variables were
exchanged between grids through interpolations which can cause performance penalties in the
initialization stages when the connectivity is being constructed, but they addressed this by using the
"stencil-walk" search pattern, where the cells that are used for the interpolation of one cell are
assumed to be close to the cells that are needed for the interpolation of that cell's neighbors.
5.6.2.7 Hybrid Grid Schemes
Another approach that was related to the chimera grid approach was the use of unstructured
grids between the body surface and the background Cartesian mesh, as opposed to the
overlaying of these grids. These schemes were usually referred to as hybrid grid techniques.
Figure 5.15 demonstrates an example hybrid grid around a curved surface in two dimensions. One
application of a hybrid scheme known as SPLITFLOW, by Karman136 and enhanced by [Domel and
Karmen]137, used Cartesian grids for the majority of the computational domain, and prismatic grids
to resolve the boundary layers. Standard Cartesian grid cutting techniques were used at the interface
between the prismatic grids and the Cartesian grid. The prismatic cells were grown from the surface

134 E. Atta. Component-Adaptive Grid Interfacing. In 19th Aerospace Sciences Meeting, St. Louis, MO, January
1981. AIAA-81-0382.
135 J. L. Steger, F. C. Dougherty, and J. A. Benek. A Chimera Grid Scheme. InK. N. Ghia and U. Ghia, editors,

Advances in Grid Generation, Presented at the Applied Mechanics, Bioengineering, and Fluids Engineering
Conference, volume 5, pages 59-69. The Fluid Engineering Division, ASME, Houston, TX, June 1983.
136 S. L. Karman, Jr. SPLITFLOW: A 3D Unstructured Cartesian/Prismatic Grid CFD Code for Complex

Geometries. In 33rd Aerospace Sciences Meeting and Exhibit, Reno, NV, January 1995. AIAA. AIAA-95-0343.
137 N. D. Domel and S, T-. Karman, Jr. Splitfow: Progress in 3D CFD with Cartesian Omni-tree Grids for Complex

Geometries. AIAA 38th Aerospace Sciences Meeting & Exhibit, Reno, NV, January 2000. AIAA-2000-1006.
103

triangulation using a marching layers technique. The difficulties was addressed that could arise in
the prismatic-Cartesian technique near convex regions, overlapping regions, and other regions
where the prismatic marching technique needed to be modified to create viable grids.
Other Related Method Similar to the
reconstruction method is the class of
finite element solution techniques called
element-free Galerkin methods.
Originally developed by [Belytschko et
al.]138 for elasticity and heat conduction
problems, it is currently being
investigated for its applicability to fluid
dynamics because of its automated
handling of grid generation. The basic
premise of this method is the use of
polynomial curve fits to approximately
represent the data surrounding the node
of interest. Typically, a least-squares
error minimization is used due to the
larger number of data points surrounding
the node than the number of unknowns in
the curve fit. Most implementations
demonstrate oscillations near sharp
gradients ( especially with higher-order
interpolation functions) with more Figure 5.15 Example Hybrid Grid Near Curved Surface –
research needed to developing effective (Courtesy of NASA Ames)
limiters.
Another scheme related to the reconstruction method that is the grid-less method. This method uses
a cloud of points to reconstruct a polynomial curve fit (similar to the element-free Galerkin method)
using a least-squares error minimization. These curve fits are then used to calculate the derivatives
required to solve the Navier-Stokes equations in differential form. The number of calculations per
node is higher than for other techniques due to the large number of least-squares fits that are
required. Unfortunately, this scheme does is not conservative and requires numerical dissipation in
order to obtain a solution. Other researchers have extended this work, but without addressing the
conservation problem.
5.6.2.7.1 Composite Grid Approach
Composite grid generation approach is based on meshing of given arbitrary domain by geometric
union of lower level grids built in more primitive domains. Advantages of such approach are the
simplicity of meshing domains with complicated geometry and convenient definition of appropriate
mesh refinement. Furthermore, resulting grid is partly structured and this feature can be utilized
for building robust numerical solution schemes. The methodology includes three basic steps:
1. constructing structured prototype grids,
2. mapping these grids to non-regular geometry (if necessary) and
3. final superposition of low level grids into the final one.
The procedure are outlined in Figure 5.16 and discussed in details139.

138 T. Belytschko, Y. Y. Lu, and L. Gu. Element-Free Galerkin Methods. International Journal for Numerical
Methods in Engineering, 37(2):229-256, January 1994.
139 E I Kalinin1, A B Mazo1 and S A Isaev, “Composite mesh generator for CFD problems”, 11th International

Conference on "Mesh methods for boundary-value problems and applications" IOP Publishing, IOP Conf. Series:
Materials Science and Engineering 158 (2016) 012047 doi:10.1088/1757-899X/158/1/012047.
104

Figure 5.16 Basic Superposition Example – (Courtesy of Kalinin, Mazo and Isaev)

5.6.3 Discussion
It is generally accepted that a boundary conforming mesh is desirable to achieve accurate solutions
from any numerical solver. If one is willing to sacrifice this requirement then mesh generation
becomes a much simpler task. No approach beats regular structured grids in terms of efficiency
and accuracy. Thus, there have been a number of efforts to use such grids for complex geometries
which are called Cartesian grid approach. An early example of a non-aligned Cartesian mesh can
be found in the work of [Carlson]140. Difficulties arise at the boundary where the Cartesian mesh
intersects the boundary surface. Although finite difference methods can be derived to interpolate

Carlson LA. Transonic Airfoil Analysis and Design Using Cartesian Coordinates. AIAA 2nd computational fluid
140

dynamics conference, Hartford, CT, June 1975.p. 175–83.


105

the boundary conditions onto the nearest mesh points, it is difficult to ensure solution accuracy. If
extra points are inserted, however, where mesh lines intersect the surface then it is possible to create
a boundary conforming mesh. In this respect, boundary conforming Cartesian methods are seen to
be closely related to the Octree based triangulation methods. In fact, the elements obtained from the
Octree and its intersection with the boundaries is precisely the elements that make up the Cartesian
mesh. Conversely, any Cartesian mesh can be converted into an Octree type triangulation by splitting
all elements into tetrahedral (or triangles in 2D).
Most of the elements in a Cartesian mesh will be hexahedra although the elements adjacent to the
surface can be expected to assume a variety of polyhedral shapes depending on the way in which an
Octree hexahedron intersects any given region of the boundary surface. A Cartesian mesh is
therefore well suited for use by a finite volume or finite element method that can accept arbitrarily
shaped elements. This approach has been developed extensively by [Aftosmis et al.]141. Given the
close affinity between Cartesian meshes and Octree based triangulations it is to be expected that they
share the same advantages and limitations. In particular, the problems of correctly finding the
intersection between the Cartesian/Octree mesh and the boundary surface, identifying the element
shapes for the intersected Cartesian cells and adequately refining the mesh near small boundary
features, are substantial. Cartesian mesh methods also suffer from the drawback that the surface
discretization is not known beforehand and it is therefore often difficult to ensure good surface mesh
quality. On the plus side, since the surface discretization is a by-product of the volume discretization,
it is possible to generate meshes around highly complex geometries without the need for carefully
crafted surface meshes. In fact, the surface definition can be obtained directly from the CAD
description provided there is a utility to determine the intersection of given line with the surface.
Cartesian and Octree based mesh generation methods thus circumvent the need for the prior
creation of a surface mesh, a significant advantage if a fast turnaround time in going from design
prototype to flow solution is desired. Figure 5.17 shows a Cartesian grid on a generic airplane
configuration.

Figure 5.17 Example of Cartesian Grid on a Generic Airplane – (Source: Richard Smith 1996)

141 Aftosmis MJ, Berger MJ, Melton JE. ,”Robust and efficient Cartesian mesh generation for component-based
Geometry”, AIAA J 1998; 36:952–60.
106

5.7 Octree Decomposition


In 2D this procedure can be viewed as a division of the domain into a collection of rectangles followed
by a division of rectangles into triangles. A rectangle can be further subdivided into four new
rectangles. For a rectangle that intersects the boundary, this subdivision can be repeated until a
sufficiently fine resolution has been achieved. Rectangles that intersect the boundary and are
sufficiently small are then replaced by a polygon consisting of the part of the rectangle lying inside
the domain together with the part of the boundary that lies inside the rectangle. Figure 5.18 (a)
shows a schematic that illustrates the concept of an Octree decomposition of the space around an
airfoil. A further division of rectangles and boundary polygons into triangles creates a valid
triangulation of the domain (see Figure 5.18 (b)). The concept generalizes in an obvious way to
three dimensions although the cutting procedure at the boundaries becomes much more
complicated. The main drawback of Octree based triangulation methods is their inability to match a
prescribed surface triangulation since the surface triangulation arises as a byproduct of the volume
meshing procedure.

a b

Figure 5.18 Converging of an Octree Decomposition Around an Airfoil

The size of the individual Octree components and hence the size of the tetrahedral elements in the
near field can be tailored to match the variation in surface curvature. But the quality of elements
adjacent to the boundary surface and likewise the quality of the surface triangulation can be very
poor. This can be a considerable handicap since an accurate implementation of the boundary
conditions often requires a good quality mesh near the boundary. For high Reynolds number
Navier Stokes computations, which must capture the flow details inside thin boundary layers,
the lack of a good quality mesh near a boundary causes considerable difficulties. One way to
alleviate these problems is to build a good quality mesh in the near field by extrusion of hexahedra,
prisms or tetrahedral off the boundary surface and then merge this extruded mesh with an Octree
based mesh at a position that is some way off the boundary 142,143. It is best when creating an octree
mesh to do the following:

142 Karman SL, “SPLITFLOW: a 3-D unstructured Cartesian/prismatic grid CFD code for complex geometries”,
AIAA 33rd aerospace sciences meeting, Reno, NV. AIAA paper 95-0853, 1995.
143 Shaw JA, Stokes S, Lucking MA, “The rapid and robust generation of efficient hybrid grids for rans simulations

over complete aircraft”, International Journal Numeric Method Fluids 2003; 43:785–820.
107

• Perform volume meshing


• Improve the quality of the
volume mesh using Edit
Mesh options
• Create prism layers for
boundary layer near the
walls
• Improve the total mesh
quality using Edit Mesh
options.

The paper by [Mar´echal]144


presents advances made in terms of
sharp angles meshing, non-
manifold geometries, based on all-
hexahedral mesh. An example
showing sharp feature is revealed
on Figure 5.19.

5.8 Overset Meshes


There are several variants of multi-
Figure 5.19 A close-up view of Nasty Cheese a well-known
block depending on whether or not
test-case featuring 30◦ Dihedral angles – (Courtesy’s of
continuity of mesh lines is [Mar´echal])
maintained across the block
boundaries. Overset methods
represent one extreme where no
attempt is made to match meshes
from neighboring blocks. Figure
5.20 shows a combination of two
overset meshes, an O-mesh
around an airfoil plus an H-mesh
for the far field. First suggested by
[Atta]145 the overset approach
was extensively developed by
[Benek et al.]146 with later
contributions by [Chesshire and
Henshaw]147. The lack of any
constraint at the block
boundaries means that mesh
generation for the individual
Figure 5.20 Overset Mesh Combination
blocks is much easier. In
particular, there is no a priori

144 Lo¨ıc Mar´echal, “Mesh Generation: Handling Sharp Features”, Gamma project, I.N.R.I.A., Rocquencourt,
78153 Le Chesnay, France.
145 Atta E. Component–adaptive grid interfacing. AIAA19th aerospace sciences meeting. AIAA paper 81-0382.
146 Benek JA, Buning PG, Steger JL. “A 3-D Chimera grid embedding technique”. AIAA 7th CFD conference,

Cincinnati, OH. AIAA paper 85-1523, 1985.


147 Chesshire G, Henshaw WD,”Composite overlapping meshes for the solution of partial differential equations.”

Journal of Computational Phys. 1990; 90:1–64.


108

need to create block interfaces and this advantage has facilitated the early application of the overset
approach to complicated geometries. Another advantage of permitting such a loose connection
between neighboring meshes is the possibility of treating moving body problems (e.g. store
separation). The penalty for these advantages lies in the need to transfer information between
neighboring meshes. This requires a means of determining an appropriate overlap region and the
development of interpolation formulae to ensure accurate data transfer.
Overset meshes are also known as Chimera or overlapping meshes. An overset mesh typically
containing a body of interest such as a boat or a gear, superimposed on a background mesh
containing the surrounding
geometry. The data is interpolated
between them148. This approach
allows complex motion and moving
parts to be easily set up and
simulated. Overset meshes typically
involve a background mesh
adapted to the environment and
one or more overset grids attached
to bodies, overlapping with the
background mesh. Multiple
overlapping overset regions are
also possible, expanding the
potential applications of this
technology. Data interpolation
occurs between the grids, which
can move with respect to one
another. They are most useful in
simulating multiple or moving
bodies, as well as parametric Figure 5.21 Two Counter-Rotating Objects Embedded in Two
studies and optimization analyses. Overset Regions with Background Mesh – (Courtesy of Siemens)
By allowing the overset body to
move and also be replaced as many times as needed with different geometry, this technology truly
brings multidisciplinary design exploration to the fingertips of engineers and designers. (see Figure
5.21).

148 Siemens PLM Software www.siemens.com/plm, 2016.


109

6 Un-Structured Mesh Generation II


The 1980s was witnessed the rapid development of alternative meshing techniques. The most
prominent of these are the unstructured methods based on triangles in 2D and tetrahedral in 3D.
Some of the earliest ideas for generating triangular meshes over planar regions can be found in a
review by [Thacker]149. It is interesting to note that until the mid-1980s little effort had been applied
to the problem of computing aerodynamic flow fields on meshes of triangles or tetrahedral. The first
attempts to solve the flow around a complete aircraft by means of a finite element solution on a
tetrahedral mesh are described in the papers of [Bristeau et al.] and [ Jameson et al.]. There are three
essentially different approaches to generating triangular or tetrahedral meshes, the Moving
(Advancing) front technique150, Delaunay base methods151,152,153 and the Octree approach154.
Moving front and Delaunay based methods create a triangulation that matches a prescribed
boundary (a specified set of points and edges in 2D, a specified set of points and triangular faces in
3D). The Octree method, however, determines the boundary discretization as part of the domain
meshing procedure and is thus closely related to the Cartesian approach. Each method is discussed
below.

6.1 Advancing Front Method


This technique has the virtue of
starting from a prescribed boundary
definition (set of edges in 2D, set of
triangular faces in 3D) which remains
intact throughout the mesh
generation process. The boundary
triangulation is regarded as a front
on which a new layer of elements is
built. The original front triangles
become interior faces of the mesh
and a new set of front faces is created,
a process that continues until the
entire domain has been filled. A
particular difficulty of this method
occurs in the closing stages when the
front is collapsing on itself and the
last vestiges of empty space are Figure 6.1 Closing stage of a Moving Front Method
replaced by new elements. This is
illustrated in Figure 6.1 which demonstrations an almost completed triangulation of the region
around an airfoil with the edges on the current front marked in bold. In practice, there is rarely any
difficulty in completing the process for a planar triangulation. In three dimensions, however, the

149 Thacker WC. A brief review of techniques for generating irregular computational grids. Intentional Journal
Numerical Meth Eng. 1980; 15:1335–41.
150 Lo SH. A new mesh generation scheme for arbitrary planar domains. Int J Numer Meth Eng 1985;21:1403–2
151 Baker TJ. Three dimensional mesh generation by triangulation of arbitrary point sets, AIAA 8th CFD

conference. Honolulu, HI. AIAA paper 87-1124, 1987.


152 Weatherill NP. , “A method for generating irregular computational grids in multiply connected planar

domains”, International Journal Number Meth Fluids 1988; 8:181–97.


153 George PL, Hecht F, Saltel E. Constraint of the boundary and automatic mesh generation. Proceedings of the

second international conference on num grid gen comp fluid dyn, Miami, FL, 1988. p. 589–97.
154 YerryMA, Shephard MS., “Automatic three-dimensional mesh generation by the modified Octree technique”,

International J Numerical Meth Engineering 1984; 20:1965–90.


110

remaining region of space can have an extremely complicated shape which may not yield to an
acceptable covering by tetrahedral elements, thus preventing the volume triangulation from filling
the entire region to be meshed.
The basic methodology is based on action performed for a certain boundary image as described by
geometric rules or tests. These rules (2D and 3D) are to optimize the shape of the new element in
the advancing front method. Each methodology depends on these rule, its complexity, and how they
been applied. Therefore, the algorithm has to check the rules stored in data structures. The code
complexity is independent of the number of rules. The algorithm is complicated, but well defined and
can be, at least theoretically, implemented failsafe. Especially in 3D, the choice of the concrete rules
is based on heuristics, which is put into an easily maintainable rule description data-base155.
6.1.1 Advancing Front Triangular Mesh Generator
The original advancing front algorithm has been developed over time into a family of programs which
are very reliable and flexible for an easy incorporation of mesh adaptation156. The advancing front
mesh generator can be described as .

➢ Input of geometric data (using control points);


➢ Input of mesh control parameters (through a background mesh);
➢ Geometric modeling (using cubic splines);
➢ Boundary discretization (placing new points on the boundary);
➢ Domain discretization (simultaneously generating points and triangles);
➢ Mesh quality enhancement (through topological and geometrical strategies).

The computational domain is modeled through the use of cubic splines which are defined by some
control points. Close to singularities extra care must be taken in the definition of these points in order
to avoid failure (Thompson et al., 1999). As
a “pre-processing” stage, before the mesh
generation begins, we must first build an
initial and very coarse triangular
background mesh that covers the whole
domain. This coarser mesh is used only to
provide a piecewise linear spatial
distribution of the nodal parameters over
the mesh to be constructed. Typically,
elements of the generated mesh will have
a projected length of δ2 in the direction
parallel to α2 a and a projected length of St
δ2 in the direction normal to α2 a (see
Figure 6.2), with St being the stretching
factor. During the generation process, the
local values of these parameters will be
obtained by a linear interpolation over the
triangles of the background mesh. Figure 6.2 Mesh Parameters
The boundary of the domain is
represented by the union of boundary segments forming closed loops. External boundaries are

155 Joachim Sch¨ober, “NETGEN An advancing front 2D/3D-mesh generator based on abstract rules”, Computing
and Visualization in Science, 1:41–52 (1997).
156 Paulo Roberto M. Lyra, Darlan Karlo E. de Carvalho, “A Computational Methodology for Automatic Two-

Dimensional Anisotropic Mesh Generation and Adaptation”, Methodology for Automatic Two-Dimensional
Anisotropic Mesh Generation and Adaptation.
111

defined in an anti-clockwise fashion while inner boundaries are set in a clockwise manner. As
described previously, the generation of a triangular mesh by the advancing front technique begins by
the discretization of the boundary of the domain. New points are created according to the mesh
parameters which are interpolated from those of the background mesh. At the beginning of the
process, the generation front is made by a set of linear segments connecting the boundary nodes.
With the initial front defined, one segment is chosen and, in general, a triangle is created through the
insertion of an internal node or by simply connecting existing nodes. New triangles are built following
the same procedure. During the process any segment available to build a new triangle is set as
“active” and the others which are set as “non-active” are removed from the generation front.
Therefore the boundary segments are not modified during the mesh generation. The procedure
continues until the whole domain is discretized. When solving problems which develop some
essentially one dimensional features at certain regions (e.g. boundary layer, shocks, etc.) it is not very
efficient to use uniform isotropic meshes. In these cases, it is important to have the
possibility to define a direction and a stretching factor for the elements close to such regions. At least
for linear triangular elements, the use of anisotropic meshes can be extremely important in terms of
computational effort and accuracy. To generate an anisotropic triangulation of the desired domain,
it is used a transformation T which is a function of the mesh parameters, i.e. αi , i = 1, 2. This
transformation157, is given by,

N
1
T(αi , δi ) =  (αi  α i ) Eq. 6.1
i =1 δ i

where x denotes the tensor product of two vectors and N is the number of dimensions, here, N = 2.
The effect of this transformation is to map the physical domain into a normalized domain, where a
mesh is generated in which the elements are approximately equilateral with unit average size.
Applying the inverse of this transformation T-1,
we end up with a directional stretched mesh
dictated by the mesh parameters, which are
defined either by the analyst or by the mesh
adaptive procedure. This mesh generator
provides an accurate geometric modeling and
high quality meshes, where the high level of
control of the distribution of local mesh
parameters eases the incorporation of mesh
adaptation strategies. The quality of the meshes is
strongly influenced by the mesh optimization
stage. A specific mesh improvement strategy for
highly anisotropic meshes and the definition of an
adequate sequence of mesh enhancement
procedures are incorporated into the code.
Several other modifications have been introduced
in the original code in order to incorporate the
flexibility to deal with predefined multi-domains
and automatically defined sub-regions, to build Figure 6.3 Surface Mesh of SGI Logo
boundary layer meshes, to make possible
generating quadrilateral and mixed meshes and

157Peiró, J., Peraire, J. and Morgan, K., 1994, “{FELISA SYSTEM}: Reference Manual Part1 - Basic Theory”,
University of Wales Swansea Report CR/821/94.
112

the automatic definition of which domains or sub-regions should be filled up by triangular or by


quadrilateral elements. These features will be fully described in the correspondent sections. Figure
6.3 shows an triangulation of SGI logo by [Rypl and Bittnar].
6.1.2 Advancing Front Quadrilateral Meshing Using Triangle Transformations
Quad-morphing is a new technique used for generating quadrilaterals from an existing triangle mesh.
Beginning with an initial triangulation, triangles are systematically transformed and combined. An
advancing front method is used to determine the order of transformations. An all-quadrilateral mesh
containing elements aligned with the area boundaries with few irregular internal nodes can be
generated. [see Owen et al.]158. Quad-morphing is briefly outlined in the following steps:
6.1.2.1 Initial Triangle Mesh
The surface is first triangulated. This may be done using any surface triangulation method. Any sizing
(Owen,1997) or adaptively information should be built into the initial triangulation. The local sizing
for the final quadrilateral mesh will roughly follow that of the triangle mesh.
6.1.2.2 Front Edge Classification
The initial front is defined from the initial triangle mesh. Any edge in the triangulation that is adjacent
to only one triangle becomes part of the initial front. Each edge in the front is initially sorted
according to its state. The state of a front edge defines how the edge will eventually be used in
forming a quadrilateral. Angles between adjacent front edges determine the state of an individual
front. Front edges will be updated and reshuffled as the algorithm proceeds. Figure 6.4 shows the
four possible states of a front, where the front edge is indicated by the bold line.

Figure 6.4 States of a Front Edge – (Courtesy of Owen et al.)

6.1.2.3 Front Edge Processing


Each front edge is individually processed to create a new quadrilateral from the triangles in the initial
mesh. Figure 6.5 (a) shows front NA-NB in the triangulation ready to be processed. Front edges are
handled differently according to their current state classification. As quadrilaterals are formed, the
front is redefined and adjacent front edge states are updated. The current front always defines the
interface between quadrilateral elements in the final mesh and triangle elements in the initial
triangle mesh. This process can be further subdivided into the following sub-steps:

➢ Check for Special Cases. Before proceeding to construct a quadrilateral from the current
front, several special case scenarios are checked. These include situations where large
transitions or small angles exist local to the front. In these cases a seam, or transition seam
operation is performed.

158Steven J. Owen, Matthew. Staten, Scott A. Canann and Sunil Saigal, “Advancing Front Quadrilateral Meshing
Using Triangle Transformations”, Conference Paper · January 1998.
113

➢ Side Edge Definition. Using the front edge as the initial base edge of the quadrilateral, side
edges are defined. Side edges may be defined by using an existing edge in the initial triangle
mesh, by swapping the diagonal of adjacent triangles, or by splitting triangles to create a new
edge. In Figure 6.5 (b), side edge NB-NC shows the use of an existing edge, while the side
edge NA-ND was formed from a local swap operation.

➢ Top Edge Recovery. The final edge on the quadrilateral is created by an edge recovery
process. During this process, the local triangulation is modified by using local edge swaps to
enforce an edge between the two nodes at the ends of the two side edges. Edge NC-ND in
Figure 6.5 (c) was formed from a single swap operation. Any number of swaps may be
required to form the top edge.

➢ Quadrilateral Formation. Merging any triangles bounded by the front edge and the newly
created side edges and top edge as shown in Figure 6.5 (d) forms the final quadrilateral.

➢ Local Smoothing. The mesh is smoothed locally to improve both quadrilateral and triangle
element quality as shown in Figure 6.5 (e).

➢ Local Front Reclassification. The front is advanced by removing edges from the front that
have two quadrilateral adjacencies and adding edges to the front that have one triangle and
one quadrilateral adjacency. New front edges are classified by state. Existing fronts that may
have been adjusted in the smoothing process are reclassified.

Front edge processing continues until all edges on the front have been depleted, in which case an all
quadrilateral mesh will remain, assuming an even number of initial front edges. When an odd number
of boundary intervals is provided, a single triangle must be generated, usually towards the interior
of the mesh.

Figure 6.5 Steps demonstrating process of generating a quadrilateral from Front NA-NB - (Courtesy of
Owen et al.)
114

6.1.2.4 Topological Clean-Up and Final Smoothing Process


Element quality is improved by performing local quadrilateral transformations in an attempt to
improve the individual edge valences at the nodes of the mesh. A final smoothing pass is performed
further improving the element qualities. The final smoothing step involves a limited number of
iterations of a constrained Laplacian smoothing algorithm. Each node is moved to the centroid of its
neighbors only if an improvement in element shape metric (Lee,1994) would result. In situations
where Laplacian smoothing produces poor results, an optimization based smoothing (Canann,1998)
operation may be performed.
6.1.2.5 Example Problems
The first example, shown in Figure 6.6, demonstrates the progression of the Q-Morph algorithm on
a simple planar domain with two holes. Figure 6.6 (a) shows the initial triangle mesh before Q-
Morph begins. In this case an advancing front triangle meshed (Canann,1997) was used to create the
triangles. The method used for triangulation is unimportant, inasmuch as the appropriate nodal
density is provided. Figure 6.6 (b)-(g) show the progression of the algorithm as each successive
layer of elements is completed. Figure 6.6 (c) shows an additional layer of small elements meshed
on the internal circle loop before meshing the larger elements of the outer loop. To improve element
transitions, provision is made in Q-Morph to mesh loops with smaller elements before those with
larger elements. The mesh is completed in Figure 6.6 (h) after a final pass of cleanup and smoothing.

Figure 6.6 Progression of Q-Morph- (Courtesy of Owen et al.)

Figure 6.9 and compares Q-Morph against Lee’s (1994) quad meshing algorithm, which uses an
indirect method, coupled with an advancing front scheme to combine triangles into quadrilaterals.
115

The toroidal surface of Figure 6.7 is composed of four surface patches represented as rational B-
Splines. Q Morph utilizes projection and geometric evaluation routines as part of the local and final
smoothing procedures to maintain nodal locations on the three-dimensional surface. Both Figure
6.7 (a) and (b) were generated using the same initial triangle mesh as well as the same cleanup and
smoothing procedures. Despite using an advancing front scheme, Lee’s algorithm shown in Figure
6.7 (b), has difficulty maintaining well-aligned rows of elements introducing many irregular internal
nodes.

Figure 6.7 Results of Q-Morph Compared with Lee’s (1994) Advancing Front Indirect
Method on Toroidal Surface- (Courtesy of Owen et al.)

Figure 6.9 further illustrates the ability of the Q-Morph algorithm to generate well-aligned rows of
elements parallel to a complex domain boundary, while still maintaining the required element size
transitions. Figure 6.8 demonstrates the use of Q-Morph with a planar surface requiring a high
degree of transition. Figure 6.8 (a) shows the partially completed quad mesh with two layers of
quads placed. Figure 6.8 (b) shows the same area after final cleanup and smoothing. In order to
maintain a specified nodal density near the top of the area, a sizing function (Owen,1997) was used
during the triangle meshing process. The algorithm’s ability to maintain the desired mesh density
while still enforcing well-aligned rows of elements transitioning quickly to larger size elements is
demonstrated in this example. For further and complete analysis, please consult the work by [Owen
et al.]159.

159Steven J. Owen, Matthew. Staten, Scott A. Canann and Sunil Saigal, “Advancing Front Quadrilateral Meshing
Using Triangle Transformations”, Conference Paper · January 1998.
116

Figure 6.9 Comparison of Q-Morph with Lee’s Algorithm Illustrating Element Boundary
Alignment - (Courtesy of Owen et al.)

Figure 6.8 Large Transition Mesh for CFD Application - (Courtesy of Owen et al.)
117

6.1.2.6 Conclusion
The Q-Morph algorithm is an indirect quadrilateral meshing algorithm that utilizes an advancing
front approach to transform triangles into quadrilaterals. It generates an all-quadrilateral mesh,
provided the number of intervals on the boundary is even. The resulting mesh has few irregular
internal nodes and produces elements whose contours, in general, follow the boundary of the
domain. Overall element quality is excellent. The Q-Morph algorithm borrows many of its techniques
from the paving method (Blacker,1991; Cass,1996) but adapts them for use as an indirect method,
operating on an existing set of triangles. In so doing, it is able to improve upon the paving technique
by resolving some of its inherent difficulties. The intersection problem, common to most direct
methods of advancing front meshing, is eliminated by relying on the topology of the initial triangle
mesh to close opposing fronts. Improvements also include facility for handling individual element
placement through the use of states for classifying front edges. Facility for handling transition in
element sizes has also been addressed through the use of sizing information provided by the initial
triangle mesh and the definition of specific transformations that enable improved mesh transitions.
Additionally, the initial triangle mesh provides information that reduces the cost of direct evaluations
on three dimensional surface geometry.

6.2 Delaunay Triangulation Method


Delaunay triangulation for a given set of discrete points in a plane is a triangulation such that no point
in is inside the circumcircle of any triangle in. Delaunay triangulations maximize the minimum angle
of all the angles of the triangles in the triangulation; they tend to avoid sliver triangles. The
triangulation is named after [Boris Delaunay]160 for his work on this topic. For a set of points on the
same line there is no Delaunay triangulation (the notion of triangulation is degenerate for this case).
For four or more points on the same circle (e.g., the vertices of a rectangle) the Delaunay triangulation
is not unique: each of the two possible triangulations that split the quadrangle into two triangles
satisfies the "Delaunay condition", i.e., the requirement that the circumcircles of all triangles have
empty interiors. By considering circumscribed spheres, the notion of Delaunay triangulation extends
to three and higher dimensions. Generalizations are possible to metrics other than Euclidean
distance. However, in these cases a Delaunay triangulation is not guaranteed to exist or be unique161.
The Delaunay triangulation of a discrete point set points in general position corresponds to the dual
graph of the Voronoi diagram for the same points, as revealed in Error! Reference source not f
ound.. Special cases include the existence of three points on a line and four points on circle.
6.2.1 Properties of Delaunay Triangulation162
Definition 1. The Delaunay triangulation (DT) of a finite set of points S in R3, denoted as D(S), is a
triangulation with a special property that no point of S lies in the interior of the circumsphere of any
tetrahedron of D(S). The special property of the Delaunay triangulation is called empty circle
property in R2 and empty sphere property in R3. This definition of Delaunay triangulation can be
generalized to any higher dimension.
Definition 2. A simplex s of the Delaunay triangulation D(S) is said to be Delaunay if there exists an
empty circumsphere of s.
From the definition of circum-sphere of a triangulation, it follows that every k-simplex of D(S) has an
empty circum-sphere. If k = d, then the circum-sphere of s is unique, else s has infinitely many circum-
spheres.

160 Delaunay, Boris (1934). "Sur la sphère vide". Bulletin de l'Académie des Sciences de l'URSS, Classe des
sciences mathématiques et naturelles. 6: 793–800.
161 From Wikipedia, the free encyclopedia.
162 Ashwin Nanjappa, “Delaunay Triangulation In R3 on The Gpu”, A Thesis Submitted For The Degree of Doctor

of Philosophy, Department of Computer Science, National University of Singapore, 2012.


118

6.2.1.1 Delaunay Lemma


There is an alternate local property to the empty sphere property that is related to the Delaunay
triangulation.
Definition 3. A facet abc ∈ T(S) is said to be locally Delaunay if

• It belongs to only one tetrahedron and therefore belongs to the boundary of the convex hull
• It belongs to two tetrahedral abcd and abce, and e lies on the exterior of the circum-sphere of
abcd.

The second test is called the


in sphere test and its result
is the same no matter if
abcd is tested with e or if
abce is tested with d. (See
Figure 6.10).
Lemma 1. (Delaunay
Lemma) If every facet of a
triangulation T is locally
Delaunay, then T is the
Delaunay triangulation of S.
A face that is locally
Delaunay is no guarantee
that it belongs to the Figure 6.10 Success and failure of the in sphere test of abcd with e.
Delaunay triangulation.
However, if a triangulation T consists of only locally Delaunay faces then T = D.
6.2.1.2 Compactness
In R2, the Delaunay triangulation maximizes the minimum angle in the triangulation and minimizes
the largest circumcircle. This max-min angle optimality was discovered by Lawson. These properties
of the Delaunay triangulation in R2 do not generalize to three and higher dimensions. A useful
property of the Delaunay triangulation that holds in all dimensions, including three, is the
containment radius. In R3, the containment radius is defined as the radius of the smallest sphere
containing the tetrahedron. This is called the min-containment sphere and note that this need not
necessarily be the circum-sphere of the tetrahedron. [Rajan] showed that the Delaunay triangulation
in R3 minimizes the containment radius of its tetrahedral. This makes it the most compact
triangulation in R3.
6.2.2 Algorithms
Many algorithms for computing Delaunay triangulations rely on fast operations for detecting when a
point is within a triangle's circumcircle and an efficient data structure for storing triangles and edges.
In two dimensions, one way to detect if point D lies in the circumcircle of A, B, C is to evaluate the
determinant:
Ax Ay A 2x + A 2y 1
Bx By B2x + B2y 1
0
Cx Cy C 2x + C 2y 1
Dx Dy D 2x + D 2y 1
Eq. 6.2
119

As shown in Figure 6.12 when A, B and C are sorted in a counterclockwise order, this determinant
is positive if and only if D lies inside the circumcircle. The majority of Delaunay based methods exploit
an incremental algorithm that starts with an initial triangulation of just a few points. The complete
triangulation is generated by introducing points and locally reconstructing the triangulation after
each point insertion. A particularly attractive feature of this approach is the opportunity to place new
points at specified locations with the aim of
retaining, or possibly improving, the quality
of the mesh163. The main difficulty is the
need to ensure surface integrity. Most
methods allow the boundary points to be
inserted into the volume triangulation
unchecked, reestablishing the surface
edges and faces by a series of edge/face
swaps and the occasional introduction of an
extra point. The left hand side of Figure
Figure 6.12 Two-Three Tetrahedral swap
6.12 illustrates a simplified complex
formed by two tetrahedral which share a
common face. If this face is removed and an edge is inserted
connecting the vertices A and B one obtains three
tetrahedral (shown on the right hand side) which occupy
the same region of space as the two original tetrahedral. This
so-called “2 to 3” swap can often be used to establish a
boundary edge; the reverse operation can similarly be
applied to establish a boundary face. Not all boundary edges
and faces can be established by this one operation but other
more complicated swapping operations are possible. When
the boundary triangulation has been established within the
initial volume mesh, additional points are then inserted into
the triangulation in order to create a volume mesh of well-
shaped tetrahedral. (see Figure 6.11 and Figure 6.13). A
detailed description of this process is given in the books by Figure 6.11 Robust and Fast way to
[George and Borouchaki] and by [Frey and George]164. Detect if point D lies in the
Circumcircle of A, B, C
6.2.3 Advantages
The important advantage of triangulation techniques is the higher degree of automation that is
achieved in the meshing process. It can be shown, for example, that a Delaunay mesh can be
generated to conform to any prescribed boundary in 2D165. The situation in 3D is much more
complicated and no similar mathematical guarantee exists. The method has, nevertheless, been
brought to a high level of automation and current tetrahedral mesh generators will reliably create
good quality isotropic meshes if they are provided with a good quality surface triangulation166-167.
Delaunay triangulation is a concept that extends back well before the emergence of mesh

163 Bowyer A. Computing Dirichlet tessellations. Computer J 1981; 24(2):162–6.


164 Baker T.J., “Triangulations,
mesh generation and point placement strategies”, Caughey DA, Hafez MM, editors.
“Frontiers of computational fluid dynamics”, New York: Wiley, 1994, pp. 101–15.
165 Lee DT, Lin AK. Generalized Delaunay triangulation for planar graphs. Discrete Comput Geom 1986;1: 201–
166 George PL, Borouchaki H. Delaunay triangulation and meshing. Hermes; 1998.
167 Baker TJ, Vassberg JC. Tetrahedral mesh generation and optimization. 6th Iinternational conference on

numerical grid generation. ISGG; 1998. p. 337–49.


120

generation168. Together with its geometric dual, the Voronoı diagram, it has proved to be a fertile
construct whose applications extend from cartography to crystallography. In the seventies it
attracted the attention of computer scientists and quickly became an important topic within the then
emerging discipline that is now known as computational geometry169. In the early nineties computer
scientists rediscovered mesh generation as an application of Delaunay triangulation although
computer graphics and animation was, and still remains, the main justification for their research into
triangulation problems and Delaunay triangulation.

Figure 6.13 Delaunay Triangulation (white) and Voronoi Diagram (blue) – Courtesy of [Labbe])

6.2.4 Delaunay Adaptive Refinement


In early isotropic meshing techniques, Delaunay triangulations were constructed from existing
point sets, generated through other means. Incorporating the Delaunay structure of the point set in
the generation of the point set was pioneered in 2D by [Chew]170and [Ruppert]171. They proposed to
iteratively insert the circumcenters of triangles that do not fit a given set of criteria, such as the size
or shape of elements. This technique allowed to generate meshes with lower bounds on the smallest
angle of triangles and was then extended to 3D domains. In 3D, although no guarantee can be made
on the dihedral angles of simplexes, the radius-edge ratio of tetrahedral can be shown to be bounded.
An efficient algorithm to insert a vertex in an isotropic Delaunay triangulation, now known as the
Bowyer-Watson algorithm, was proposed simultaneously and independently by [Bowyer]172 and
[Watson]173. The simplexes whose Delaunay ball contains the simplex are collected and removed
from the triangulation, which forms a cavity. Linking the refinement point to the vertices of the
border of the cavity creates the new Delaunay simplexes of the triangulation.

168 DelaunayB. Sur la sphe`re vide, Izvestia Akademia Nauk SSSR, VII Seria. Otdelenie Matematicheskii
Estestvennyka Nauk 1934; 7:793–800.
169 Preparata FP, Shamos MI. Computational geometry. Berlin: Springer; 1985.
170 Chew, L. P. Constrained Delaunay triangulations. (1989).
171 Ruppert, J. A new and simple algorithm for quality 2-dimensional mesh generation. SODA (1993).
172 Bowyer, A. Computing dirichlet tessellations. The Computer Journal 24, 2 (1981).
173 Watson, D. F. Computing the n-dimensional Delaunay tessellation with application to Voronoi polytopes. The

computer journal 24, 2 (1981), 167–172.


121

In the context of anisotropy, the generation of points was also originally done independently from
the construction of the triangulation, using for example anisotropic quad trees. [Mavriplis]174-175 first
considered the idea of stretched Delaunay methods and using nodes generated from an anisotropic
advancing front technique; the connectivity is set by first constructing a large isotropic mesh and
then inserting vertices with the Bowyer-Watson algorithm adapted to the anisotropic setting. The
stretching of the space is obtained by computing gradients of the solution. Good results were
achieved, but the swapping techniques employed do not extend nicely to higher-dimensional
settings. [Borouchaki et al.]176 formalized the approach of stretching spaces of [Mavriplis] through
the use of Riemannian metric tensors and introduced the anisotropic Delaunay kernel, their
anisotropic version of an anisotropic Bowyer Watson algorithm. Along with this new insertion
algorithm, they introduced a Delaunay refinement algorithm based on edge swapping, merging and
splitting techniques to generate meshes whose edges lengths are close to 1 in the metric at each of
their endpoints. Many developments have sprouted from this approach: 3D mesh generation,
periodic anisotropic mesh generation, metric-orthogonal mesh generation .
While these algorithms produce good results and have seen much use in the context of computational
fluid dynamics, theoretical results are limited for these algorithms and there are no guarantees on
either the termination or the robustness of algorithms, nor on the quality of the elements produced
by these techniques. A theoretically sound approach to anisotropic Delaunay triangulations was
proposed by [Boissonnat et al.]177, who introduced the framework of locally uniform anisotropic
meshes. In their algorithm, the star of each vertex v is composed of simplices that are Delaunay for
the metric at v. Each star is built independently and the stars are stitched together in the hope of
creating an anisotropic mesh. The star structure was first introduced by [Shewchuk]178 to handle
moving vertices in finite element meshes and considering stretched stars was first proposed by
[Schoen]. Two stretched stars may be combinatorically incompatible, a configuration called an
inconsistency. [Boissonnat et al.] proved that inconsistencies can be resolved by inserting Steiner
points, yielding an anisotropic triangulation. The algorithm works in any dimension, can handle
complex geometries and provides guarantees on the quality of the simplices of the triangulation.
6.2.5 Voronoi Diagrams
The well-known duality between the Euclidean Voronoi diagram and its associated Delaunay
triangulation has inspired authors to compute anisotropic Voronoi diagrams, with the hope of
obtaining a dual anisotropic triangulation. The approaches of[ Labelle and Shewchuk]179 and [Du and
Wang]180 aim at approximating the geodesic distance between a seed and a point of the domain by
considering that the metric is constant and equal to the metric at the seed (in the case of [Labelle and
Shewchuk]181) or at the point (in the case of [Du and Wang ]). Contrary to the isotropic setting, the
dual of an anisotropic Voronoi diagram is not necessarily a triangulation and inverted elements can

174 Mavriplis, D. J. Adaptive mesh generation for viscous flows using triangulation. Journal of computational
Physics 90, 2 (1990), 271–291.
175 Mavriplis, D. J. Unstructured mesh generation and adaptivity. Tech. rep., DTIC Document, 1995.
176 Borouchaki, H., George, P. L., Hecht, F., Laug, P., and Saltel, E. Delaunay mesh generation governed by metric

specifications. part I algorithms. Finite Elem. Anal. Des. 25, 1-2 (1997), 61–83.
177 Boissonnat, J.-D., Wormser, C., and Yvinec, M. Locally uniform anisotropic meshing. Proceedings of the

twenty-fourth annual symposium on Computational geometry (2008), ACM, pp. 270–277.


178 Shewchuk, R. Star splaying: an algorithm for repairing Delaunay triangulations and convex hulls. Proceedings

of the 21st annual symposium on Computational geometry (New York, NY, USA, 2005.
179 Labelle, F., and Shewchuk, J. R. Anisotropic Voronoi diagrams and guaranteed-quality anisotropic mesh

generation. Proceedings of the 19th annual symposium on Computational geometry (New York, NY, USA, 2003,
180 Du, Q., and Wang, D. Anisotropic centroidal Voronoi tessellations and their applications. SIAM Journal on

Scientific Computing, 2005.


181 Labelle, F., and Shewchuk, J. R. Anisotropic Voronoi diagrams and guaranteed-quality anisotropic mesh

generation. Proceedings of the 19th annual symposium on Computational geometry (New York, NY, USA, 2003).
122

be present in the dual triangulation. The algorithms were initially introduced for two-dimensional
(Labelle and Shewchuk) and surface (Du and Wang) domains and have since then been studied and
extended by various authors. The approach of Labelle and Shewchuk was shown to be theoretically
sound in 2D, but the approach of the proof does not extend to higher dimensions. This result was
extended to surfaces by [Cheng et al.]182 by locally approximating the surface with a plane and then
using a density argument similar to the proof of [Canas and Gortler]. Centroid Voronoi tessellations,
which are Voronoi diagrams for which the seeds are the centers of mass of their associated Voronoi
cell, are known to create elements of good quality. The famous Lloyd algorithm iteratively moves the
seeds to the center of mass of their respective cell and recomputed the Voronoi diagram of this new
seed set. This algorithm was modified to be used in the anisotropic Voronoi diagram of Du and Wang,
but the process is computationally expensive.
6.2.6 Restricted Delaunay Triangulation
The Delaunay and Voronoi structures presented so far are built from (almost) arbitrary point sets
living in Rn. It is possible to employ these structures to approximate bounded domains. The
restriction of a Delaunay complex to a domain is the subcomplex (the restricted Delaunay complex)
composed of the simplices of whose dual Voronoi face intersect. Restricted Delaunay triangulations
were introduced by [Chew] and allow to accurately capture complex geometric objects. For example,
it can be shown that under the condition of good sampling of a surface, the restricted Delaunay
triangulation and the domain are homeomorphic. Thanks to these good properties, restricted
Delaunay triangulations have often been used to create provably correct refinement algorithms in
the case of surfaces. It was however proven by [Boissonnat, Guibas and Oudot]183 that this does not
extended to higher-dimensional settings. Nevertheless, restricted Delaunay triangulations will be
consistently used in the refinement algorithms considered. Figure 6.14 represents 2D Delaunay
triangulation of a set of vertices (black) restricted to a curve (blue). Voronoi edges are represented
in teal, and in pink if they intersect the curve. The Voronoi vertices are marked with orange circles.
Restricted Delaunay edges are drawn in yellow, and restricted Delaunay triangles are drawn in green.

Figure 6.14 2D Delaunay Triangulation of a Set of Vertices (Black) Restricted to a Curve (Blue)

182 Cheng, S.-W., Dey, T. K., Ramos, E. A., and Wenger, R. Anisotropic surface meshing. Proceedings of the
seventeenth annual ACM-SIAM symposium on Discrete algorithm (2006).
183 Boissonnat, J.-D., Guibas, L. J., and Oudot, S. Y. Manifold reconstruction in arbitrary dimensions using witness

complexes. Discrete & Comp. Geom. 42 (2009), 37–70.


123

6.3 Trimmed (SAMM) Cells


This was a novel idea which was generated by [Wayne Oaks]184 of CD-Adapco® for better capturing
geometry surfaces. The idea was to use the trimmed or deformed hexahedral cells (see Figure 6.15)
or better known as SAMM (Semi-
Automatic Meshing Methodology) to
generate a sub-surface, then fill the gap
with between sub-surface and real
surface, with prismatic layer and the core
volume with regular hexahedral cells. If
there is any unresolved cells, then use the
mesh quality button to fix that.
Unfortunately, some meshing designers
complained of too many unresolved cells.
To that end, CD-Adapco added new
features and fixes to decrease the amount
of unresolved cells. Figure 6.15 shows a
SAMM approach for meshing a manifold
showing step by step procedures. It is Figure 6.15 Meshing Types in SAMM
most useful in modeling external
aerodynamic flows due to its ability to refine cell in a wake region, unsteady, and turbulent fluid
caused by boundary layer separation.

6.4 Polyhedral Cells


As a new comer in the field of Mesh Generation, polyhedral cells merits special attention in CFD
community. Polyhedral meshes, as the term implies, means many faces. It consist of cells of 12 and
14 faces A simple pyramid with quadrilateral base is presented. The edges of the base and the height
have length 1. Figure 6.16 shows the mesh
for a pyramid. Here the size of the initial
mesh has been chosen to be to 0.4 and a
generalized Mid-Point Subdivisions has
been applied to all the resulting polyhedral,
including the internal hexahedra185.
(although the number of faces is
unrestricted). This means that they fill space
in close to the most efficient way possible. A
polygonal face is defined by a list of vertex
labels. The ordering of vertex labels defines
the face normal (orientation) using the
right-hand rule. A polyhedral cell is defined
by a list of face labels that bound it. In
Figure 6.17 (a) cell center is marked by P,
face center and face includes by f, face Figure 6.16 Mesh Inside a Pyramid
normal Sf and neighboring cell center by N.
Face center and cell volume are calculated using a decomposition into triangles or pyramids186.

184 W. Oaks, S. Paoletti, “Polyhedral Mesh Generation”, adapco Ltd, 60 Broadhollow Road, Melville 11747 New
York, USA.
185 See Previous.
186 Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume Method”, ISSN

1333–1124, UDK 532.5:519.6.


124

6.4.1 Cell Decomposition


It remains to choose an appropriate decomposition of a polyhedron into tetrahedral; two methods
used in OpenFOAM® are shown in Figure 6.17 (b-c). A cell is decomposed by introducing a point in
its centroid and building tetrahedral above the triangular decomposition of a face. The two methods
proposed here are the cell decomposition, Figure 6.17 (b), where additional points are introduced
only in cell centers; and the cell-and-face decomposition, Figure 6.17 (c), where points are
introduced in both face and cell centers. In the first method, the number of algebraic equations in the
matrix equals the sum of cell and point count, while the second method introduces an equation for
each face, giving a considerable increase in the number of unknowns187. For a given resolution level,
a mesh consisting of polyhedral cells has fewer faces than a mesh of any other cell type. As the lowest-
order polyhedron, tetrahedral are often deformed during meshing to look more like wedges or
slivers. Some of these point upstream, letting fluid flows hit their very oblique surfaces. The disparity
between the small inflow area and large outflow areas leads to excessive numerical diffusion.

(a) typical polyhedral cells (b) Cell Decompostion (c) Cell and Face Decompostion

Figure 6.17 Typical Polyhedral Cell and their Decomposition

6.4.2 Mesh Duality


A different approach in generating polyhedral meshes, which does not suffer by the aforementioned
restrictions, comes with the introduction of indirect mesh generation methods. These are based on
the principle of duality transforms, which define a mapping from entities of an input mesh, which is
referred to as primal, to a destination mesh, referred to as dual. The main mapping process dictates
that the vertices of a dual mesh are generated at the centers of the primal cells188. This relation is
unique, leading to a one-to-one correspondence of the two counterpart meshes, while it is also
characterized by inverse applicability. This means that the original primal mesh can be obtained
back, if the same mapping is applied to the dual mesh. This property can be applied for Voronoi
tessellations, as well. The dual counterpart of a Voronoi mesh is a Delaunay triangulation, which is
defined as a partitioning scheme, such that no vertex is inside the circumcircle of any triangle. The
implementation of Delaunay triangulation algorithms is relatively simple and can be of complexity O
(n log n), following Ruppert's algorithm189. As the duality property can be applied both ways, it is
then possible to obtain a Voronoi mesh, by applying a duality transform on a previously generated
Delaunay triangulation, considering the circumcenters of the primal tetrahedral as generator

187 See previous.


188 H. Ledoux, “Computing the 3D voronoi diagram robustly: An easy explanation”, In Voronoi Diagrams in Science

and Engineering, 2007. ISVD '07. 4th International Symposium on, pages 117{129, July 2007.
189 Paul-Louis George and Houman Borouchaki, “Delaunay Triangulation and Meshing - Application to Finite

Elements”, Editions HERMES, 1998.


125

vertices.
In 3D space, an equivalent mesh generation method would require a tetrahedral primal mesh that
complies with the Delaunay criterion. Delaunay partitioning is known to maximize the minimum
angle of all formed simples, which leads to well-conditioned tetrahedral. However, in order to obtain
a valid dual mesh, a far stricter criterion needs to be filled: that of well centered tetrahedral, meaning
that the circumcenter of a primal cell needs to be located within its volume190. This is something that
is not always possible, as tetrahedral at the boundaries may be very at, having their circumcenters
outside the model's domain, while the Delaunay criterion still remains fulfilled. Situations like this
are especially encountered at sharp concavities of the geometric model, and several suggestions have
been made in order to overcome this issue. Other possibilities include non-Delaunay tetrahedral
meshes, hexahedral or even mixed meshes, which are further discussion. Finally, the advantage of
indirect mesh generation lies in the fact that efficient algorithms can be implemented in order to
obtain topologically involved dual meshes, based on primal meshes with simple topology.
Furthermore, the primal meshes, themselves, can be created following equally efficient and well-
studied algorithms. This approach leads into an elective two-step mesh generation, rather than an
expensive, direct one.
6.4.3 Methodology
Given a triangular mesh in 2D, such as that of (Error! Reference source not found.), a polygonal m
esh is formed by following the principle that a dual cell will be formed around every primal vertex.
In the interior of the domain, this one-to-one correspondence between primal and dual entities
extends to other types as well, with one dual edge per primal edge and a dual vertex for every primal
face. However, generation of polygonal faces on the boundary demands for additional dual edges and
vertices, at specific locations of the boundary that denote the classification of primal entities as
significant. An slightly modified approach of the generic polygon mesh generation, as previously
described, is used to obtain a variation known as median polygon. This method differentiates itself
by considering as significant every existing primal edge, thus creating dual vertices at the midpoints
of primal edges lying in the interior as well. These dual vertices become, consequently, vertices of

General Polygone Dual Median Polygone Dual

Figure 6.18 Dual Surface Triangulation Resulting in Polyhedron

190Rao V. Garimella, Jibum Kim, and Markus Berndt, “Polyhedral mesh generation and optimization for non-
manifold domains”, Proceedings of the 22nd International Meshing Roundtable, pages 313-330. Springer
International Publishing, 2014.
126

characterized by highly concave shapes (Figure 6.18).


6.4.3.1 Polyhedral Mesh Generation and Evading Concave Geometrical Edges
Concave polygons are in general non-desirable in computational methods, due to their poor
numerical properties. Additionally, they are also known for posing further difficulties in geometric
computations, making the mesh generation itself problematic, whenever using plain topological
relations is not adequate. It is, subsequently, clear that median meshes are not an optimal choice for
numerical simulations. However, the concept behind median mesh generation provides a useful basis
for meshing curved boundary surfaces of three-dimensional models, where the exact geometry of the
primal mesh needs to be preserved. Figure 6.19 (a-d) illustrates the process for a simple 2-manifold
domain. In this example, the initial dual mesh (b) has several invalid elements but after optimization
the mesh (c, d) is completely valid. For further details, see the [Garimella et al.]191.

Figure 6.19 (a) Cut of initial tetrahedral mesh of a simple 2-material model (b) Cut of initial polyhedral
mesh showing valid (green) and invalid (red) elements (c) Cut of untangled and optimized polyhedral
mesh (d) Full polyhedral mesh

In another paper by [Lee]192, 3 methods are investigated to remove the concavity at the boundary

191 Rao V. Garimella, Jibum Kim, and Markus Berndt, “Polyhedral Mesh Generation and Optimization for Non-
manifold Domains”, Los Alamos National Laboratory, Los Alamos, NM, USA, 2013.
192 Sang Yong Lee, “Polyhedral Mesh Generation and A Treatise on Concave Geometrical Edges”, 24th International

Meshing Roundtable (IMR24), 2015.


127

edges and/or vertices during polyhedral mesh generation by a dual mesh method. The non-manifold
elements insertion method is the first method examined. Concavity can be removed by inserting non-
manifold surfaces along the concave edges and using them as an internal boundary before applying
Delaunay mesh generation. Conical cell decomposition/bisection is the second method examined.
Any concave polyhedral cell is decomposed into polygonal conical cells first, with the polygonal
primal edge cut-face as the base and the dual vertex on the boundary as the apex. The bisection of
the concave polygonal conical cell along the concave edge is done. Finally the cut-along-concave-
edge method is examined. Every concave polyhedral cell is cut along the concave edges. If a cut cell
is still concave, then it is cut once more. The first method is very promising but not many mesh
generators can handle the non-manifold surfaces especially for complex geometries. The second
method is applicable to any concave cell with a rather simple procedure but the decomposed cells
are too small compared to neighbor non-decomposed cells. Therefore, it may cause some problems
during the numerical analysis application. The cut-along-concave-edge method is the most viable
method at this time. In this paper, discussions are presented with the boundary conforming Delaunay
primal mesh to reduce the complexity that may be expected at the boundary. Polygonal prism mesh
generation at the viscous layer is also investigated. The polyhedral mesh generated is shown in
Figure 6.19 (d). It is shown that all of the concave polyhedral cells are cut into convex conical cells.
It is noted that this method is very straightforward and can be applicable to any shape of concave
polyhedral cell.

6.5 Treatment of Boundary Layer


The poor numerical properties of tetrahedral meshes have dictated the generation of a thin layer of
prismatic, pentahedral elements at the boundary. With this common practice, analysts have been able
to partially overcome the inability of tetrahedral to capture the details of a flow at regions close to
the boundary . The appropriate generation of a corresponding boundary layer for polyhedral meshes,
or even the need for one, are to be examined in future studies. An interesting, however, by-product
of the polyhedral mesh generation method, is the automatic formation of a prismatic boundary layer.
This effect comes as a result of connecting the centers of primal cells, in order to form dual entities,
which, at the boundary, forms dual cells of approximately half the thickness of their primal
counterparts. The phenomenon can be intensified by generating cascading dual meshes, having as a
starting point an initial primal mesh. This is made possible, given the observation that the dual
counterpart of a general bounded polyhedral mesh tends to resemble the primal, tetrahedral mesh,
with the exception at the boundaries. This correspondence emerges in a similar way that the dual
counterpart of a Voronoi tessellation is a Delaunay triangulation/tetrahedralization, and vice versa.
Therefore, for each generation of meshes, the dual mesh that is obtained serves as the primal mesh
for the next iteration. It can, then, be observed that for each generation, the boundary layer gets
approximately half the thickness of that of the input mesh. Since two iterations are needed in order
to cascade from a polyhedral mesh to a tetrahedral dominant and back to a polyhedral one, the
formed boundary layer will conclude to a thickness of a 1/4 factor. It is, however, apparent that with
such an approach it is difficult to control the properties and thickness of the formed boundary layer
and the application of this method seems of limited use. Figure 6.20 and Figure 6.21 are displaying
the involving concepts for 2D and 3D.
128

(a) Triangular primal (b) 1st generation dual (c) 2nd generation prime
mesh (Black) and 1st mesh (Red) and 2nd mesh (Black) and 3rd
generation Polygonal generation triangular generation dual mesh
dual mesh (Red) dominant prime mesh (Red)
(Black)

(e) 4th generation dual (d) 3rd generation dual


mesh (Black) and 5th mesh (Red) and 4th
generation dual mesh genera-tion prime mesh
(Red) (Black)

Figure 6.20 Boundary Layer Prisms Generated on a Cascade of a 2D Triangulation and Dual Polyhedron
129

(a) Triangular primal (b) 1st generation dual


mesh mesh

(c) 2nd generation tetrahedral


dominant dual mesh, with
pentahedral elements forming a
boundary layer

Figure 6.21 3D Concept of Cascading for Boundary Layer

6.6 Domain Mesh Stretching in Unstructured Environment


The drive towards full Navier-Stokes solvers has necessitated the development of stretched grid
generation techniques in order to resolve the thin boundary layers, wakes, and other viscous regions
characteristic of high-Reynolds number viscous flows. Proper boundary-layer resolution usually
requires mesh spacing several orders of magnitude smaller in the direction normal to the boundaries
than in the stream-wise direction, resulting in large cell aspect-ratios in these regions. In [Babushka
& Aziz] it is shown how the accuracy of a two-dimensional finite-element approximation on
triangular elements degrades as the maximum angle of the element increases. Therefore, stretched
obtuse triangles that contain one large angle and two small angles are to be avoided, while stretched
right-angle triangles, with one small and two nearly right angles, are preferred. Delaunay
triangulations, which maximize the minimum angles of any triangulation, tend to produce
equiangular triangulations and are thus ill suited for the construction of highly stretched triangular
elements. One of the earliest approaches for generating highly stretched triangulations for viscous
flows makes use of a Delaunay triangulation performed in a locally mapped space [Mavriplis]193-194,

193 Mavriplis, DJ. ”Adaptive mesh generation for viscous flows using Delaunay triangulation”, Journal
computational. Phys. 1991.
194 Mavriplis, DJ, ”Unstructured and adaptive mesh generation for high-Reynolds number viscous

flows”Proceedings of the International Conference on Numerical Grid Generation: Computational Fluid Dynamics
130

[Vallet et al]195, [Castro-Diaz et al 1995]. By defining a mapped space based on the desired amount
and direction of stretching, an isotropic Delaunay triangulation can be generated in this mapped
space that, when mapped back to physical space, provides the desired stretched triangulation.
Difficulties with such methods involve defining the stretching transformations and determining
suitable point distributions for avoiding obtuse triangular elements.
An alternative to the above approaches is to generate a locally structured or semi structured mesh in
the regions where high stretching is required. One approach [Nakahashi 1987, Ward & Kallinderis
1993] attempts to preserve the mesh structure in the direction normal to the boundary up to a
specified distance away from the boundary, after which fully unstructured isotropic meshing
techniques are employed. Special care must be taken in this case to avoid mesh cross-overs in regions
of concave curvature and to ensure a smooth transition between the structured and unstructured
region of the mesh. Another strategy [L¨ohner]196; [Pirzadeh]197; [Connell & Braaten 1995] consists
of generating a semi structured mesh, where the “stack” of mesh cells emanating from each individual
boundary face may terminate independently from those at other boundary faces, as shown.
Termination of these “advancing-layers” [Pirzadeh]198 is triggered when the local cell aspect-ratio
approaches unity, or when cross-over with other cells is detected, such as in concave corners. The
remaining region is then gridded with a conventional isotropic unstructured mesh generation
approach. The resulting structured or semi structured meshes can either be conserved as local
structured entities of quadrilaterals in two dimensions and prisms in three dimensions (since the
surface grid is generally assumed to be triangular), or the different element types may be divided
into triangles or tetrahedral in two or three dimensions, respectively.

6.7 Meshing from Image Data199


Generating accurate meshes from 3D image data (such as MRI and CT) for design and simulation
tasks can be a challenge, particularly when working with complex geometries such as the human
body, porous media and industrial parts. At Simpleware we have developed software techniques that
use image-based meshing to ensure the generation of very high-quality surface and volumetric
meshes, which can be used for a wide range of applications. These techniques have also been
extended to homogenization methods for calculating effective material properties, ensuring a fast,
easy and reliable bridge from scan to design and simulation-ready models.
There are many additional benefits to being able to generate very high-quality, smoothed meshes
from 3D image data. Mesh generation techniques have been integrated into software for calculating
effective material properties from scanned samples, a method available in Physics Modules. This is
particularly useful for those working with scans of materials such as rock samples and fiber
composites who want to quickly obtain statistics and the response of their sample to physics.
A smoothed mesh can be created from a cuboidal sample that does not over-estimate the surface of
a model, and can be adaptively re-meshed without compromising volume and topology (see Figure
6.22). Finite element calculations can then be run using generated meshes to obtain effective
material properties, such as elasticity, permeability and stiffness. This represents a 'black box'
approach, enabling rapid analysis and characterization of complex material samples.

and Related Fields, 3rd Barcelona, Spain, ed. AS Arcilla, J Hauser, PR Eisman, JF Thompson, pp. 79–92. New York:
North-Holland, 1991.
195 Vallet MG, Hecht F, Mantel B., “Anisotropic control of mesh generation based upon a Voronoi type method”.
196 L¨ohner R.,” Matching semi-structured and unstructured grids for Navier-Stokes calculations”, AIAA 1993.
197 Pirzadeh S.,”Viscous unstructured three dimensional grids by the advancing-layers method”, AIAA, 1994.
198 Pirzadeh S. 1994, AIAA J. 32(8):1735–37.
199 Philippe Young, “ Meshing from Image Data with Simpleware“, Synopsys, Inc. 2015.
131

Figure 6.22 Comparison of traditional voxel mesh with Simpleware mesh preserving segmented
domains without decreasing data resolution

6.7.1 Case Study - Design Principles of Biologically Fabricated Avian Nests200


Avian nests have a high degree of design variation across families which is translated to multiple
functionalities. As they primarily serve as a location and apparatus for incubation of eggs and a safe
place for offspring to develop, nests are hypothesized to integrate parts with specific physical and
mechanical properties, evolutionarily selected to provide comfort, defense from parasites or
pathogens, and thermoregulation. This suggests that construction is guided by specific fabrication
programs whereas materials are deliberately selected for specific roles. However, deliberate
selection of materials for specific functions in avian architectures has yet to be fully investigated.
Figure 6.23-(D) shows the Workflow for nest reconstruction, from computer tomography (CT)
scans to the finite element (FE) model: μCT scanned image files imported into ScanIP. Background
image data segmented and analyzed within scanIP. +FE module within ScanIP is used for defining
contact entities and generate the FE mesh. FE mesh imported into Abaqus for assignment of material
properties and boundary conditions. Finally showing +FE Free Mesh after analysis in Abaqus. (E), A
high- resolution finite-element (FE) model of the nest created based on the 3D model and the
mechanical measurements, with material density represented by color scale (blue, least dense; green,
most dense). Shown is the FE model of one of the studied nests.

200Hadass R. Jessel, Sagi Chen, Shmuel Osovski, Sol Efroni, Daniel Rittel & Ido Bachelet, “Design principles of
biologically fabricated avian nests”, Scientific Reports, March 2019.
132

Figure 6.23 Mechanical Characterization of Nest Material

6.7.1.1 Methods
6.7.1.1.1 Nests
Five nests were purchased from commercial bird nest farms in Selangor, Malaysia. The nests were
harvested from the farms. They were shipped directly to our laboratory. On receipt of the nests, they
were immediately scanned. The vendor confirmed that the provided nests were cleaned and
processed without bleaching agents, and untreated with coloring or artificial preservatives. The nests
were stored in separate closed containers with a relative humidity of 80% and a temperature of 25
°C throughout the research.
6.7.1.1.2 CT Scans
μCT scans were performed on a SkyScan 1176 high-resolution μCT (SkyScan, Aartselaar, Belgium).
After adjusting the appropriate parameters for scanning, each nest was positioned on the specimen
stage and scanned with an isotropic resolution of 34.04μm, rotational step of 0.700 degrees, and a 41
ms exposure time (tube voltage 40 kV, tube current 600 μA with no filter).
6.7.1.1.3 Image Processing
μCT datasets were imported into Simpleware ScanIP M-2017.06-SP1 (Synopsys, Mountain View,
USA), an image processing software used to visualize and segment regions of interest (ROIs) from
133

volumetric 3D data. This software imports a stack of images from μCT slices in a wide variety of
software formats (in this case, approximately 2500 bitmap files), allowing steps of visualization and
assisted segmentation based on image density thresholding of different grayscale intensities. The
following tools and workflow described were applied to all five nests. Image sequence of each μCT
scanned nest was imported with a pixel spacing value of 34.04um in x,y and z with a background type
of 8-bit unsigned integer. The image sequence was resampled by linear interpolating to a pixel size
resolution of 68.1μm to down sample image data. The segmentation was then used to generate the
volumes (binary volumes) that are called masks, which define how the objects fill the space.
Several segmentation tools were used to create the masks from the background image data, which
were modified until they showed a satisfactory mask. There are some artifacts and noise from μCT
data, which can be corrected by filtering when the images are reconstructed. A threshold tool was
used for segmenting the nest models based on grayscale intensities. Changing the threshold values
of two-dimensional regions on the imported stack of images was done in order to select only the nest
and exclude background noise. Grayscale boundaries were set to a lower value of 40 and an upper
value of 255. A Flood-fill tool was used to remove non-connected artifacts from the mask, this
algorithm is a connectivity-based algorithm and was used on the active mask.
A recursive Gaussian filter was used with a sigma value of 1 in each direction to reduce image noise
and reduce detail level. Closed pores with less than 125 voxels were selected and added to the mask
to reduce computational time and to create a higher quality of the generated elements. ScanIP was
used for the 3D volumetric visualization, analysis, and measurement. The morphometric parameters
of the whole nest were calculated by the software. The following parameters used were: mass
density, the volume of the nest, nest surface area, and pore analysis. Average mass density was
defined as the ratio of nest mass (measured with a scale) to nest volume measured by scanIP 3D mask
analysis. Measuring the distribution of the mass density, surface area and closed pores along different
axes of the nest was done by generating a segmented mask for the nest and a separate segmented
mask for the closed pores. A Slice-by-Slice script was written for slicing the masks in yz, xz and xy
coordinate planes and finally the data of the pore and the nest masks were analyzed in every slice. A
pore multi-label mask was generated from the segmented mask of the closed pores.
Generating the multi-label mask was done to interactively visualize and analyze the pore mask that
contained several regions (scattered pores in between the strands of saliva). The pore multi-label
mask was created by labeling disconnected regions within the pore mask, where each distinct region
was given a separate color. Further details available form [Jessel et al.]201.

201Hadass R. Jessel, Sagi Chen, Shmuel Osovski, Sol Efroni, Daniel Rittel & Ido Bachelet, “Design principles of
biologically fabricated avian nests”, Scientific Reports, March 2019.
134
135

7 Anisotropic Mesh Generation


Anisotropic meshes are desirable for various applications, such as the numerical solving of partial
differential equations and graphics. From an equivalent point of view, the use of meshes whose
elements are stretched according to the anisotropy requires a lower number of elements to
achieve the same precision of the result of the simulation. When stretched elements are used, the
mesh is said to be Anisotropic. Additionally to providing increased accuracy in the simulations of
scientific modeling, anisotropic meshes also find use in geometric modeling as they can improve the
visualization of objects, and lower the number of vertices required to represent a shape or interpolate
a smooth function. By requiring fewer elements, anisotropic meshes thus provide another way to
accelerate mesh generation, and increase the quality and the speed of computations. Where the main
improvements in the accuracy of modeling only came from increased computation power and denser
meshes for isotropic meshes, anisotropic mesh generation offers another independent way to obtain
faster and more accurate results. While anisotropic meshes offer many benefits, their generation is
also much harder than the traditional isotropic meshes. Due to its wide range of applications, several
classes of methods have been proposed, yet no solution is satisfying for all classes of domains and
anisotropy. Moreover, while isotropic meshes and their generation are now well studied from a
theoretical point of a view, almost all the algorithms on anisotropic mesh generation are heuristic.
With this observation in mind, we seek to develop methods that are both provable, robust, and
practical [Labbe]202.

7.1 Case Study - Anisotropic Mesh Generation via Discretized Riemannian Delaunay
Triangulations
Due to its wide array of practical applications, anisotropic mesh generation has received considerable
attention and several classes of methods have been proposed. In this study, the generation of
anisotropic meshes using the concepts of Delaunay triangulations and Voronoi diagrams, has
been investigated by [Labbe]203. First, consider the framework of locally uniform anisotropic meshes
introduced by [Boissonnat, et al.]204. Despite known theoretical guarantees, the practicality of this
approach has only been hardly studied. An exhaustive empirical study is presented and reveals the
strengths but also the overall impracticality of the method. The ideal shape of simplex has so far been
described as the regular simplex, but this is not always the case. We follow closely the development
by [Labbe]205-206. The category for discretization of these are:

1 Algorithms based on the concepts of the Delaunay triangulation and the Voronoi
diagram,
2 Algorithms based on an embedding of the input domain to simplify the problem,
3 Algorithms based on the optimization of particles.

The different approaches that we consider here are all based upon extending the notions of Voronoi
diagrams and Delaunay triangulations to the anisotropic setting. We hope to benefit from the
known results and theoretical soundness of the isotropic Delaunay triangulation and Voronoi
diagram to generate anisotropic meshes with provable and practical meshing techniques. As all our
methods are based upon the same structures, we dedicate a chapter to introducing the notions that
will be used throughout this thesis. Our main chapters follow a logical progression, with each method

202 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
203 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
204 Boissonnat, J.-D., Chazal, F., and Yvinec, M. Geometry and Topology Inference. in preparation.
205 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
206 M. Rouxel-Labbéa, M. Wintraeckenb, J.D. Boissonnatb, “Discretized Riemannian Delaunay triangulations”,

25th International Meshing Roundtable (IMR25).


136

taking more metric information into account to determine the connectivity and placement of points
than the previous ones.
We begin with a thorough practical investigation of the framework of locally uniform anisotropic
meshes, a theoretically sound meshing technique proposed by [Boissonnat et al.]207 that is based on
the idea of constructing at each point a triangulation that is well adapted to the local metric. The
theoretical aspect of their approach has been extensively described, but its practicality is
comparatively lesser known. We detail our implementation, which is both more robust and faster
than the one previously presented in the short experiment investigation of the algorithm for surfaces,
investigate the role of the numerous parameters, and give some results. Limitations of the approach
are then exposed, along with our attempts to address those. In the Euclidean setting, the Delaunay
triangulation of a point set can be constructed by first generating the Voronoi diagram of the point
set and then computing the dual of this diagram. Anisotropic Voronoi diagrams have been considered
to build anisotropic triangulations, however the dual of an anisotropic Voronoi diagram is not
necessarily a valid triangulation and elements can be inverted. Different distances are possible to
create such anisotropic Voronoi diagrams.
Along with the introduction of their anisotropic distance, [Labelle and Shewchuk]208 presented a
refinement algorithm that generates a point set for which their anisotropic Voronoi diagram has a
valid dual triangulation. However, their method is limited to the setting of planar domains. We give
requirements on point sets such that the dual of the anisotropic Voronoi diagram is a nice
triangulation and propose a refinement algorithm to generate such point set. Our proof links
anisotropic Voronoi diagrams built using the distance of [Labelle and Shewchuk]209 with the
Ω Domain
P Point set
G Metric
F Square root of a metric
λi , vi Eigenvalues and eigenvectors of a metric
φ(G1,G2) Distortion between two metrics G1 and G2
g0 Uniform metric field
g Arbitrary metric field
dG Distance with respect to the metric G
‖.‖G Norm with respect to the metric G
dE Distance with respect to the Euclidean metric E
dg Geodesic distance with respect to the metric field g
Vord(P) Voronoi diagram of P using the distance d
Del(P) Abstract Delaunay complex of the point set P
DelG(P) Delaunay complex of the point set P with respect to G
Delg0(P) Delaunay complex of the point set P with respect to g0 (uniform metric field)
Sp Star of p
Svp Restricted volume star of p
Svp Restricted surface star of p

Table 7.1 Nomenclature


framework of locally uniform anisotropic meshes, relating along the way the concepts of quasi-

207 Boissonnat, J.-D., Dyer, R., and Ghosh, A. Delaunay stability via perturbations. Int. J. Com. Geo.& App., (2014).
208 Labelle, F., and Shewchuk, J. R. Anisotropic Voronoi diagrams and guaranteed-quality anisotropic mesh
generation. Proceedings of the nineteenth annual symposium on Computational geometry (New York, NY, USA,
2003), ACM Press, pp. 191–200.
209 see Previous.
137

cosphericity (used in locally uniform anisotropic meshes) and of protection of a point set. The second
part of this chapter introduces a refinement algorithm based on the combination of the alternative
point of view of the anisotropic Voronoi diagram as the restriction of a high-dimensional power
diagram to a fixed paraboloid manifold and the tangential Delaunay complex, a structure used in
manifold reconstruction that is well-adapted to the high-dimensional setting. We detail our
implementation, study its theoretical grounds and investigate the practicality of the algorithm.
Anisotropic Voronoi diagrams studied by previous authors compute and compare distances using a
fixed metric, justifying this approximation by invoking the computational and time complexity of
computing geodesics in a domain endowed with a metric field. To better facilitate, Table 7.1 is the
list of symbols used.

7.1.1 Anisotropic Delaunay Triangulations


7.1.1.1 Locally Uniform Anisotropic Meshes
The Delaunay triangulation has been extensively studied and is well known to possess useful and
well-defined properties [Preparata and Shamos]210. Attempts have been made to extend the notion
of Delaunay triangulation to the anisotropic setting either by adapting the famous Bowyer-Watson
algorithm [Mavriplis] , [Borouchaki], [Dobrzynski], [Alauzet] or as the dual of an anisotropic Voronoi
diagram (see Labelle and Shewchuk211, [Du and Wang]212. However, neither class of method offer in
all dimensions the theoretical guarantees nor the practical robustness that we are interested in. A
theoretically sound framework for Delaunay-based anisotropic meshes was introduced by
[Boissonnat et al.], called locally uniform anisotropic meshes. Locally uniform anisotropic meshes
are simplicial complexes in which the star of each vertex is Delaunay for the metric attached to the
vertex. The use of anisotropic stars, inspired by the works of [Shewchuk] and [Schoen], is combined
with the sliver removal techniques proposed by [Li and Teng ]. These techniques are adapted to the
anisotropic setting to construct a star-based refinement algorithm that cleverly selects refinement
points. The algorithm works in any dimension and offers guarantees on its termination and on the
quality (size and shape) of the final simplexes.
While the theoretical aspect of the approach has been thoroughly studied, its practicality is
comparatively not as well explored. This chapter intends to fill this gap and presents a
comprehensive empirical study of the algorithm. We first recall the required theoretical basis and
detail some minor changes brought to the theory after practical experimentation. We then dive in the
heuristic analysis of the behavior of the algorithm and its parameters and propose some
improvements. A strong focus is put on the phenomenon of inconsistencies, which turns out to be a
real issue of the algorithm. We introduce an implementation of the anisotropic Delaunay refinement
algorithm introduced by [Boissonnat et al.]. We specifically detail the technical issues, and their
solution, that arise when aiming for efficiency. This implementation of the star set is completely new
and results in significant improvements in terms of computational speed, robustness and genericity
over the former implementation that was used in. The empirical study of our implementation and of
the algorithm is comprehensive and produce (minor) theoretical improvements. We investigate the
practicality of the algorithm, analyze its limitations and propose various fixes that attempt to remedy
these limitations.

210 Preparata, F. P., and Shamos, M. Computational geometry: an introduction. Springer Science & Business
2012.
211 Labelle, F., and Shewchuk, J. R. Anisotropic Voronoi diagrams and guaranteed-quality anisotropic mesh
generation. Proceedings of the nineteenth annual symposium on Computational geometry, NY, 2003.
212 Du, Q., and Wang, D. Anisotropic centroid Voronoi tessellations and their applications. SIAM Journal on

Scientific Computing 26, 3 (2005), 737–761.


138

7.1.1.2 Metric Tensor


The adaptation of meshes based on a metric tensor was introduced by [Borouchaki et al.]213-214-215
and has imposed itself as the standard way to describe and prescribe anisotropy. A metric tensor, or
simply a metric, in Rn is defined by a symmetric positive definite (SPD) quadratic form, represented
by a n x n matrix G. [Labbe]216. The quadratic form defines as an inner product as

〈u, v〉G = ut , Gv = 〈u, Gv 〉


Eq. 7.1
and the norm of a vector u with respect to G is then given by

‖u‖G = √〈u, u〉 = √ut Gu


Eq. 7.2
Using this norm, the distance between two points p and q in Ω can be measured in the metric G as

dG (x, y) = ‖x − y‖G = √(x − y)t G(x − y)


Eq. 7.3
One recognizes the equation of an ellipsoid with semi-axis lengths 1/√λi. Since O is an orthonormal
matrix, it can also be seen as a rotation matrix and the unit sphere in the metric is thus an ellipsoid
in Rn whose axes directions are given by the eigenvectors {vi} of G and whose semi-axis lengths are
equal to 1/√λi in the direction vi, where λi is the eigenvalue corresponding to vi. Incidentally, this
construction proves that there is a natural bijection between ellipsoids and metrics. (see Figure 7.1).

Figure 7.1 Representation of a 3D Metric with Eigenvalues λ1, λ2 and λ3 as an Ellipsoid – (Courtesy of
[Labbe])

213 Borouchaki, H., George, P. L., Hecht, F., Laug, P., and Saltel, E. Delaunay mesh generation governed by metric
specifications. part I algorithms. Finite Elem. Anal. Des. 25, 1-2 (1997), 61–83.
214 Diaz, M. C., Hecht, F., Mohammadi, B., and Pironneau, O. Anisotropic unstructured mesh adaptation for flows

simulations. Internat. J. Numerical Methods Fluids 25 (1997), 475–491.


215 Hecht, F., and Mohammadi, B. Mesh adaption by metric control for multi-scale phenomena and turbulence.

AIAA 35th Aerospace Sciences Meeting & Exhibit (1997).


216 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
139

7.1.1.3 Distortion
The notions of metrics and metric fields are introduced to convey the stretching of spaces. To create
a solid theoretical framework, it is required to be able to express how differently two metrics see
distances and geometrical objects. For this purpose, [Labelle and Shewchuk] introduced the concept
of distortion between two metrics. We recall here their definition. Properties and limitations as well
as a new alternative that remedy those shortcomings are proposed by [Labelle and Shewchuk]
introduced the concept of distortion between two points p and q of Ω as

φ(p, q) = φ(Gp , Gq ) = Max{‖Fp Fq−1 ‖, ‖Fq Fp−1 ‖}


Eq. 7.4
where ∥·∥ is the Euclidean matrix norm, Observe that φ(Gp,Gq) ≥ 0 and φ(Gp,Gq) = 1 when Gp = Gq.
7.1.1.4 Locally Uniform Anisotropic Meshes
The Delaunay triangulation has been extensively studied and is well known to possess useful and
well-defined properties [Preparata & Shamos]217. While the theoretical aspect of the approach has
been thoroughly studied, its practicality is comparatively not as well explored. We first recall the
required theoretical basis and detail some minor changes brought to the theory after practical
experimentation. We then dive in the heuristic analysis of the behavior of the algorithm and its
parameters and propose some improvements. We introduce an implementation of the anisotropic
Delaunay refinement algorithm introduced by [Boissonnat et al.]218. This implementation of the star
set is completely new and results in significant improvements in terms of computational speed,
robustness and genericity over the former implementation that was used. The empirical study of our
implementation and of the algorithm is comprehensive and produce (minor) theoretical
improvements. We investigate the practicality of the algorithm, analyze its limitations and propose
various fixes that attempt to remedy these limitations. Attempts have been made to extend the
notion of Delaunay triangulation to the anisotropic setting either by adapting the famous Bowyer-
Watson algorithm [Mavriplis]219, [Borouchaki]220, [Dobrzynski]221, [Alauzet]222or as the dual of an
anisotropic Voronoi diagram [Labelle and Shewchuk]223, [Du and Wang]224. However, neither class
of method offer in all dimensions the theoretical guarantees nor the practical robustness that we are
interested in. A theoretically sound framework for Delaunay-based anisotropic meshes was
introduced by [Boissonnat et al.]225, called locally uniform anisotropic meshes. Locally uniform
anisotropic meshes are simplicial complexes in which the star of each vertex is Delaunay for the

217 Preparata, F. P., and Shamos, M. Computational geometry: an introduction. Springer Science & Business, 2012.
218 Boissonnat, J.-D., Wormser, C., and Yvinec, M. Locally uniform anisotropic meshing. Proceedings of the
twenty-fourth annual symposium on Computational geometry (2008), ACM, pp. 270–277.
219 Mavriplis, D. J. Adaptive mesh generation for viscous flows using triangulation. Journal of computational

Physics 90, 2 (1990), 271–291.


220 Borouchaki, H., George, P. L., Hecht, F., Laug, P., and Saltel, E. Delaunay mesh generation governed by metric

specifications. part Ialgorithms. Finite Elem. Anal. Des. 25, 1-2 (1997), 61–83.
221 Dobrzynski, C., and Frey, P. Anisotropic Delaunay mesh adaptation for unsteady simulations. Proceedings of

the 17th International Meshing Roundtable (2008), 177–194.


222 Alauzet, F., and Loseille, A. A decade of progress on anisotropic mesh adaptation for computational fluid

dynamics. Computer-Aided Design 72 (2016), 13–39.


223 Labelle, F., and Shewchuk, J. R. Anisotropic Voronoi diagrams and guaranteed-quality anisotropic mesh

generation. Proceedings of the 19th annual symposium on Computational geometry (New York, NY, USA, 2003),
ACM Press, pp. 191–200.
224 Du, Q., and Wang, D. Anisotropic centroid Voronoi tessellations and their applications. SIAM Journal on

Scientific Computing 26, 3 (2005), 737–761.


225 Boissonnat, J.-D., Wormser, C., and Yvinec, M. Locally uniform anisotropic meshing. Proceedings of the

twenty-fourth annual symposium on Computational geometry (2008), ACM, pp. 270–277.


140

metric attached to the vertex. The use of anisotropic stars, inspired by the works of [Shewchuk]226
and [Schoen]227, is combined with the sliver removal techniques proposed by [Li and Teng]228-229.
These techniques are adapted to the anisotropic setting to construct a star-based refinement
algorithm that cleverly selects refinement points. The algorithm works in any dimension and offers
guarantees on its termination and on the quality (size and shape) of the final simplexes.
7.1.1.5 The Star Set
Many algorithms have been devised to construct Euclidean Delaunay triangulations, but they cannot
be simply extended to arbitrary metric fields. Although the computation of a curved Riemannian
Delaunay triangulation is difficult, it is easy to compute the Delaunay triangulation of a set of points
P with respect to the metric Gp (Delp(P)). Any metric-dependent geometric construction on a set of
points P, like the Voronoi diagram or a simplex circumcircle, can therefore be obtained for the metric
Gp by the following set of operations. First, compute the transformed point set. Then, compute the
construction with the Euclidean norm on and transform the result back through . The triangulation
is thus simply the image through the stretching transformation F−1p of the Euclidean Delaunay
triangulation Del(Fp(P)) where Fp(P) = {Fppi, pi ∈ P}. As explained before, a sphere in metric space
is an ellipsoid in the Euclidean space. Each simplex of a uniformly anisotropic Delaunay triangulation
Delp(P) thus possesses an empty circumscribing ellipsoid, the inverse-transformed Delaunay ball
from metric to Euclidean space (see Figure 7.2).

Figure 7.2 An anisotropic Uniform Delaunay Triangulation (orange) and the Corresponding Stretched
Delaunay Balls and Circumcenters (black circles) - (Courtesy of [Labbe])

The central idea of the framework of locally uniform anisotropic meshes is to approximate at each
vertex p a given arbitrary metric field g by the uniform metric defined by extending Gp over the
domain. Similarly to the way affine functions are locally good approximations of a generic continuous
function, the approximation of an arbitrary metric field by a uniform metric will be accurate as long
we stay in a small neighborhood. At each vertex, a Delaunay triangulation that conforms to the

226 Shewchuk, R. Star splaying: an algorithm for repairing Delaunay triangulations and convex hulls. Proceedings
of the twenty-first annual symposium on Computational geometry (New York, NY, USA, 2005).
227 Schoen, J. Robust, guaranteed-quality anisotropic mesh generation. M.S. thesis, UC at Berkeley, 2008.
228 Li, X.-Y. Sliver-free Three Dimensional Delaunay Mesh Generation. PhD thesis, University of Illinois at Urbana

Champaign, PhD thesis, University of Illinois at Urbana-Champaign 2000.


229 Li, X.-Y., and Teng, S.-H. Generating well-shaped Delaunay meshed in 3d. Proceedings of the twelfth annual

ACM-SIAM symposium on Discrete algorithms (2001).


141

uniform metric field of that vertex is constructed. These independent triangulations can under some
density conditions be combined to obtain a final triangulation of the domain.
7.1.1.6 Stars and Inconsistencies
The star of a vertex p in a simplicial complex K, denoted by Sp, is defined as the sub-complex of K
formed by the set of simplexes that are incident to p. The idea of considering independent stars at the
vertices of a point set
was first conceived by
[Shewchuk] to handle
moving vertices in finite
element meshes. This
structure was also
employed by [Schoen],
who introduced
anisotropic stars whose
connectivity is obtained
by building an isotropic
Delaunay mesh of a
transformed point set.
The star Sp of p ∈ P is in
that case extracted from
the complex Delp(P).
This construction was Figure 7.3 Two stars Sp and Sq forming an inconsistent
described in the configuration - (Courtesy of [Labbe])
previous section and
forms the core of the locally uniform anisotropic mesh framework. The collection of all the stars is
called the (anisotropic) star set of P and is noted S(P). As the connectivity of each star is set according
to the metric Gp at the center of the star, a given n-simplex has n + 1 different Delaunay balls, one
with respect to the metric of each vertex of the simplex. Consequently, there are in general
inconsistencies among the stars of the sites: a simplex τ appearing in the stars of some of its vertices,
may not appear in the stars of all of them (Figure 7.3). If a simplex is involved in such configuration,
it is said to be inconsistent. Stars containing such simplexes are inconsistent stars and a star set
with at least one inconsistent star is also said to be inconsistent. Oppositely, a star whose simplexes
are consistent is said to be consistent and a star set is if all of its stars are consistent. The main idea
of the algorithm is to refine the set of sites P while maintaining the set of stars S(P) until each star Sp
in S(P) is composed of simplexes that are well shaped and well sized in the metric Gp, and until there
are no more inconsistencies among the stars. Once a consistent star set is achieved (which is proven
to happen), all the stars can be stitched into a single triangulation: a locally uniform anisotropic mesh
that conforms to the specified metric field and offers guarantees on the quality of the simplexes.
7.1.2 Refinement Algorithm
The simplest idea to refine a simplex τ in a star Sp is to insert a new site at the center cp(τ) of the
Delaunay Gp-ball of τ. This technique is very common in Delaunay refinement algorithm as the
Delaunay ball of the simplex is by construction not empty after the insertion of its center and thus
the simplex cannot appear in the new Delaunay triangulation. This simple strategy may unfortunately
lead to cascading occurrences of inconsistencies, for the same reason that the refinement of Delaunay
meshes cannot remove slivers. An alternative strategy is devised, inspired by the work of [Li and
Teng] to avoid slivers in isotropic meshes. The adaptation of [Li and Teng’s] techniques to the present
algorithm and the development of the refinement algorithm are described in detail in the following.
142

7.1.3 Discussion on the Parameters


The algorithm relies on various parameters: φ0, r0, ρ0, σ0, β, δ... It can be difficult, at first glance, to
estimate their influence on the outcome in term of speed, number of vertices or quality of the
produced mesh. We investigate each parameter independently.
7.1.3.1 Parameter φ0
The rule with the highest priority in the algorithm is the distortion rule, which bounds the maximal
distortion in a simplex to be at most φ0, with the intent of increasing the odds of finding a valid
solution when the Pick_valid procedure is called later in the algorithm. The value φ0 has naturally a
strong impact over both the computation time and the final mesh: if φ0 is chosen too large, the
Pick_valid procedure will be at first largely unsuccessful, causing many unsuccessful and costly
insertions till the sampling increases and valid points are be found. Oppositely, if φ0 is chosen too
small, simplexes might be refined even if they already satisfy all other criteria including consistency
which is pointless and costly and thus undesirable.
To determine what is the optimal value forφ0, we look at the number of vertices in a final mesh, the
number of calls to the Pick_valid procedure and their success percentage, and the computation time
for various values of φ0. All the parameters except for φ0 are kept constant and the sizing constraint
r0 is chosen large enough as to only be responsible for a negligible number of vertices added. The
domain is a square of side 4 and centered on c = (0 , 0) endowed with the hyperbolic shock. Results
are shown in Figure 7.4 (left). For the sake of completeness, we also consider a three-dimensional
domain, a cube of side 3 and centered on c = {1.5, 1.5, 1.5}, endowed with a unidimensional shock
metric field. Since the goal is to compare the influence of φ0 for the refinement of cells, we disable
the refinement of surface stars and construct a pure volume mesh. Results can be found in Figure
7.4 (right). These experiments provide a lot of interesting and unexpected information:

• The success percentage of the Pick_valid procedure increases when φ0 decreases, as the
theory predicts. However, a low value of φ0 will very quickly be responsible for the insertion
of an exceptionally large number of vertices (red curves).
• The final number of points is greater whenever φ0 is used than when it is not (blue curves).
• However small φ0 is, there are still inconsistencies that appear (the teal curves show the
number of vertices inserted to solve inconsistencies), proving that the Pick_valid procedure

Figure 7.4 Influence of the Parameter ψ0 in a 2D (shown on the left) and 3D Domain (shown
on the right) - (Courtesy of [Labbe])
143

is a necessary part of the algorithm. Even more interestingly, they add a relatively constant
number of vertices, indicating that the distortion rules did not help.

7.1.3.2 Parameters r0 and ρ0


The values of r0 (size criterion) and ρ0 (shape criterion) naturally affect the number of vertices as
additional vertices must be inserted to satisfy these criteria. In isotropic mesh generation, the
number of vertices follows roughly the square of the sizing field in 2D and the cube in 3D: if the sizing
field is divided by 2, there are 4 times more vertices in 2D and 8 times more vertices in 3D. As
explained before, the size parameter is usually left at 1 as the size of the elements can be directly
encoded in the metric. We exceptionally scale r0 instead of the metric field in this experiment for the
purpose of clarity. This relation is somewhat similar in the case of anisotropic mesh generation. Here
again, the number of points added by the inconsistency queue (that can be roughly computed as the
difference of the green and blue curve) is more or less constant, even when the number of points
inserted for the size rule is important. The shape parameter ρ0 and its corresponding rule ensure that
all simplexes satisfy shape requirements, which is both useful in itself but also improve the odds of
finding valid solutions in the Pick_valid procedure. This parameter has, in practice, very little
influence and the corresponding rule is very rarely called upon. This can be seen as a consequence
from the fact that Rules 1 and 2 (distortion and size) insert the circumcenter, an already appropriate
choice to create meshes of good quality.
7.1.3.3 Parameters β and δ
Contrary to the parameters φ0 and ρ0, who serve to satisfy quality requirements on simplexes ahead
of Pick_valid procedure calls, the parameters β and δ are directly involved in the Pick_valid
procedure. Indeed, the parameter β controls the size of acceptable inconsistencies and δ determines
the size of the picking region Pp(τ ) as its radius is given by δrp(τ ). We use a cubic domain of side 1,
centered on (0.5, 0.5, 0.5) and endowed with a unidimensional shock metric field with maximal
anisotropy 3. The number of Pick_valid tries is fixed at 60 but the value of δ varies. We investigate the
final number of vertices in the mesh and the quality of the simplices. For planar and surface domains,
the quality is estimated with the formula of [Zhong et al.]230:

A
Q = 4√3
ph
Eq. 7.5
where A is the area of the triangle, p the perimeter and h the longest edge (all computed in the metric).
For cells, we use the quality estimation of [Frey and George]231

V2
Q = 216√3 3
𝐴Σ
Eq, 7.6
where V is the volume of the tetrahedron, and A∑ the sum of the areas of the four facets (all compute
in the metric). Both these quality measures live between 0 and 1, with 1 signaling the highest quality.
Results are detailed in Table 7.2. As expected, more solutions are available in the pick valid
algorithm when the picking region is enlarged, resulting in smaller meshes. However, the metric is
followed more loosely and the simplexes of the meshes have lower quality. Note that in extreme cases
–δ close to 1 – the final number of vertices starts to increase again, as the refinement points are often

230 Zhong, Z., Guo, X., Wang, W., Lévy, B., Sun, F., Liu, Y., and Mao, W. Particle-based anisotropic surface meshing.
ACM Trans. Graph. 32, 4 (2013).
231 Frey, P., and George, P. L. Mesh generation: Application to finite elements. Hermes Science, 2008.
144

not creating satisfying elements with respect to other criteria, such as the shape. The parameter β is
assigned the value 2.5 by default, but changing this value (within 1 to 5) has barely any influence on
the outcome.

Table 7.2 Comparison of the number of vertices and quality of the mesh for different values
of δ - (Courtesy of [Labbe])

7.1.3.4 Parameters σ0
The parameter σ0 controls the maximal slivery of the simplexes. A majority of inconsistencies do not
stem from slivery quasi-cosphericities, and thus this parameter has little influence on the outcome.
By increasing its value, one simply trades the removal of inconsistencies for the removal of silvers,
but the result stays the same. Furthermore, the slivery and inconsistent queue both rely on the
Pick_valid procedure to insert a point and thus there is no difference in the running time of the
algorithm either.

7.1.4 Results and Limitations


7.1.4.1 Uniform Metric Fields
A uniform metric field associates to any point of the domain the same metric. Note that since all the
metrics are identical, neighboring stars necessarily have compatible connectivity and there can be no
inconsistencies. It should be noted that in the setting of uniform metric fields, an anisotropic mesh
can simply be obtained by stretching the domain through the usual metric transformation (the
square root of the metric), meshing isotopically in the metric space and finally stretching back the
constructed isotropic Delaunay triangulation to obtain an anisotropic Delaunay triangulation which
is in fact what is done in each star, but for different metrics in the general case. This setting is handled
without any issue by the algorithm and our implementation, whether in the setting of planar, surface
or volume domains: the algorithm terminates, all criteria are honored and we obtain edges that have
a length close to 1. As the algorithm perform most computations in the metric space where
triangulations are isotropic the algorithm is extremely robust and can handle anisotropy ratios up to
1017; numerical issues appear in the transformations for higher ratios, which could easily be fixed by
changing number types (but no one realistically deals with such ratios).
7.1.4.2 Shock-Based Metric Fields on Planar Domains
We depart from uniform metric fields and consider a planar domain a square endowed with various
metric fields. These artificial metric fields are chosen to exhibit different phenomena: Straight shock
- A region of high-anisotropy along a relatively constant direction in between two regions of lower
anisotropy. This corresponds to a change in the eigenvalues of the metric. Waves along a (straight)
shore is a good illustration of such phenomenon. Rotational anisotropy - A region where the
anisotropy ratio is constant, but the direction of the stretching is changing. This corresponds to a
change in the eigenvectors of the metric. We will sometimes say that the metric is rotating to
describe such regions. These two phenomena are the primal blocks and can be combined and scaled
to form any more complex or real-world metric fields.
145

7.1.4.3 Starred
Our first example uses the Starred metric field, detailed in Appendix A of [Labbe]232. The anisotropy
of this metric field varies between 1 and 10. The Starred metric field possesses long compared to the
prescribed size of the elements – regions of straight anisotropy, and regions where the metric field is
rotating (and the anisotropy ratio is lower) in between, thus providing a good first example of an
arbitrary metric field. The domain is a square of side 10, centered on the origin. Figure 7.5- A square
of side 10 and centered on the origin, endowed with the Starred metric field (left). The final mesh is
composed of 47126 vertices and 94366 triangles. On the right, a zoom on one of the rotating regions.
The algorithm terminates without any issue and the size and shape criteria are solved quickly (4499
vertices are needed). However, the resolution of inconsistencies is difficult and requires around
40000 additional vertices. While regions where the metric field is rotating are clearly suffering from
inconsistencies, regions where the metric field is straight fare only slightly better and also require
many vertex insertions to solve inconsistencies.

Figure 7.5 A square of side 10 and centered on the origin, endowed with the “Starred” metric field
(left) - (Courtesy of [Labbe])

7.1.4.4 Hyperbolic
The hyperbolic shock metric field has already been used several times in previous sections and its
definition is detailed. This metric field is characterized by an anisotropy ratio that varies between 1
and 15 and is interesting as its anisotropy ratio does not vary (too much) along the shock, despite the
shock being shaped like a sinusoidal curve. We shall refer to the regions of the shock where the
eigenvectors change rapidly as the“turns”. In these turns, the process of generating a good
anisotropic mesh is difficult as the eigenvectors of the metrics are changing rapidly. As larger meshes
have already been produced in other sections and very dense refinement was observed at the turns,
we here zoom on one of these regions. The result is shown in Figure 7.6. The size and shape
constraints are quickly satisfied and only require around 414 vertices, but the final mesh is composed
of 4621 vertices. Indeed, the resolution of inconsistencies is difficult especially within the shock and
many vertices are required to obtain a consistent mesh despite a relatively low maximum anisotropy
ratio. Consequently, the metric field is honored (and consequently the sizing field is too), but
simplexes are often much smaller and then resolution of inconsistencies much longer than what we

232 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
146

hoped for.

Figure 7.6 Anisotropic Triangulation of a Rectangle Endowed with the Hyperbolic Shock
Metric Field - (Courtesy of [Labbe])

7.1.4.4.1 Swirl
The Swirl metric field aims to
represent a whirling phenomenon.
Contrary to the two previous
metric fields, the Swirl metric field
has a relatively constant
anisotropy ratio and is rotating
almost everywhere. Figure 7.7
shows the mesh obtained by our
implementation for a square of
side 6 endowed with this metric
field. The result exhibits the same
issues as in the previous
experiments: the resolution of
inconsistencies is difficult and
many vertices are required to
solve inconsistencies after all
other criteria are satisfied.
7.1.4.4.2 Curvature-Based
Metrics Fields on
Surfaces
We now consider the setting of Figure 7.7 A square of side 6 and centered on the origin,
domains embedded in R3, and the endowed with the “Swirl” metric field - (Courtesy of Labbé et al.)
generation of pure surface
147

meshes. The metric field induced by the curvature of the domain is known to prescribe an anisotropy
that is asymptotically optimal - a mesh whose elements follow this metric field will require the
lowest number of element (out of all the meshes) to achieve a given approximation of the domain. It
is thus interesting to observe the results produced by our algorithm for this specific metric field.
7.1.4.4.3 Optimization
Optimization is often used to improve the quality of a triangulation. Centroid Voronoi tessellations
are Voronoi diagrams whose generators are also the centroids (centers of mass) of their respective
cells. The famous Lloyd algorithm233 iteratively moves the seeds to the center of mass of their
respective cell and recomputed the Voronoi diagram of this new seed set. We approximate the
Riemannian Voronoi center of mass of a cell V with the following formula:

∑i ci |t i |gi
cg =
∑i|t i |gi
Eq. 7.7
where |ti|gi is the area of the triangle ti in the metric gi and the ti make a partition of V. The canvas
conveniently provides this decomposition of a geodesic Voronoi cell in small triangles, making the
approximation of cg accurate. The formula in Eq. 7.7 does not extend to surfaces as the result of the
weighted sum might not lie on the domain. In that setting, we use a process similar to [Wang et al.]234.
As its Euclidean counterpart, this algorithm comes with no guarantees (not even for termination) but
works well in practice. In Figure 7.8, the initial SRDT of 4000 seeds has been optimized with 100
iterations. The metric field is well captured with few elements, especially in the rotational region.
7.1.4.5 Discrete Riemannian Voronoi Diagrams
Several authors have considered Voronoi diagrams based on anisotropic distances to obtain
triangulations adapted to an anisotropic metric field. These authors hoped to build upon the well-
established concepts of the Euclidean Voronoi diagram and its dual structure, the Delaunay
triangulation, for which many theoretical and practical results are known. The computation of
geodesic path lengths in any domain is a difficult task as there is generally no closed form available.
The wide range of domain can be shrunk, through mesh generation, to consider only piecewise-linear
domains. Even in this simpler setting, the computation of geodesic distances and paths is still a
complex problem to which much work has been dedicated in the last decades. Despite many studies,
geodesic distances still cannot be obtained exactly for most domains endowed with an arbitrary
metric field. Nevertheless, we introduce a discrete structure that is, under some conditions,
combinatorically equivalent to the Riemannian Voronoi diagram and whose duals are triangulations.
7.1.4.5.1 Advantages Over Isotropic Canvasses
To ensure that the nerve of the Riemannian Voronoi diagram is captured in the case of an isotropic
triangulation used as canvas, the (uniform) sizing field of the canvas must be small enough such that
Voronoi bisectors are clearly distinct. As the anisotropy ratio increases, Voronoi cells become thinner
and the number of canvas vertices required to capture the nerve rapidly grows (Figure 7.9, left and
center235). On the other hand, the placement of vertices in an anisotropic canvas is by construction
not uniform and does not suffer from the same issue: as the anisotropy of the metric field grows,
Voronoi cells and canvas simplices become thinner in tandem. The number of canvas vertices in a

233 S. Lloyd, Least squares quantization in pcm, IEEE Trans. Inf. Theo. 28 (2006) 129–137.
234 X. Wang, X. Ying, Y.-J. Liu, S.-Q. Xin, W. Wang, X. Gu, W. Mueller-Wittig, Y. He, Intrinsic computation of
centroidal Voronoi tessellation (CVT) on meshes, Computer-Aided Design 58 (2015) 51–61.
235 In the case of an isotropic canvas, increasing the anisotropy of a cell increases the number of vertices

required to properly capture it (left and middle). This is not the case if the canvas can be anisotropic (left and
right).
148

Voronoi cell is thus relatively constant regardless of the anisotropy. As the star set satisfies a sizing
field of 0.1r0, the canvas edges are roughly 10 times smaller than the distance between seeds.
Consequently, the canvas is composed of approximately 10n more vertices than seeds, with n the
intrinsic dimension of the domain. The use of an anisotropic canvas greatly decreases the
computational time as the number of vertices in the canvas is drastically reduced, without any change
in the extracted nerve.
7.1.4.5.2 Straight Riemannian Delaunay Triangulation
By definition, the Riemannian Voronoi diagram captures the metric field more accurately than other
methods that typically only consider the metric at the vertices. This additional input of information
allows us to construct curved Riemannian Delaunay triangulations, but also has a positive influence
on the straight realization of the diagram. Figure 7.10 shows the different structures involved in our
algorithm during the generation of an anisotropic meshes for the sphere endowed with a hyperbolic
shock metric field236. On the left is the canvas (an isotropic triangulation here); the middle sphere
shows the discrete Riemannian Voronoi diagram computed upon this canvas; finally, the right picture
shows the dual of the discrete diagram, an anisotropic triangulation. Contrary to the previous
approaches introduced and investigated no over-refinement is observed, including in the regions
where the eigenvectors of the metric field are rotating (where the shock turns). The final mesh has
slightly fewer than 4000 vertices, which is the number of vertices that was required by our locally

Figure 7.8 The Optimized SRDT of 4000 Seeds in a Planar Domain Endowed with a Hyperbolic Shock
Induced Metric fFeld (left). On the right, a zoom on a rotational region of the metric field shows the
Difference between pre- (above) and post- (bottom) Optimization – (Courtesy of Labbé et al.)

236The unit sphere endowed with the hyperbolic metric field (approximately 4000 vertices). Isotropic canvas
(left), discrete Riemannian Voronoi diagram (center), and straight Riemannian Delaunay triangulation (right).
149

uniform anisotropic meshes to generate a mesh of a only small region of that domain.

Figure 7.10 Isotropic and Anisotropic Canvas Sampling - (Courtesy of [Labbe])

Figure 7.9 Unit Sphere Endowed with the Hyperbolic Metric field - (Courtesy of [Labbe])
150

7.1.4.5.3 Curved Riemannian Delaunay Triangulation


The large amount of additional information that is provided by the canvas allows to construct curved
Riemannian Delaunay triangulations, which have not been produced before. Figure 7.11 shows the
discrete diagram and the curved Riemannian Delaunay triangulation for the Chair surface endowed
with a curvature-induced anisotropic metric field. In the computation of the curvature metric field,
the value ǫ = 0.7 is used (see Section A.2.1
in Appendix A of [Labbe]237). The curvature
of the simplexes is noticeable and the
metric field is well captured with only few
curved Riemannian simplexes.
Comparatively, a straight dual would
require more elements to obtain the same
approximation Figure 7.12 shows the
curved Riemannian Delaunay triangulation
dual of the Riemannian Voronoi diagram for
the hyperbolic shock metric field. We obtain
an aesthetically pleasing curved mesh that
conforms closely to the metric field.
7.1.4.6 Conclusion
We have presented an empirical study of
the locally uniform anisotropic meshes
framework, introduced by [Boissonnat et
al]238. During this study, we have
introduced minor changes to the theory and
provided a robust and generic Figure 7.11 The discrete Riemannian Voronoi
implementation of the algorithm. While the Diagram of 1020 seeds on the “Chair” surface,
algorithm is simple to understand, the with a curvature induced metric field; the edges
computation speed of a naive of the curved Riemannian Delaunay triangulation
implementation would be unreasonable. are traced in black - (Courtesy of [Labbe])
We presented an implementation of the
algorithm that is both robust and fast,
which is more difficult to achieve. The theoretical requirements are demanding, but in practice both
the geodesic and straight edge duals require relatively few points to become embedded
triangulations, even with nontrivial, highly distorted metric fields. The RVD and its duals are shown
to be particularly well suited to capture the metric field in regions where it is both anisotropic and
rotational. No preprocessing or smoothing of the metric field is required, a technique that is often
used and results in noticeable loss of anisotropy in this type of region239.

237 Mael Rouxel-Labbe, “Anisotropic mesh generation”, Université Côte d’Azur, 2016.
238 Boissonnat, J.-D., Wormser, C., and Yvinec, M. Locally uniform anisotropic meshing. Proceedings of the
twenty-fourth annual symposium on Computational geometry (2008), ACM, pp. 270–277.
239 M. Rouxel-Labbé, M. Wintraeckenb, J.D. Boissonnat, “Discretized Riemannian Delaunay triangulations”, 25th

International Meshing Roundtable (IMR25).


151

Figure 7.12 Discrete Riemannian Voronoi Diagram (top) and Curved Riemannian Delaunay
Triangulation (bottom) Endowed with the Hyperbolic Shock Metric Field - (Courtesy of
[Labbe])
152
153

8 Hybrid Meshes I
A hybrid grid contains a mixture of structured portions and unstructured portions. It integrates the
structured meshes and the unstructured meshes in an efficient manner. Those parts of the geometry
that are regular can have structured grids and those that are complex can have unstructured grids.
These grids can be non-
conformal which means that
grid lines don’t need to match at
block boundaries240. In recent
years due to accuracy
consideration while capturing
the physics (sun-layer in
boundaries), and in the same
time added flexibility in domain
discretization (automated
meshing using tetrahedral,
polyhedral, etc.), received lots of
attention. Figure 8.1 shows a
Hybrid mesh obtained from a
STL surface using an Figure 8.1 Hybrid Grid and Steady State Solution
OpenFOAM© meshing module
and solution for a steady-state incompressible turbulent flow.

8.1 Recent Advances in Hybrid Mesh Generation and Literature Survey241


8.1.1 Parallel Consideration
There is a need for an ever increasing resolution of flow field computations requiring more grid
points, therefore, it is essential for faster grid generation algorithms. Each processor generates the
surface grids for a number of surface patches. [L¨ohner]242 reports on the use of a parallel advancing
front algorithm for volume grid generation. The front is dynamically divided into boxes by use of the
octree algorithm. For each processor the grid is generated for a number of boxes. The number of
boxes is much larger than the number of processors. Another alternative is to first generate a surface
grid in parallel and then divide the surface grid and volume into smaller regions, as in [Larwood et
al]243. The volume grid in these regions is generated in parallel. Parallel grid generation by the
Delaunay algorithm has been presented in [Weatherill et al.]244.
8.1.2 Local Remeshing
[Ito et al.]245 describe a method where it is possible to introduce new components into an existing
grid without regenerating the entire grid. The grid needs only to be regenerated in the region where
the new component has been introduced. This speed up the time for the grid generation significantly.
A similar extension of the grid generator TRITET with routines for the generation of locally re-
meshed grids has been done. This local remeshing works also for hybrid grids, but the original

240 From Wikipedia, the free encyclopedia.


241 Lars Tysell, “Hybrid grid generation for viscous flow computations around complex geometries”, Technical
Reports from Royal Institute of Technology, Department of Mechanics, Stockholm, Sweden, 2010.
242 L¨ohner, R., A parallel Advancing Front Grid Generation Scheme. Paper AIAA 2000.
243 Larwood, B., Weatherill, N. P., Hassan, O. & Morgan, K. 2003, Domain Decomposition Approach for Parallel

Unstructured Mesh Generation. International Journal for Numerical Methods in Engineering, 2003.
244 Weatherill, N. P., Hassan, O., Morgan, K., Jones, J. & Larwood, B., “Towards Fully Parallel Aerospace Simulations

on Unstructured Meshes”. International Journal for Numerical Methods in Engineering, 2001.


245 Ito, Y., Murayama, M., Yamamoto, K., Shih, A. & Soni, B., Development of a Grid Generator to Support 3-D

Multizone Navier-Stokes Analysis. Paper AIAA-2008-7180.


154

prismatic layers must be kept. Figure 8.2 (a) shows the cavity in a grid where the grid around a
rotated airfoil is inserted into a grid around another airfoil. The cavity is formed by a set of inner and
outer boxes. Inside the cavity a grid is generated by the advancing front algorithm. The merged grid
is shown in Figure 8.2 (b). An application of this technique together with the flow solver Edge, see
[Eliasson]246, for store separation computations are reported in [Berglind]247 and [Berglind et al.]248.

(a) Before Merging (b) After Merging

Figure 8.2 Local Remeshing

8.1.3 Background Mesh


The use of stretched grids in the advancing front method, which was reported in [Tysell]249, has also
been reported in [Ghidoni et al.]250. The methods are similar but the specification of the background
grid differs from the smoothing technique used since the algorithm used here only modify the
background grid cell size for a node if it is larger than allowed by the prescribed expansion from the
nodes in the background grid connected to the node. The technique is similar to the one used for
isotropic cell sizes reported in [Kania & Pirzadeh]251, where surface curvature dependent grids also
are generated. A way to improve the initial background grid by introducing extra background grid
nodes using background boxes is given in [Tysell]252. This play somewhat the same role as the
concept of bounding boxes and volume sources introduced in [Pirzadeh]253. A method to achieve an

246 Eliasson, P., Nordstr¨om, J., Peng, S-H. & Tysell, L.,”Effect of Edge-based Discretization Schemes in
Computations of the DLR F6 Wing-Body Configuration”. Paper AIAA-2008-4153.
247 Berglind, T., Numerical Simulation of Store Separation for Quasi-Steady Flow. FOI-R-2761-SE, FOI, Swedish

Defense Research Agency, 2009.


248 Berglind, T., Peng, S-H. & Tysell, L., FoT25: Studies of Embedded Weapons Bays - Summary Report. FOI-R-2775-

SE, FOI, Swedish Defense Research Agency, 2009.


249 Tysell, L., CAD Geometry Import for Grid Generation. Proceedings of the 11th ISGG Conference on Numerical

Grid Generation, International Society of Grid Generation (ISGG), Montreal, Canada, 2009.
250 Ghidoni, A., Pelizzari, E., Rebay, S. & Selmin, V., 3D Anisotropic Unstructured Grid Generation. International

Journal for Numerical Methods in Fluids, 51, pp. 1097-1115, 2006.


251 Kania, L. & Pirzadeh, S., A Geometrically-derived Background Function for Automated Unstructured Mesh

Generation. Paper AIAA-2005-5240.


252 Tysell, L. 2009, CAD Geometry Import for Grid Generation. Proceedings of the 11th ISGG Conference on

Numerical Grid Generation, International Society of Grid Generation (ISGG), Montreal, Canada.
253 Pirzadeh, S. 2008, Advanced Unstructured Grid Generation for Complex Aerodynamic Applications. Paper

AIAA-2008-7178.
155

even better background grid by first generating a coarse volume grid and then interpolating the
surface cell size specification into this grid and finally using this grid as a new background grid is
given in [Tysell ]254. This is an alternative to the octree background grid generation method given in
[McMorris & Kallinderis]255. For further details, please consult the work by [Tysell]256.
8.1.4 Boundary Viscous Meshes & Sharp Corners
In [Aubry & L¨ohner]257 the same prismatic grid generation algorithm as was given in [Tysell] to
compute the most visible normal vector to a surface is described. A problem in prismatic grid
generation is the quality of the grid in corners of the surface. [Sharow et al.]258 suggest this can
be solved by generating extremely fine surface grids at corners, having a cell size of about the height
of the first cells in the prismatic layer. A drawback of this approach is of course that the number of
cells will increase considerably. [Soni et al.]259 use the concept of a semi-structured topology in the
near surface regions, generated by a parabolic grid generation algorithm. In this concept corners can
be handled by excluding or introducing nodes from one layer to the next layer. Khawaja et al. (1999)
introduce the concept of varying number of prismatic layers, where different surface nodes can have
different number of layers. This concept has also been used in [Tysell ]260. For some surface nodes
there may not be possible to define a visible normal vector. Thus a prismatic layer cannot be
generated at these nodes. A remedy is to use multiple normal vectors at these nodes. The use of
multiple normal also improve the grid quality at sharp convex corners like wing trailing edges. In
[Steinbrenner & Abelanet]261 difficult regions, especially concave regions, is handled by collapsing
cells. Thus, the number of nodes in one layer may be less than in the previous layer. This kind of
technique can only be used for layers consisting of stretched tetrahedra instead of prisms. Further
details can be obtained at [Tysell]262.
8.1.5 Procedures for Mesh Generation
In all the methods above the stretched cells close to the boundary have been generated first and the
isotropy tetrahedra have been generated in a second step. The methodology has been depicted in
Figure 8.3 using a Centrum™ generated hybrid grid263. [Ito & Nakahashi]264 and [Karman]265 use a

254 Tysell, L. 2009, CAD Geometry Import for Grid Generation. Proceedings of the 11th ISGG Conference on
Numerical Grid Generation, International Society of Grid Generation (ISGG), Montreal, Canada.
255 McMorris, H. & Kallinderis, Y. 1997, Octree-Advancing Front Method for Generation of Unstructured Surface

and Volume Meshes. AIAA Journal, 35 (6), pp. 976-984.


256 details c256 Lars Tysell, “Hybrid grid generation for viscous flow computations around complex geometries”,

Technical Reports from Royal Institute of Technology, Department of Mechanics, Stockholm, Sweden, 2010.
257 Aubry, R. & L¨ohner, R., Geration of Viscous Grids with Ridges and Corners. Paper AIAA-2007-3832.
258 Sharow, D., Lou, H. & Baum, J. 2001, Unstructured Navier Stokes Grid Generation at Corners and Ridges. Paper

AIAA-2001-2600.
259 Soni, B., Thompson, D., Koomullil, R. & Thornburg, H. 2001, GGTK: A Tool Kit for Static and Dynamic Geometry-

Grid Generation and Adaptation. Paper AIAA-2001-1164.


260 Tysell, L. 2007, The TRITET Grid Generation System. Proceedings of the 10 th ISGG Conference on Numerical

Grid Generation, International Society of Grid Generation (ISGG), Heraklion, Crete, Greece.
261 Steinbrenner, J. & Abelanet, J. 2007, Anisotropic Tetrahedral Meshing Based on Surface Deformation

Techniques. Paper AIAA-2007-0554.


262 details c262 Lars Tysell, “Hybrid grid generation for viscous flow computations around complex geometries”,

Technical Reports from Royal Institute of Technology, Department of Mechanics, Stockholm, Sweden, 2010.
263 This geometry represents airflow over a transonic transport aircraft, complete with a pylon and flow

through nacelle attached to the wing. A hybrid mesh was generated using CENTAUR containing both prisms in
the boundary layer and tetrahedra in the interior. A symmetry plane was used so that only half the geometry
needed to be modeled.
264 Ito, Y. & Nakahashi, K., Improvements in the Reliability and Quality Un-structured Hybrid Mesh Generation.

International Journal for Numerical Methods in Fluids, 2004.


265 Karman, S., Unstructured Viscous Layer Insertion Using Linear-Elastic Smoothing. AIAA Journal, 2007.
156

different strategy where a grid consisting of isotropy tetrahedra has been generated first. In a second
step this grid is pushed away from the boundary and the gap is filled with prismatic cells. A drawback
with this method is that it will likely be a jump in cell size at the interface between the prismatic layer
and the isotropy tetrahedra, since it is difficult to push the initial tetrahedra far enough without
inversion to get a sufficient height of the prismatic layer. [L¨ohner & Cebral]266 present a method
where an isotropic tetrahedral grid is generated first and then refined with stretched tetrahedra
close to the boundary. The use of prismatic layers along imaginary surfaces in the flow field in order
to catch shocks is presented in [Shih et al.]267. Pointwise™ is advising following step for their mesh
generation, specifically airplane geometry268. The procedure can be summarized as:

➢ Advancing Front Orthogonal surface mesh generated automatically on watertight solid model
➢ Generates boundary aligned isotropic triangles
➢ Anisotropic triangles grown off slat, wing, flap LE using T-Rex
➢ Structured diagonalized meshes created on slat, wing, flap TE surfaces to comply with TE
point req.
➢ Spacing’s applied to key locations in surface mesh.
➢ Chord wise/span wise number of grid points increased to reduce area ratio/aspect ratio to
reasonable levels.
➢ Manually correct problem areas that were geometry limited.
➢ Grow anisotropic tetrahedral off surface mesh based on refinement level growth rate and
wall spacing.
➢ Insert equilateral tetrahedral into remainder of volume using modified Delaunay method.

Figure 8.3 Hybrid Mesh on a Wing-Body-Pylon-Nacelle Configuration – Courtesy of Centrum®

266 L¨ohner, R. & Cebral, J. 2000, Generation of Non-Isotropic Unstructured Grids via Directional Enrichment.
International Journal for Numerical Methods in Engineering, 49 (1-2), pp. 219-232.
267 Shih, A., Ito, Y., Koomullil, R., Kasmai, T., Jankun-Kelly, M., Thompsson, D. & Brewer, W. 2007, Solution

Adaptive Mesh Generation using Feature Aligned Embedded Surface Meshes. Paper AIAA-2007-0558.
268 Carolyn D. Woeber , “Pointwise Unstructured and Hybrid Mesh Contributions to GMGW-1”, 1st Geometry and

Mesh Generation Workshop Denver, CO June 3-4, 2017


157

8.1.6 Dynamic Mesh


The spring analogy method in [Batina]269 for grid deformation easily gives grid inversion for larger
deformations. This has been improved by [Farhat et al. ]270 by the introduction of torsion springs in
addition to the tensions springs. In [Acikgoz & Bottaasso]271 springs has been introduced also
between nodes and edges and not only between nodes as in the previous methods. This greatly
improves the capability to prevent the generation of inverted cells. Still there can be cells of bad
quality, especially close to the boundaries, since only translation of the boundary has been taken into
account. In [Martineau & Georgala]272 the rotation has been taken into account by rigid movement of
the nodes close to the boundary and use of the spring analogy away from the boundary. In
[Samareh]273 the use of quaternions has been introduced. Quaternions is an extension of complex
analysis to three-dimensional space, which are ideal for modeling rotations. Since the method in
[Tysell]274 solves a 4th order partial differential equation it is possible to have two boundary
conditions on the boundary. In the original paper the derivative of the displacement was set to zero
on the boundary. Later an option has been introduced to take the local rotation around each
boundary node into account.
Another modification of the algorithm is that in the discrete minimization problem the volume of the
tetrahedral is retained when solving the bi-harmonic equation, otherwise the movement will be too
rigid for the small tetrahedral close to the boundaries. If the deformation is governed by the Laplace
equation only the original formulation is kept. In [Nielsen & Anderson]275 a structural mechanic
analogy is used by solving the equation for isotropic linear elasticity. A similar approach is used in
[Sheta et al.]276 where the structural Navier equation is applied. Both methods show good results, but
they probably suffer by the fact that they both solve a 2nd order partial equation, thus only one
boundary condition can be applied. In [Liu et al. ]277 a fast algebraic method is presented based on
the deformation of a temporary grid generated from the boundary nodes only by a Delaunay
algorithm. The deformation of the grid is computed by interpolation in the temporary Delaunay grid.
The deformation of the boundary must be done in such small steps that the Delaunay grid is not
inverted. After each step the Delaunay grid may be regenerated. For large 3D grids this may take a
considerable time, and the method does not account for surface rotation. Another new algebraic

269 Batina, J., Unsteady Euler Algorithm with Unstructured Dynamic Mesh for Complex-Aircraft Aerodynamic
Analysis. AIAA Journal, 29 (3), pp. 327-333, 1991.
270 Farhat, C., Degand, C., Koobus, B. & Lesoinne, M. 1998, An Improved Method of Spring Analogy for Dynamic

Unstructured Fluid Meshes. Paper AIAA-1998-2070.


271 Acikgoz, N. & Bottasso, C. 2006, A new Mesh Deformation Technique for Simplicial and Non-Simplicial Meshes.

Paper AIAA-2006-0885.
272 Martineau, D. & Georgala, J., A Mesh Movement Algorithm for High Quality Generalized Meshes. AIAA-2004.
273 Samareh, J. 2002, Application of Quaternions for Mesh Deformation. Proceedings of the 8th International

Conference on Numerical Grid Generation in Computational Field Simulations, pp. 47-57, International Society
of Grid Generation (ISGG), Honolulu, Hawaii, USA.
274 Tysell, L. 2002, Grid Deformation of 3D Hybrid Grids. Proceedings of the 8th International Conference on

Numerical Grid Generation in Computational Field Simulations, pp. 265-274, International Society of Grid
Generation (ISGG), Honolulu, Hawaii, USA.
275 Nielsen, E. & Anderson, K. 2001, Recent Improvements in Aerodynamic Design Optimization on Unstructured

Meshes. Paper AIAA-2001-0596.


276 Sheta, E., Yang, H. & Habchi, S. 2006, Solid Brick Analogy For Automatic Grid Deformation For Fluid-Structure

Interaction. Paper AIAA-2006-3219.


277 Liu, X., Qin, N. & Xia, H. 2006, Fast Dynamic Grid Deformation Based on Delaunay Graph Mapping. Journal of

Computational Physics, 211 (2), pp. 405-423.


158

method is the use of radial basis functions, see [Jakobsson & Amignon]278 and [Allen & Rendall]279.

8.1.7 Adaptation
In [Peraire et al.]280 the use of the Hessian281, which measures the second derivatives of the flow
quantities, is introduced in order to generate directionally adapted grids. One drawback with the use
of the Hessian is that the grid can only be adapted to one selected flow quantity. It is in most cases
not possible to find one single flow quantity that works for all cases, or even for all regions of one
case. One remedy to this has been presented in [Castro-Diaz et al.]282 by computing the Hessian for
several flow quantities and then compute the combined Hessian by so called metric intersection. This
way to compute the metric intersection is not optimal, since only the combined eigenvalues are
computed, while the eigenvectors are arbitrarily chosen from one of the flow quantities. Thus, the
way to compute the combined metric from several flow quantities presented in [Tysell et al. (1998)]
is done in a more rigorous way, but the drawback may be that only the first derivatives of the flow
quantities are used instead of the second derivatives. Another way to compute the metric intersection
has been presented in [Frey & Alauzet]283. The Hessians can be represented by a set of ellipsoids and
in that paper the intersection is computed by computing the largest ellipsoid inscribed in all
intersected ellipsoids.
A rigorous way to compute this metric intersection has recently been presented in [McKenzie et al.
]284, where each Hessian is introduced successively by transforming the Hessian to a space where
the current transformation is represented by a sphere. In this space the intersection is easy to
compute. Both for first and second derivative adaptive sensors limits of the cell sizes must be set in
regions of flow discontinuities, where the cell size otherwise would become indefinitely small, and in
regions where the flow is varying very slowly, where the cell sizes would become too large. One
drawback by using the Hessian is also that the cell sizes tends to be indefinitely large where the flow
is varying linearly. I has been shown in [Venditti & Darmofal ]285 where they compare results for flow
around a multiple airfoil configuration, that a Hessian based method gives too large cell sizes in
regions of linearly varying flow compared to an adjoint based adaptation method. In the paper they
propose a combination of the two methods, where the cell sizes are taken from the adjoint
computation, whereas the directional stretching are taken from the Hessian. In [Remaki et al. ]286
the metric tensor is computed by taking a weighted sum of the Hessian and the gradient tensor, in

278 Jakobsson, S. & Amignon, O. 2005, Mesh Deformation using Radial Basis Functions for Gradient Based
Aerodynamic Shape Optimization. Technical Report FOI-R-1784-SE, FOI, Swedish Defense Research Agency.
279 Allen, C. & Rendall, T. 2007, Unified Approach to CFD-CSD Interpolation and Mesh Motion using Radial Basis

Functions. Paper AIAA-2007-3804.


280 Peraire, J., Peiro, J. & Morgan, K. 1992 Adaptive Remeshing for Three Dimensional Compressible Flow

Computations. Journal of Computational Physics, 103 (2), pp. 269-285.


281 In mathematics, the Hessian matrix or Hessian is a square matrix of second-order partial derivatives of a

scalar-valued function, or scalar field. It describes the local curvature of a function of many variables. The
Hessian matrix was developed in the 19th century by the German mathematician Ludwig Otto Hesse and later
named after him. Hesse originally used the term "functional determinants".
282 Castro-Diaz, M., Hecht, F., Mohammadi, B. & Pironneau, O., Anisotropic Unstructured Mesh Adaption for Flow

Simulations. International Journal for Numerical Methods in Fluids, 25 (4), pp. 475-491, 1997.
283 Frey, P. & Alauzet, F. 2005, Anisotropic Mesh Adaptation for CFD Computations. Computer Methods in Applied

Mechanics and Engineering, 194 (48-49), pp. 5068-5082.


284 McKenzie, S., Dompierre, J., Turcotte, A. & Meng, E. 2009, On Metric Tensor Representation Intersection and

Union. Proceedings of the 11th ISGG Conference on Numerical Grid Generation, International Society of Grid
Generation (ISGG), Montreal, Canada.
285 Venditti, D. & Darmofal, D. 2003, Anisotropic Grid Adaptation for Functional Outputs: Application to Two-

Dimensional Viscous Flows. Journal of Computational Physics, 187 (1), pp. 22-46.
286 Remaki, L., Nadarajah, S. & Habashi, W. 2006, On the a Posteriori Error Estimation in Mesh Adaptation to

Improve CFD Solutions. Paper AIAA-2006-0890.


159

order to get better grid resolution also in areas of linearly varying flow quantities. The use of the
Hessian and combinations of grid cell split, merge, swapping and node movement is used in [Xia et
al.]287 and [Dompierre et al.]288 for directional h-adaptation. In these papers the method has been
applied in two dimensions. The same method has been used to present three-dimensional results in
[Park & Darmofal]289. This method is faster than the total re-meshing used in [Peraire et al.]290 and
[Tysell et al.]291 but appears to give grids of less good quality. In [Pirzadeh]292 adaption by re-meshing
is done by only doing local re-meshing, where the grid needs to be adapted. In this way the time for
re-meshing is reduced. Further details can be obtained at [Tysell ]293.

8.2 Accuracy Consideration


It is known that the truncation error of a finite volume discretization depends on the shape of the
control volume. In particular, a trapezoidal approximation for a vertex based method, though
nominally second order, becomes first order accurate unless the control volume possesses central
symmetry294. For a vertex based discretization, the control volume associated with a given point
typically corresponds to the boundary of the collection of elements incident at that point. For a cell
centered discretization it is the element boundary that functions as the control volume. On a
structured mesh of hexahedra, one can generally expect central symmetry at all mesh points unless
there are extreme distortions in the mesh. A planar triangulation will have central symmetry if the
centered discretization it is the element boundary that functions as the control volume. On a
structured mesh of hexahedra, one can generally expect central symmetry at all mesh points unless
there are extreme distortions in the mesh. A planar triangulation will have central symmetry if the
triangles are all equilateral resulting in hexagonal control volumes for vertex based schemes. In an
anisotropic layer of highly stretched triangles central symmetry can only be achieved if the mesh
maintains a structured appearance (e.g. advancing layers) and all the diagonal edges are oriented in
the same direction. In a tetrahedral mesh, however, it appears impossible to achieve central
symmetry under any circumstances. The possible loss of second order accuracy in truncation error
for the Euler equations is localized and the first order error terms tend to cancel each other when
averaged over several elements. As a result, the global solution error should remain second order295.
It is possible, however, that this canceling of first order truncation error does not occur viscous
regions where second order derivatives of the flow variables play a significant role. If this is the case
then it will be necessary to maintain central symmetry of the control volumes in boundary layer
regions for Navier Stokes computations.

287 Xia, G., Li, D. & Merkle, C., Anisotropic Grid Adaptation on Unstructured Meshes. Paper AIAA-2001.
288 Dompierre, J., Vallet, M., Bourgault, Y., Fortin, M. & Habashi, W. 2002, Anisotropic Mesh Adaptation: Towards
User-independent Mesh-independent and Solver-independent CFD. Part III. Unstructured Meshes. International
Journal for Numerical Methods in Fluids, 39 (8), pp. 675-702.
289 Park, M. & Darmofal, D. 2008, Parallel Anisotropic Tetrahedral Adaptation. Paper AIAA-2008-0917.
290 Peraire, J., Peiro, J. & Morgan, K. 1992 Adaptive Remeshing for Three-Dimensional Compressible Flow

Computations. Journal of Computational Physics, 103 (2), pp. 269-285.


291 Tysell, L., Berglind, T. & Eneroth, P., Adaptive Grid Generation for 3D Unstructured Grids. Proceedings of the

6th International Conference on Numerical Grid Generation in Computational Field Simulations, pp. 391-400,
International Society of Grid Generation (ISGG), Greenwich, UK, 1998.
292 Pirzadeh, S. 2000, A solution-Adaptive Unstructured Grid Method by Grid Subdivision and Local Remeshing,

Journal of Aircraft, 37 (5), pp. 818-824.


293 details c293 Lars Tysell, “Hybrid grid generation for viscous flow computations around complex geometries”,

Technical Reports from Royal Institute of Technology, Department of Mechanics, Stockholm, Sweden, 2010.
294 Roe PL. Error estimates for cell-vertex solutions of the compressible Euler equations. ICASE Report No, 1987.
295 Giles MB. Accuracy of node-based solutions on irregular meshes. Eleventh international conference on

numerical methods in fluid dynamics. Williamsburg, VA, June 1988.


160

8.2.1 Comparing Mesh Type for Viscous Accuracy


After the emergence of so many different mesh types it is reasonable to assume that mesh generation
has reached a plateau and that the future is unlikely to expand the choice of element types or meshing
methods. Figure 8.4 lays out a subjective view of the suitability of different meshing methods for
the computation of high Reynolds number Navier Stokes solutions. The structured Multi-block
methods achieve good viscous
accuracy but are time consuming to
apply. Tetrahedral meshes with
anisotropic elements in boundary
layer regions are easier to create but
their accuracy is suspect. Overset
methods lie on the diagonal and thus
represent a compromise between ease
of use and their purported solution
accuracy for viscous flows. The best
meshing types should lie near the
diagonal and be as far away from the
origin as possible. It seems likely that
the trade-off between accuracy and
ease of use will shift so that perhaps
one of the meshing methods will stand
out as clearly superior in meeting the
dual requirements of solution Figure 8.4 Comparison of Different Mesh Types for RANS
accuracy and ease of application. In Computations
the best of all possible worlds one
might hope that all mesh generation methods would one day meet this goal. At the time of writing it
appears that composite multi-block meshes of hexahedra offer the best accuracy for RANS
computations but the lack of an algorithm for automated block decomposition renders these meshes
time consuming to create. At the other extreme, approach offers essentially fully automated mesh
generation but the poor quality of mesh elements near boundary surfaces severely limits the
accuracy of these mesh types, particularly for RANS computations. Overset meshes of hexahedra
represent a compromise that lies between these two extremes; they are more complicated to set up
than tetrahedral meshes and computations on overset meshes are arguably less accurate than
comparable computations on composite multi-block hexahedral meshes.

8.3 Extrusion Layer for Boundaries


Like the flow field when the boundaries, viscos layer, and outer flow flow are considered the different
formulation, the mesh generation filed is observing the similar situation. It is therefore essentials to
mesh surface and their approximately first, and then attained the interior domain. Specifically, an
advancing layer algorithm for extruding volume meshes from surface meshes of arbitrary topology,
appropriate for viscous fluid flows, is discussed296. This meshing style, which is been used for
majority of application, call bottom up meshing method.
8.3.1 Extrude297
The extrude method is a special case of the sweep method with a linear path defined by a direction
and a distance. The extrude method is illustrated in Figure 3. You should use the extrude method for

296 Satish Chalasani and David Thompson, “Quality improvements in extruded meshes using topologically
adaptive generalized elements”, Int. J. Num. Meth. Eng 2004.
297 Abaqus/CAE
161

regions with a constant cross-section and a linear sweep path. There are three required parameters
for a bottom-up extruded mesh. As with the sweep method, you choose the Source side that defines
the area on which Abaqus/CAE will create a two-dimensional mesh. You then select the starting and
ending point of a Vector that defines the extrusion direction and can also be used to define the
extrusion distance. Finally, you indicate the Number of layers to define the number of elements
between the source side and the end of the extruded mesh. If you use the vector to define the
extrusion distance, the definition is complete. However, you can Specify a distance or use Project to
target and select a target side to define the extrusion distance. The target side can be selected from
any geometry, mesh, or datum plane in the viewport; it need not be part of the same part instance as
the source. Abaqus/CAE
extrudes the two-
dimensional mesh from the
source side in the direction
of the extrusion vector. If you
select a target side to define
the extrusion
distance, Abaqus/CAE ends
the extruded mesh at the
target side. Figure
8.5 shows the source side
and target side on the left;
the extrusion vector (not
shown) extends from the
Figure 8.5 The Optional Target Side (colored white) is used to Define
center of the rectangular the Extrusion Distance
source side to the center of
the cylinder. The resulting
extruded mesh is an extension of the source side mesh. It closely matches the target side shape, but
no attempt is made to match the node positions of the mesh on the target side.
The Bias ratio parameter (i.e., fill ratio) defines a change in the element thickness between the source
side and the end of an extruded bottom-up mesh in which more than one layer is created. The bias
ratio is the ratio of the thickness of the first layer of elements in the extruded mesh to the thickness
of the last layer of elements. The default bias ratio of 1.0 has equal thickness elements throughout
the extrusion distance, but other algebraic functions such as exponentials can be used to concentrates
the layers at the target or so.
8.3.2 Sweep
The sweep method creates a three-dimensional mesh by moving a two-dimensional mesh along a
sweep path. The sweep method is illustrated in Figure 8.6. You should use the bottom-up sweep
meshing method when the region cross-section changes between the starting and ending sides. To
use the sweep method, you must first choose a Source side that defines the face or faces on
which Abaqus/CAE will create a two-dimensional mesh. The source side can be any combination of
geometric faces, element faces, and two-dimensional elements. You can define the sweep path by
selecting Connecting sides that define the sides of the desired sweep region. If you define connecting
sides, the mesh conforms closely to the geometry or mesh along the selected sides. Alternatively, for
geometry you can select a Target side and specify a Number of layers and allow Abaqus/CAE to
create the sweep path by interpolating between the source and target sides. The Target side is a
single face that Abaqus/CAE uses to end the mesh. The number of layers refers to the number of
element layers that will be placed between the source and the target sides—if you use connecting
sides, the two-dimensional meshes of the connecting sides define the number of element
162

layers. Abaqus/CAE sweeps the two-dimensional


mesh from the source side into the volume of the solid
region to create the mesh.
8.3.3 Typical Automated Meshing with Prismatic
Layer
There are different methodologies developed for
Hybrid meshes. Each has its own merits and of course
who you talking to. One such method developed by
[Star-CD©]298 where their automated meshing is
involved. The essence of the method is Inside-Out
where most of applications are interior domain. By
creating a sub-surface along actual surface, the
interior mesh, composed of Hex and a transition layer
(Tetrahedron), is filled. Once the interior is done, an
extrusion layer will extrude from sub-surface to the
Figure 8.6 The bottom-up revolve method
surface with prismatic cells as depicted in Figure 8.7.
sweeps the source side mesh by the specified
The automated meshing where sub-surface mesh angle about the axis
(orange) is clearly visible. Same procedure can be
applied using the (Advanced Layer)
on a T-Section for predominantly
polyhedral cells and boundary prisms
as shown in Figure 8.7.

8.3.4 Effect of Prismatic Extrusion


Sub-Layer in Viscous Layer
If prism shaped elements are used in
the viscous layer there will be central
symmetry provided that there is good
triangle quality in the lateral direction
parallel to the boundary surface. By
combining prismatic elements in
viscous regions with a tetrahedral
mesh for the inviscid part of the flow Figure 8.7 Constructions of Authomated Hybrid Mesh
field one might expect to achieve
solutions of the Navier Stokes
equations that match the accuracy of computations on structured hexahedral meshes. Since the
prism layer is unstructured in the lateral direction there is much more flexibility in handling complex
geometries and a greater opportunity to achieve a high level of automation in the mesh generation
process than would be the case with purely hexahedral elements. For these reasons, hybrid meshes
of prisms and tetrahedral have considerable appeal as the best compromise to achieve accuracy
in RANS computations, while permitting ease of mesh generation for complex configurations.
Hybrid meshes consisting of prisms and tetrahedral were first proposed by [Nakahashi] and then
developed extensively by [Kallinderis et al]. There is little hard evidence to support the contention
that using prisms in the boundary layer region is more accurate than using tetrahedral, or that hybrid
meshes achieve the same accuracy as composite multi-block meshes made up of hexahedra. In fact,
the limited evidence that is available from an analysis of the results presented at the second drag
prediction workshop tends to contradict both these beliefs. The extrusion layer is usually extruded
with linear or exponential stretching functions for desired spacing of viscous flow calculation.

298 User Guide STAR-CCM+ Version 8.06. 2013.


163

[Moxey, et al.]299 proposed an isoperimetric approach, whereby a mesh containing a valid coarse
discretization comprising of high-order triangular prisms near walls is refined to obtain a finer
prismatic or tetrahedral boundary-layer mesh.

Extrusion Layer

Figure 8.8 Predominantly Polyhedral Meshing with Extrusion Layers

8.3.5 A Novel Methodology for Extrusion Layer Meshing


A configuration of prismatic elements in boundary layers created by marching a surface triangulation
on viscous walls along certain directions is a typical mesh for viscous-flow simulations [Zheng et
al.]300. The quality of the resulting elements and the reliability of the meshing procedure thus highly
depend on the computing strategy used to determine the marching directions. Here, we propose to
compute a field of marching directions governed by Laplacian equations. This new approach can
ensure the smooth transition of marching directions, and thereby lead to more desirable element
shapes. To demonstrate the effectiveness of the proposed method for computing the normal vectors,
a comparison was made with the traditional geometric method.
To generate the boundary-layer mesh, it first generated an anisotropic tetrahedral mesh around the
model and then formed the boundary-layer mesh by combining three tetrahedral elements into a
prism. In this software, the vertex normal direction is initially defined as the area weighted average
of the face normal of the manifold of adjacent triangles, and is then smoothed and adjusted as
necessary to guarantee the mesh quality and avoid collisions. Figure 8.9-a presents a cut-out view
of the boundary-layer mesh generated by the proposed method near the intake of the engine. It can
be seen that the normal at nodes of a same layer change in a smooth way, whereas the counterparts
generated using a commercial code change more sharply (see Figure 8.9-b), and stretched elements

299 D. Moxey∗, M.D. Green, S.J. Sherwin, J. Peir´o, “An isoperimetric approach to high-order curvilinear boundary-
layer meshing”, Computer Methods Applied Mechanics Engineering, 283 (2015) 636–650.
300 Yao Zheng, Zhoufang Xiao, Jianjun Chen, and Jifa Zhang, “Novel Methodology for Viscous-Layer Meshing by

the Boundary Element Method”, AIAA Journal Vol. 56, No. 1, January 2018.
164

can be observed in this region. To evaluate the quality of the generated prismatic elements, the
scaled-aspect-ratio quality measure proposed in the literature was adopted in this study. It has been
reported that this quality measure in effect combines the measures of triangle shapes and edge
orthogonality301.

Figure 8.9 Meshes Generated by a) Proposed Algorithm and b) Leading Commercial Vendor

8.4 Mesh Refinement


Mesh movement or R-refinement (to be discussed later) has applications in both steady and
unsteady flows. For example, R-refinement may be useful for optimizing the normal resolution of the
mesh in a developing boundary layer or for clustering points around shock waves [Palmerio302,
Castro-Diaz et al]. For transient problems with moving boundaries, R-Refinement is indispensable.
Difficulties center on conserving a minimum degree of grid quality under severe deformations. In
areas where grid deformation becomes unacceptable, local reconnection through swapping
techniques can easily be performed, but only for simplicial meshes [Kennon et al, Baum et al],
[Venkatakrishnan & Mavriplis]303. In practice, combinations of H and R-Refinement are often
employed [Baum et al.]304, [Castro-Diaz et al]305 for such cases.
Central to the implementation of any solution-adaptive scheme is the ability to detect and assess
solution error (P-Refinement). The construction of a suitable refinement criterion represents the
weakest point of most adaptive strategies. The main problem is that an exact characterization of the
error requires a knowledge of the solution itself, which is obviously impractical. Most error estimates
are based on the assumption that the solution is smooth and asymptotically close to the exact
solution. This is often not the case for fluid dynamics problems, which are governed by nonlinear
hyperbolic partial-differential equations. Solutions may contain discontinuities, and downstream
flow features often depend on adequate resolution of upstream flow features. Most refinement
criteria are heuristically based on (undivided) gradients and/or second differences of the various

301 See Previous.


302 Palmerio B.,” An attraction-repulsion mesh adaption model for flow solution on unstructured grids”,
Computational Fluids 23(3):487- 506.
303 Venkatakrishnan V, Mavriplis DJ.,”Implicit method for the computation of unsteady flows on unstructured

grids”, Proc. AIAA CFD Conf., 12th, San Diego. AIAA Pap. 95-1705-CP
304 Baum JD, Luo H, L¨ohner R., ”A new ALE adaptive unstructured methodology for the simulation of moving

bodies”, AIAA Pap. 94-0414.


305 Castro-Diaz MJ, Hecht F, Mohammadi B.,”Anisotropic unstructured mesh adaptation for flow simulations”,

Int. Mesh Roundtable, 4th, Albuquerque, NM, pp. 73–85.


165

flow variables. Conservative criteria (i.e. over-refining) are often employed to compensate for the
inability to accurately characterize the true solution error. Because adaptive meshing results in
different mesh topologies for each simulation, even when the geometry of the problem is unchanged,
parametric studies (typically used in design processes) are complicated by the requirement to
distinguish between grid-induced and physical solution variations. Nevertheless, for problems with
disparate length scales, adaptive meshing is often indispensable for resolving small flow features,
and their full potential awaits the development of more well-founded adaptive criteria.
Mesh adaptation, often referred to as Adaptive Mesh Refinement (AMR), refers to the modification
of an existing mesh so as to accurately capture flow features. Generally, the goal of these
modifications is to improve resolution of flow features without excessive increase in computational
effort. We shall discuss in next chapter on some of the concepts important in mesh adaptation. Mesh
adaptation strategies can usually be classified as one of three general types: R-Refinement, H-
Refinement, or P-Refinement as depicted in Figure 8.10.

(a) R-refinement (b) H-refinement (c) Hanging Node

Figure 8.10 Adaptive Mesh Refinement Types

8.4.1 R-Refinement
This is the modification of mesh resolution without changing the number of nodes or cells
present in a mesh or the connectivity of a mesh. The increase in resolution is made by moving the
grid points into regions of activity, which results in a greater clustering of points in those regions.
The movement of the nodes can be controlled in various ways. On common technique is to treat the
mesh as if it is an elastic solid and solve a system equations (subject to some forcing) that deforms
the original mesh. Care must be taken, however, that no problems due to excessive grid skewness
arise. (See Figure 8.10 (a)).

8.4.2 H-Refinement
The modification of mesh resolution by changing the mesh connectivity. Depending upon the
technique used, this may not result in a change in the overall number of grid cells or grid points. The
simplest strategy for this type of refinement subdivides cells, while more complex procedures may
insert or remove nodes (or cells) to change the overall mesh topology. In the subdivision case, every
"parent cell" is divided into "child cells". The choice of which cells are to be divided is addressed in
Figure 8.10 (b). For every parent cell, a new point is added on each face. For 2D quadrilaterals, a
new point is added at the cell centroid also. On joining these points, we get 4 new "child cells”, (3 in
tetrahedral). Thus, every quad parent gives rise to four new off springs. The advantage of such a
procedure is that the overall mesh topology remains the same (with the child cells taking the place
of the parent cell in the connectivity arrangement). It is easy to see that the subdivision process
increases both the number of points and the number of cells. An additional point to be noted is that
this type of mesh adaptation can lead to what are called "hanging nodes." In 2D, this happens when
one of the cells sharing a face is divided and the other is not, as shown in Figure 8.10 (c). For two
166

quad cells, one cell is divided into four quads and other remains as it is. The highlighted node is the
hanging node. This leads to a node on the face between the two cells which does not belong (properly)
to both of the cells. The node "hangs" on the face, and one of the cells becomes an arbitrary
polyhedron. In the above case, the topology seemingly remains same, but the right (un-divided) cell
actually has five faces. Figure 8.11 show a mesh modeling supersonic flow around a space shuttle
in which h-method adaptivity has been employed to optimize the mesh structure to produce accurate
simulation of flow features important in assessing the performance of the design such as the profiles
of pressure distribution shown306.

Figure 8.11 An H-refinement mesh about a Shuttle-like body (left) and Computed CP (right)

8.4.2.1 Isotropic vs. Anisotropic Meshing


There are two ways of H-Refinement: Isotropic and Anisotropic. Anisotropic is the property of
being directionally dependent, as opposed to isotropy, which implies identical properties in all
directions. In isotropic refinement, new points are added in both the directions, say x and y. In
anisotropic refinement, the division takes place in one predominant direction (see Figure 8.12).
Thus, in short, an isotropic refinement for a quad would produce four new off springs, while
anisotropic refinement would only generate two. Anisotropic refinement is made use of, when the
user knows that the flow feature is predominantly to be resolved in one direction, for e.g. Boundary
Layers. However, there are situations where an anisotropic refinement alone may not be satisfactory,
such as a shock-boundary layer interaction.

306 The National Academies Press, “Research Directions In Computational Mechanics”, 1991.
167

Figure 8.12 Isotropic vs. Anisotropic Meshing

8.4.3 P-Refinement
A very popular tool in Finite Element Modelling (FEM) rather than in Finite Volume Modelling
(FVM), it achieves resolution by increasing the order of accuracy of the polynomial in each element
(or cell). In AMR, the selection of "parent cells" to be divided is made on the basis of regions where
there is appreciable flow activity. It is well known that in compressible flows, the major features
would include Shocks, Boundary Layers and Shear Layers, Vortex flows, Mach Stem, Expansion
fans and the like. It can also be seen that each feature has some "physical signature" that can be
numerically exploited. For e.g., Shocks always involve a density/pressure jump and can be detected
by their gradients, whereas boundary layers are always associated with rotationally and hence can
be detected using curl of velocity. In compressible flows, the velocity divergence, which is a measure
of compressibility is also a good choice for shocks and expansions. These sensing parameters which
can indicate regions of flow where there are activity are referred to as Error Indicators and are very
popular in AMR for CFD. The spectral order p of the approximation is raised or lowered to control
error. In finite element methods or boundary element methods, the order p corresponds to the
degree of the polynomial shape function used over an element. Just as refinement is possible by Error
Indicators as mentioned above, certain other issues also assume relevance. Error Indicators do detect
regions for refinement, they do not actually tell if the resolution is good enough at any given time. In
fact the issue is very severe for shocks, the smaller the cell, the higher the gradient and the indicator
would keep on picking the region, unless a threshold value is provided. Further, many users make
use of conservative values while refining a domain and generally end up in refining more than the
essential portion of the grid, though not the complete domain. These refined regions are unnecessary
and are in strictest sense, contribute to unnecessary computational effort. It is at this juncture, that
reliable and reasonable measure of cell error become necessary to do the process of "coarsening",
which would reduce the above-said unnecessary refinement, with a view towards generating an
"optimal mesh". The measures are given by sensors referred to as Error Estimators, literature on
which is in abundance in FEM, though these are very rare in FVM. Control of the refinement and/or
coarsening via the error indicators is often undertaken by using either the 'solution gradientt' or
'solution curvature'. Hence the refinement variable coupled with the refinement method and its
limits all need to be considered when applying mesh adaptation.
168

8.5 Mesh Modification Operators


The tetrahedral region of the grid is locally refined by means of a constrained Delaunay refinement
algorithm combined with a circumcenter point placement strategy307. Any inconsistency between
the circumradius of a tetrahedron and a desired point density triggers the point insertion procedure.
This iterative cell refinement is repeated until the cell circumradii are consistent with a prescribed
point spacing. Other methods, such as automatically specifying a distribution of mesh sizing
throughout 3D complex domains308. The aim is to reduce the level of user input required to generate
a mesh. The primary motivation for the creation of this system is for the production of suitable linear
meshes that are sufficiently coarse for high-order mesh generation purposes. Resolution is
automatically increased in regions of high curvature, with the system only requiring three
parameters from the user to successfully generate the sizing distribution.
8.5.1 Coarsening Triangulation Regions
Coarsening of the tetrahedral region is also permitted through an edge collapse procedure. In
regions where the grid is distorted or where solution errors are negligible, edges may be selected for
removal. All cells incident to the deleted edge are removed from the mesh, the adjacent cells are
redefined, and the two nodes of the edge are collapsed to a single vertex. The prismatic and
hexahedral regions of the grid may be refined through cell subdivision procedures. As the boundary
of the tetrahedral region is refined the adjacent prism layers are also modified. This is accomplished
by splitting edges at the tet/prism interface, and propagating this subdivision down to the wall
through all of the layers. In addition, a procedure is in place to refine entire layers of prisms if an
improved boundary layer resolution is desired. The algorithm loops on all the edges marked for
coarsening at a certain mesh level, and an attempt is made at collapsing it to one of its end vertices,
M01 or M02. Before physically performing the collapsing, checks are performed to ensure that the
collapsing is topologically and geometrically possible, and that the quality of the created mesh
regions is above a predetermined threshold. Finally, the target vertex for the collapsing, say M01, that
produces the best triangulation with respect to a given mesh quality measure is chosen. A limit can

Figure 8.13 Coarsening by Edge Collapsing – Courtesy of [Cavallo]

307 Cavallo,
P.A., Sinha, N., and Feldman, G.M., “Parallel Unstructured Mesh Adaptation For Transient Moving Body
And Aeropropulsive Applications”, Combustion Research and Flow Technology, Inc. (CRAFT Tech), Pipersville, PA.
308 M. Turner, D. Moxeya, J. Peir´, “Automatic mesh sizing specification of complex three dimensional domains

using an octree structure”, 24th International Meshing Roundtable (IMR24).


169

be placed on the longest edge to collapse, in order to avoid the creation of excessively large elements.
In the case of collapsing to M01, the algorithm proceeds by deleting all the mesh regions connected to
M02, creating a polyhedral cavity within the mesh. The edge collapsing is then completed connecting
all the faces of the cavity to M01 in order to form the new mesh regions. The procedure is illustrated
in Figure 8.13.
8.5.1.1 Case Study - Numerical Testing for Engine Nacelle
In this example we consider the model of an engine inlet with a center body. The initial CFD mesh of
119,861 tetrahedral was generated with the Finite Octree mesh generator309. A 4-level multigrid was
then generated by means of uniform coarsening marking all the edges for DE-refinement, obtaining
coarser levels of 24,619, 6,477 and 1,819 tetrahedral, respectively. We set a limit of 1600 to the
largest dihedral angle generated during coarsening, while we targeted for optimization all the
regions with at least ne angle above 1450. The coarser meshes are presented in Figure 8.14 (a),
(b), (c) and (d). As opposed to the refinement procedure, an improvement of the mesh quality
cannot be expected % 1 since coarsening introduces constraints by deleting degrees of freedom.
Nonetheless, the coarsening procedure was able to reduce the number of elements by a factor or
approximately 74 in three levels. The final mesh has 1,710 elements, where 96% of the them have a

Figure 8.14 Hierarchy of Successively Coarser Meshes Obtained by Uniform


Coarsening for the Nacelle Model for four levels

309 Hierarchy of successively coarser meshes obtained by uniform coarsening for the nacelle model. (a) Level
1: initial base mesh (119,861 tetrahedra); (b) Level 2: first DE-refined mesh (24,619 tetrahedra); (c) I.evel 3:
second DE-refined mesh (6,477 tetrahedra); (d) Level 4: third DE-refined mesh (1,819 tetrahedra)
170

largest dihedral angle below the value of 1450. The usage of mesh (d) for numerical computations is
clearly limited, since it gives a poor discretization of the complex curved model, but the goal of this
example is mainly to show that we are able to control the quality of the meshes even for a large
coarsening ratio. Selection or the right coarse mesh for a specific problem depends strongly on the
type of analysis to perform and it is not investigated here. The effect of locally improving the mash
using the re-triangulation procedures during coarsening was investigated. The initial mesh was
redefined six times without optimization after each edge collapsing. The final coarse mesh is denoted
by 6,512 elements. In this case, for facilitating the coarsening process, the constraint on the largest
dihedral angle was relaxed from 1600 to 1750.
8.5.1.2 Coarsening With/Without Local Re-Triangulation
The ratio of coarsening is given in Figure 8.15. The diagram clearly indicates that coarsening
without local retriangulation
is not able to produced more
than one or two coarser
meshes. In fact, due to the
increased number of badly
shaped elements after each
coarsening, constraints are
introduced in the process and
most of the attempted edge
collapsing fail. In contrast,
coarsening using local re-
triangulation after each edge
collapsing is able to maintain
nearly constant, slightly
increasing coarsening ratio.
This gives the possibility to
use the coarsening procedure
to create a coarse mesh as
coarse as it is necessary.
Figure 8.15 Coarsening ratio for coarsening with and without local
8.5.2 Refinement of Re-triangulation.
Triangulation Region
The refinement scheme
adopted in this work is also edge based310, in the sense that edges marked for refinement are split.
The algorithm implements all possible subdivision patterns corresponding to all possible
configurations or marked edges, to allow the maximum flexibility in how mesh refinement is
accomplished. A limit can be placed on the shortest edge to split, in order to avoid excessive
refinement. In the presence of curved newly generated vertices classified on model boundary must
be properly placed on the true geometric boundary. This snapping procedure is critical, in the sense
that it the mechanism through which refinement of a given mesh improves the geometric
approximation that the mash gives of the geometry. This operation relies on the interaction of the
refinement procedure with the geometric modeler storing the geometric information, and the
classification information of the mesh entities. The snapping of a undefined vertex can produce
invalid regions of negative volume or of poor quality. In this case, the re-triangulation procedure
explained in the following is applied and repeated until the vertex can be successfully snapped. For
supporting the computation of the restriction and prolongation operators, a double link is stored

310H.L. De Cougny and MS. Shephard, 'Local modification tools for adaptive mesh enrichment and their
parallelization', Scientific Computation Research Center, RPI, submitted to Comp. Meth Appl. Mech.
171

from the vertex to the edge and back, together with the value of the split location along the edge. This
is realized "on the fly" during refinement of each marked edge. Clearly, not even a local search is
needed in this case. Please consult [Bottasso et al.]311 for further info.
8.5.2.1 Local Re-Triangulation
Local re-triangulation algorithms are an important aspect of any automated mesh modification
procedure, their goal being the control and the improvement of the quality of a mesh with respect to
a given criterion. The optimizing procedures implemented in this work are edge removal and multi-
face removal, which do not change the number of vertices, and edge collapsing and splitting of one
or more edges, faces or a region, which remove or add vertices Edge removal deletes an edge from a
mesh by introducing one or more faces, depending on the number of regions surrounding the edge.
Face or mufti-face removal represents the dual operation, removing one or more faces by introducing
a new edge. Figure 8.16 gives an example of these swaps for the simplest configuration, a 3 to 2
swap of the three elements [M01, M02, M0α, M0β] , [M02, M03, M0α, M0β] and [M03, M01, M0α, M0β]
surrounding edge [M0α , M0β]. The 3 to 2 swap is performed by introducing a new face [M01, M02, M03]
and by deleting the edge {M0α, M0β], yielding two new elements and [M01, M02, M03, M0β]. The reverse
operation (2 to 3 swap) is given by deleting the face [M01 , M02; , M03] and introducing the edge [M0α
M0β]. As previously explained, edge collapsing removes an edge by merging two vertices and
removing all regions connected to that edge.

Figure 8.16 3 to 2 and 2 to 3 Swap

The splitting procedures introduce new vertices on one or more edges of a region. The new
configuration is then given by applying the corresponding refinement subdivision pattern. The
procedures are region based, in the sense that the algorithm tries to improve all regions which violate
a given mesh quality criterion. Given the impact that large dihedral angles usually have on the
condition number of the discrete problem that approximates the set of PDE's to be solved, we
typically use dihedral angles as optimization targets. As a first. step, the dihedral angles of all

311Carlo L. Bottasso, Ottmar Klaas, Mark S. Shephard, “Data Structures and Mesh Modification Tools for
Unstructured Multigrid Adaptive Techniques”, Article in Engineering With Computers · January 1998.
172

elements considered for optimization are calculated. Each element violating a user defined threshold
value is put into a linear list. Depending on the configuration of each element in the list (number of
dihedral angles above the threshold value, topological or geometrical constraints, etc.), a suitable
subset of the above mentioned optimization procedures is applied to eliminate that element in favor
of improved elements.
The procedures might fail for a specific element if the resulting configuration is topologically or
geometrically not valid, or if they lead to a degradation of the quality of any element involved in that
local re-triangulation. In this case, or if the element is improved but the largest dihedral angle is still
above the threshold value, the element is considered for improvement in a second pass, after all
elements have been processed. Since the neighborhood of the elements that failed in the first pass
may have been modified, it is possible that they can be fixed in a second pass. The procedure is
repeated until a given threshold value is reached or no further improvement can be achieved. The
local re-triangulation algorithm is used to improve the meshes produced by the refinement and
coarsening procedures. Since the refinement is an edge based operation that takes into account all
passible subdivision patterns, refining an element is a localized procedure that does not affect the
neighborhood of that element, and consequently the local re-triangulation can be performed after
the refinement procedure is completed.
The situation is different when coarsening is considered. The coarsening procedure itself tends to
give a mesh of poor quality, since collapsing of an edge has a strong costly negative impact on the
dihedral angles of the surrounding elements. prevent losing control of the mesh quality, especially
when multiple coarsening steps are performed, it. is necessary to introduce a threshold value to be
satisfied by the largest dihedral angle in each of the newly generated elements. However, this usually
represents a strong constraint and prevents a large coarsening ratio. It is therefore advantageous to
improve the neighborhood of a to-be-removed element before picking the next edge for collapsing.
This can be done by sending a list of regions connected to the target vertex of the edge collapsing to
the local re-triangulation procedure, after each edge collapsing is performed. Such a locally improved
mesh makes the next edge collapsing more likely to lead to acceptable elements. Local procedures,
such as the ones here considered can only lead to optima with respect to the quality of the
triangulation. Nonetheless, these tools have been proven to be valuable in controlling the
degradation of the mesh quality during its adaptive modification. They also find application in the
context of curved model boundaries, when snapping of newly created vertices can create invalid or
poorly shaped regions. In this case, local re-triangulation tools can be used for eliminating those
regions that prevent snapping312 .
8.5.3 Refinement of Hexahedral Region (Near Wall)
The refinement of the hexahedral region of the grid is accomplished using the pattern formation
procedure of [Biswas and Strawn]313, which employs a parent-child data structure to split the cells.
Each hexahedral cell is then split according to a pattern, to generate 2:1, 4:1, or 8:1 sub-divisions.
This cell subdivision creates buffer cells, which are tetrahedral, pyramid, or prismatic elements used
to transition between different levels of hexahedral refinement, thus ensuring a conforming mesh
with no hanging nodes. An initial point spacing ρ0 is defined for each vertex as the average edge
length for all edges incident to the node. A larger grid spacing produces an iterative coarsening of
the mesh. Using the mesh deformation measure, we modify the local grid spacing to be

312 H.L. De Cougny and MS. Shephard, 'Local modification tools for adaptive mesh enrichment and their
parallelization', Scientific Computation Research Center, RPI, 'Eoy, NY, submitted to Comp. Meth Appl. Mech.
313 Biswas, R., and Strawn, R.C., "Tetrahedral and Hexahedral Mesh Adaptation for CFD Problems", NAS Technical

Report NAS-97-007, 1997.


173

ρ0 σ
ρ= where τ = min Eq. 8.1
τ σ max
And τ represent the dilatation of the tetrahedron in each of three principal directions, and are
equivalent to the singular values of the transformation matrix. Note that the more deformed the
cell, the larger the prescribed spacing, and hence an increased amount of coarsening will be
performed. This improves the likelihood of the distorted cell being removed. Conversely, the
enrichment procedures are invoked by specifying a smaller spacing. After the coarsening phase, an
appropriate gradation of cell size is restored by solving a Laplace equation for ρ, using the boundary
mesh spacing as Dirichlet boundary conditions. An approximate solution is obtained by summing the
difference in the point spacing for all edges N incident to the node using a relaxation technique.

ρ n +1 n ε N n n
N k =1
(
= ρ +  ρk − ρ ) Eq. 8.2

Prescribing new point spacing also drives solution-based coarsening and refinement. A variation on
the solution error estimate developed in two dimensions by314 has been implemented in three
dimensions for arbitrary mesh topologies. The method is based on forming a higher order
approximation of the solution at each mesh point using a least squares approach. The difference
between the higher order reconstruction from incident nodes and the current solution forms the
error measurement. If the current mesh is sufficiently fine to support the spatial variation in the
solution, the estimated error will be low, allowing coarsening to take place. Conversely, a high degree
of error indicates additional refinement is needed.
8.5.3.1 Improvement to Near-Field Grid Generation Procedure (Hexahedral)
The successful drag prediction workshop series set the focus of its fourth gathering (DPW4) in the
blind prediction of drag and moment coefficients of the NASA common research model (CRM)
transonic wing-body-tail configuration315. One of the main objectives of DPW4 is to evaluate the
performance of state-of-the-art Navier-Stokes codes, thus this study documents some of the steps
undertaken at the Institute of Aerodynamics and Flow Technology of DLR, to prepare the
contribution to the DPW4. To identify possible CFD areas needing additional research and
development, both standard procedures were used in this study and advanced methodologies, such
as new grid generation methods and advanced turbulence models. The input values required by the
advancing layer grid generation process, first layer spacing and expansion ratio, have to be chosen
wisely. It is important to resolve the same physical region on the various grid levels with the same
element types. A similar near-field extent normal to the walls, guarantees that the transition location
from hexahedral/prismatic elements to tetrahedral is similar between the grid levels. Having the
element type transitions in the same physical region allows to capture in a self-similar way, on all
grid levels, eventual discretization errors. The relations between the grid levels in terms of first layer
spacing and number of wall-normal layers should follow the scaling factor given above. Given the
requirement for a self-similar total layer thickness, scaled first layer spacing and scaled total amount

314 Ilinca,C., Zhang, X.D., Trépanier, J.-Y., and Camarero, R., “A Comparison of Three Error Estimation Techniques
for Finite-Volume Solutions of Compressible Flows, “Computer Methods in Applied Mechanics and Engineering,
Vol. 189, pp. 1277-1294, 2000.
315 Simone Crippa, “Application of Novel Hybrid Mesh Generation Methodologies for Improved Unstructured CFD

Simulations”, 28th AIAA Applied Aerodynamics Conference - CFD Drag Prediction Workshop Results, 2010.
174

of layers, leaves only the expansion ratio as variable to be determined. The geometric series for the
total layer thickness (H) is
n
1 − qn+1
n
H = ∑ a. q = a
1−q
i=1
Eq. 8.3
where the total number of layers is N = n + 1, the expansion ratio is q and the first layer spacing is a.
Keeping the total layer thickness between two grid levels constant (H1 = H2), results in

1 − 𝑞1𝑛+1 1 − 𝑞2𝑛+1
a1 = a2
1 − q1 1 − q2
Eq. 8.4
Hereby the relation between a1 and a2, as well as N1 and N2, is set by the scaling factor ∛3; for
example, with grid level 2 being finer than grid level 1, follows a2 = a1/∛3 and N2 = N1 / ∛ 3. Starting
with a sensible value for the expansion ratio q1 and a total amount of layers N1, the only unknown in
Eq. 8.4 is q2, which can be computed iteratively. For the DPW4 grid-convergence family, the values
for the coarse and _ne levels are derived from the medium grid. The first layer spacings given in the
gridding guidelines are used, as the scaling factor of 1.5 is sufficiently close to ∛3. The resulting values
for the near-field mesh are summarized in Table 8.1.

Table 8.1 Near-Field Grid Details.

Note that for full consistency, the number of wall-normal layers with constant spacing should also be
scaled by ∛ 3, but neglecting this was not deemed of primary influence to the results. Furthermore,
note that the expansion ratios of fulfill the requirement given in the gridding guidelines only for the
medium and fine grids. The expansion ratio of the coarse grid is larger than the defined, maximal

Figure 8.17 Comparison of Coarse, Medium and Fine Grids: lateral view on fore-body with Symmetry.
175

value of 1.25. A comparison of the three final grids is shown in Figure 8.17, where the self-similar
relation between the three levels is visible in the highlighted region. In wall-tangential direction, the
factor of approx. 1.5 can be recognized by the cascade of 2, 3 and 4.5 quadrilateral elements. A similar
wall-normal total layer extent is also recognizable.

8.5.4 Discretization Improvement Through Chimera Technique for Sharp Corners


A majority of contributions detected small separated regions at the trailing edge of the wing and tail
plane junctions with the body. The existence or absence of the separation bubbles was found to be
neither coupled to a solver type (unstructured or structured) nor a specific physical modelling
approach. The results on the Solar grids from two participants, using in total four different turbulence
models, do not feature these small separations. An insight gained through the adjoint dissipation
error evaluation, is that the wing-body and tail plane-body junction regions are not discretized
sufficiently well. The span-wise field cut at x =1400 inch (wing-body) reveals that the contracted
near-field mesh leads to very large tetrahedral in the concave corners that are not adequate to resolve
the edge of the boundary layer, see Figure 8.18.

Figure 8.18 Local Dissipation Error of Drag Coefficient on field cut-plane at x =1400 inch;
isometric/downstream view

A simple solution to this problem is not known, thus this problematic region was not fully fixed for
the contribution to DPW4. The near-field layer contraction in these concave regions cannot be
completely excluded from the Solar grid generation process, thus a solution is sought on the solver
side. Since recently, the TAU code has the capability to compute on chimera (overset) grids with
overlapping viscous boundaries. To make use of this capability, a fully hexahedral grid was generated
with a C-H topology around the complete wing airfoil and some of the wake at the wing root. The
grid spacing in the overlap/interpolation region is similar to the medium Solar grid, but the
resolution at the wing-body junction is improved due to the chosen H-topology, as opposed to an O-
grid topology. The five million elements, hexahedral grid is referred to as SolarChimera5, whereas
the initial medium grid plainly Solar. A comparison between the Solar and SolarChimera5 grids at
the wing-body junction is shown in Figure 8.19.
176

Figure 8.19 Comparison of SolarChimera5 and Solar Grid at x = 1454 inch plane; Viscous Wall Surface
in Dark
grey, _eld cut in white.

8.6 Listing of Available Meshing Software


Table 8.2 shows the list of currently available grid generation software (please be advised that some
vendors and features might have been updated yet).

0 - Mesh Software 1 – Structured 2 - Un-Structured 3 - Hybrid


0 1 2 3 0 1 2 3
3DGRAPE yes ------ ------ Hyper Mesh yes yes yes
ANSA yes yes yes MACGS yes ------ ------
CFD-GEOM yes yes yes MBGRID yes ------ ------
CSCMDO yes ------ ------ MEGACADS yes ------ ------
EAGLEVIEW yes yes ------ NGP yes yes yes
GAMBIT yes yes yes PEGSUS ------ Chimera ------
GEMS yes ------ ------ Pro-Star yes yes yes
GENIE++ yes ------ ------ RAGGS yes yes ------
GRID* yes ------ ------ RAPID yes ------ ------
GRIDGEN yes yes yes SAUNA yes yes yes
GridPro yes yes yes TGRID ------ yes ------
ICEM-CFD yes yes yes TIGER yes ------ ------
IGG yes yes yes UNISG yes ------ ------
INGRID yes ------ ------ VGRID ------ yes ------
Hyper Mesh yes yes yes CENTAUR yes yes yes

Table 8.2 Currently Available Grid Generation Software

8.7 Meshing Challenges for Applied Aerodynamics


According to [Jeffrey Slotnick]316 of Boeing, although mesh generation has matured tremendously
recently, but still problems remaining, specifically with respect to applied aerodynamics. While
current meshing practices fairly well established procedures in place to build fixed meshes around
complex geometry (Fixed grids continue to be the workhorse for CFD modeling of realistic geometry).

316 Jeffrey Slotnick, “Meshing Challenges for Applied Aerodynamics”, Boeing, January 2019.
177

Emerging methods and procedures in development to build meshes that adapt to the flow solution
with considerable promise to improve accuracy for a given number of points, reduce engineer time,
and lower level of user expertise needed. They are several algorithms being evaluated for speed,
robustness, effectiveness, with issues like surface geometry interface, robustness, mesh growth,
strength of solver on irregular grids, etc. This is not generally in production use, but not many years
away. In GMGW2 workshop [Slotnick] raised the following issues:

➢Fairly well established procedures in place to build fixed meshes around complex geometry
➢Various types (unstructured, structured-overset, hybrid, etc.)
➢Various toolsets (with varying degrees of automation)
➢Resolution set by educated guess and best practices (developed from growing body of data
from internal/external studies)
➢ Typically one mesh used for range of flight conditions
➢ Mesh refinement study seldom done in practice
➢ Emerging methods and procedures in development to build meshes that adapt to the flow
solution
➢ Considerable promise to improve accuracy for a given number of points, reduce engineer
time, and lower level of user expertise needed
➢ Several algorithms being evaluated for speed, robustness, effectiveness
➢ Issues: surface geometry interface, robustness, mesh growth, strength of solver on irregular
grids, etc.
➢ Generally not in production use, but not many years away Fixed grids continue to be the
workhorse for CFD modeling of realistic geometry
With challenges remaining as
➢ Handling geometric complexity (large range of scales, components in close proximity, mesh
control/quality in tight regions, etc.)
➢ Resolving pertinent flow features (unknown location and importance, varies with run flow
conditions, etc.)
➢ Improving speed and robustness
➢ Better understanding of the dependency of grid resolution on physical modeling
➢ Better understanding of the switch from RANS to turbulence resolving simulations

8.7.1 Experience
From HiLiftPW-3, oil flow images from testing of the JAXA JSM configuration near stall conditions
identified regions of separated flow behind several slat brackets317. Many RANS simulations
predicted much larger “pizza slice” shaped separation patterns appearing at differing angles-of-
attack, with high sensitivity to turbulence models and mesh resolution, and angle of attack. (see
Figure 8.20).

8.7.2 Observations

➢ Current mesh resolution for high-lift CFD (as utilized in HiLiftPW-3) appears insufficient to
(a) accurately assess physical modeling errors, and (b) to clearly identify the better
turbulence model for RANS simulations for full configurations.

Y. Ito, M. Murayama, Y. Yokokawa & K. Yamamoto (JAXA) K. Tanaka & T. Hirai (Ryoyu Systems) H. Yasuda
317

(KHI), A. Tajima (Kawaju Gifu Engineering) & A. Ochi (KHI), “Japan Aerospace Exploration Agency’s & Kawasaki
Heavy Industries’ Contribution to HiLiftPW-3”, AIAA SciTech 2018, Kissimmee, FL, January 10, 2018.
178

➢ Need a systematic study of mesh resolution/convergence (fixed grid, adaptive) using solvers
that can utilize a wide range of turbulence modeling (RANS, Hybrid RANS/LES, WMLES, etc.)
on key test cases to clearly isolate numerical vs. physical modeling errors.
➢ The extruded, single-slat-bracket periodic model problem appears relevant, but the question
of whether the “pizza slices” are an artifact of insufficient numerical resolution has not been
answered (as they seem to be a robust feature, across codes and models), and turbulence-
resolving simulations have not begun.

Figure 8.20 HiLiftPW-3 Experience

Hybrid Meshes II , Multi- Gridding & (Case


Studies)
9.1 Case Study - Hybrid Unstructured Meshes for
Common Research Model (CRM & JSM) via ANSA®
In this work an unstructured meshing approach is taken using
the commercial software ANSA®, developed by BETA-CAE
Systems [Skaperdas and Ashton]318. This describes the meshing
process within ANSA as well as an analysis of the unstructured

Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured meshes for the
318

GMGW-1 workshop using ANSA”, AIAA, January 2018.


179

grids, similar to the tools provided in CD-Adapco®. It is produced for the 1st AIAA Geometry and
Meshing Workshop and 3rd AIAA High-Lift Workshop. Particular focus is made on the process to
generate suitable grids for
various CFD codes including CRM Common Research Model
OpenFOAM and Star-CCM+. GMGW Geometry and Mesh Generation Workshop
Some of the Abbreviations is HLPW High Lift Prediction Work
been provided in Table 9.1 JAXA Japan Aerospace Exploration Agency
for clarity.
JSM JAXA high-lift configuration Standard Model
9.1.1 Geometry and Mesh MAC Mean Aerodynamic Chord
Generation Background STEP Standard for the Exchange of Product
The AIAA Drag Prediction and
High Lift Prediction (DPHLP) Table 9.1 Abbreviations
provide an opportunity for
engineers in the aerospace sector to present and exchange information on the latest CFD methods
and tools and to directly compare these methods on open-source geometries. The 1st Geometry and
Mesh Generation Workshop took place under the umbrella of the 3rd High Lift Prediction Workshop.
It was the first of its kind to focus specifically on the details of preparing high fidelity mesh models
for CFD simulations. The aim of
was to assess the current state of
the art in geometry pre-
processing & mesh generation
technology and to bring together
meshing specialists to discuss
challenges and possible solutions.
The models studied were NASA’s
Common Research Model and
JAXA’s high-lift configuration
Standard Model. The JSM model
was not studied in the workshop
but given its inclusion in HLPW-3,
the same mesh procedure was
applied to both geometries. Both
geometries are available in high
lift configuration with slats and Figure 9.1 JSM Model with Engine Nacelle
flaps extracted while the JSM
model is also available with an
optional engine nacelle and pylon.
The main goal for participating in HLPW-3 was to assess the open-source CFD code OpenFOAM.
Many aerospace specific CFD codes are restricted for national security reasons e.g., NASA CFD codes
are typically not available to researchers in the UK or Greece. Whilst a number of commercial CFD
codes are routinely used for industrial aerospace simulations, the ability to implement custom
turbulence models, numerical schemes and algorithms means that these are not ideal for research
and collaboration. Open source CFD codes like OpenFOAM, SU2 and Saturne have grown in
popularity in recent years as a growing movement of international collaboration that is improved by
the ease of sharing . Whilst OpenFOAM has its own mesh generation utility; SnappyHexMesh, a
Cartesian-prismatic unstructured generation tool, the experience of the authors have shown that it
is not suitable for low y+ grids and the region between the prismatic and Cartesian is often subject to
severe non-orthogonality and large cell size jumps. For this reason an alternative mesh generator is
used, which is capable of generating high-quality grids that represent the kind of unstructured grids
180

that are typically used by the aerospace industry; ANSA® 17.1, a pre-processor from BETA-CAE
System. (see Figure 9.1).
9.1.2 Geometry Handling
The geometries for the CRM and JSM high-lift models were downloaded from the HLPW-3 website319.
A multitude of CAD file formats were available and for this project the STEP format was selected for
both CRM and JSM models.
9.1.2.1 The CRM Model
The STEP file of the HL-CRM model is in inches. It has a MAC of 275.8 inches and it represents a full
scale aero plane model. No clean-up was required as the geometry had already been cleaned. Based
on the GMGW/HLPW-3 meshing guidelines document, a hemi-spherical domain, suitable for
imposition of far field boundary conditions, with a radius of 100 times MAC was created in ANSA and
connected to the half symmetric airplane model. The raw CAD model was separated only in two
zones, the slat and the whole remaining model. In order to facilitate meshing and pre-processing, we
separated the model in 17 zones as revealed in Figure 9.2. Two versions of the CRM model are

Figure 9.2 Computational Domain of the HL-CRM Gapped Flaps Model

available320. One where the inboard flap is unconnected referred to as “gapped”) and one where the
gaps between the inboard flap and outboard flap and main fuselage were sealed (referred to as
“sealed”). In the latter case the worst proximity areas are removed, facilitating layers generation.
9.1.2.2 The JSM Model

“HLPW-3 Geometry.” [Online]. Available: https://hiliftpw.larc.nasa.gov/Workshop2/geometries.html%0D.


319
320Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured meshes for the
GMGW-1 workshop using ANSA”, AIAA, January 2018.
181

The JSM model is designed in mm and it represents the actual wind tunnel model with a MAC of 529
mm. Geometry was read into ANSA without any topological problems. A hemi-spherical domain was
created with a radius of 100 times MAC. The model was separated in ANSA in 13 zones to facilitate
meshing and pre-processing as shown in Figure 9.3. Similarly to the HL-CRM model, the JSM model
is available in two variants, without engine nacelle, as well as with engine nacelle, as shown in Figure
9.3 using the HLPW-3 notation for cases. The geometry of the JSM model has a particularity, which
the HL CRM model does not have, that would eventually lead to problems in the generation of
layers321. Those areas can be easily identified in ANSA through a quick test layers generation run for
one layer. Such areas are identified, marked and can optionally be excluded from layers generation,
although for the case of this study we wanted to avoid any area of the model without layers, as that
would result to solution instability and error. Three such areas were found in the JSM geometry as
highlighted in Figure 9.4. It was therefore decided to perform some small local geometry
modifications322. The size of these geometrical additions is limited to around one or two local
element lengths so as not to cause a significant disturbance to the flow field. It is believed that the
benefits of allowing for good quality layer generation in these regions surpass any side-effects from
deviating from the original CAD geometry.

Figure 9.3 Computational Domain and Separation of Zones of the JSM Model with Engine Nacelle
Figure 9.4 Three Locations of Problematic Areas of the JSM Geometry for the Generation of Boundary
Layers

9.1.3 Surface Meshing


ANSA provides the user with full control and automation in meshing though the Batch Mesh tool.
Batch Mesh is a template driven meshing tool that consists of meshing scenarios for surface meshing,
layers generation and volume meshing. Each scenario consists of several sessions and each session
contains different zones of the model and the corresponding meshing characteristics. The contents
of each session can be assigned manually, or via standard name convention filters of the zones of the
model (like name contains, name starts with, name ends with etc.). Using filters allows more

321 Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured meshes for the
GMGW-1 workshop using ANSA”, AIAA, January 2018.
322 Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured meshes for the

GMGW-1 workshop using ANSA”, AIAA, January 2018.


182

automation, since for every new design variant, the sessions can be populated automatically. One of
the advantages of Batch Mesh tool is the fact that a scenario can be defined once, saved and then run
several times for every new geometry, ensuring automation and mesh consistency for every variant.
The CFD meshing algorithm in ANSA creates a high quality surface mesh, controlled by the following
settings for each session of the Batch Mesh:

➢ Mesh type (triangular or quad)


➢ Target curvature refinement
➢ Growth rate of mesh on flat areas
➢ Minimum and maximum length
➢ Assigned length on all identified feature lines (different for convex and concave ones)
➢ Proximity refinement via prescribed length to gap ratio
➢ Target quality criteria threshold values

In addition to these mesh controls, the user can create Size Boxes to limit the maximum length of the
surface and the volume mesh in different areas. Figure 9.5 displays the Batch Mesh surface meshing
scenario that contains eight sessions, each with different zone contents and mesh specifications for
the Medium JSM model. Ten Size Boxes were used, each one with a larger maximum length limit the
further away of the aircraft. Size Boxes case be cylindrical or hexahedral and can also be manipulated
by the user to take various curved forms aligned to the flow field where necessary. The only feature
currently missing from Batch Mesh tool is the creation of anisotropic mesh, usually at the leading and
trailing edges. The reason for this is that anisotropic mesh is not used in the automotive industry
where ANSA usage was built on, while if it offers a great advantage for aerospace meshing. The main
difference between these two industries with respect to meshing, is that in the aerospace industry

Figure 9.5 Batch Mesh Setup for the JSM Model with Size Boxes for Local Mesh Control

the dimensions of the wings are much larger, while they require very fine curvature refinement. The
flow gradients are considerably larger in the chord wise direction than in the span wise direction and
as a result anisotropic mesh provides the most efficient refinement method. For the same level of
curvature refinement on a typical wing geometry, an isotropic mesh may require at least three times
more elements than an equivalent anisotropic mesh. In addition, in the aerospace industry the total
height of the boundary layer elements is considerably larger than that used in the automotive
industry.
183

In Figure 9.6 the advantage of anisotropic meshing is obvious as in highly convex areas like leading
and trailing edges, starting from a span wise anisotropy allows the layer elements to improve in
quality with every new step. In the end, the top cap of the layers is perfectly isotropic and this is the
best basis for the remaining pyramid and tetra meshing to follow. In contrast, when starting from an
isotropic mesh, the mesh quality of the layers deteriorates with each step. For the case of the isotropic
surface mesh, the top cap does not have a good quality and this makes the remaining volume meshing
process harder. Therefore, the surface meshing of all the models was performed with the following
combination of manual and Batch Mesh automatic operations:

➢ Identification and manual meshing of all trailing edges with map quad mesh of specific rows
of elements.
➢ Automatic Batch Meshing of all remaining surfaces of the model.
➢ Manual imprint of anisotropic mesh patterns away from the trailing edges and along all
leading edges.

Note how the anisotropic mesh dies out near the ends with the span wise imposed nodal
distribution, in order to smoothly transit to isotropic mesh. The first surface scenarios for both HL-
CRM and JSM models were performed for the medium mesh size according to the meshing guidelines
for rows of elements across the trailing edges and mesh resolution. From the medium meshes we
generated the coarse and fine versions by simply scaling up and down respectively the assigned
element length of all sessions of Batch Mesh scenario. Of course when dealing with unstructured
mesh and especially with anisotropic features and Size Boxes, it is not easy to determine a priori the
scale length factor in order to achieve the desired volume cell count. This can only be done for
structured hex meshes, where cell number and edge length scale directly. Therefore, after certain
184

trial and error runs, we ended up with a length scale multiplying factor of 1.2 to 1.25. This resulted
in volume cell count changes of 1.6 to 1.8 between the different levels of refinement.

Using the batch mesh and simply changing the mesh type of all sessions, we also generated a quad
dominant surface mesh for the coarse CRM case. Figure 9.7 displays the two variations of surface

Figure 9.6 Resulting Layers for Isotropic Surface Mesh (Top) and Anisotropic (Bottom)

mesh, tridiagonal dominant and quad dominant. The quad dominant mesh has 30% fewer shell
elements for the same mesh resolution. The only problem that may arise with a quad dominant mesh
is that due to the fact that the near wall layers have extreme aspect ratios, there may be curved areas
of the model where these quads may also have considerable warping. The combination of warping
and high aspect ratio may lead to problems in the solution. At the time of the HLPW-3 the quad
dominant meshes were not prepared, so no simulations were performed for them. Currently ANSA
185

development work for the next version focuses on the integration of anisotropic meshing of leading
and trailing edges inside Batch Mesh tool, thereby eliminating any manual work for the user.
9.1.4 Volume Meshing
Volume meshing is also a part of the Batch Mesh. Two scenarios were created, one for layers and one

Figure 9.7 Close ups of Coarse CRM Gapped Flap Model with Comparison of Tridiagonal Dominant
(Top) vs. Quad Dominant (Bottom) Surface Mesh

for volume meshing. The scenarios were setup once for the CRM and JSM models and then with
simple modifications in their parameters (growth rate, max size etc.) were executed automatically in
order to generate the final volume meshes.
9.1.4.1 Extrusion Layers Generation
The generation of layers is the most demanding part of the meshing process as the there are many
factors that should be considered: very high aspect ratio elements whose quality is difficult to control,
large total boundary layer height, resulting in proximity issues, especially around the areas of the
flaps and slats, where the gaps are small. ANSA layers generation algorithm is very robust and
controllable, with characteristics like:

➢ Generation of hex or penta layers from quad or triangle surface mesh.


186

➢ Generation of initial layers without growth for better refinement of the near wall region.
➢ Generation of initial layers without vector smoothing ensuring high orthogonality near the
wall.
➢ Advanced smoothing algorithm to overcome problems of layers extrusion in concave areas.
➢ Generation of layers with different growth rate, number and first height from different zones
of the model.
➢ Local element squeezing and collapsing at proximities to avoid intersections and bad quality.
➢ Local collapsing when a target aspect ratio is reached, ensuring a nice volume with the tetra
mesh to be connected.

Layers squeezing and collapsing modes work in combination. The user can specify a maximum aspect
ratio that the elements can attain when squeezed in order to overcome proximities. If this limit is
exceeded then ANSA switches to local layer collapsing. Collapsing works for both penta and hex
elements. Depending on the number of nodes that need to be collapsed in a certain area, pyramid and
tetra elements are created out of the original penta and hex elements. No collapsing of course must
take place at the first layers as that would result to very skewed tetras and pyramids. As the layers
grow thicker however, collapsing does not compromise the quality of the resulting elements. In
contrast to the recommended meshing guidelines of the workshop, the first layer height was kept
constant throughout the mesh refinement study. The reason for this is that the initial simulations
that were performed showed that a y+ value of just below 1 was achieved with these values, so there
was no reason to change this parameter, as it was set to its optimum value.
During the mesh refinement study the growth rate of the layers was reduced from 1.25 for the coarse
mesh to 1.1 for the fine mesh. The first two layers were kept with constant height, as prescribed by
the meshing guidelines. The number of layers was increased for the finer meshes in order to maintain
the same total boundary layer height. In addition, the number of layers differed between the main
wing and the fuselage. The reason for this was that the surface mesh length on the wing was smaller
than that of the fuselage. As a result we needed more layers from the fuselage in order to reach a
layer thickness with aspect ratio just below 1 so as to have a nice volume ratio between the last layer
and the first tetra or pyramid to connect on it323. Hex layers growing from quad surface mesh are also
checked in every step for warping. In certain cases, due to local squeezing at proximities, if the top
cap warping exceeds a user specified threshold, ANSA splits the hex into two pentas, so as to avoid
having highly warped quads that would have a negative effect in the pyramid generation for the tetra
meshing. For further details regarding the meshing, consult the324.
9.1.4.2 Tetra Meshing
After layers generation is completed, the third and final Batch Mesh scenario is executed. It consists
of the automatic detection of the boundaries of the external volume, and its meshing with tetra
elements using the TetraRapid volume meshing algorithm. This algorithm is a hybrid advancing
front Delaunay, optimized for speed, smooth size variation and robust surface capturing even in
aerospace applications where map anisotropic high aspect surface mesh is present and size
variations exist from the surface of the model to the far field boundary of up to one hundred thousand
orders of magnitude. Even in such cases, and despite of the fact that it runs on a single thread, it
manages to generate high quality tetra mesh at the speed of one to three million tetras per minute,
depending on the complexity of the domain and the presence of additional refinement Size Boxes.

323 Vangelis Skaperdas, and Neil Ashton, “Development of high-quality hybrid unstructured meshes for the
GMGW-1 workshop using ANSA”, AIAA, January 2018.
324 See Above.
187

The growth rate of the volume mesh was set to 1.15. Figure 9.8 shows the medium JSM volume
mesh.

Figure 9.8 Volume Mesh of the JSM

9.1.5 Sample CFD Results


Full details of the results are given in [Ashton et al.]325 however a brief sample of the results are
provided here to demonstrate the performance of the meshes generated. Simulations were
undertaken in STAR-CCM+ and OpenFOAM in order to assess the accuracy and robustness of
OpenFOAM against a popular commercial code. In OpenFOAM a segregated pressure-based solver
(rhoPimpleFoam) is used with local time-stepping to accelerate steady-state convergence. Second
order upwind schemes were used for the both momentum and turbulence quantities with a green-
gauss scheme for the gradient operators. In STAR-CCM+ a fully implicit compressible density based
scheme is used with the Roe scheme for the flux. A green-gauss scheme with a min-mod limiter was
used for the gradient calculations and a second order upwind scheme was used for both the
momentum and turbulence quantities.
9.1.5.1 CRM
The flow conditions for the CRM geometry are a Reynolds number of Re = 3.2 x 106 and a Mach
number of M = 0.2, however as the geometry is full-scale the flow parameters are adjusted to achieve
the required Reynolds number. The viscosity is computed using Sutherlands Law and the density is
based upon the ideal gas law. Simulations are conducted at 8 & 16 degrees angle of attack and for
both STAR-CCM+ and OpenFOAM the Spalart-Allmaras turbulence model is used. Figure 9.9
displays the Lift and Drag coefficients for the CRM geometry at 8 degree for STAR-CCM+ and
OpenFOAM. There is a clear mesh refinement trend for both codes, suggesting that even finer meshes
would be required to reach a mesh converged solution for the lift. Given the finest mesh is 269 M

325N. Ashton, M. Fuchs, C. Mockett, and B. Buda, “EC135 Helicopter Fuselage, ”Go4Hybrid: Grey Area Mitigation
for Hybrid RANS-LES Methods”, C. Mockett, W. Haase, and D. Schwamborn, Springer International Publishing,
2018, pp. 2013–2015.
188

cells, it is likely that a meshes up to a billion cells might be required. The agreement between
OpenFOAM and STAR-CCM+ is within 0.5% for the lift coefficient and less than 2% for the drag
coefficient. They show the same outboard flap separation with the size and position being almost
identical. This less than 2% difference to a popular commercial CFD code would suggest that
OpenFOAM is a competitive tool for engineering analysis, which reflects the recent findings of
[Ashton et al.]326.

Figure 9.9 CL and CD for CRM Geometry at 8 degree AoA using OpenFOAM and STAR-CCM+

9.1.5.2 JSM
Close agreement between OpenFOAM and STAR-CCM+ was observed for the CRM geometry, however
without experimental data it is not possible to assess the accuracy. The JAXA Standard Model (JSM)
high-lift model is similar to the CRM but has a detailed experimental data set making it ideal to assess
the accuracy of OpenFOAM and STAR-CCM+. The flow conditions are a Reynolds number of Re =1.9
x106 and a Mach number of M = 0.172. The viscosity is computed using Sutherlands Law and the
density is based upon the ideal gas law. Simulations are conducted at 4.36, 10.47, 14.54, 18.58, 20.59,
21.57degrees angle of attack and all simulations use the Spalart Allmaras turbulence model. Figure
9.10 shows the lift and drag coefficient throughout the angle of attack range using OpenFOAM and
STAR-CCM+ for the geometry (no nacelle). It can be seen that there is again close agreement between
STAR-CCM+ and OpenFOAM, with only changes becoming clear in the post-stall region. At 4.36
degree, the flow is completely attached in both CFD and the experiment, which is reflected in the
close agreement between CFD and experimental for the lift in the lower angle of attack range. At
18.57 degree, just before stall, the agreement in the total lift is close, however the flow structures
start to exhibit slightly too much stall in the outboard wing section. By 21.57 degree where the flow
is now stalled, the agreement is close but actually for the wrong reason. Whereas the experimental
flow-vis shows both separation at the root and the most outboard region of the wing, the CFD (both
STAR-CCM+ and OpenFOAM show almost no separation at the root and much larger separation at the
outboard of the wing. The total amount of separation is roughly similar which explains why the lift
and to a lesser extent the drag follow the experimental values. Given that all simulations were
undertaken with the Spalart-Allmaras model with no corrections for curvature nor anisotropy of the
flow it is not surprising that the results do not perfectly correlate with the experiment. More details

326N. Ashton, M. Fuchs, C. Mockett, and B. Buda, “EC135 Helicopter Fuselage,” in Go4Hybrid: Grey Area
Mitigation for Hybrid RANS-LES Methods, vol. 134, C. Mockett, W. Haase, and D. Schwamborn, Eds. Cham:
Springer International Publishing, 2018, pp. 2013–2015.
189

results for these cases are shown in [Ashton et al.]327. The results from both the CRM and JSM have
shown that both STAR-CCM+ and OpenFOAM on ANSA© generated grids can perform well for complex
full aircraft geometries and in the case of the JSM, match experimental values up to the stall region.
The next steps are to properly assess the code for transonic flows, which is the typical flow regime
for industrial aerospace simulations.

Figure 9.10 Lift and Drag Coefficients for the JSM Geometry using OpenFOAM and STAR-CCM+

9.2 Multigrid Methods


Multigrid methods are effective techniques that can deliver fast convergence rates with minimal
memory overheads. The basic idea of a multigrid method is to accelerate the solution of a set of fine
grid equations by time stepping on a sequence of fine and coarse grids using a simple explicit scheme.
Multigrid methods capitalize on the effectiveness of explicit methods in reducing high frequency
error modes. A high-frequency error can be thought of as a solution component that oscillates
between neighboring grid points. While explicit methods are effective at eliminating such errors, they
are relatively ineffective at reducing low-frequency or global error components. This is to be
expected, because explicit schemes rely exclusively on local information supplied through the
residual stencil.
The multigrid strategy consists in explicitly time stepping the fine grid equations until the high-
frequency errors have been conquered. The solution is then transferred to a coarser grid, where the
remaining low-frequency errors now manifest themselves as high-frequency errors and can be
effectively damped by the same explicit method. The process is repeated recursively through a
complete sequence of grids, where each level is responsible for a particular bandwidth of errors.
When the coarsest grid of the sequence is reached, the corrections are interpolated back to each
successively finer grid. This entire multigrid cycle is then repeated until overall convergence is
achieved. For structured grids, simply get rid of every other line of grid and make sure that grid is
sufficient for coursing. But for unstructured meshes, the issue is more complicated. Given a fine
unstructured mesh, there is no simple procedure for constructing uniformly coarser levels, as in the
structured-grid case. One of the drawbacks of this approach is that it still requires the user to
generate multiple grids for a single solution, which is at best tedious. With this in mind, several efforts

327N. Ashton and V. Skaperdas, “Verification and Validation of OpenFOAM for High-Lift Aircraft Flows,” AIAA
Journal, 2017.
190

have been pursued to automate the process. But first we consider the typical (i.e. V &W) cycle which
is the essence of the multigrid process.
9.2.1 Multigrid Cycle
Usually iterative methods would reduce the high-frequency (i.e., oscillatory) errors but fails to reduce
the low-frequency (i.e., smooth) errors thus will results poor rate of convergence328. High-frequency
and low-frequency are the names of the errors that are referring to the error in the coarser and finer
mesh. In the case of the iterative methods, the solution in the finer grid looks smoother but if we
transfer the solution to the coarser grid it will be oscillating. To solve this problem we need to do
sampling of the solution from finer grid to coarser grid where a few iterations (iterative methods for
example, Gauss-Seidel) need to be done to reduce the high-frequency error. Transferring the
solution from finer grid to coarser grid is called restriction. After the few steps of the restriction
are done, the error of high-frequency will be reduced. Later this solution is transferred to finer grid
for further calculation and by then the low-frequency error is also minimized. Transferring the
solution from coarser grid to finer grid is called the prolongation or interpolation, (see Figure
9.11). On the finer grid it is suggested to do a few more iterations to keep the high-frequency error
still small. So the solution that is in the finer grid will be having less high-frequency and less low-
frequency error. These cycles have to be continued until the solution meets the desired convergence
criteria. Prolongation, restriction and less iteration in the finer grid gives a faster convergence rate
and quicker solution than the normal stationary iterative methods329. An investigation into a Multi-
gridding algorithm by [Gargoloff]330 shows that the maximum value of the residuals for a typical
multigrid solver were reduced much faster than the maximum value of the residuals for the one-level
grid solver. The 2D case was run for a NACA 0012 airfoil. Further discussion regarding smoother
terminology and their usage can be obtained from [Birken et al.]331.

Figure 9.11 Multi gridding Cycles

9.2.2 Unstructured Mesh Cycling


Methods that remove selected mesh points, using graph-based algorithms, and re-triangulate the
remaining subset of vertices have been demonstrated as effective tools for generating coarse-level
Methods that remove selected mesh points, using graph-based algorithms, and re-triangulate the
remaining subset of vertices have )been demonstrated as effective tools for generating coarse-level
multigrid meshes. However, for very complex geometries, the generation of coarse meshes that

328 Ezhilmathi, “Magic behind the Most of the CFD solvers for HPC “, Scientific Computing blog, 2013.
329 Same as above.
330 A Dissertation by Joaquin Ivan Gargoloff, “A Numerical Method For Fully Nonlinear Aero-elastic Analysis”,

Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements
for the degree of DOCTOR OF PHILOSOPHY, 2007.
331 Philipp Birken, J onathan Bull, and Antony Jameson, “A note on terminology in multigrid methods”, Proc. Appl.

Math. Mech. 16, 721 – 722 (2016).


191

conform to the original geometry either manually or automatically, becomes an unpleasant task. A
usual and tedious approach to unstructured multigrid methods is to generate a sequence of
completely independent coarse and fine meshes and use linear interpolation to transfer
variables back and forth between the various meshes of the sequence, within a multigrid cycle
332-333. The meshes may be generated using any feasible grid generation technique and will generally

be non-nested, and may even not contain any common points.


The only requirement is that they conform to the same domain boundaries. This technique is more
flexible than the nested subdivision approach, since the fine and coarse meshes are not constrained,
and may be optimized independently for accuracy and speed of convergence respectively.
Furthermore, this approach can be
applied to a problem with a pre-
specified fine mesh. The inter grid
transfer operators can be
determined in a preprocessing
operation but require smart search
techniques to determine the patterns
between coarse and fine grid
elements, which in principle may
overlap randomly. Once these have
been determined and stored, grid
transfers are simply implemented as
a weighted gather and scatter of data
between coarse and fine grid arrays.
Application of this technique to a
three-dimensional inviscid flow is
depicted in Figure 9.12 where two
grids from the sequence of grids
employed in the overset mesh
multigrid scheme for the
computation of transonic flow over
an aircraft configuration. Yet another
approach is provided by
agglomeration (collection) multigrid
methods. Based on the control-
volume formulation, these methods
form coarser-level meshes by
blending or agglomerating fine-level
control volumes together with their
neighbors334. The resulting coarse
mesh contains a smaller number of
larger and more complex control
volumes. The precise manner in
which control volumes are Figure 9.12 Sequence of gridding in unstructured multigrid
agglomerated can be controlled scheme

332 Mavriplis DJ., “Three-dimensional multigrid for the Euler equations”, AIAA , 1992.
333 Leclercq MP., “Resolution des equations d’Euler par des methods multigrilles conditions aux limites en regime
hypersonique”, PhD thesis. Dep. Appl. Math, Univ. de Saint- Etienne.
334 Lallemand M, Steve H, Dervieux A., “Unstructured multi gridding by volume agglomeration: current status”,

Computational. Fluids 21(3):397–433.


192

through a graph-based algorithm similar to the vertex removal procedure described above. The flow
solver must be modified to run on arbitrarily shaped control volumes on the coarse levels. For
inviscid-flow control-volume formulations, this presents little difficulty, since the equations are
generally discretized as fluxes over individual control-volume faces, which can be used to build
contour integrals about arbitrarily shaped control volumes. The observed convergence rate of the
agglomeration multigrid method is almost identical to that obtained with the overset-mesh method.
9.2.3 Viscous Flow Consideration
For viscous flows, the discretization of diffusion terms on arbitrarily shaped control volumes is no
longer straightforward. An algebraic interpretation of agglomeration multigrid provides a
mechanism for dealing with equations sets that contain diffusion terms. Borrowing from the
algebraic multigrid literature [Ruge & St¨uben 1987], a coarse-grid operator may be constructed by
projecting the fine-grid operator onto the space spanned by the coarse-grid basis functions. In
general, the multigrid convergence rates achieved for viscous flow cases are substantially slower
than those achieved for inviscid cases. The slower convergence in the viscous flow cases is principally
due to the anisotropic stretching of the mesh in the boundary-layer and wake regions. Unstructured
multigrid methods offer the possibility of designing schemes that are insensitive to anisotropic
effects. The graph-based agglomeration or vertex coarsening algorithms described above can be
modified to merge only those neighboring control volumes or delete only those neighboring vertices
that are the most strongly coupled to the current point. By coarsening or agglomerating only in the
direction of strongest coupling, as determined by the magnitude of the coefficients in the fine-grid
discrete equations, rather than eliminating all possible neighbors, coarse levels that are optimal for
the problem at hand can be generated. An alternate strategy for improving the convergence of
multigrid methods is to employ a stronger smoother as the base grid solver. Any of the implicit
methods described above may be substituted for an explicit method. Of course, most. There is an
obvious duality between the construction of sub regions for implicit methods and coarsening
strategies for multigrid methods that should be exploited in the future to better couple locally implicit
strategies with multigrid methods. The above discussion on multigrid methods centers on the Full
Approximation Storage (FAS) technique, where multigrid is applied directly to the nonlinear form
of the governing equations. Multigrid may also be employed as a solver for the linear system arising
at each time step of an implicit scheme, or even as a preconditioner for an iterative solution strategy.
While these strategies may yield desirable robustness characteristics, they are plagued by the high
memory requirements of the implicit linearization, which are avoided in the FAS approach.

9.2.3.1 Case Study 1 - Development and Application of Agglomerated Multigrid Methods for
Complex Geometries
Authors : Hiroaki Nishikawa, Boris Diskin and James L. Thomas
Appearance : 40th Fluid Dynamics Conference and Exhibit, 28 June - 1 July 2010, Chicago, Illinois
Source : AIAA 2010-4731. http://arc.aiaa.org | DOI: 10.2514/6.2010-4731
[Nishikawa et al.]335 reports on progress been made on the development of agglomerated multigrid
techniques for fully un-structured grids in three dimensions. Building upon two previous studies,
focused on efficiently solving a model diffusion equation. It demonstrates a robust fully-coarsened
agglomerated multigrid technique for 3D complex geometries, incorporating the following key
developments: consistent and stable coarse-grid discretization, a hierarchical agglomeration scheme,
and line-agglomeration/relaxation using prismatic-cell discretization’s in the highly-stretched grid
regions. A significant speed-up in computer time over state-of-art single-grid computations is

335Hiroaki Nishikawa, Boris Diskin and James L. Thomas, “Development and Application of Agglomerated
Multigrid Methods for Complex Geometries”, 40th Fluid Dynamics Conference and Exhibit 28 June - 1 July 2010,
Chicago, Illinois, AIAA 2010-4731.
193

demonstrated for a model diffusion problem, the Euler equations, and the Reynolds-averaged Navier-
Stokes equations for 3D realistic complex geometries.
9.2.3.1.1 Introduction
Multigrid techniques [1] are used to accelerate convergence of current Reynolds-Averaged Navier-
Stokes (RANS) solvers for both steady and unsteady flow solutions, particularly for structured-grid
applications. [Mavriplis et al. ][2, 3, 4, 5] pioneered agglomerated multigrid methods for large-scale
unstructured-grid applications. During the present development, a serious convergence degradation
in some of the state-of-the-art multi-grid algorithms was observed on highly-refined grids. To
investigate and overcome the difficulty, we critically studied agglomerated multigrid techniques [6,
7] for two- and three-dimensional isotropic and highly-stretched grids and developed quantitative
analysis methods and computational techniques to achieve grid-independent convergence for a
model equation representing laminar diffusion in the incompressible limit. It was found in Ref. [6]
that it is essential for grid-independent convergence to use consistent coarse-grid discretization. In
the later Ref. [7], it was found that the use of prismatic cells and line-agglomeration/relaxation is
essential for grid-independent convergence on fully-coarsened highly-stretched grids.
Here, we extend and demonstrate these techniques for inviscid and viscous flows over complex
geometries. The paper is organized as follows. Finite-volume discretization employed for target grids
are described. Details of the hierarchical agglomeration scheme are described. Elements of the
multigrid algorithm are then described, including discretization on coarse grids. Multigrid results for
complex geometries are shown for a model diffusion equation, the Euler equations, and the RANS
equations. The final section contains conclusions and recommendations for future work.
9.2.3.1.2 Discretization
The discretization method is a finite-volume discretization (FVD) centered at nodes. It is based on
the integral form of governing equations of interest:

̂) dΓ = ∬ s dΩ
∮(𝐅. 𝐧
Γ Ω
Eq. 9.1
where F is a flux tensor, s is a source term, Ω is a control
volume with boundary Г, and n^ is the outward unit
normal vector. For the model diffusion (Laplace)
equation, the boundary conditions are taken as
Dirichlet, i.e., specified from a known exact solution
over the computational boundary. Tests are performed
for a constant manufactured solution, U(x; y; z) = 10:0,
Figure 9.13 Illustration of a node-
with a randomly perturbed initial solution. For inviscid
centered median-dual control volume
flow problems, the governing equations are the Euler (shaded). Dual faces connect edge
equations. Boundary conditions are a slip-wall midpoints with primal cell centroids.
condition and inflow/outflow conditions on open Numbers 0-4 denote grid nodes
boundaries. For viscous flow problems, the governing
equations are the RANS equations with the Spalart-
Allmaras one-equation model [8]. Boundary conditions are non-slip condition on walls and
inflow/outflow conditions on open boundaries. The source term, s, is zero except for the turbulence-
model equation (see Ref. [8]).
The general FVD approach requires partitioning the domain into a set of non-overlapping control
volumes and numerically implementing Eq. 9.1 over each control volume. Node-centered schemes
define solution values at the mesh nodes. In 3D, the primal cells are tetrahedra, prisms, hexahedra,
or pyramids. The median-dual partition [9, 10] used to generate control volumes is illustrated in
194

Figure 9.13 for 2D. These non-overlapping control volumes cover the entire computational domain
and compose a mesh that is dual to the primal mesh.
The main target discretization of interest for the model diffusion equation and the viscous terms of
the RANS equations is obtained by the Green-Gauss scheme [11, 12], which is a widely-used viscous
discretization for node-centered schemes and is equivalent to a Galerkin finite-element discretization
for tetrahedral grids. For mixed-element cells, edge-based contributions are used to increase the h-
ellipticity of the operator [11, 12]. The inviscid terms are discretized by a standard edge-based
method with unweighted least-squares gradient reconstruction and Roe's approximate Riemann
solver [13]. Limiters are not used for the problems considered in this paper. The convection terms of
the turbulence equation are discretized with first-order accuracy.
9.2.3.1.3 Agglomeration Scheme
As described in the previous papers [6,7], the grids are agglomerated within a topology-preserving
framework, in which hierarchies are assigned based on connections to the computational
boundaries. Corners are identified as grid points with three or more boundary-condition-type
closures (or three or more boundary slope discontinuities). Ridges are identified as grid points with
two boundary-condition-type closures (or two boundary slope discontinuities). Valleys are

Table 9.2 Admissible Agglomerations

identified as grid points with a single


boundary-condition-type closure. Interiors
are identified as grid points without any
boundary condition. The agglomerations
proceed hierarchically from seeds within
the topologies | first corners, then ridges,
then valleys, and finally interiors. Rules are
enforced
to maintain the boundary condition types of
the finer grid within the agglomerated grid.
Candidate volumes to be agglomerated are
vetted against the hierarchy of the currently
agglomerated volumes. In this work, we use
the rules summarized in Table 9.2.
In order to enable a valid non-degenerate
stencil for linear prolongation and least- Figure 9.14 Trailing-edge area of a 3D wing
squares gradients near boundaries [7], the agglomerated by the hierarchical scheme. Primal grid
is shown by thin lines; agglomerated grid is shown by
rules reflect less agglomerations near
thick lines.
boundaries than in the interior. Corners are
195

never agglomerated, ridges are agglomerated only with ridges, and valleys are agglomerated only
with valleys. A typical boundary agglomeration generated by the above rules is shown in Figure
9.14.
The conditional entries denote that further inspection of the connectivity of the topology must be
considered before agglomeration is allowed. For example, a ridge can be agglomerated into an
existing ridge agglomeration if the two boundary conditions associated with each ridge are the same.
For valleys or interiors, all available neighbors are collected and then agglomerated one by one in the
order of larger number of edge-connections to a current agglomeration until the maximum threshold
of agglomerated nodes (4 for valleys; 8 for interiors) is reached. The prolongation operator P 1 is
modified to prolong only from hierarchies equal or above the hierarchy of the prolonged point.
Hierarchies on each agglomerated grid are inherited from the finer grid.
For the results reported in this paper, we employ agglomeration scheme II described in previous
papers [6 , 7]. It has been modified to deal with viscous meshes using implicit-line agglomeration. It
performs the agglomeration in the following sequence:

1. Agglomerate viscous boundaries (bottom of implicit lines).


2. Agglomerate prismatic layers through the implicit lines (implicit-line agglomeration).
3. Agglomerate the rest of the boundaries.
4. Agglomerate the interior.

The second step is a line-agglomeration


step where volumes are agglomerated
along implicit lines starting from the
volume directly above the boundary
volume. Specifically, we first agglomerate
volumes corresponding to the second and
third entries in the implicit-line lists
associated with each of the fine-grid
volumes contained in a boundary
agglomerate. The line agglomeration
continues to the end of the shortest line
among the lines associated with the
boundary agglomerate. This line-
agglomeration process preserves the
boundary agglomerates. Figure 9.15
illustrates typical implicit line-
agglomeration near a curved solid body. Figure 9.15 Typical implicit line-agglomeration
The implicit line-agglomeration preserves showing a curved solid body surface on the left and a
the line structure of the fine grid on coarse symmetry plane on the right. The projection of the line-
grids, so that line-relaxations can be agglomerations can be seen on the symmetry plane
performed on all grids to address the grid
anisotropy. If no implicit lines are defined, typical for inviscid grids, the first two steps are skipped.
In each boundary agglomeration (steps 1 and 3), agglomeration begins with corners, creates a front
list defined by collecting volumes adjacent to the agglomerated corners, and proceeds to agglomerate
volumes in the list (while updating the list as agglomeration proceeds) in the order of ridges and
valleys. During the process, a volume is selected from among those in the same hierarchy that has the
least number of non-agglomerated neighbors, thereby reducing the occurrences of agglomerations
with small numbers of volumes. A heap data-structure is utilized to efficiently select such a volume.
The agglomeration continues until the front list becomes empty. Finally, for both valleys and
196

Figure 9.16 Grids and convergence of the model diffusion equation for the F6 wing-body
combination

interiors, agglomerations containing only a few volumes (typically one) are combined with other
197

agglomerations. Figure 9.16 and Figure 9.17 show primal grids and agglomerations for the F6

Figure 9.17 Grids and Convergence of the Model Diffusion Equation for the DPW-W2 case
198

wing-body combination and the DPW-W2 [14] grids. These grids are viscous grids; the primal grid
has prismatic viscous layers around the body and the wing. Coarsening ratios are indicated by r k (k

Figure 9.18 Grids and Convergence for the wing-ap inviscid case.
199

= 1 ; 2 ; 3 ; 4) in the parenthesis. Line agglomeration was applied in these regions. Figure 9.18 show
primal grids and agglomerations for a wing-body combination, a wing-ap combination, and a 3D wing
with a blunt trailing edge, all are pure-tetrahedral inviscid grids.
9.2.3.1.4 Single-Grid Iterations
Single-grid iteration scheme is based on the implicit formulation:

Ω ∂𝐑̂∗
( + ̂ (𝐔)
) δ𝐔 = −𝐑
∆τ ∂𝐔
Eq. 9.2
where ^R (U) is the target residual computed for the current solution U, Δτ is a pseudo-time step,
∂Ř*/∂U is an exact/approximate Jacobian, and δU is the change to be applied to the solution U. An
approximate solution to Eq. 9.2 is computed by a certain number of iterations on the linear system
(linear-sweeps). Update of U completes one nonlinear iteration. The RANS equations are iterated in
a loosely-coupled formulation, updating the turbulence variables after the mean-ow variables at each
nonlinear iteration. The left-hand-side operator of Eq. 9.2 includes an exact linearization of the
viscous (diffusion) terms and a linearization of the inviscid terms involving first-order contributions
only. Thus, the iterations represent a variant of defect correction.
Typically in single-grid FUN3D RANS applications, the first-order Jacobian corresponds to the
linearization of Van Leer's flux-vector splitting. For inviscid cases, we consider using the linearization
of Roe's approximate Riemann solver. Jacobians are updated after each iteration. The linear sweeps
performed before each nonlinear update include νp sweeps of the point multi-color Gauss-Seidel
relaxation performed through the entire domain followed by νl line-implicit sweeps in stretched
regions. The line-implicit sweeps are applied only when solving the model diffusion or the RANS
equations. In a line-implicit sweep, unknowns associated with each line are swept simultaneously by
inverting a block tridiagonal matrix [7]. For RANS simulations, νp = νl = 15 for the mean-flow
equations and νp = νl = 10 for the turbulence equation. For the model diffusion equation, only one
linear sweep is performed per nonlinear iteration, i.e., νp = νl = 1, and the exact Jacobian computed
only once at the beginning of the entire calculation. In spite of linearity of the model diffusion
equation, computations of Ř(U) in Eq. 9.2 do not employ the exact Jacobian, thus, providing a better
similarity to nonlinear computations.
9.2.3.1.5 Multigrid V-Cycle
The multigrid method is based on the full-approximation scheme (FAS) [1, 15] where a coarse-grid
problem is solved/relaxed for the solution approximation. A correction, computed as the difference
between the restricted fine-grid solution and the coarse-grid solution, is prolonged to the finer grid
to update the fine-grid solution. The two-grid FAS is applied recursively through increasingly coarser
grids to define a V-cycle. A V-cycle, denoted as V (ν1 ; ν2), uses ν1 relaxations performed at each grid
before proceeding to the coarser grid and ν2 relaxations after coarse-grid correction. On the coarsest
grid, relaxations are performed to bring two orders of magnitude residual reduction or until the
maximum number of relaxations, 10, is reached.
9.2.3.1.6 Inter-Grid Operators
The control volumes of each agglomerated grid are found by summing control volumes of a finer grid.
An operator that performs the summation is given by a conservative agglomeration operator, R0,
which acts on _ne-grid control volumes and maps them onto the corresponding coarse-grid control-
volumes. Any agglomerated grid can be defined, therefore, in terms of R0 as

Ωc = R 0 Ωf
Eq. 9.3
200

where superscripts c and f denote entities on coarser and finer grids, respectively. On the
agglomerated grids, the control volumes become geometrically more complex than their primal
counterparts and the details of the control-volume boundaries are not retained. The directed area of
a coarse-grid face separating two agglomerated control volumes, if required, is found by lumping the
directed areas of the corresponding finer-grid faces and is assigned to the virtual edge connecting the
centers of the agglomerated control volumes. Residuals on the fine grid, ^Rf , corresponding to the
integral Eq. 9.1 are restricted to the coarse grid by the conservative agglomeration operator, R0, as

̂ ̂f
𝐑c = R 0 𝐑
Eq. 9.4
where ^Rc denotes the fine-grid residual restricted to the coarse grid. The fine-grid solution
approximation, Uf , is restricted as
𝐑 0 (𝐔f Ωf )
𝐔0c =
Ωc
Eq. 9.5
where Uc 0 denotes the fine-grid solution approximation restricted to the coarse grid. The restricted
approximation is then used to define the forcing term to the coarse-grid problem as well as to
compute the correction, (δU)c:
(δ𝐔)c = 𝐔 c − 𝐔0c
Eq. 9.6
where Uc is an updated coarse-grid solution obtained directly from the coarse-grid problem. The
correction to the finer grid is prolonged typically through the prolongation operator, P1, that is exact
for linear functions, as
(δ𝐔)f = P1 (δ𝐔)c
Eq. 9.7
The operator P1 is constructed locally using linear interpolation from a tetrahedra defined on the
coarse grid. The geometrical shape is anchored at the coarser-grid location of the agglomerate that
contains the given finer control volume. Other nearby points are found by the adjacency graph. An
enclosing simplex is sought that avoids prolongation with non-convex weights and, in situations
where multiple geometrical shapes are found, the first one encountered is used. Where no enclosing
simplex is found, the simplex with minimal non-convex weights is used.
9.2.3.1.7 Coarse-Grid Discretization
For inviscid coarse-grid discretization, a first-order edge-based scheme is employed. For the model
equation and the viscous term in the RANS equations, two classes of coarse-grid discretization were
previously studied [6, 7]: the Average-Least-Squares (Avg-LSQ) and the edge-terms-only (ETO)
schemes. The consistent Avg-LSQ schemes are constructed in two steps: first, LSQ gradients are
computed at the control volumes; then, the average of the control-volume LSQ gradients is used to
approximate a gradient at the face, which is augmented with the edge-based directional contribution
to determine the gradient used in the ux. There are two variants Inviscid Viscous (Diffusion) Primal
grid Second-order edge-based reconstruction Green-Gauss Coarse grids First-order edge-based
reconstruction Face-Tangent Avg-LSQ.
Coarse grids Exact or Approximate (edge-terms only) of the Avg-LSQ scheme. One uses the average-
least-squares gradients in the direction normal to the edge (edge-normal gradient construction). The
other uses the average-least-squares gradients along the face (face-tangent gradient construction).
The ETO discretization are obtained from the Avg-LSQ schemes by taking the limit of zero Avg-LSQ
gradients. The ETO schemes are often cited as a thin-layer discretization in the literature [2, 3, 4];
they are positive schemes but are not consistent (i.e., the discrete solutions do not converge to the
exact continuous solution with consistent grid refinement) unless the grid is orthogonal [13, 16]. As
201

shown in the previous papers [6, 7], ETO schemes lead to deterioration of the multigrid convergence
for refined grids, and therefore are not considered in this paper. For practical applications, the face-
tangent Avg-LSQ scheme was found to be more robust than the edge-normal Avg-LSQ scheme. It
provides superior diagonal dominance in the resulting discretization [6, 7]. In this study, therefore,
we employ the face-tangent Avg-LSQ scheme as a coarse-grid discretization for the model equation
and the viscous term.
For excessively-skewed faces (over 90◦ angle between the outward face normal and the
corresponding outward edge vector), which can arise on agglomerated grids, the gradient is
computed by the Avg-LSQ scheme and edge contributions are ignored. The Galerkin coarse-grid
operator [1], which was considered in a previous study, is not considered here since the method was
found to be grid-dependent and slowed down the multigrid convergence for refined grids [6]. For
inviscid discretization, we employ a first-order edge-based discretization on coarse grids. Table 9.3
shows a summary of discretization used.

Table 9.3 Summary of discretization used to define the residual, ^R

9.2.3.1.8 Relaxations
Relaxation scheme is similar to the single-grid iteration described in Sec. 9.2.3.1.4 with the
following important differences. On coarse grids, the Avg-LSQ scheme used for viscous terms has a
larger stencil than the Green-Gauss scheme implemented on the target grid and its exact linearization
has not been used; instead relaxation of the Avg-LSQ scheme relies on an approximate linearization,
which consists of edge terms only. For inviscid cases, the first-order Jacobian is constructed based on
Roe's approximate Riemann solver, and thus it is exact on coarse grids where the first-order scheme
is used for the residual. For RANS cases, the first-order Jacobian is constructed based on Van Leer's
flux-vector splitting, but the inviscid part of the residual is computed by Roe's approximate Riemann
solver. Therefore, the Jacobian is approximate on both the primal and coarse grids. Table 9.5
summarizes the Jacobians used for inviscid and viscous (diffusion) terms on the primal and coarse
grids. In multigrid nonlinear applications, Jacobians are evaluated at the beginning of a cycle and
frozen during the cycle. For inviscid and RANS flow simulations, significantly fewer linear sweeps are
used in a multigrid relaxation than in a single-grid iteration: νp = νl = 5 for both the mean ow and
turbulence relaxations. For the model diffusion equation, still only one sweep is performed per
relaxation.
9.2.3.1.9 Cost of Multigrid V-Cycle
All of the computations in the paper use FAS multigrid. For the linear model diffusion equation, the
computer time would be reduced if the corresponding correction scheme (CS) cycle is used. To
estimate relative cost of multigrid cycles in comparison with single-grid iterations, the cost of
nonlinear residual valuations, relaxation updates, and Jacobian evaluations needs to be taken into
account. Suppose that a nonlinear relaxation and a Jacobian evaluation cost σ and J times a nonlinear
residual evaluation, respectively. Then, the cost of a single-grid iteration relative to the cost of a
nonlinear residual evaluation is given by
W SG = σSG + J
Eq. 9.8
202

where the superscript SG denotes single-grid iterations. On the other hand, a multigrid cycle involves
ν1 + ν2 nonlinear relaxations, a nonlinear residual evaluation before restriction, and a Jacobian
evaluation per cycle per grid. A residual evaluation on coarse grids is also required to form the FAS
forcing term. The cost of a multigrid cycle, MG, relative to the cost of a fine-grid nonlinear residual
evaluation is given by

W MG = [C(ν1 + ν2 )σMG + J + 1] + C − 1
Eq. 9.9
where C is a coarse-grid factor,

1 1 1
C= + + +⋯
r1 r1 r2 r1 r2 r3
Eq. 9.10
Here, rk is the agglomeration ratio of the k-th agglomerated grid. The relative cost, WMGSG , of a V -cycle
is therefore given by

MG
W MG
WSG = SG
W
Eq. 9.11
Table 9.4 shows values
of WMGSG , σ and J for each
equation set within the
single-grid iteration and Table 9.4 Summary of costs and typical numbers of linear-sweeps. The
the multigrid method. multigrid cycle is a 5-level V (2; 1) with a typical coarsening ratio 8. The
The values for σ and J are numbers in parenthesis denote the number of point and line sweeps,
based on measured respectively, and the second set for RANS denotes the number of point and
line sweeps of the turbulent equation.
computer times
associated with residual
evaluation, Jacobian evaluation, and linear-sweeps on the primal grid for particular configurations.
The corresponding values on a per node basis vary from the tabulated values on the coarser grids
and across configurations. Thus, Eq. 9.11 serves as a reasonable approximation to the expected code
performance. Note that the Jacobian computation has been ignored for the model diffusion equation.
This is because the Jacobian is constant for the linear problem and therefore it is computed only once
and never updated. Observe also that σ is much smaller in the multigrid cycle than in the single-grid
iteration for the nonlinear cases. This saving comes from much fewer linear-sweeps in the multigrid
method. We experimentally found that the multigrid convergence did not depend heavily on the
number of linear-sweeps. Increasing them further does not reduce the number of cycles for
convergence, but it merely increases the CPU time. The numbers of linear-sweeps shown for the
single-grid method are typical numbers considered sufficient for robust computations with a
reasonably large CFL number. The relative cost (Eq. 9.11) computed based on the measured σ and J

Table 9.5 Summary of Jacobians, ∂^R*/∂U


203

are shown in the third column of the table. Considering a 5-level V (2 ; 1) cycle with a coarsening
ration of 8, the relative cost is found to be 4 : 5 for the diffusion equation, 1: 8 for the inviscid equation,
and 1 : 5 for the RANS equations.
9.2.3.1.10 Results for Complex Geometries
All calculations presented in this paper were performed with a single processor. Parallelization of
the multigrid algorithm is currently underway. The multigrid cycle is a 5-level V (2 ; 1) for all cases.
9.2.3.1.11 Model Diffusion Equation
The multigrid method was applied on grids generated for two practical geometries: the F6 wing-body
and the DPW-W2 wing-alone cases [14]. Both grids are tetrahedral, but prisms are used in a highly-
stretched viscous layer near the solid boundary. Pyramidal cells are also present around the
transitional region. The multigrid V (2; 1) cycle is applied and compared with single-grid iterations.

Table 9.7 Cost of V-cycle relative to a single-grid iteration and speed-up factor. The expected speed-
up factors have been computed with the actual coarsening ratio

Table 9.6 Summary of grid sizes and parameters for the inviscid cases

The CFL number is set to infinity. For the F6 wing-body grid (1,121,301 nodes), the grids and
convergence results are shown in Figure 9.16. The speed-up factor is 63 in CPU time. A similar result
was obtained for the DPW-W2 grid (1,893,661 nodes) as shown in Figure 9.17. The speed-up factor
is nearly 22 in this case. The cost of one V -cycle computed according to Eq. 9.11 with actual
coarsening ratios is shown for each case in the fourth column of Table 9.7. It shows that one V-cycle
costs nearly 4 single-grid iterations. The fifth column is an expected speed-up factor based on the
number of single-grid iterations (NSG), the number of multigrid cycles (NMG), and the factor WMGSG

MG
N𝑆𝐺 ⁄NMG WSG
Eq. 9.12
The last column is the actual speed-up factor computed as a ratio of the total single-grid CPU time to
the total multigrid CPU time. A fairly good agreement can be observed between the expected and
204

actual speed-up factors.


9.2.3.1.12 Inviscid Flows
The multigrid method was applied to three inviscid cases: low-speed subsonic flows over a wing-
body configuration, a wing-ap configuration, and a NACA15 wing with a blunt trailing edge. Table
9.6 shows a summary of grid sizes and parameters. Nramp denotes the number of first
iterations/cycles over which the CFL number is ramped from 10 to 200 for single-grid/multigrid
calculations. The multigrid cycle is V (2 ; 1) for these cases.
The convergence results for the wing-ap configuration is given in Figure 9.18 (f). It shows that the
multigrid converges (to machine zero) nearly 2 times faster in CPU time than the single-grid
iterations. For the NACA15 wing case, the solution does not fully converge in either single-grid or
multigrid computations apparently due to an unsteady behavior near the blunt trailing edge.
In all three cases, the ratio of the number of multigrid cycles to the number of single-grid iterations
is about twice the speed-up factor in terms of the CPU time. It implies that the cost of one multigrid
V (2 ; 1) cycle is close to the cost of two single-grid iterations. These results are in good agreement
with the estimates of the cost of one V-cycle computed according to Eq. 9.11 and shown in the fourth
column of Table 9.7. The estimated cost of one V -cycle is 1:8 of the single-grid iteration cost for all
inviscid cases. The estimated speed-up shown in the fifth column agrees well with the actual speed-
up shown in the last column.

Figure 9.19 Residual versus CPU time for the F6 wing-body case (RANS)

9.2.3.1.13 Turbulent Flows (RANS)


We applied the multigrid algorithm to a RANS simulation on the F6 wing-body grid shown in Figure
9.16. The inflow Mach number is 0:3, the angle of attack is 1 degree, and the Reynolds number is 2 :
5 M. For this case, a prolongation operator that is exact for a constant function is used. The P1
prolongation operator encountered a difficulty on a boundary for this particular configuration, and
205

it is currently under investigation. The CFL number is not ramped in this case, but set to 200 for the
mean-flow equations and 30 for the turbulence equation. Convergence results are shown in Figure
9.19. As can be seen, the multigrid achieved four orders of reduction in the residual 5 times faster
in CPU time than the single-grid iteration. For this case, neither the multigrid nor single-grid method
fully converges seemingly due to a separation near the wing-body junction. Four orders of magnitude
reduction is just about how far a single-grid is run in practice for this particular configuration. The
comparison of the number of cycles with the number of single-grid iterations in the figure implies
that the CPU time for a multigrid V (2 ; 1) cycle is less than the CPU time for two single-grid iterations.
As shown in Table 9.7, one multigrid V-cycle actually costs 1 : 6 single-grid iterations, indicating a
good agreement between the expected and actual speed-up factors.
9.2.3.1.14 Concluding Remarks
An agglomerated multigrid algorithm has been applied to inviscid and viscous flows over complex
geometries. A robust fully-coarsened hierarchical agglomeration scheme was described for highly-
stretched viscous grids, incorporating consistent viscous discretization on coarse grids. Results for
practical simulations show that impressive speed-ups can be achieved for realistic flows over
complex geometries. Parallelization of the developed multigrid algorithm is currently underway to
expand the applicability of the developed technique to larger-scale computations and to demonstrate
grid-independent convergence of the developed multigrid algorithm.

9.2.3.1.15 References
[1] Trottenberg, U., Oosterlee, C. W., and Schuller, A., Multigrid, Academic Press, 2001.
[2] Mavriplis, D. J., Multigrid Techniques for Unstructured Meshes," VKI Lecture Series VKI-LS 1995-
02, Von Karman Institute for Fluid Dynamics, Rhode-Saint-Genese, Belgium, 1995.
[3] Mavriplis, D. J., Unstructured Grid Techniques," Annual Review of Fluid Mechanics, Vol. 29, 1997,
pp. 473-514.
[4] Mavriplis, D. J. and Pirzadeh, S., Large-Scale Parallel Unstructured Mesh Computations for 3D High-
Lift Analysis," Journal of Aircraft, Vol. 36, No. 6, 1999, pp. 987{998.
[5] Mavriplis, D. J., An Assessment of Linear versus Non-Linear Multigrid Methods for Unstructured
Mesh Solvers," Journal of Computational Physics, Vol. 275, 2002, pp. 302-325.
[6] Nishikawa, H., Diskin, B., and Thomas, J. L., Critical Study of Agglomerated Multigrid Methods for
Diffusion," AIAA Journal, Vol. 48, No. 4, 2010, pp. 839-847.
[7] Thomas, J. L., Diskin, B., and Nishikawa, H., A Critical Study of Agglomerated Multigrid Methods for
Diffusion on Highly-Stretched Grids," Computers and Fluids, 2010, to appear.
[8] Spalart, P. R. and Allmaras, S. R., A One-Equation Turbulence Model for Aerodynamic Flows," AIAA
paper 92-0439, 1992.
[9] Barth, T. J., Numerical Aspects of Computing Viscous High Reynolds Number Flows on Unstructured
Meshes," AIAA Paper 91-0721, 1991.
[10] Haselbacher, A. C., A Grid-Transparent Numerical Method for Compressible Viscous Flow on Mixed
Unstructured Meshes, Ph.D. thesis, Loughborough Universit, 1999.
[11] Anderson, W. K. and Bonhaus, D. L., An implicit upwind algorithm for computing turbulent flows
on unstructured grids," Computers and Fluids, Vol. 23, 1994, pp. 1-21.
[12] Diskin, B., Thomas, J. L., Nielsen, E. J., Nishikawa, H., and White, J. A., Comparison of Node-Centered
and Cell-Centered Unstructured Finite-Volume Discretization. Part I: Viscous Fluxes," 47th AIAA
Aerospace Sciences Meeting, AIAA Paper 2009-597, January 2009.
[13] Diskin, B. and Thomas, J. L., Accuracy Analysis for Mixed-Element Finite-Volume Discretization
Schemes," NIA Report No. 2007-08 , 2007.
[14] “The DPW-II Workshop for the geometry," http://aaac.larc.nasa.gov/tsab/cfdlarc/aiaa-
dpw/Workshop2/workshop2.
[15] Briggs, W. L., Henson, V. E., and McCormick, S. F., A Multigrid Tutorial, SIAM, 2nd ed., 2000.
206

[16] Thomas, J. L., Diskin, B., and Rumsey, C. L., Towards Verification of Unstructured Grid Methods,"
AIAA Journal, Vol. 46, No. 12, December 2008, pp. 3070-3079.

9.2.4 Case Study 2 - A 3D Hybrid Grid Generation Technique and a Multigrid/Parallel Algorithm
Based on Anisotropic Agglomeration Approach336
A hybrid grid generation technique and a multigrid/parallel algorithm are presented by [Laiping et
al.]337, for turbulence flow simulations over the (3D) complex geometries. The hybrid grid generation
technique is based on an agglomeration method of anisotropic tetrahedrons. Firstly, the complex
computational domain is covered by pure tetrahedral grids, in which anisotropic tetrahedrons are
adopted to discrete the boundary layer and isotropic tetrahedrons in the outer field. Then, the
anisotropic tetrahedrons in the boundary layer are agglomerated to generate prismatic grids. The
agglomeration method can improve the grid quality in boundary layer and reduce the grid
quantity to enhance the numerical accuracy and efficiency. In order to accelerate the convergence
history, a multigrid/parallel algorithm is developed also based on anisotropic agglomeration
approach.
9.2.4.1 Introduction, Background and Contributors
Many grid generation techniques, such as multi-block or patched structured grids338-339 overlapping
or chimera grids340 and unstructured grids341 have been proposed in the last decades. More recently,
mixed or hybrid grids including many different cell types have gained popularity, because they
integrate the advantages of both structured and unstructured meshes to improve efficiency and
accuracy. For example, hybrid (prism/tetrahedral) grids342-343, mixed grids including
(tetrahedral/prism/pyramid/hexahedral) cells344, adaptive cartesian grid methods345-346, and
(cartesian/tetrahedral/prismatic) grids347 have been used in many applications. It is relatively easier
to use unstructured grids over complex configurations, even for viscous flow simulations, where the
anisotropic tetrahedrons are used in boundary layer. Generally, the anisotropic tetrahedrons can be
automatically generated by an advancing front method348. However, the enormous total grid number
will reduce the efficiency of the viscous flow simulations over complex geometries. More

336 Zhang Laiping, Zhao Zhong, Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a
multigrid/parallel algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.
337 See Previous.
338 Jochem H, Peter E, Yang X, Cheng ZM. Parallel multiblock structured grids. Thompson JF, Soni BK, Weatherill

NP, editors. Handbook of grid generation. CRC Press; 1999 chapter 12.
339 Sebastien E. Numerical simulation and drag extraction using patched grid calculations. AIAA Paper 2003.
340 Benek A, Buning PG, Steger JL. A 3-D Chimera grid embedding technique. AIAA Paper 1985-1523; 1985.
341 Weatherill NP. Unstructured grids: procedures and applications. In: Thompson JF, Soni BK, Weatherill NP,

editors. Handbook of grid generation. CRC Press; 1999 chapter 26.


342 Kallinderis Y, Khawaja A, McMorris H. Hybrid prismatic/tetrahedral grid generation for complex geometries.

AIAA J, 1996.
343 Pirzadeh S. Three-dimensional unstructured viscous grids by the advancing-layers method. AIAA J 1996.
344 Coirier WJ, Jorgenson PCE. A mixed volume grid approach for the Euler and Navier–Stokes equations. AIAA

Paper 96-0762; 1996.


345 Coirier WJ, Powell KG. Solution-adaptive Cartesian cell approach for viscous and inviscid flows. AIAA J

1996;34(5):938–45.
346 Wang ZJ, Chen RF. Anisotropic solution-adaptive viscous Cartesian grid method for turbulent flow simulation.

AIAA J 2002;40(10):1969–78.
347 Zhang LP, Yang YJ, Zhang HX. Numerical simulations of 3D inviscid/viscous flow fields on

Cartesian/unstructured/prismatic hybrid grids. Proceedings of the fourth Asian CFD conference, Mianyang,
Sichuan, China; September 2000.
348 Lohner R, Parikh P. Generation of three-dimensional unstructured grids by the advancing front method. Int

J Numerical Method Fluids, 1988.


207

importantly, the forfeiture of orthogonality will influence the simulation accuracy of boundary
layer. Therefore, the prism grids, even unstructured hexahedral grids, may be a better choice in
the boundary layer. The traditional prism grid generation method is the advancing layer method in
which the prism grids are generated layer-by-layer in the normal direction from the surface
triangular grids on the solid wall. Alternatively, the idea of solving the hyperbolic equations to
generate structured grids has been introduced to generate prism grids349-350. However, for some real-
world configurations, these methods will fail in the concave and/or convex regions, because the
marching vector may be invisible from some of the nodes in its node-manifold351. Examples include
the trailing edge of an airfoil, the tip of a sharp nose, the wing-body conjunction, the tail of a store
and the nacelles of aircraft. So it is still difficult to automatically generate viscous grids in the
boundary layer. Since the anisotropic tetrahedrons can be generated fully automatically, we can
agglomerate them into prisms in the boundary layer and then improve the grid quality of the pure
anisotropic tetrahedron grids. That is the basic idea of present work.
On the other hand, the computation efficiency is another key issue for turbulence flow simulations
over complex configurations, because the total grid number may be several ten M, even up to
hundreds of M, for a real-life aircraft. The high aspect ratio grids in boundary layer will bring about
very strong stiffness during time-iteration, resulting in lower converging efficiency. The multigrid
algorithm is an effective method to improve the efficiency. After [Fedorenko]’s development of the
method in the 1960s352, it was discovered, further developed and popularized by [Brandt] in the
1970s353. Multigrid was applied to the transonic small-disturbance equation by [South and
Brandt]354 and to the full potential equation by [Jameson]355. Subsequently, the idea of agglomeration
multigrid has been extended to unstructured grids [Smith]356, [Lallemand et al.]357, [Venkatakrishnan
& Mavriplis]358, and also [Mavriplis]359-360. Despite considerable progress towards improving the
convergence performance of multigrid algorithm based on cell-vertex finite volume schemes, the
performance of these methods for viscous flow simulations is not satisfying for cell-centered finite
volume schemes. The key issue is how to generate high-quality coarser grids using the
agglomeration approach. In other words, how to ensure the ‘‘convex’’ property for the coarser
grids, especially in the boundary layer.
The work of 361-362 gave some inspirations. They agglomerate the grids in boundary layer with a

349 Chan WM, Steger JL. Enhancements of a three-dimensional hyperbolic grid generation scheme. Appl Math
Computing 1992.
350 Matsuno K. High-order upwind method for hyperbolic grid generation. Computational Fluids 1999.
351 Kannan R, Wang ZJ. Overset adaptive Cartesian/prism grid method for stationary and moving-boundary flow

problems. AIAA J 2007.


352 Fedorenko R. The speed of convergence of one iterative process. USSR Comput Math Phys 1964;4(3):227–35.
353 Brandt A. Multi-level adaptive solutions to boundary value problems. Math Comput 1977;31(138):333–90.
354 South JJC, Brandt A. Application of a multi-level grid method to transonic flow calculations. Adamson Jr TC,

Platzer MF, editors. Transonic flow problems in turbomachinery. Washington: Hemisphere; 1977.
355 Jameson A. Acceleration of transonic potential flow calculations on arbitrary meshes by the multiple grid

method. Proceedings of the AIAA fourth computational fluid dynamics conference. Virginia, 1979.
356 Smith WA, Multigrid solutions of transonic flow on unstructured grids. In: Baysal O, editor. Recent advances

and applications in computational fluid dynamics. In: Proceedings of the ASME winter annual meeting, 1990.
357 Lallemand M, Steve H, Dervieux A. Unstructured multi gridding by volume agglomeration: current status. Com.

Fluids 1992.
358 Venkatakrishnan V, Mavriplis D. Agglomeration multigrid for the three-dimensional Euler equations. 1995.
359 Mavriplis DJ. Unstructured grid techniques. Annual Rev Fluid Mech 1997;29(1):473–514.
360 Mavriplis DJ. Viscous flow analysis using a parallel unstructured multigrid solver. AIAA J 2000..
361 Daniel G, Sreenivas K. Parallel FAS multigrid for arbitrary Mach number, high Reynolds number unstructured

flow solver. AIAA Paper 2006-2821; 2006.


362 James L, Nishikawa H. A critical study of agglomerated multigrid methods for diffusion on highly stretched

grids. Comput Fluids 2011;41(1):82–93.


208

normal-direction restriction. This idea can be extended to improve the coarser grid quality in
boundary layer. In this paper, a hybrid grid generation technique is presented for turbulence flow
simulations over 3D complex configurations, which is based on an anisotropic agglomeration of pure
tetrahedral grids. Firstly, pure unstructured grids are generated over a given complex geometry, and
anisotropic tetrahedral elements with high aspect ratio are adopted in the boundary layer. Then, the
anisotropic tetrahedrons are agglomerated to generate the prismatic grids in the boundary layer,
while the isotropic tetrahedrons in the outer flow field keep alone. To validate the method, the hybrid
grids over some complex geometries are generated, including the DLR-F6 wing-body configuration,
a fighter and a human body, which demonstrate the robustness of the present hybrid grid generation
technique.
Furthermore, a multigrid computing algorithm based on semi-structured agglomeration method is
developed to improve the convergence performance and couple with the parallel computing based
on computational domain decomposition. The semi-structured agglomeration means that the
agglomeration is mainly limited to the normal direction of the solid wall to keep the orthogonality of
hybrid grids in the boundary layer. This multigrid computing algorithm matches the present hybrid
grid generation technique, because both of them are based on the anisotropic agglomeration
approach. Some typical cases are tested to validate the robustness and efficiency of the present
multigrid computing method for viscous flow simulations over complex geometries. The numerical
results are compared with the experimental data and other numerical results, which demonstrate
the efficiency and accuracy of the present method.
9.2.4.2 Hybrid Grid Generation Technique Based on Anisotropic Agglomeration Approach
As mentioned in the introduction, despite considerable progress towards facilitating the grid
generation process itself, the high-quality grid generation over 3D complex real-world
configurations, especially for turbulence flow simulations, is still an open issue for producing
accurate CFD solutions and, thus, require further attention. Fortunately, the unstructured grid
generation method is currently at a stage of maturity that allows discretization of complex, 3D, real-
world configurations with relative ease and a reasonable amount of time and effort. Generally, the
pure unstructured grids mean triangles in 2D and tetrahedrons in 3D. Thanks to many advances by
a number of researchers in the science/art of grid generation, this crucial step no longer represents
an obstacle for the routine use of CFD in the context of large-scale (industrial) applications. Some
pieces of commercial grid generation software are available in the market, such as Gridgen, ICEM-
CFD, etc. Also, there are some in-house grid generation software, such as VGrid in NASA and Centaur
in Europe. The unstructured grids can be generated by the advancing front method363-364, Delaunay
method365 and/or the modified Quadtree/Octree methods366. Actually, in the commercial grid
generation software, the integrated strategy is adopted to improve the grid quality and the grid
generation efficiency. For viscous flow simulations, the anisotropic tetrahedrons are generally
adopted in the boundary layer. However, the enormous total grid number will reduce the efficiency.
More importantly, the forfeiture of orthogonality will influence the simulation accuracy of
boundary layer. A possible better choice is to generate prisms in the boundary layer, which is the
main advantage of the so-called hybrid grids. However, the prism grid generation is still not a routine
task due to the geometric complexity. Since the pure anisotropic tetrahedrons can be generated
automatically and easily using the available commercial grid generation software, is it possible to

363 Jochem H, Peter E, Yang X, Cheng ZM. Parallel multiblock structured grids. Thompson JF, Soni BK, Weatherill
NP, editors. Handbook of grid generation. CRC Press; 1999 chapter 12.
364 Sebastien E. Numerical simulation and drag extraction using patched grid calculations. AIAA Paper, 2003.
365 Waston DF. Computing the n-dimensional Delaunay tessellation with application to voronoi polytopest. Com.

J 1981;24(2):167–72.
366 Merry MA, Shephard MS. Automatic three-dimensional mesh generation by the modified-Octree technique. Int

J Numer Methods Eng 1984;20(11):1965–90.


209

generate prisms based on the anisotropic tetrahedrons?


The answer is possible, because the prisms can be cut into three tetrahedrons inversely. Actually, in
most of the commercial grid generation software (for example, Gridgen), the anisotropic
tetrahedrons are generated by refining the temporary prisms. The reason of generating pure
anisotropic tetrahedrons is that it is difficult to ensure the unified prism structure in the whole
boundary layer due to the geometric complexity, although it is relatively easier for simple
configurations. Following this idea, we develop a hybrid grid generation technique based on the
anisotropic agglomeration.
9.2.4.3 Prism Grid Generation Method Based on Anisotropic Agglomeration Approach
The prism grid generation is the key step in the present hybrid grid generation technique. The details
are listed as follows, including the volume agglomeration and the interface agglomeration.
9.2.4.3.1 Volume Agglomeration
1 Extract the geometric characteristics of all the cell interfaces and label each cell as anisotropic
or isotropic.
2 Agglomerate two anisotropic cells into a pyramid.
3 Agglomerate the third anisotropic cell and the pyramid into a prism.
4 For all the non-agglomerated anisotropic cells, find out a neighbor prism and agglomerate

Step 1

Step 2

Step 3

Step 4

Figure 9.20 Interface Agglomeration Procedure Wing – Courtesy of [Laiping et al.]

them into a polyhedron.

The purpose of the Step 2 and Step 3 is to agglomerate three anisotropic tetrahedrons into a prism.
But for the real world configurations, some isolated anisotropic tetrahedrons may exist in the
concave and/or convex regions. If we allow these cells to exist, the ratio of the volume of two
210

neighboring cells may be 1:3, so the smoothness of grids in boundary layer is not satisfied. Hence, the
agglomeration of Step 4 combines the isolated tetrahedrons into the neighboring prisms to improve
the smoothness of grids in boundary layer (The volume ratio of two neighboring cells is about 3:4).
In practice, only a small number of isolated anisotropic tetrahedrons are found. See (Figure 9.20).
9.2.4.3.2 Interface Agglomeration
After the volume agglomeration, the interface agglomeration is carried out to reduce the number of
interfaces between two neighboring prisms. The two triangles shared by two neighboring prisms are
agglomerated into a quadrilateral (see Figure 9.20-Step 4). The above hybrid grid generation
technique has some distinguished properties:

➢ Once the pure tetrahedral grids have been generated, the hybrid grids can be generated fully
automatically, without any user interference. Generally speaking, the tetrahedral grids may
also be generated automatically using advancing front method or Delaunay method.
➢ The grid quality, especially in the boundary layer, is much better than that of pure
unstructured grids, which is very crucial for viscous flow simulations.
➢ The smoothness of grids from the boundary layer to the outer flow field is much better.

9.2.4.4 Multigrid/Parallel Algorithm


In order to further accelerate the convergence history, the multigrid computing approach is adopted
and further improved in this section. The basic idea of the multigrid method is to carry out early
iterations on a fine grid and then progressively transfer these flow field variables and residuals to a
series of coarser grids. On the coarser grids, the low frequency errors become high frequency ones
and they can be easily eliminated by a time stepping scheme. The flow equations are then solved on
the coarser grids and the corrections are then interpolated back to the fine grid. The process is
repeated over a sufficient number of times until satisfactory convergence on the fine grid is achieved.
In this paper, the V-type cycle is adopted for easy implementation.
9.2.4.5 Multi-Level Coarser Grid Generation Based on Anisotropic Agglomeration Approach
Before multigrid computing, a series of coarser grids should be generated. As mentioned in the
introduction, the agglomeration approach from the initial finest grids is the most popular method.
Traditionally, the ‘isotropic’ agglomeration approach is adopted in inviscid flow simulations, but it is
not suitable for viscous flow simulations because the isotropic agglomeration may generate ‘singular’
coarser polyhedron grids due to the isotropic randomicity, as illustrated in Figure 9.21 (b) in a 2D
case (whose initial fine grid is shown in Figure 9.21 (a)). The word ‘singular’ means that the
agglomerated grids may be an ‘L’ shape or even ‘U’ and ‘S’ shape, and the geometric centers of these

(b) Coarsen grid by (c) Coarsen grid by


(a) Initial Hybrid Grid Anisotropic Allogmeration
Isotropic Allogmeration

Figure 9.21 Initial Hybrid Grids and Coarsen Grids Wing – Courtesy of [Laiping et al.]
211

singular coarser grids will be located out of the cell faces themselves. This kind of ‘singular’ situation
will deteriorate in 3D cases, which will result in failure of multigrid computing, because the
interpolation operator should be carried out during V-type iterations. If we use an anisotropic
agglomeration approach, the quality of coarser grids will be improved very well (see Figure 9.21
(c)) to benefit the viscous flow simulation with multigrid computing algorithm.
The concept of anisotropic agglomeration is introduced by Mavriplis367 for cell-vertex finite volume
method and further developed by Refs.368-369 for cell-centered finite volume method. However, for
arbitrary hybrid grids, we still meet some problems because the multigrid iteration is so sensitive to
the shape of multi-level coarsen grids. If the quality of coarser grid is not good enough, the
accelerating performance of multigrid iteration will be attenuated. In order to improve the quality of
coarser grid by agglomeration, an improved anisotropic agglomeration approach is developed in this
paper. The details are listed as follows:

1 Check the cell property (isotropic or anisotropic cells). The checking criterion is the same as
that of Step 1 in hybrid grid generation above.
2 Agglomerate the surface triangles in a pseudo-2D manner. The surface triangles are
agglomerated with a node-based agglomeration approach. In order to ensure the smoothness
and the quality of coarser surface grids, the following two criteria are considered:

• If two triangles are located on the two separated sides of a sharp edge (For example,
the trailing edge of a wing, the joint-line of fuselage and wing, see [Laiping et al.]370),
the two triangles cannot be agglomerated.
• If there are some isolated non-agglomerated triangles after first-round
agglomeration, they should be agglomerated into the neighboring cells to improve the
smoothness.

3 Agglomerate the anisotropic prism grids layer-by layer with an analogy ‘advancing layer’
method. Advancing in the normal direction from each agglomerated surface coarser grids
(Two initial layers are integrated into one layer), then the prism grids in the boundary layer
are agglomerated layer-by-layer to ensure the semi-structured property as the initial finest
grids.
4 Agglomerate the isotropic grids in the outer flow field. In this step, we use a node-based
agglomeration approach, which means agglomerating all the non-agglomerated cells
connecting to a node. However, there are some special or ‘singular’ cases during
agglomeration, see [Laiping et al.]. For these cases, the agglomeration is not permitted.

9.2.4.6 Applications and Discussions


Based on the above method, a cell-centered flow-solver named USTAR was developed by [Laiping et
al.]. The code is written by C++ language and can be run in different computer platforms, such as
desk-top computer, PC-cluster or work-station. In order to save the CPU time during multigrid
iteration, the inviscid model and the first-order scheme are adopted only on the coarser grids.

367 Mavriplis DJ. Viscous flow analysis using a parallel unstructured multigrid solver. AIAA J 2000.
368 Daniel G, Sreenivas K. Parallel FAS multigrid for arbitrary Mach number, high Reynolds number unstructured
flow solver. AIAA Paper 2006-2821; 2006.
369 James L, Nishikawa H. A critical study of agglomerated multigrid methods for diffusion on highly stretched

grids. Computational Fluids 2011;41(1):82–93.


370 Zhang Laiping, Zhao Zhong, Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a

multigrid/parallel algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.


212

9.2.4.6.1 Subsonic Turbulence Flow Over 2D 30P30N Airfoil


The first test case is subsonic turbulence flow
over the 2D 30P30N airfoil. The main purpose
of this simple test case is to validate the
multigrid computing algorithm. The initial
finest hybrid grids and the second-level and
the forth-level coarsening grids are shown in
Figure 9.23. The incoming flow conditions
are the Mach number M∞ = 0.2, the angle of
attack α = 19.0 degrees, the Reynolds number
Re = 9.0 x 106. The SST two-equation
turbulence model is adopted in this
simulation. The numerical results (pressure
coefficient Cp distribution on the solid wall)
are plotted in Figure 9.22, in which the Figure 9.23 CP Distribution on Solid Wall Wing
results by single-level (non-multigrid) and Courtesy of [Laiping et al.]
forth-level multigrid approach are compared
with the experimental data371. Consult the
[Laiping et al. ]372 for complete analysis.

(a) Initial Hybrid Grid (b) Second-Level (c) The Thrid-Level

Figure 9.22 Initial Hybrid Grids and Coarsening Grids over 30P30N Airfoil Wing – Courtesy of [Laiping
et al.]

9.2.4.6.2 Transonic Turbulence Flow over ONERA M6 Wing


The second application is the transonic turbulence flow simulation over ONERA M6 wing, a typical
validation case. The incoming flow conditions are M∞ = 0.8395, α= 3.06 deg, Re= 1.172 x 107. For
this case, the Spalart-Allmaras one equation turbulence model is employed. The initial finest hybrid
grids and the second coarser grids are shown in Figure 9.24 (a) and (b), and the close-up view near
the boundary layer before and after agglomeration is plotted in Figure 9.24 (c). Note that the
quality of the coarser grid in boundary layer is very well (keeping the semi-structured grid structure).
Pressure coefficient distribution on three different cross-sections. The calculated pressure coefficient
distributions on three cross-sections (g = z/b =20 %, 80 % and 90 %, respectively, where b is the

Spaid FW, Lynch FT. High Reynolds number multi-element airfoil flow field measurements. AIAA 1996.
371

Zhang Laiping, Zhao Zhong, Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a
372 372

multigrid/parallel algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.


213

span length of the wing in z-direction). The agreement with the experimental data373 much better
than those by inviscid flow simulation (see [Laiping et al.]374).

9.2.4.6.3 Transonic Turbulence Flow over DLR-F6 Wing-Body Configuration


The last application is transonic turbulence flow simulation over the DLR-F6-WBNP configuration. It
is the typical test case in DPW-II. The computational conditions are chosen as M∞ = 0.75, Re = 3.0 x
106. The angle of attack is set from 3.0 to 1.5 deg. For this case, the SST turbulence model is applied.
The initial hybrid grids are shown in Figure 9.25. The model is downloaded from the second drag
prediction workshop (DPW-II)375 which is a fuselage-wing-nacelle-pylon conjunction configuration.
Figure 9.25 (Top) shows the hybrid grids over DLR-F6-WBNP at a longitudinal cross-section. The
number of initial pure unstructured grids is 17.43 M, including 34.96 M faces and 2.95 M nodes. After
agglomeration, the number of hybrid grids is about 7.8 M, including 20.80 M faces. The total number
of cells and faces is reduced by 50% and 33%, respectively. The close-up views near the nacelle-pylon
are shown in Figure 9.25 (Bottom).
The initial and the coarsening grids on surface and symmetric plane are shown in Figure 9.24. The
close-up view near the boundary layer is given in Figure 9.24 (c). The total number of the initial
hybrid grids over the half-model is about 7.8 M. So the multigrid/parallel computing strategy is
adopted for this case. The computational domain is decomposed into 32 sub-domains (see Figure
9.27 (a)) using the METIS approach. Figure 9.26 displays the aerodynamic force coefficients for
different angles of attack, in which the experimental data and the numerical results by other solvers
(USM3D, FUN3D, NSU3D)376-377 are also plotted. In the same figure, the results on pure unstructured
grids before agglomeration is presented (marked as ‘Unstructured’). Note that the present numerical
results (marked as ‘Hybrid Grid’) are in good agreement with the experimental data, which are
slightly better than others’ numerical results. The drag polar on hybrid grids is much better than that
on pure unstructured grids. Furthermore, the CPU time is saved greatly because the number of hybrid

(a) Initial Hybrid Grid (b) Second-Level (c) Close Up View of the
Boundary

Figure 9.24 Initial Hybrid Grids and Coarsening Grids over ONERA M6 Wing – Courtesy of [Laiping et
al.]

373 Schmitt V, Charpin F. Pressure distributions on the ONERA-M6-Wing at transonic Mach numbers, experimental

data base for computer program assessment. Report of the Fluid Dynamics Panel Working Group 04, 1979.
374 Zhang Laiping, Zhao Zhong, Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a

multigrid/parallel algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.


375 Second AIAA CFD Drag Prediction Workshop. <http://aaac.larc.-nasa.gov/tsab/cfdlarc/aiaa-dpw/>; 2003.
376 Mavriplis DJ. Drag prediction of DLR-F6 using the turbulent Navier-Stokes calculations with multigrid. AIAA

Paper 2004-397; 2004.


377 Sclafani AJ, Dehaan MA. OVERFLOW drag prediction for the DLR-F6 transport configuration: a DPW-II case

study. AIAA Paper 2004-393; 2004.


214

grid is only half of the pure unstructured grids. These results demonstrate that the hybrid grid
technique is superior indeed to the pure unstructured grid approach. When M∞ = 0.75 and α = 1.0
degree, the pressure coefficient distributions at three typical sections (see Figure 9.28 (a)) are
shown in Figure 9.28 (b)–(d), where z/b =15.0 %, 33.1 % and 63.8 %, respectively.
The present results are marked as USTAR. The results by others378-379 are also plotted in the same
figures. It can be seen that the present results are very similar to the best results by USM3D. The flow
separation pattern on the leeward surface of the wing is shown in Figure 9.28 (a), meanwhile the
results by UG3380 and the experimental oil-flow pattern are shown in Figure 9.28 (b-d). The size of
the separation zone is still larger than those by experiment381 but is slightly better than that by UG3.

Figure 9.25 Close-up Views of Hybrid Grids After Agglomeration Wing – Courtesy of [Laiping et al.]

378 Mavriplis DJ. Drag prediction of DLR-F6 using the turbulent Navier-Stokes calculations with multigrid. AIAA
Paper 2004-397; 2004.
379 Lee-Rausch EM, Mavriplis DJ. Transonic drag prediction on a DLR-F6 transport configuration using

unstructured solvers. AIAA Paper 2004-554; 2004.


380 Yamamoto K, Ochi A. CFD sensitivity of drag prediction on DLRF6 configuration by structured method and

unstructured method. AIAA Paper 2004-398; 2004.


381 Yamamoto K, Ochi A. CFD sensitivity of drag prediction on DLRF6 configuration by structured method and

unstructured method. AIAA Paper 2004-398; 2004.


215

For additional info please consult [Laiping et al.]382.

Figure 9.26 Aerodynamic Force Coefficients for Different Angles of Attack (M∞ = 0.75) Wing –
Courtesy of [Laiping et al.]

9.2.4.7 Concluding Remarks


An effective hybrid grid generation technique and a multigrid/parallel algorithm based on
anisotropic agglomeration are presented for viscous flow simulations over complex configurations.
(1) The hybrid grid generation technique can improve the quality of grids in boundary layer over the
pure unstructured grids. For real-world complex geometries, the prism grids in boundary layer can
be automatically generated from the initial pure tetrahedral grids. (2) The multigrid/parallel
computing algorithm based on anisotropic agglomeration can improve the convergence
performance, especially for high Reynolds number viscous flow simulations. (3) Applications for
complex 3D configurations have demonstrated the robustness of present method. In the future work,

382Zhang Laiping, Zhao Zhong, Chang Xinghua, He Xin, “A 3D hybrid grid generation technique and a
multigrid/parallel algorithm based on anisotropic agglomeration approach”, Chinese J of Aeronautics, 2013.
216

we will extend this method to unsteady flow simulations.

(a) Initial hybrid grids (after


METIS decomposition)

(b) Coarsening grids on the


(c) Close-up view of
surface and symmetric plane
coarsening grids

Figure 9.27 Hybrid Grids over DLR-F6-WBNP Configuration Wing – Courtesy of [Laiping et al.]
217

Figure 9.28 CP Distributions at Three Typical Sections (M = 0.75, α = 1.0 deg) Wing – Courtesy of
[Laiping et al.]
218

10 Adaptive Mesh (Unstructured)


The case for structured adaptive grid is covered before, therefore, will not be mentioned here,
therefore, this section is intended for unstructured adaptive meshing. Aside from the treatment of
complex geometries, the second main advantage of unstructured meshes is the ease with which
solution-adaptive meshing may be implemented383. Since no inherent structure is assumed in the
representation of the mesh, mesh points may be added, deleted, or displaced, and the mesh
connectivity may be locally reconfigured in the affected regions. The goal of mesh adaptation is the
determination of the optimum mesh-point distribution that results in equipartition of the error for
each individual simulation. The character of the problem to be solved dictates the requirements of
the mesh adaptation strategy. For example, steady-state problems usually involve a small number of
adaptation phases as part of a lengthy solution process. Therefore, relatively sophisticated
adaptation strategies can be employed, such as, in the extreme case, complete mesh regeneration.
Mesh refinement procedures are most important here, while de-refinement has only a minor effect
and can often be omitted for steady-state cases. For transient problems, mesh adaptation must be
performed every several time steps, and thus efficiency is much more important than optimality.
Mesh refinement and de-refinement are both essential for transient cases, as well as mesh movement
for cases with moving boundaries. Furthermore, the accuracy of interpolation from the original mesh
to the refined mesh affects the solution accuracy (unlike the steady-state case), and thus accurate
transfer schemes are required. Delaunay-based mesh generation techniques can easily be extended
to incorporate adaptive refinement capabilities [Mavriplis]384-385; [Weatherill]386. Once a solution has
been obtained on an initial mesh, new points can be added in regions where high errors are detected.
These new points can be triangulated into the mesh using the Bowyer-Watson point insertion
algorithm. Alternatively, if a Non-Delaunay mesh is employed, new points may be inserted through
element subdivision, and the connectivity of the resulting mesh may be optimized through several
face-edge swapping passes based on any appropriate criterion.
Rule-based hierarchical element subdivision is a very effective adaptive technique, particularly for
unsteady flows, where efficiency and accuracy of interpolation between successive grids are
important considerations [Stoufflet 1987, L¨ohner & Baum 1992, Rausch1992, Braaten & Connell
1996]. The essential approach consists in recursively subdividing mesh elements where large
solution errors are detected, but conforming to a set of well-defined subdivision rules, which are
necessary to prevent the formation of degenerate element shapes and connectivity. Storing the
hierarchy of the recursive process enables de-refinement to be implemented by simply retracing the
subdivision history. Hierarchical subdivision is also applicable to non-simplicial hybrid meshes by
constructing a library of subdivision rules for each element type. Recently, the Unstructured Grid
Adaptation Working Group has an open gathering of researchers working on adapting meshes to
conform to a metric field [Ibanez et al]387. The purpose of this group is to create a common basis for
understanding and improving mesh adaptation through the creation of a common criteria for
understanding and improving mesh adaptation.

10.1 Adaptive Meshing by Subdivision


In the interest of developing a single strategy for adapting simplicial as well as mixed element

383 Mavriplis, DJ:” Unstructured Grid Techniques”, Annual. Rev. Fluid. Mech. 1997 by Annual Reviews Inc.
384 Mavriplis DJ., “Accurate multigrid solution of the Euler equations on unstructured
and adaptive meshes”, AIAA.
385 Mavriplis DJ., “Adaptive mesh generation for viscous flows using Delaunay triangulation”, J. Comp. Phys. 1990.
386 Weatherill NP, Hassan O, Marcum DL, “Calculation of steady compressible flow fields with the finite-element

method”, AIAA Pap.93-0341


387 Daniel Ibanez, Nicolas Barral, Joshua Krakos, Adrien Loseille, Todd Michal, Mike Park, , “First benchmark of

the Unstructured Grid Adaptation Working Group “, 26th International Meshing Roundtable , 2017.
219

meshes, a hierarchical element subdivision approach has been adopted388. As described before, one
must ensure that a compatible refinement pattern is obtained on all elements of the mesh if a valid
refined meshes obtained. This technique can be applied to fully tetrahedral meshes, as well as to any
hybrid mesh containing mixtures of tetrahedral, pyramids, prisms and hexahedra. The resulting
meshes can be employed by the multigrid solver described in389 without modification. In order to
implement this technique on mixed element meshes, the various allowable subdivision types for each
element type must be defined. The hierarchical rules required to prevent the degeneration of the grid
quality with successive adaptation levels must also be constructed.
For tetrahedral elements, the subdivision rules have already been well formulated in the literature.
We allow only three basic subdivision types: A tetrahedron may be divided into 2 children, 4 children,
or 8 children. The two former cases result in anisotropic refinement, while the last case produces an
isotropic refinement. In order to prevent the degeneration of grid quality, any anisotropic children
may not be refined further. If any such cells require refinement, they are removed, the parent cell is
isotopically refined, and the resulting isotropic children may then be further refined. When limiting
the possible refinement types. This is achieved by adding refinement points along the all
appropriable edges on all elements which are flagged as having non-valid refinement pattern. Since
the addition of a refinement point to an edge affects all elements which contain the edge, the process
is applied iteratively, until all resulting elemental refinement are valid and no further points are
required.
The isotropic regiment of a hexahedra element results in eight similar but smaller hexahedral
elements. However, anisotropic refinement of a hexahedral element results in children which may
consist of hexahedra, pyramids, prisms and tetrahedral. By applying the same hierarchical rules as
described for tetrahedral meshes we can ensure that lese elements will never be refined further.
Instead, if further refinement ill these regions is desired, such elements are deleted and that parents
refined into eight smaller hexahedra. Thus, for fully hexahedral meshes, additional element may only
be the boundaries between refined and non-refined regions, or more generally, between two regions
which differ by one refinement level. The task of implementing adaptive mesh subdivision elements
other than tetrahedral consists in defining the minimum number of allowable subdivision types. On
the one hand, it, is desirable to limit the number of subdivision types for complexity reasons. On the
other hand, a minimum number of subdivision types must be implemented to allow for compatible
subdivision types to be attained on all elements without, incurring excessive additional
refinement390.

10.2 Adaptive Mesh Refinement (AMR)


[Berger and LeVeque]391 addressed several deficiencies that existed in the established uniform grid
methodologies. First, they applied the concept of Adaptive Mesh Refinement (AMR) in order to
improve the accuracy in critical regions without adversely affecting the efficiency of the numerical
integration scheme. The use of AMR effectively allowed the clustering of blocks of computational
grids as the solution process evolved only in the region that they were needed (and not clustering
entire grid lines), by using Richardson-type extrapolation error estimates to identify regions of large
errors and adding grid blocks in those regions. An example of AMR is Figure 10.1 which represents

388 388 Mavriplis D.J., ”Adaptive Meshing Techniques For Viscous Flow Calculations On Mixed Element
Unstructured
Meshes”, NASA Contract No. NAS1-19480, May 1997.
389 l). J. Mavriplis and Venkatakrishnan. A unified multigrid solver for the Navier-Stokes equations on mixed

element meshes. AIAA Paper 95-1666, June 1995.


390 Mavriplis D.J., ”Adaptive Meshing Techniques For Viscous Flow Calculations On Mixed Element Unstructured

Meshes”, NASA Contract No. NAS1-19480, May 1997.


391 M. J. Berger and R. J. LeVeque. An Adaptive Cartesian Mesh Algorithm for the Euler Equations in Arbitrary

Geometries. 9th AIAA Computational Fluid Dynamics Conference, Buffalo, NY, June 1989. AIAA-89-1930-CP.
220

a simple adapted grid for a


supersonic wedge flow with four
levels of adaption. As can be seen
in the figure, there are more
control volumes where
gradients are to be expected,
specifically along the surface to
capture the geometry and along
the oblique shock. In regions
with small gradients, there is a
lower density of control
volumes. Also notice that in this
figure there is at most a 2:1 ratio
at the refinement interface,
which is typical of most A MR
schemes, in order to promote
stability in the numerical Figure 10.1 Example Adaptive Grid for Supersonic Wedge Flow
schemes.
One problem with [Berger and LeVeque's] original enactment of AMR on Cartesian grids was the
problem of state variable conservation during the AMR stages. They carefully constructed
conservative schemes for the inter-grid transfer to address the problem. They also used the idea of
wave propagation and directional differencing in order to increase the stability near the small
boundary cells. This helped keep the CFL of the boundary cells reasonably close to the CFL of the
flow cells and allowed larger time steps to be taken with the solver remaining stable.
10.2.1 Generalities
Several researchers have extended [Berger and LeVeque's] research into areas such as multigrid
Cartesian grids, higher accuracy flow solvers using more sophisticated flux approximations, time-
accurate unsteady flows, and a front tracking AMR scheme that attempted to track the discontinuities
(such as shocks) as the solution evolved in order to provide more accuracy in the refined mesh
calculations. According to recent investigation by [Abe]392, Cartesian grid method fall into two
categories with the demand of accurate solutions. One keeps its structured grid nature and
introduces embedding structured sub grids within the underlying coarse structured grids.
Adaptive Mesh Refinement (AMR) is one of them. Figure 10.2 (a) shows an example of AMR in
two dimension. The intersected cells by a circle in the underlying coarse grids are tagged in blue. The
blue-tagged cells are to be refined. In the AMR procedure, several embedded rectangle patches are
defined so as to contain the blue tagged cells. Then, the embedded rectangle patch areas are refined.
The other considers the Cartesian mesh as an unstructured collection of h-refined meshes. The data
structure is not the same as structured grids but the same as unstructured grids. Adaptive Cartesian
grid method was introduced as an unstructured Cartesian grid method and has shown the great
success in simulating complex geometries. Figure 10.2 (a) shows a case of two dimensional
adaptive Cartesian grid method. Beginning with a root cell covering whole domain, the intersected
cells by the circle are recursively bisected. This simple procedure finally gives Figure 10.2 (b).
The actual data structure (quad-tree) of a two dimensional adaptive Cartesian grid method is shown
in Figure 10.3. The case shows a quad-tree structure. In this two dimensional case a tree node (a
cell) may have four child nodes. In the case of three dimension, a node may have eight children. Level
of a node is defined as the depth of the nest in the tree structure. The root node is specified as ’level

392Hiroshi Abe, “Blocked Adaptive Cartesian Grid FD-TD Method for Electromagnetic Field with Complex
Geometries”, International Conference on Modeling and Simulation Technology, Tokyo, JAPAN, 2011.
221

0’ (Figure 10.3)393.

(a) Intersecting meshes with a (b) 2D case of Adaptive


circle are tagged (blue) Cartesian grid method

Figure 10.2 Schematic image of Adaptive Mesh Refinement

Figure 10.3 Octree Data Structure of Adaptive Cartesian Grid Method

393 Each black circles indicates leaf nodes in the tree structure and they correspond to the cells as is shown with
the numbers.
222

10.2.2 Cell Division for a Geometry


First, we describe the strategy to decide a cell to be divide into smaller cells which is described in394.
The strategy gives a criteria which determines whether a intersected cell by triangular facets is to be
divided or not. Next, a method which is a fast algorithm to find intersecting triangular facets with
respect to a cell is described.
10.2.2.1 Division Criteria
3D geometry is often provided as
a CAD file or STereo Lithography
(STL) data . Both data may consist
of a set of triangulated facets of
the geometry’s surface. We need
criteria to decide the cells to be
divided in order to resolve the
geometry through the
triangulated facets. We adopt a
curvature detection strategy395.
Suppose a cell is intersected by
triangular facets Ti . ni is the
normal vector of the facets Figure 10.4 Schematic 2D view of angular variation of normal
(Figure 10.4). Angle variation Vj vector of triangles within cut-cell i. (a) is small variation
can be defined as, case and (b) is large variation case.

Vj = Max(nkj − Min (nkj ) k ∈ Ti (j = x, y, z)


Eq. 10.1
Ti. The angle which indicates the curvature of the facets is given by,

Vj
cos (θi j ) =
⃗|
|V
Eq. 10.2

Figure 10.5 Pressure Contours in 2D Backward Step

394 M.J. Aftosmis. Solution adaptive Cartesian grid methods for aerodynamic flows with complex geometries, 1997.
395 See Previous.
223

If θ in a cell exceeds a predefined angle threshold, then the cell is tagged for division. This procedure
for division is very simple and robust. One can have adaptive Cartesian cells automatically. Further
examples provided a 2D backward step (see Figure 10.5).
10.2.3 Uniform AMR
The simplest refinement anyone can think of is to divide all cells in the domain. This is referred to as
"Uniform Refinement". Although it does improve the solution vastly, it is easy to realize that we are
going for a huge unwanted effort in doing so. For e.g., in the far field region of an airfoil, cell division
is not bringing in any improvement because the flow such as a shock-boundary layer interaction. To
achieve the goal of mesh adaptation, the refinement is done at "selected" regions alone based on
certain criterion. This is referred to popularly as AMR or Adaptive Mesh Refinement. It is to be
remarked that AMR does not only encompass division of cells into smaller ones (Refinement), but
also the agglomeration of smaller cells into a larger one (De-Refinement or coarsening), when the
need arises.
10.2.3.1 Transient Inviscid Flow
Considers the solution of an internal
transient inviscid supersonic flow (Lyra et
al.)396. The geometry consists in a wind
tunnel with a step and the inflow boundary
condition consists of a uniform Mach 3.0
flow with angle of attack 0°. At the right
boundary the flow is let free to leave the
domain and along the walls, reflecting
boundary conditions are applied. During
the transient adaptive procedure several
adapted meshes are generated along the
time integration according to the error
analysis. Figure 10.6 shows some
selected meshes: mesh, is the third mesh
generated during the transient adaptive
process, and meshes and are meshes
generated before and after the time when
the shock starts to be reflected from the top
boundary. The mesh refinement is clearly
following the physical features of the flow.
The adaptive algorithm try to obtain an
“optimal” mesh for a pre-defined number
of elements. The target number of
elements for this analysis was 1000 and a
limited aspect ratio of 4 was considered. Figure 10.6 Selected Initial Meshes for the Transient
The number of elements generated in the Adaptive Procedure (Meshes 3, 20, 27 and 29)
meshes shown was 620, 977, 994 and
1010, and the corresponding number of nodes was 638, 1007, 1029 and 1047, showing that the
procedure obeyed well the imposed constraints.

396Lyra, P.R.M., de Carvalho, D.K.E., Willmersdorf, R.B. and Almeida, R.C.C., 2002, “Transient Adaptive Finite
Element Analysis of Compressible Flows”, WCCM'2002-Proceedings of the 5th World Conference on
Computational Mechanics, Vienna-Austria.
224

10.2.4 Case Study 1 - An Adaptive Hybrid Mesh Generation Method for Complex Geometries
An adaptive hybrid mesh generation method is described by [Cameron Thomas Druyor JR.]397 to
automatically provide spatial discretization suitable for 2D solver applications. This method employs
a hierarchical grid generation technique to create a background mesh, an extrusion-type method
for inserting boundary layers, and an unstructured triangulation to stitch between the boundary
layers and background mesh. This method provides appropriate mesh resolution based on geometry
segments from a file, and has the capability of adapting the background mesh based on a spacing field
generated from solution data or some other arbitrary source. By combining multiple approaches to
the grid generation process, this method seeks to benefit from the strengths of each, while avoiding
the weaknesses of each.
10.2.4.1 Mesh Stitching
The hybrid method, such as AMR, generates several different meshes which must be assembled into
a single mesh before exporting to a mesh file that can actually be used by a solver. There are two main
elements to accomplishing this task, removing elements from the background mesh that are not
to be part of the final mesh, and bridging the gap between the viscous and inviscid meshes.
10.2.4.1.1 Removal of Background Mesh Elements
Removal of the unnecessary elements of the inviscid mesh is done in two stages. First, all elements
that violate a boundary segment, or come close to violating a segment within a tolerance, are removed
from the mesh. This partitions the mesh into contiguous blocks that are wholly inside, or outside the
computational domain. The remaining voxels are marked in or out with a recursive flood-fill
algorithm. It is important to note that flooding the contiguous blocks recursively can result in a stack
over flow for large meshes because of the number of function calls that get pushed onto the call stack.
There are two options for avoiding this situation: increase the maximum stack size, or develop a
replacement routine that applies the recursive algorithm without making recursive function calls.
The proposed method takes the second approach, utilizing a queue style structure. The unmarked
cell checks to see if its neighbors have been marked. Each neighbor that is not yet marked is marked
and then pushed onto the queue. Then, while the queue is not empty, the first element of the queue
is popped off. This element checks for neighbors that have not yet been marked, marks them, and
pushes them onto the queue. When there are no voxels (i.e., cell) left in the queue, the algorithm
searches for another unmarked voxel to start the process again, until there are no unmarked voxels
left.
10.2.4.2 Triangulation
Once the voxel removal is complete, there is a gap between the viscous region and the background
mesh (in the absence of a viscous mesh, there is a gap between the geometry and the background
mesh). This region must be filled with cells before a valid mesh can be created. This is done in two
steps. First a list of unique nodes and boundaries for the region to be triangulated are created. The
boundaries consist of the exposed edges of the voxel front, the outermost edges of the viscous mesh,
and any exposed geometry segments, and the unique node list contains each point that is part of any
of those edges. Once these are packaged up properly, they are passed to a Delaunay triangulation
method written by Dr. Steve Karman, which returns a list of triangles that fill the gap region.
10.2.4.3 Test Cases
10.2.4.3.1 30P30N Multi-Element Airfoil
The proposed method has a robust viscous layer production method that can create viscous layers
without introducing negative elements caused by crossed normal. To showcase this, the 30P30N

397Cameron Thomas Druyor JR, “An Adaptive Hybrid Mesh Generation Method for Complex Geometries”, A
Thesis Submitted to the faculty of the University of Tennessee, Chattanooga in Partial Fulfillment of the
Requirements for the Degree of Master of Science in Computational Engineering, 2011.
225

airfoil was chosen. shows the far field view of the mesh, demonstrating that it spans the
computational domain and that the square far field boundaries are preserved. Zooming in on the slat
element, Figure 10.7 shows that viscous layers are created on the slat and the leading edge of the
wing. Taking a closer look at the bottom trailing edge of the slate shows that the expected issues are
present at the sharp point, but the mesh is valid in the region. Note that the elements in the
stitching region are generally of high quality and appropriate size; it is only the areas where the
viscous elements are skewed that the cell size gradation changes drastically between the viscous
elements and the stitching elements. Further discussion are available in [Druyor JR.]398.

Figure 10.7 30P30N Multi-Element Airfoil & close up of slat

10.2.4.3.2 2D Fuel Cell Slice


The geometry for this test case is a 2D slice of a hypothetical fuel cell. It was chosen to showcase the
proposed method's ability to handle many different geometries at once, and also to demonstrate that
it can be used to generate grids for applications other than airfoils. Figure 10.8 shows a far field
view which shows the configuration of the rods.
10.2.5 Case Study 2 – Unstructured Mesh Adaptation for 2D Airfoil399
In order to be able to examine shock-dominated processes at high spatial resolutions without
incurring heavy computational penalties, even in two dimensions, it is desirable to use some form of
mesh adaptation. Adaptive codes make use of the local flow solution itself to determine where the
high spatial mesh resolution is required and then employ some strategy to increase the grid
resolution in those regions. This enables the high spatial mesh resolution to be concentrated around
the important flow features (e.g. shocks, vortices and so on) rather than being wasted on parts of the
computational domain where the flow activity is relatively unimportant. One increasingly popular
approach to mesh adaptation is so-called refinement, where additional mesh nodes and elements are
inserted into the computational domain in regions where the greater resolution is required and then
removed from the mesh when the higher mesh node density is judged to be redundant. The process
of mesh adaptation is invoked automatically in response to some dynamically evolving flow solution

398 Cameron Thomas Druyor JR, “An Adaptive Hybrid Mesh Generation Method for Complex Geometries”, A
Thesis Submitted to the faculty of the University of Tennessee, Chattanooga in Partial Fulfillment of the
Requirements for the Degree of Master of Science in Computational Engineering, 2011.
399 David A. Venditti and David L. Darmofal, “Grid Adaptation for Functional Outputs: Application to Two

Dimensional Inviscid Flows", Journal of Computational Physics 176, 40–69 (2002).


226

criteria, with the regions of mesh refinement corresponding to regions of significant flow activity
where it is desirable to have increased spatial resolution (see Figure 10.10 and Figure 10.9). How
these criteria are chosen has important consequences for the overall operation of the adaptive solver.
The complete adaptive solver may be thought of as consisting of three parts,

Figure 10.8 2D Fuel Cell Slice & Zoomed

• mesh data structure,


• adaptation algorithm and
• flow integration algorithm, where these objects are organized as adaptation data structure
integration

Figure 10.9 Grid Adaption using Supersonic Figure 10.10 NACA 0012 Transonic test case:
Flow for an Airfoil (bow shock) M∞ = 0.8, α=1.25

Thus the adaptation and integration operations can be thought of as two distinct processes that are
applied to the central data structure. The connectivity outlined above is sufficient to completely
specify a given mesh, but it does not contain the connectivity required to construct the adaption
227

hierarchy. For this some additional information is required, which in the case of elements and edges
consists of storing parent and child addresses. The bisection of a parent edge by the addition of a
node to the mesh results in the creation of two child edges. To extend the, sequence of events involved
in a complete adaption and integration of the mesh is shown at first, mesh elements are flagged for
adaption. This results in each mesh edge being targeted either for refinement, de-refinement or no
action data structure to include numerical parameters such as the flow variables.
10.2.5.1 Adaption Control Mechanism
The Euler flow solver is combined with the adaptive algorithm by flagging regions of the mesh with
(low) high density gradients for de-refinement, with the calculation of local flow gradients being
performed across element faces. Where the face normal density gradient falls below or exceeds a
chosen tolerance, the edges on the face are flagged to de-regime. In addition, a `safety layer' of
refinement flagging is employed to ensure the full capture of solution discontinuities, which is the
principal concern for this application. Likewise, a maximum mesh refinement depth is also specified.
Coupling the adaption algorithm to the solution integrator is managed in a similarly straightforward
manner. Figure 10.10 depicts a NACA airfoil in a transonic flow, while Figure 10.9 shows the same
geometry when placed in supersonic flow with a bow shock.
10.2.6 Case Study 3 – Parallel Implementation of Unstructured Mesh Refinement of Duct Flow
The simultaneous alteration of the decomposed domains of an unstructured mesh presents a number
of challenges400. In parallel, each processor operates on its own partition, concurrent with and
independent of the others. Previous work in parallel mesh refinement401-402 demonstrated methods
in which adaptation was performed on each processor, and patterns for cell subdivision were
exchanged across inter-processor boundaries, ensuring a conforming mesh. Coarsening the inter-
processor boundary was not a concern, nor was the possible motion of the mesh boundaries.
Therefore the first issue that arises in parallel adaptation is how to treat the inter-processor
boundaries. Rather than modify these faces, the inter-processor boundaries are shifted using a cell
migration technique. The inter-processor faces and adjacent cells then become interior faces and
interior cells, which may be readily modified through a second adaptation pass. In the second pass
only the former inter-processor boundary region needs to be coarsened, refined, or smoothed, as the
remainder of the mesh is already consistent with the prescribed point spacing illustrates the two-
pass approach for solution-based coarsening and refinement of supersonic flow entering a duct. The
original mesh partitions, shown in Figure 10.11-(1), are independently coarsened and refined to
produce the adapted mesh of (2). Note that the inter-processor boundaries are not modified, which
leaves a region of the mesh that still requires adaptation. Several layers of cells are migrated from
the right processor to the left, as seen in (3). The inter-processor boundary is now to the right of its
original location. A second coarsening and refinement pass treats the former inter-processor faces
and adjacent cells, producing the final adapted grid of (4).
A consequence of the cell migration approach is that the shape and extent of the decomposed
domains change. The cell migration process may introduce new pairs of adjacent domains that did
not initially communicate. Similarly, pairs of processors that once shared common nodes, edges, and
faces may become disconnected as a result of cell migration. Updating the inter-processor
communication schedule proceeds in two stages. First, the current communication lists are updated

400 Cavallo, P.A., Sinha, N., and Feldman, G.M.,” Parallel Unstructured Mesh Adaptation For Transient Moving
Body And Aeropropulsive Applications”, Combustion Research and Flow Technology, Inc. (CRAFT Tech), PA.
401 De Keyser, J., and Roose, D., “Run-Time Load Balancing Techniques for a Parallel Unstructured Multi-Grid Euler

Solver with Adaptive Grid Refinement”, Parallel Computing, Vol. 21, pp. 179-198, 1995.
402 Flaherty, J.E., Loy, R.M., Shephard, M.S., Szymanski, B.K., Teresco, J.D., and Ziantz, L.H., “Adaptive Local

Refinement with Octree Load Balancing for the Parallel Solution of Three-Dimensional Conservation Laws”,
Journal of Parallel and Distributed Computing, Vol. 47, pp. 139-152, 1997.
228

for each pair of adjacent domains. If no common nodes are found between two domains, the
communication is removed from the cycle. The second stage involves checking for any new
communication pairs introduced as a result of migration. In addition, one can no longer refer to the
original decomposed grid to obtain data for solution transfer or for establishing point spacing after
the coarsening phase. This issue is remedied by recomposing the global grid arrays at the start of the
mesh adaptation process, such that the list of global vertex coordinates, solution vectors, and
computed point spacing may be readily available to all processors.
10.2.7 Case Study 4 – Generic Transonic Store Release403
The next application considered is the separation of a finned store from a wing/pylon configuration
at Mach 1.2. Inviscid flow is assumed for this tetrahedral grid. A constant ejection force is applied
over the first 0.1 seconds of the simulated

(1) Original (2) First Adaption Pass

(3) Cell Migration into inter Figure 10.12 Store position, orientation, and surface
processor boundary (4) Second Addaption pass
pressures at selected points in trajectory

Figure 10.11 Two-Pass Approach for Parallel Coarsening and Refinement.

Figure 10.13 Adapted Mesh Partitioning During Store Dispense

403 Cavallo,
P.A., Sinha, N., and Feldman, G.M.,”Parallel Unstructured Mesh Adaptation For Transient Moving Body
And Aeropropulsive Applications”, Combustion Research and Flow Technology, Inc. (CRAFT Tech), PA 18947.
229

separation. After the initial ejection stroke, the motion of the store is provided by general 6-degree-
of-freedom (6-DOF) equations of motion using the current integrated surface pressure distribution.
Gravitational acceleration is also included. Figure 10.12 provides an overview of the simulation. A
total of ten adaptations were performed at regular intervals. The unstructured grid is comprised of
approximately 2.7 M cells, and is decomposed on 16 processors. In this image, the store is colored by
the current pressure distribution at each of the four instants shown, and the black lines indicate the
changing inter-processor boundaries on the store surface resulting from cell migration and load
rebalancing. As it translates, the store yaws nose away from the symmetry plane and pitches nose
down. The surface pressure distribution reflects the changing local angle of attack and sideslip angle
of the store.
As the distance between the store and pylon surfaces increases, the mesh distortion becomes less
severe. With each successive adaptation, the deformation measure reduces to a minimum value
greater than the previous minimum. This indicates that mesh movement may likely be applied for a
longer period of time before adaptation is warranted. Such strategies and tradeoffs are yet to be
investigated. The evolution of the unstructured mesh as the store falls away is depicted in Figure
10.13 where inter-processor boundaries are highlighted in red. Through the adaptive coarsening
and refinement procedures, overall mesh quality is maintained, and an appropriate cell distribution
is provided as the distance between the store and pylon increases. Although Figure 10.13 illustrates
a slice through the mesh, one can readily see the migration and rebalancing of the inter-processor
boundaries404 as left(before), right(after) redistribution. To improve the partitioning through high
aspect ratio cells, FLUENT® recently device a partitioning method based on grouping of the Laplace
coefficients as shown in Figure 10.14. In addition, it improves convergence rate for cases with
highly stretched cell.

Figure 10.14 Inter-Processor Partitioning Based on Laplace Coefficients

10.2.8 Case Study 5 - Adaptive Hybrid Mesh Refinement for Multiphysics Applications405
We have developed methods for optimizing meshes that are comprised of elements of arbitrary
polygonal and polyhedral type. We present in this research the development of r-h hybrid adaptive
meshing technology tailored to application areas relevant to multi-physics modeling and simulation.
Solution-based adaptation methods are used to reposition mesh nodes (r-adaptation) or to refine
the mesh cells (h-adaptation) to minimize solution error. The numerical methods perform either

404 Cavallo,P.A., Sinha, N., and Feldman, G.M., ”Parallel Unstructured Mesh Adaptation For Transient Moving Body
And Aeropropulsive Applications”, Combustion Research and Flow Technology, Inc. (CRAFT Tech), Pipersville, PA.
405 Ahmed Khamayseh and Valmor de Almeida, “Adaptive Hybrid Mesh Refinement for Multiphysics Applications”,

Journal of Physics: Conference Series 78 (2007) 012039.


230

the r-adaptive mesh optimization or the h-adaptive mesh refinement method on the initial isotropic
or anisotropic meshes to equidistributional weighted geometric and/or solution error function. We
have successfully introduced r-h adaptively to a least-squares method with spherical harmonics
basis functions for the solution of the spherical shallow atmosphere model used in climate modeling.
In addition, application of this technology also covers a wide range of disciplines in computational
sciences, most notably, time-dependent multi-physics, multi-scale modeling and simulation.
10.2.8.1 Adaptive Hybrid Mesh Optimization
The principle objective of this paper is to present an overview of current meshing efforts and
development at Oak Ridge National Laboratory. Our capability is geared for generating high-
quality adaptive meshes for petascale applications. In this work, we have researched and developed
tools and algorithms for the generation and optimization of adaptive hybrid meshes using finite-
volume discretization approach. The hybrid mesh approach attempts to combine the advantages of
both structured and unstructured meshing strategies. The prismatic and hexahedral elements are
used in regions of high solution gradients, and tetrahedral are used elsewhere with pyramids used at
the boundary between these two element categories to provide a transition region. In addition, the
polyhedral/icosahedral meshes are often the best choice of solving symmetric computational
problems (e.g., inertial confinement fusion and climate modeling). They have the properties of
producing symmetric higher order orthogonal meshes and do not introduce artificial geometric
interfaces. The geometry of the mesh and its symmetries are matched to the analytical and numerical
methods used to solve the governing equations. Furthermore, hexahedral/prismatic layers close to
wall surfaces exhibit good orthogonality and clustering capabilities characteristic of structured mesh
generation approaches. The mesh example demonstration in Figure 10.15 showcase the generation
of hybrid surface and volume meshes on symmetric multi-region geometries406. The geometry of the
mesh and its symmetries are matched to the analytical and numerical methods used to solve the
governing equations.

Figure 10.15 Hybrid Icosahedra Surface Mesh (left) and Multi-Material Hybrid Volume Mesh (right) –
(Courtesy of Khamayseh and Almeida)

The principle objective of this paper is to present an overview of current meshing efforts and
development at Oak Ridge National Laboratory. Our capability is geared for generating high-

406 In geometry, an icosahedra is a polyhedron with 20 faces.


231

quality adaptive meshes for petascale applications. In this work, we have researched and developed
tools and algorithms for the generation and optimization of adaptive hybrid meshes using finite-
volume discretization approach. The hybrid mesh approach attempts to combine the advantages of
both structured and unstructured meshing strategies. The prismatic and hexahedral elements are
used in regions of high solution gradients, and tetrahedral are used elsewhere with pyramids used at
the boundary between these two element categories to provide a transition region. In addition, the
polyhedral/icosahedral meshes are often the best choice of solving symmetric computational
problems (e.g., inertial confinement fusion and climate modeling). They have the properties of
producing symmetric higher order orthogonal meshes and do not introduce artificial geometric
interfaces. The geometry of the mesh and its symmetries are matched to the analytical and numerical
methods used to solve the governing equations. Furthermore, hexahedral/prismatic layers close to
wall surfaces exhibit good orthogonality and clustering capabilities characteristic of structured mesh
generation approaches. The mesh example demonstration in Figure 10.15 showcase the generation
of hybrid surface and volume meshes on symmetric multi-region geometries407. The geometry of the
mesh and its symmetries are matched to the analytical and numerical methods used to solve the
governing equations.
Our approach to the meshing problem is to utilize tools and technologies developed by the center of
Interoperable Technologies for Advanced Petascale Simulations (ITAPS) into our integrated
geometry, meshing and adaptively server (GMAS). The ITAPS center is one of the mathematics
Enabling Technologies Centers (CET) in the Department of Energy's Scientific Discovery through
Advanced Computing (SciDAC) program. The center's focus is on developing advanced scalable
interoperable software associated with geometry, mesh, and field manipulation. It also provides the
necessary meshing tools to reach new levels of understanding through the use of high-fidelity
calculations based on multiple coupled physical processes and multiple interacting physical scales.
GMAS is a code intended to integrate scientific software and provide geometry, meshing and
adaptively services for PDE solvers of coupled Multiphysics applications without exposing details of
the underlying libraries. GMAS is currently used to handle multiple meshes for multiple PDE solvers

Figure 10.16 HTTR Multi-Material Geometry, Initial Coarse Mesh (left), Refined Mesh (right) ) – (Courtesy
of Khamayseh and Almeida)

407 In geometry, an icosahedra is a polyhedron with 20 faces.


232

for a given geometry in a coupled application, and it provides the basic infrastructure to allow the
application to evaluate fields over multiple meshes. It has been used in Multiphysics applications to
provide meshing services for a neutron transport simulation code and a solvent extraction fluid flow
code in development. The following example (Figure 10.16) exhibits coarse and refined anisotropic
meshes generated using GMAS. The fine mesh is used to capture boundary layer flow and heat flux
and the coarse mesh is needed for neutronics in the coolant channels of high-temperature test reactor
(HTTR).
10.2.8.2 Hybrid Adaptive Meshing
Our ongoing meshing research and development concentrates on hybrid mesh adaptation strategies,
along with mesh optimization. In certain Multi-physics applications, the size of mesh at a given
location should be selected to resolve the smallest physics length scale at that point. Too few mesh
elements result in a locally incorrect solution; whereas, too many mesh cells slow the calculation
needlessly. The quality of the solution also depends on other mesh characteristics, such as, element
shapes and connectivity, smoothness and “impedance” requirements, element orthogonality,
anisotropic elements to match anisotropic physics, and boundary representation requirements. We
have developed a hybrid finite volume-based mesh generator for r-adaptively with certain emphasis
on climate modeling. We employ conformal mapping to derive the elliptic PDEs models for the
optimization and adaptation of hybrid surface meshes. However, an algebraic method is used in the
case of combined h-p adaptively wherein the degree p of the polynomial basis functions can be
adapted to the features of the field quantities. The following demonstrated examples (Figure 10.17)
exhibit the generation of r-h adapted hybrid surface meshes for climate modeling. It has been shown
that mesh adaptation can reduce simulation error in prediction of the dynamics of the climate system.

Figure 10.17 Orography field (left), r-adaptively (center) and h-adaptively (right) for climate modeling
) – (Courtesy of Khamayseh and Almeida)

Applications to this capability also include field transformation and mapping across multiple meshes.
In particular, the generation and smooth adaptive grid transformations for resolving orography
(earth surface height) and fine-scale processes in climate modeling. Orography plays an important
role in determining the strength and location of the atmospheric jet streams. Its impact is most
pronounced in the numerical simulation codes for the detailed regional climate studies. In addition,
orography is a crucial parameter for prediction of many key climatic dynamics, elements, and
moisture physics, such as rainfall, snowfall, and cloud cover. The phenomenon of climate variability
is sensitive to orographic effects and can be resolved by the generation of finer meshes in regions of
high altitude. Resolving orography produces a more accurate prediction of wetter or dryer seasons
in a particular region. And moreover, orography defines the lower boundary in general circulation
233

models. The following example (Figure 10.18) shows a very dense orography filed on planar
uniform mesh with two kilometer gridded resolution (Figure 10.18- top). The initial field data size
was two gigabits and it was obtained from http://www.ngdc.noaa.gov/mgg/topo/globe.html. We
have successfully introduced h-p adaptively to a least-squares method with spherical harmonics
basis functions for field mapping and mesh adaptation. The end mesh (Figure 10.18-bottom) is
much coarser at the sea level (50-kilometers) and finer at the high altitude regions (1-kilometers)
with only a fraction of the original field data size. Moreover, the orography field was globally
preserved to very small accuracy. For a full detailed presentation of this adaptive meshing approach
we refer the reader to 408-409.

Figure 10.18 Coupled orography field transfer with h-adaptively. Planar orography field (top),
h-adapted surface mesh (bottom-left) and close-up view of the mesh (bottom-right)

10.2.8.3 Meshing and Load Balancing


The advent of petascale computing creates new opportunities for representation of realistic
geometries via meshing at an unprecedented fidelity. Fine meshes also have a beneficial impact on
the accuracy of the PDE’s solution if they can be generated with sufficient quality. One central effort
is the generation of meshes with large number of elements that truly represent complex multi-region

408 Kahamyseh A., de Almeida V.F. and Hansen G. “Hybrid Surface Mesh Adaptivity for Shallow Atmosphere
Simulation”, ORNL/TM-2006-28.
409 de Almeida V. F., Khamayseh A. K. and Drake J. B. “An h-p Adaptive Least-Squares Cartesian Method with

Spherical Harmonics Basis Functions for the Shallow Atmosphere Equations ORNL/TM-2006-26.
234

geometries and adapt (h-adaptively) to areas of steep solution gradient, notably at the walls of the
vortex generator. Such very large meshes can only be created with the help of parallel computing.
Our approach is to generate an initial mesh that resolves the surface geometry at any practical
tolerance in a single processor while keeping the interior volume mesh coarse. In practice, such
meshes can only be of unstructured type and there is a risk that many elements will become singular
or of unacceptable aspect ratio. Next, we leverage tools from the ITAPS center into GMAS to partition
the mesh, distribute the data, refine/improve the quality of the distributed mesh in parallel, and
balance the load of the new mesh. Existing functionally of GMAS already provides the partition and
distribution of the data (Figure 10.19), we are currently concentrating on developing of the parallel
mesh refinement, data distribution and load balancing.

Figure 10.19 Meshing and Partitioning of Centrifugal Contactor ) – (Courtesy of Khamayseh and
Almeida)

10.2.8.4 Conclusions.
The paper presents an overview of the current tools being developed by ITAPS and GMAS for the
generation, optimization, and adaptation of hybrid meshes. In addition, the research in this paper is
involved in the development of r-h-p adaptive technology tailored to application areas relevant to
other simulation fields. The r-h-p adaptive meshing approach and its underlying methods can be
attractive to many application areas when solving three-dimensional, multi-physics, multi-scale, and
time-dependent PDE's. This method builds on r-h-refinement/coarsening, p-refinement,
interpolation, and error estimation applied to climate modeling and astrophysics simulation. For
additional information, please refer to [Khamayseh and Almeida]410.

10.3 Strategies for Driving Mesh Adaptation in CFD411


Discretization error occurs in every (CFD) solution and is often one of the main contributors to the
overall uncertainty in a CFD prediction. It is formally defined as the difference between the exact

410 Ahmed Khamayseh and Valmor de Almeida, “Adaptive Hybrid Mesh Refinement for Multi-physics
Applications”, Journal of Physics: Conference Series 78 (2007) 012039.
411 Christopher J. Roy, “Strategies for Driving Mesh Adaptation in CFD (Invited)”, AIAA 2009-1302.
235

solution to the discrete equations and the exact solution to the governing partial differential
equations. Discretization error is the most difficult type of numerical error to estimate and is usually
the largest of the numerical error sources, which also include iterative error, round-off error, and
statistical error (where relevant). There are a number of different approaches for estimating
discretization error, but they all rely on the underlying numerical solution (or solutions) being in the
asymptotic range with regards to either the truncation error or the discretization error. In addition
to the importance of estimating the discretization error, we also desire methods for reducing it.
Applying uniform mesh refinement (required for extrapolation-based discretization error estimation
such as Richardson extrapolation) is not the most efficient method for reducing the discretization
error. Since uniform refinement, by definition, uniformly refines over the entire domain, it generally
results in meshes with highly refined cells/elements in regions where they are not needed. For 3D
CFD applications, each time the mesh is refined by grid doubling in each coordinate direction, the
number of cells/elements increases by a factor of eight. Thus uniform refinement for reducing
discretization error can be extremely expensive. Targeted local refinement, or mesh adaptation, is a
much better strategy for reducing the discretization error. There have been several extensive reviews
of mesh adaption approaches for CFD (e.g., see [Baker]412 and [McRae]413); however much of this
work has focused on methods for actually performing the adaption rather than the approach for
driving the mesh adaptation. This paper examines several different criteria for driving a mesh
adaptation scheme.
10.3.1.1 Feature-Based Adaption
The most widely-used approach to grid adaptation employs feature-based methods. These methods
often use solution gradients, solution curvature, or even identified solution features to drive the
adaptation process. Feature based adaptation often results in some feature being over-refined while
other features are not refined enough. In some cases, gradient-based refinement can actually increase
the solution error. An example of the failure of feature-based adaptation is given by [Dwight]414 for
the inviscid transonic flow over an airfoil using an unstructured finite-volume discretization. Figure
10.20 (a) shows the discretization error in the drag coefficient as a function of the number of cells.
Uniform (global) adaptation shows second order convergence on the coarser grids, then a reduction
to first order on the finer grids, likely due to the presence of the shock discontinuities. Adaptation
based on solution gradients initially shows a reduction in the discretization error for the drag
coefficient, but then subsequent adaptation steps show an increase in the discretization error. The
adjoint-based artificial dissipation estimator gives the best results. The adapted grids for the latter
two cases are given in Figure 10.20 (b-c). While the gradient-based adaptation refines the shock
waves on the upper and lower surface as well as the wake, the adjoint-based adaptation also refines
near the surface and in the region above the airfoil containing acoustic waves that impinge on the
trailing edge.

412 Baker, T. J., “Mesh Adaptation Strategies for Problems in Fluid Dynamics,” Finite Elements in Analysis and
Design, Vol. 25, 1997, pp. 243-273.
413 McRae, D. S., “r-Refinement Grid Adaptation Algorithms and Issues,” Computer Methods in Applied Mechanics

and Engineering, Vol. 189, 2000, pp. 1161-1182.


414 Dwight, R.P., “Heuristic A Posteriori Estimation of Error due to Dissipation in Finite Volume Schemes and

Application to Mesh Adaptation,” Journal of Computational Physics, Vol. 227, No. 5, 2008, pp. 2845-2863.
236

(a)

(b) Gradient-based (c) Adjoint-Based Artificial


Adaptation Dissipation Estimator

Figure 10.20 Discretization Error in the Drag Coefficient for Transonic Flow over an Airfoil
(Reproduced from Dwight)

10.3.1.2 Discretization Error and Recovery-Based Adaption


Since it is the discretization error that one wishes to reduce with mesh adaptation, on the surface it
might appear the discretization error (or its estimate) would serve as an appropriate driver for the
adaption process. However, as will be shown in Section V discretization error is not an appropriate
mesh adaption criterion. In the finite element method, an error indicator that is frequently used for
mesh adaptation is gradient recovery or reconstruction such as the Zienciwicz-Zhu4 error estimator.
The main idea is that gradients of the finite element solution are compared to the gradients found
from post-processing patches of neighboring elements. Larger mismatches between these two
gradient computations serve as an indicator of larger errors in the gradients. This approach relies on
the super-convergent properties of the finite element method which states that for sufficiently
smooth solutions, the nodal values of the finite element solution converge at a higher rate than those
at other locations.5 In this sense, recovery-based adaption is thus similar to adaption based on the
237

discretization error and is not the ideal driver for mesh adaption. Furthermore, recovery-based
adaptation, while possible for the finite element method, may not be feasible for other discretization
methods which are not super-convergent.
10.3.1.3 Adjoint-Based Adaption
Another promising method for grid adaptation is the adjoint approach. Adjoint methods hold the
promise of estimating the local contribution of each cell or element to the discretization error in any
solution functional of interest (e.g., lift, drag, and moments), and can thus provide targeted mesh
adaption depending on the goals of the simulation. The main drawback for adjoint methods is their
complexity and code intrusiveness, as evidenced by the fact that adjoint-based adaption has not yet
found its way into commercial CFD codes. An example of adjoint-based mesh adaption in CFD is given
by [Venditti and Darmofal] who successfully applied the method in finite-volume form to inviscid and
viscous flow over airfoils at various Mach numbers. While adjoint methods hold much future promise
in the area of mesh adaption, they are beyond the scope of the current paper.
10.3.1.4 Truncation Error-Based Adaption
In broad terms, the truncation error is the difference between the partial differential equation and
its discrete approximation. As will be discussed in later, the truncation error provides the
contribution of the local element discretization (cell size, skewness, etc.) to the discretization error.
As such, the truncation error is a good indicator of where mesh adaptation should occur. The
general concept behind truncation error-based adaption is to equidistributional the truncation error
over the entire domain to reduce the total discretization error. For simple discretization schemes,
the truncation error can be computed directly. For more complex schemes where direct evaluation
of the truncation is difficult, an approach for estimating the truncation error is needed. Section VII
discusses two approaches for estimating the truncation error. Furthermore, in the finite element
method, a class of error estimators has been developed that rely on the residual. This residual is
found by inserting the finite element solution, which is made up of basis functions and corresponding
coefficients, into the original partial differential equation. As shown before, this residual can be found
in a similar manner as one approach for estimating the truncation error. Thus we expect there to be
a close relationship between residual-based adaption in the finite element method and truncation
error-based adaption with more general discretization schemes.
10.3.2 Current Approach for Performing Mesh Adaptation
Local solution adaption can be conducted by moving points from one region to another (r-adaption),
selectively refining/coarsening cells (h-adaption), or increasing/decreasing the order of accuracy of
the method (p-adaption). For general unstructured grid methods the h-adaption approach is the
most popular, while for structured grid methods the r-adaption approach is most often used. p-
adaption has not found widespread use for CFD problems415. In addition to mesh refinement, other
issues that should be considered when adapting a mesh are mesh quality and the alignment of the
mesh with key solution features. Since the focus here is on methods for driving mesh adaption and
not for performing adaption itself, we limit ourselves to a simple approach of r-adaption in one
dimension based on a linear spring analogy. Extensions to handle multiple dimensions are possible
based on a torsional spring, which serves to prevent skewing of the multi-dimensional cells. First, a
mesh adaptation function φi is created based on solution features (e.g., gradients, curvature),
discretization error, truncation error, etc., where i denotes the mesh node point (ordered from 1 to
N). A weighting function is then created from the mesh adaptation function as:

415Baker, T. J., “Mesh Adaptation Strategies for Problems in Fluid Dynamics,” Finite Elements in Analysis and
Design, Vol. 25, 1997, pp. 243-273.
238

Wi = |φi |q
Eq. 10.3
Where q is an exponent that is set to unity in the present work. This weighting function is used to
drive the mesh adaption process, with smaller values denoting a region for mesh coarsening and
larger values a region for refinement. This weighting function is then passed through a smoothing
algorithm to promote smoothness of the mesh adaptation. This smoothing algorithm includes 10
passes of the following smoothing operation for all interior points:

Wi+1 + 4Wi + Wi−1


Wi =
6
Eq. 10.4
Once this weighting function has been determined, it is used to determine a spring constant for linear
springs connecting the nodes: ki+1/2 = (Wi + Wi+1)/2. The new nodal location can then be found
according to:
k i−1/2 (xi − xi−1 ) = k i+1/2 (xi+1 − xi )
Eq. 10.5
Nodes with high weighting functions will have higher spring constants and thus promote refinement
in that region. The new nodal locations are solved for using an explicit iterative approach according
to:
m m
k i−1/2 xi−1/2 + k i+1/2 xi+1/2
xim+1 =
k i−1/2 + k i+1/2
Eq. 10.6
The weighting functions are interpolated as the nodes are moved, thus ensuring that the weighting
functions are fixed in space for a given mesh adaptation step. Four different techniques will be used
to drive the mesh adaptation process. The first two are feature-based and adapt the mesh based on
either the local solution gradients or solution curvature. The third technique adapts the mesh based
on the discretization error and the fourth technique adapts the mesh based on the leading truncation
error term. These four techniques are summarized below.

1. Solution Gradient: This feature-based adaptation technique sets φi = (∂u/∂x)i


2. Solution Curvature: This feature-based adaptation technique sets φi = (∂2u/∂x2)i
3. Discretization Error (DE): This approach uses the true discretization error in the solution to
drive the adaptation process, although the estimated discretization error (e.g., from
Richardson extrapolation) could be used in cases where the exact solution is not available :
φ i = ui - ũ i
4. Truncation Error (TE): This approach uses the leading truncation error terms to drive the
adaptation process as discussed in the next section. In this approach, the partial derivatives
of the solution and the transformation metrics are replaced by second-order accurate finite
difference approximations.

Examples of these different weighting functions applied to steady-state Burgers equation for a
Reynolds number of 32 are shown in Figure 10.21 for q = 1. Clearly each approach will produce
meshes with different adaptation characteristics. Steady-state Burgers equation for Reynolds
number416. The left figure depicts the exact solution and numerical solution using 33 uniformly
spaced nodes, while right shows an example weighting functions for the region -2 ≤ x ≤ 0 based on

416Dwight, R.P., “Heuristic A Posteriori Estimation of Error due to Dissipation in Finite Volume Schemes and
Application to .Mesh Adaptation,” Journal of Computational Physics, Vol. 227, No. 5, 2008, pp. 2845-2863.
239

solution gradients, solution curvature, discretization error (DE), and truncation error (TE).

Figure 10.21 Steady-State Burgers Equation for Reynolds Number 32

10.3.3 Case Study - Mesh Adaption Results for 1D Burgers Equation (Re = 32)
In this section, different methods for driving the mesh adaption are analyzed as well as the case
without adaption (i.e., a uniform mesh). The four different methods for driving the mesh adaptation
are: adaption based on solution gradients, adaption based on solution curvature, adaption based on
the discretization error (DE), and adaption based on the truncation error (TE). Numerical solutions
to steady-state Burgers equation for Reynolds number = 32 are given in Figure 10.22(left) for the
uniform mesh and the four mesh adaption approaches, all using 33 nodes. The final local node
spacing is given in Figure 10.22 (right) for each method and shows significant variations in the
vicinity of the viscous shock.

Figure 10.22 Adaption Schemes Applied to Burgers Equation Left) numerical solutions and right) local
nodal spacing Δx.
240

10.4 A Solution-Based Adaptive Redistribution Method for Unstructured Meshes417


We propose an unstructured mesh redistribution method without using skewed elements for steady-
state problems. The regions around solution features are indicated by a sensor function. The medial
axes of the strong feature regions are calculated so that elements can be clustered around the most
important solution features efficiently. Two approaches, a discrete surface-based approach using a
Delaunay triangulation method and a mathematical-representation approach using least square
fitting, are shown to calculate the medial axes. Re-meshing of an initial volume mesh is performed
around the medial axes using an advancing front method and/or an advancing layer method. Two
examples are shown to present how our approach works.
10.4.1 Introduction & Literature Survey
In order to obtain accurate results for highly complex flow fields, meshes must be clustered near the
areas where the solution gradients are high. This is an arduous task the engineer must perform prior
to the completion of the calculation. The meshes can be clustered in two ways; either a very fine mesh
is generated, or some solution-based mesh clustering is performed. The first approach can be very
expensive in terms of computational costs. Although surface meshes can be adapted geometrically
based on surface curvature and local volume thickness418, it is often difficult to choose adaptation
criteria for volume meshes before numerical simulations. The second approach can be achieved by
mesh adaptation. There are three mesh adaptation approaches: mesh refinement/de-refinement419-
420, mesh redistribution421 and the combination of these422-423. Since structured meshes are not

flexible for adding or deleting nodes locally, the mesh redistribution approach is widely used to move
nodes toward solution features while the connectively of the mesh is maintained.
Although solution features are adapted by unstructured meshes relatively easily, there are two issues
needed to be addressed. One is the maintenance of valid elements. Hanging nodes can be created
during a mesh refinement process. Local refinement of hybrid meshes for viscous flow simulations,
which contain regular elements such as tetrahedral, prisms, pyramids and hexahedra, is difficult
without creating low-quality elements to eliminate hanging nodes. To overcome this issue, an
approach using generalized elements is promising424.
The other issue is the quality of resulting refined meshes. Stretched elements may affect solution
accuracy and cause a stiffness problem in numerical simulations. [Mavriplis]425 reports span wise
grid stretching, which is widely used in aircraft CFD simulations, may have substantial repercussions

417 Yasushi Ito, Alan M. Shih, Roy P. Koomullil and Bharat K. Soni, “A Solution-Based Adaptive Redistribution
Method for Unstructured Meshes”, Dept of Mechanical Engineering University of Alabama at Birmingham,
Birmingham, AL, U.S.A.
418 Ito, Y., Shum, P. C., Shih, A. M., Soni, B. K. and Nakahashi, K., “Robust Generation of High-Quality Unstructured

Meshes on Realistic Biomedical Geometry,” International Journal for Numerical Methods in Engineering, 2006.
419 Cavallo, P. A. and Grismer, M. J., “Further Extension and Validation of a Parallel Unstructured Mesh Adaptation

Package,” AIAA Paper 2005-0924, 43rd Aerospace Sciences Meeting and Exhibit, Reno, NV, 2005.
420 Senguttuvan, V., Chalasani, S., Luke, E. and Thompson, D., “Adaptive Mesh Refinement Using General

Elements,” AIAA Paper 2005-0927, 43rd AIAA Aerospace Sciences Meeting and Exhibit, Reno, NV, 2005.
421 Soni, B. K., Thornburg, H. J., Koomullil, R. P., Apte, M. and Madhavan, A., “PMAG: Parallel Multiblock Adaptive

Grid System,” Proceedings of the 6th International Conference on Numerical Grid Generation in Computational
Field Simulation, London, UK, 1998, pp. 769-779.
422 Shephard, M. S., Flaherty, J. E., Jansen, K. E., Li, X., Luo, X., Chevaugeon, N., Remacle, J.-F., Beall, M. W. and

O’Bara, R. M., “Adaptive Mesh Generation for Curved Domains,” Applied Numerical Mathematics, 2005.
423 Suerich-Gulick, F., Lepage, C. and Habashi, W., “Anisotropic 3-D Mesh Adaptation for Turbulent Flows,” AIAA

Paper 2004-2533, 34th AIAA Fluid Dynamics Conference and Exhibit, Portland, OR, 2004.
424 Senguttuvan, V., Chalasani, S., Luke, E. and Thompson, D., “Adaptive Mesh Refinement Using General

Elements,” AIAA Paper 2005-0927, 43rd AIAA Aerospace Sciences Meeting and Exhibit, Reno, NV, 2005.
425 Mavriplis, D. J., “Grid Resolution Study of a Drag Prediction Workshop Configuration Using the NSU3D

Unstructured Mesh Solver,” AIAA Paper 2005-4729, 23rd Applied Aerodynamics Conference, Toronto, 2005.
241

on overall simulation accuracy even at very high levels of resolution426. Since typical refinement and
redistribution algorithms for unstructured meshes create highly stretched tetrahedral around
solution features, the validation of the simulation process may be required. If a refined mesh does
not have elements that have too small or too large angles even near solution features, we do not need
to worry about these issues.
Here, we propose a solution-based redistribution method for unstructured volume meshes. The
structured mesh redistribution methods only allow nodes to move towards solution features, while
maintaining the mesh connectivity. In our unstructured mesh redistribution method, a mesh is re-
meshed around the solution features detected. The main objective here is to extract strong solution
features as smooth surfaces based on sensor values and then to create high quality elements around
them. The entire domain can be re-meshed with the embedded surfaces using an advancing front
method with tetrahedra and an advancing layer method with prisms or hexahedra if needed.
Alternatively, elements around the feature surfaces are removed from the initial volume mesh and
only the resulting voids are re-meshed to reduce the required CPU time. Two examples are shown to
present how our approach works.
10.4.2 Feature Detection
After a numerical simulation using an initial mesh, the next step is the detection of solution features.
The location of solution features is indicated by the weight function by [Soni et al.]427 or the shock
sensor by [Lovely and Haimes]428. The weight function is calculated based on the conserved variables
and indicates the regions of important flow features. It is defined at each element as follows:

W1 W2 W3
W=1+ ⨁ ⨁
Max(W1 , W 2 , W 3 ) Max(W1 , W 2 , W 3 ) Max(W1 , W 2 , W 3 )
nq
k
qiξk qiξk
W = ∑ [ i ∕[ ] ]
|q | + ε |qi | + ε
⨁i=1 Max k=1,2,3
Eq. 10.7
where Wk (k = 1, 2, 3), qiξk and qi are x, y and z components of normalized gradient, the kth component
of the gradient calculated using i-th variable and the average variable at the centroid of the element,
respectively. The symbol ⊕ represents the Boolean sum, which for two variables q1 and q2 is defined
as
q1 ⊕ q 2 = q1 + q 2 − q1 q 2
Eq. 10.8
The shock sensor is based on the fact that the normalized Mach number Mn = 1 at a shock.

𝑉 ∇𝑝
M𝑛 = =1
𝑎 |∇𝑝|
Eq. 10.9
where a, V and ⩢ p are the speed of sound, velocity vector and pressure gradient, respectively.

426 Mavriplis, D. J., “Grid Resolution Study of a Drag Prediction Workshop Configuration Using the NSU3D
Unstructured Mesh Solver,” AIAA Paper 2005-4729, 23rd Applied Aerodynamics Conference, Toronto, 2005.
427 Soni, B. K., Koomullil, R., Thompson, D. S. and Thornburg, H., “Solution Adaptive Grid Strategies Based on Point

Redistribution,” Computer Methods in Applied Mechanics and Engineering, Vol. 189, Issue 4, 2000.
428 Lovely, D. and Haimes, R., “Shock Detection from Computational Fluid Dynamics Results,” AIAA Paper 1999-

3285, 14th AIAA Computational Fluid Dynamics Conference, Norfolk, VA, 1999.
242

10.4.3 Extraction of Solution Feature Surfaces


To adapt high-quality elements around strong solution features, the next step is recognition of
feature surfaces. Although this approach may need more meshing steps than a typical mesh
redistribution method, much better quality elements can be generated around the solution feature
surfaces. Marcum and Gaither propose a pattern recognition algorithm in 2D and mention the
difficulty of extending it to 3D429. Although our approach needs user interaction during the process
it enables feature surface extraction. The direct extraction of solution feature surfaces is difficult from
the initial mesh and solution data. At least two steps are needed. First, regions around the solution
features are specified by selecting a certain sensor value. Although elements can be subdivided in the
entire regions, the number of elements in the resulting mesh may become too big. The regions can be
very thick if an initial volume mesh is coarse at the solution feature locations. To avoid this problem,
the medial axis (also known as skeleton) of each region is extracted in the following step. Elements
are clustered around the medial axes.
Two approaches can be considered to extract solution feature surfaces. One is a discrete surface-
based approach. A medial axis is extracted from a triangulated closed surface using Delaunay
triangulation430. Triangulated iso-surfaces at a certain sensor value can be calculated easily and
robustly, which enclose regions around solution features. For example, the shock features are
surrounded by the iso-surfaces at Mn = 1. A Delaunay tetrahedral mesh can be obtained from a
triangulated iso-surface. The center of the circum-sphere of each tetrahedron is considered to
represent the medial axis. The quality of the resulting medial axes depends on the smoothness of the
iso-surfaces. However, iso-surfaces are not usually smooth, and they may have bumps and holes due
to truncation errors in the entire simulation process. User interaction is often required to fix the
resulting surfaces.
The other approach is a mathematical-representation approach. A medial axis can be estimated using
least square fitting directly from the nodes on an iso-surface. Least square fitting methods often
minimize the vertical offsets from a surface function instead of the perpendicular offsets to simplify
an analytic form for the fitting parameters. Consequently, the least square fitting does not estimate
the surface function well when the region defined by an iso-surface is thick. Although a set of
coordinates of nodes near a solution feature is needed as an input for a least square fitting method,
the connectivity of the nodes is not required. Therefore, we define a solution feature as a set of nodes
based on the following process:

1 Select nodes of a volume mesh that have a certain range of sensor values.
2 Also select nodes that are one-ring neighbors of the nodes in Step 1 to eliminate noise due to
truncation errors.
3 Number each cluster of selected nodes, which can be defined as their connectivity, if the mesh
has more than one solution features.
4 Calculate distance from the closest boundary at each selected node. The boundary is
represented by the selected nodes that have at least one unselected node as their one-ring
neighbor. The distance is defined as the number of edges from the boundary.
5 The nodes that have local maxima of the distance values are considered to form medial axes.

The coordinates of the nodes in Step 5 are fitted to functions, such as a plane, quadric and cone, using
a least square fitting method. Local mesh size can be considered to be the error range of a data point.

429 Marcum, D. L. and Gaither, K. P., “Solution Adaptive Unstructured Grid Generation Using Pseudo-Pattern
Recognition Techniques,” AIAA Paper 97-1860, 13th AIAA CFD Conference, Snowmass Village, CO, 1997.
430 Sheehy, D. J., Armstrong, C.G. and Robinson, D. J., “Shape Description by Medial Surface Construction,” IEEE

Transactions on Visualization and Computer Graphics, Vol. 2, Issue 1, 1996, pp. 62-72.
243

The reciprocal of the local mesh size is used for weighing. Suppose that a cluster of selected nodes
xmj (j = 1, 2,…, nm) is fitted to a function z = f (x, y).

nm 2
zj − f(xj , yj )
E = ∑( )
lj
j=1
Eq. 10.10
where lj is the maximum edge length connected to node j. E should be minimized. The resulting
function should be trimmed to define a surface in the computational domain.
10.4.3.1 Case Study 1 - NACA0012 Wing-Section
Once the feature surface is computed, the surface mesh generation algorithm is applied to create a
high quality mesh on it. Elements of the initial volume mesh, Vn0, near the solution feature are
removed and the void is re-meshed using the advancing front method. Figure 10.23 (c) shows the

(b) Initial mesh (50 K


(a) Isosurface of a weight nodes)
function value of 0.2 at
theshock location

(c) Redistribution #1(110 K


nodes) – elements around (d) Redistribution #2
the shock are replaced with (130 K nodes)
finer elements

Figure 10.23 Extraction of a Flow Feature & Redistributed Volume Meshes


244

resulting volume mesh (110 K nodes; Vn1). As a result, a high quality redistributed mesh is produced
with alignment to the major flow feature. Figure 10.23 (d) shows another redistributed volume
mesh after the second simulation cycle (130 K nodes; Vn2). Figure 10.24 illustrates hybrid meshes
for the same wing geometry to perform viscous flow simulations and Cp distribution. The shock
location is estimated using the same approach from the initial hybrid mesh, Figure 10.24 (a), and
then the entire domain is re-meshed with the embedded surface (Figure 10.24(b)). To avoid
creating skewed elements around the intersection between the wing upper surface and the
embedded surface, the near-filed mesh around the wing is generated first. The embedded surface
close to or within the near-field mesh is trimmed automatically, and then the rest of the domain is
filled with tetrahedral elements.
Once the feature surface is computed, the surface mesh generation algorithm is applied to create a
high quality mesh on it. Elements of the initial volume mesh, Vn0, near the solution feature are
removed and the void is re-meshed using the advancing front method. Figure 10.23 (c) shows the
resulting volume mesh (110 K nodes; Vn1). As a result, a high quality redistributed mesh is produced
with alignment to the major flow feature. Figure 10.23 (d) shows another redistributed volume
mesh after the second simulation cycle (130 K nodes; Vn2). Figure 10.24 illustrates hybrid meshes
for the same wing geometry to perform viscous flow simulations and Cp distribution. The shock
location is estimated using the same approach from the initial hybrid mesh, Figure 10.24 (a), and
then the entire domain is re-meshed with the embedded surface (Figure 10.24(b)). To avoid
creating skewed elements around the intersection between the wing upper surface and the
embedded surface, the near-filed mesh around the wing is generated first. The embedded surface
close to or within the near-field mesh is trimmed automatically, and then the rest of the domain is
filled with tetrahedral domain is re-meshed with the embedded surface (Figure 10.24(b)). To avoid
creating skewed elements around the intersection between the wing upper surface and the
embedded surface, the near-filed mesh around the wing is generated first. The embedded surface
close to or within the near-field mesh is trimmed automatically, and then the rest of the domain is
filled with tetrahedral elements.

Figure 10.24 Hybrid Meshes for the NACA0012 Wing-Section and Cp Distribution (-1.0 to 1.0)
(a) Initial Hybrid Mesh; (b) Redistributed Hybrid Mesh

10.4.3.2 Case Study 2 - Capsule Model


Figure 10.25 (a) shows an initial tetrahedral mesh around a re-entry capsule model and Mach
number distribution on a cross-section. The bow shock in front of the capsule becomes steady, but
the flow solution is not fully converged. The shape of the outer boundary is a hemisphere so that the
mesh can be used for flows at different angles of attack. Iso-surfaces of a certain weight function
value can be extracted as triangulated surfaces (Figure 10.25 (b)), the medial axes of which are
245

considered to represent the most important locations. An approach to obtain medial axes using a
Delaunay triangulation method from the triangulated surfaces can be considered. However, it is
difficult to obtain medial axes automatically as smooth surfaces as discussed in the previous example.
Although the iso-surfaces shown in Figure 10.25 (b) are smoothed using a Laplacian method, many
holes and small features prevent extracting smooth medial axes. The other approach using the least
square fitting method is more appropriate in this case.
After a user specifies one of the template functions, such as a cone, quadratic and quartic, and the z
axis of the function, a corresponding medial axis is obtained as a mathematical function. The bow
shock in front of the capsule is fitted to a quadratic, and the shock from the aft of it is fitted to a cone.
It can be shown shows that the obtained surfaces and the iso-surfaces for reference on the symmetry
plane. The least square fitting method estimates the medial axes well. One of the disadvantages using
unstructured meshes is that flow features diverge quickly. This approach enables us to estimate
missing flow features.

(b) Flow features on


(a) Initial Grid extracted isosurfaces at a
weight function value of 0.05

(c) Redistributed mesh for a


capsule model and Mach (d) Redistributed mesh for a
numbe distribution on a capsule model using
cross-section (M=1.0-4.0) anisotropic elements
Figure 10.25 Adaptive Re-meshing of Capsule

Figure 10.25 (c) shows a redistributed mesh, which has 0.74 M nodes. In this case, the entire mesh
is regenerated because the shape of the outer boundary is changed to remove extra elements. The
initial mesh shown in Figure 10.25 (a) can be used for cases at different angles of attack, but it has
0.89 million nodes. In addition, the elements around the shocks in the far field are coarse. The initial
246

mesh gives a carbuncle phenomenon on the bow shock, while the redistributed mesh gives better
result. One of the solution feature surfaces shown in Figure 10.25 (b) fits the bow shock well. The
most notable advantage of the surface-based mesh redistribution method is that anisotropic non-
simplicial elements can be used around the feature surfaces to avoid creating skewed elements.
Figure 10.25 (d) shows a redistributed hybrid mesh, which has 0.62 M nodes, based on the same
numerical result. Prismatic layers are placed around the bow shock.
247

11 Dynamic Meshing
The moving-mesh provides a capability of tackling flow simulations where the domain shape changes
during the simulation. In such cases, the computational mesh needs to adapt to the time-varying
shape of the domain and preserve its validity and quality. The mesh motion solver support which
calculates the internal point motion based on the prescribed motion of the boundary. The
performance of the method is preserved through the choice of decomposition of cells, the bounded
discretization and the use of iterative solvers431. We covered the dynamic mesh before a little bit
with Adaptive Mesh Refinement (AMR) where it was characterized it as H, P, and R-Methods. To
recap:
➢ H-Method - It involves automatic refinement or coarsening of the spatial mesh based on
a posteriori error estimates or error indicators. The overall method contains two
independent parts, i.e. a solution algorithm and a mesh selection algorithm.
➢ P-Method - the adaptive enrichment of the polynomial order.
➢ R-Method - The R-Method is also known as Moving Mesh Method (MMM). It relocates
grid points in a mesh having a fixed number of nodes in such a way that the nodes remain
concentrated in regions of rapid variation of the solution.

Where most of adaptive refinements is using R-Methods, with key ingredients which includes
Interpolation of time dependent mesh equation432. In the Dynamic Mesh, the computational mesh
is moved to follow the changing shape of the boundary by moving its points in every step of the
transient simulation. The main difficulty in this case is maintaining the mesh validity and quality
without user interaction where the performance will be quantified by speed, accuracy, robustness,
and stability433.

11.1 Type of Mesh Motion


Several deforming mesh algorithms have been presented in literature, with various approaches to
defining mesh motion. The most popular method to date is the spring analogy434. Here, all point-to-
point connections within the mesh are replaced by linear springs and point motion is obtained as a
response to boundary displacement. However, this approach proved to lack robustness, particularly
for arbitrarily unstructured (polyhedral) meshes. A review of merits and limitations of the spring
analogy and its variants is given by [Blom]435. Other approaches to creating a robust mesh motion
solver include the use of Laplacian smoothing 436 with the constant and variable diffusivity and the
Pseudo-Solid Equation (static equilibrium equation for small deformations of a linear elastic
solid)437 in Arbitrary Lagrangian-Eulerian (ALE) codes. In an effort to simultaneously control the
position of moving boundary and mesh spacing next to it, [Helenbrook]438 proposes the use of a bi-
harmonic equation to govern mesh motion. Other methods includes Dynamic-Overset meshing,
dynamic re-meshing using Radial-Basis Functions (RBF), Delaunay Method and mesh motion and

431 Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume Method”, ISSN
1333–1124, UDK 532.5:519.6.
432 Tao Tang, “Moving Mesh Methods for Computational Fluid Dynamics”, Contemporary Mathematics, 1991.
433 Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume Method”, ISSN

1333–1124, UDK 532.5:519.6.


434 Batina, J. T., “Unsteady Euler airfoil solutions using unstructured dynamic meshes”, AIAA Journal 28 (8) (1990).
435 Blom, F. J., “Considertions on the spring analogy, International journal for numerical methods in fluids”, (2000).
436 L¨ohner, R., Yang, C., “Improved ALE mesh velocities for moving bodies”, Communications in numerical

methods in engineering 12 (1996), pp. 599–608.


437 Johnson, A. A., Tezduyar, T. E., “Mesh update strategies in parallel finite element computations of flow problems

with moving boundaries and interfaces”, Computer methods in applied mechanics and engineering 119 (1994).
438 Helenbrook, B. T., “Mesh deformation using the bi-harmonic operator”, International journal for numerical

methods in engineering 56 (2003), pp. 1007–1021.


248

dynamic re-meshing using a generalized grid interface (GGI)439. The Radial Basis Function (RBF)
method and Delaunay Method which have been used widely in fluid-structure interaction. An
analysis of dynamic-meshing techniques was one by quantifying the accuracy, robustness, stability,
and speed of each one and while dynamic re-meshing via solution of a Laplace equation was robust
and GGI was the fastest, Overset meshing was found to be the most stable and the most general
technique for complex geometries and motions440. RBF proved to be too computationally expensive
and unrealistic for 3D problem.

11.2 Mesh Deformation


The mesh deformation problem can be stated as follows. Let D represent a domain configuration at
a given time t with its bounding surface B and a valid computational mesh, as shown in Figure 11.1.
During a time interval Δt, D changes shape into a new configuration D′. A mapping between D and D′
is sought in such a way that the mesh on D forms a valid mesh on D′ with a minimal distortion of
control volumes. In this study, the displacement vector u is chosen as the dependent variable in the
mesh motion problem. Thus, the point position in the deformed configuration is calculated as r´ = r +
u where r ∈ D and r′ ∈ D′ are point position vectors.

Figure 11.1 Mesh Deformation Problem

11.3 Finite Volume in Dynamic Mesh


With respect to dynamic meshes, we start with scalar transport equation as:

∂ ∂ ∂ ∂φ
⏟ (ρφ) + (ρuj φ) = (Γφ ∂x ) + S⏟φ
∂t ⏟j
∂x ⏟
∂xj j
Transient ⏟ Source
Convection Diffusion
Transport
Eq. 11.1
Where ϕ is the general scalar quantity, ρ is the fluid density, and u i is the flow velocity vector.
Furthermore, Γ is the diffusion coefficient and S is the source term. After integrating over a Control
Volume and applying the divergence theorem, we obtain the integral form

439 OpenFOAM ®.
440 Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume Method”.
249

    
V  t (ρ  ) + .(ρ u j  ) − . Γ −
 Q x   
S dV = 0
  j  

V t (ρ  ) dV + A (ρ u j  ). dA = A Γ  . dA + V S dV Eq. 11.2

d
(ρ  ) dV +  ρ (u i − u g ) . dA =  Γ  . dA +  S dV
dt V A A V

Here, ug is the grid velocity of the moving mesh, and A is used to represent the boundary of the control
volume V. The unsteady term (first term) could be written as

d (ρV) n +1 − (ρV) n dV
dt v
ρ dV = → V n +1 = V n + Δt Eq.
Δt dt
11.3

Where dV/dt is the volume time derivative of the control volume. In order to satisfy the grid
conservation law, the volume time derivative of the control volume is computed from

Face Face δV
dV
=  u g .dA =  u gj.A j = 
j
Eq. 11.4
dt V j j Δt

With δVj is the volume swept out by the control volume face j over the time step Δt. In the case of the
sliding mesh, the motion of moving zones is tracked relative to the stationary frame. Therefore, no
moving reference frames are attached to the computational domain, simplifying the flux transfers
across the interfaces441. In the sliding mesh formulation, the control volume remains constant,
therefore, dV/dt = 0 and Vn+1 = Vn

d 
(ρ ) n +1 − (ρ ) n V 
dt v
ρ dV = Eq. 11.5
Δt

11.4 Dynamic Mesh Techniques


11.4.1 Laplacian Mesh Morphing
A computationally robust dynamic-mesh technique used in CFD is Laplacian Mesh morphing, which
solves a Laplace equation to move the mesh. [Bos]442 used this method along with solid body rotation
stress to compare with radial basis function interpolation while studying insect flight. [Bos] found
that the Laplace equation method was not able to maintain high mesh quality around the boundary
of a rectangle when it rotates, shown in Figure 11.2-(a). The cell skewness in the domain is highest
near the body, while the remaining mesh is relatively unaltered. However, the method remained

441 FLUENT 6.3 User’s Guide.


442 Frank Martijn BOS, “Numerical simulations of flapping foil and wing aerodynamics”, PhD thesis, 2009.
250

quite robust even with the complex geometry and high amplitude mesh motion. The mathematical
representation for mesh motion via solution of a Laplace equation is

1
∇ . (k ∇𝐮i,mesh ) = 0 , k=
𝑙2
Eq. 11.6
Where ui,mesh is the velocity of points in the mesh and k is a distance function that minimizes the mesh
distortion, and l is the distance to the moving boundary. The body is rotated or transformed in some
manner described by the user and the points on the body are moved based on a coordinate
transformation. The points surrounding the body are moved based on the Laplace equation above.
There is a modest amount of error introduced before the cells surrounding the body are moved443.
11.4.2 Pseudo-Solid Equation
While the Laplace equation only allows direction-decoupled transfinite mapping, the pseudo-solid
equation also allows rotation. However, this comes at a relatively high price: the pseudo-solid
equation couples the components of the motion vector due to rotation. The choice here is either an
increase in storage associated with the block solution of all displacement components or an iterative
segregated solution method.

[.μu + μ(u)T + λtr(u)I] = 0 Eq. 11.7

11.4.2.1 Case Study – Motion of a Cylinder444


The case consists of a circle moving in a channel in 2D. An identical setup and a triangular mesh has
been used by [Baker]445 with the pseudo-solid equation, and [Helenbrook]446 on the bi-harmonic
equation. A polygonal mesh used for the test, where D is the cylinder diameter, the height of the
channel is 2D and average mesh size is 0.15D. The first test consists of the determination of the
maximum displacement of the cylinder in one step without mesh inversion when the outside
boundary remains fixed. Mesh quality is determined in terms of the non-orthogonality angle αf. For
reference, on the initial polygonal mesh αf,max = 18.45◦ and αf,mean = 0.34◦. The deformed meshes
obtained using the Laplace and Pseudo-Solid mesh motion equations for one step maximum cylinder
displacement are shown in Figure 11.2 (a-b). Maximum achievable single-step cylinder
displacement is Δmax = 0.636D for the Laplace equation and Δmax = 0.995D for the pseudo-solid
equation. In transient simulations, the mesh is moved in a number of time-steps. This situation will
be examined by repeating the above test, but with the prescribed cylinder motion of 0.15D per time-
step until the mesh becomes invalid. This equates to the effective Courant number of unity, based on
the boundary motion velocity. Figure 11.2 (c-d) shows that this approach allows a considerably
higher deformation, because it handles the inherent non-linearity of the mesh motion problem. It is
interesting to notice that the Laplace and pseudo-solid equations allow the same cylinder
displacement Δmax = 1.2D, contrary to the previous test. On the other hand, the increased cost of
solving the pseudo-solid equation compared to the Laplace equation does not seem to be justified

443 Gina M. Casadei, “Dynamic-Mesh Techniques for Unsteady Multiphase Surface-Ship Hydrodynamics”, A Thesis
in Mechanical Engineering, Pennsylvania State University, December 2010.
444 Hrvoje Jasak, ˇZeljko Tukovi´c, “Automatic Mesh Motion for the Unstructured Finite Volume Method”, ISSN

1333–1124, UDK 532.5:519.6.


445 Baker, T. J., Mesh modification for solution adaptation and time evolving domains, 7th International

Conference on Numerical Grid Generation in Computational Field Simulations, Whistler, British Columbia,
Canada, 2000.
446 Helenbrook, B. T., Mesh deformation using the biharmonic operator, International journal for numerical

methods in engineering 56 (2003), pp. 1007–1021.


251

with the higher allowed single-step mesh deformation447.

11.4.3 Bi-harmonic Equation


The algorithm is based on the solution of the Bi-harmonic Equation for the deformation field, see
[Tysell]448. The use of the biharmonic equation has also been reported by [Helenbrook]449. The main
advantage of this grid deformation algorithm is that it can handle large deformations, especially close
to the boundaries. It also produces a smooth deformation distribution for cells which are very skewed
or stretched. This is necessary in order to handle the very thin cells in a prismatic layer. The algorithm
can handle skewed cells since the finite element method is used for the solution of the biharmonic
equation. The disadvantage is that the method is slow, compared to algebraic methods, since a set of
partial differential equations needs to be solved. Figure 11.3 (b) shows the deformation of the
initial twin airfoil grid in Figure 11.3 (b).

Figure 11.2 Cylinder Motion in 2D

447 Tukovi´c, ˇZ. “Finite volume method on domains of varying shape (in Croatian)”, Ph.D. thesis, Faculty of
mechanical engineering and naval architecture, University of Zagreb, 2005.
448 Tysell, L., Grid Deformation of 3D Hybrid Grids. Proceedings of the 8th International Conference on Numerical

Grid Generation in Computational Field Simulations, pp. 265-274, International Society of Grid Generation
(ISGG), Honolulu, Hawaii, USA, 2002.
449 Helenbrook, B., Mesh Deformation Using the Biharmonic Operator. International Journal for Numerical

Methods in Engineering, 56 (7), pp. 1007-1021, 2003.


252

(a) Before (b) After

Figure 11.3 Mesh Deformation via Bi-Harmonic Equations

The biharmonic surface grid projection algorithm used for h-refinement may also be used for the
generation of the initial surface grid. This algorithm is better to handle surface patches with poor
parameterization and internal surface discontinuities than bicubic splines. The algorithm has later
been modified in [Tysell]450. The latest improvements are the use of more edge swapping in order to
get a more regular mixed grid and also the setting of a fix position of some nodes close to or on the
curves defining the surface patch. The initial position of the nodes in the mixed grid can be computed
using a tensor-product patch definition. The algorithm is then used to adjust the position of the nodes
in order to get a smooth surface grid.
11.4.4 Radial Basis Function451
A common problem in CFD is maintaining high mesh quality during large transformations and
rotations, as shown in the Laplace equation method as described before. One mesh technique that
can handle large mesh deformations is based on the interpolation of Radial Basis Functions (RBF).
This technique can offer superior mesh motion in terms of mesh quality on average but can be
computationally expensive. It is critical when using RBF that the mesh quality remains high. If the
worst mesh quality is too low, the simulation will diverge. However, if the mesh quality remains high,
the simulation will remain stable, accurate and efficient. Bos 452 studied the wing performance for
flapping wings of insects at small scales. The RBF method can handle this motion by interpolating the
displaced boundary nodes on the surrounding mesh. Bos also studied the difference between using
the Laplace equation with variable diffusivity, solid body rotation stress equation and RBF. The
skewness and non-orthogonality values were compared for all cases and the RBF showed higher
mesh quality for both skewness and non-orthogonality.

450 Tysell, L., CAD Geometry Import for Grid Generation. Proceedings of the 11th ISGG Conference on Numerical
Grid Generation, International Society of Grid Generation (ISGG), Montreal, Canada, 2009.
451 Gina M. Casadei, “Dynamic-Mesh Techniques for Unsteady Multiphase Surface-Ship Hydrodynamics”, A Thesis

in Mechanical Engineering, Pennsylvania State University, December 2010.


452 Frank Martijn BOS. Numerical simulations of flapping foil and wing aerodynamics. PhD thesis, 2009.
253

Figure 11.4 Mesh Deformation via Laplace & RBF Methods

Figure 11.4-(b) clearly displays that the RBF deforms around the rotating rectangle, unlike the
Laplacian mesh motion (Figure 11.4-(a)) which has highly skewed cells around the rectangle. The
high mesh quality is more preserved in regards to RBF. However, RBF requires much more
computational effort between iterations during the mesh update scheme, which is a huge downfall to
this method. The interpolation function s(x) as defined below describes the displacement of all
computational mesh points by summing a set of basis functions:

( )
Nb
s(x) =  γ j x − x b j + q(x)
j=1 Eq. 11.8
where x b j = [ x b j , y b j , z b j ] are boundary value displacemen t

Furthermore, q is a polynomial, Nb is the number of boundary points, ϕ is a given basis function as a


function of the Euclidean distance x. One of the first steps in solving equation is to evaluate the
interpolation function s(x) in the known boundary points in equation, s(xbj) = Δxbj where Δxbj contains
the known discrete values of the boundary point displacements.

11.4.4.1 Case Study - Application to Outlet Guide Vane Geometry Matching


In this test case, the application of mesh morphing in altering the mesh of an Outlet Guide Vane (OGV)
of a modern high bypass gas turbine engine is investigated by [Bellob and Shahpar]453. Traditionally,
a block structured grid of each blade is produced from a parametric representation of the component
using the in-house meshing code. Great care is taken to produce high quality cells in every block to
adequately resolve the flow during fluid flow simulations. A 48-blade assembly of a real OGV
assembly was laser scanned to produce a stereolithography (STL) representation of the assembly

453Ismail Bello, Shahrokh Shahpar, “Mesh Morphing For Turbomachinery Applications Using Radial Basis
Functions”, Rolls-Royce PLC CFD Methods Group, Derby, UK.
254

surface, and it was found that variations in the geometry were introduced by various external factors.
To understand the differences introduced by these variations on the dynamics of the flow around the
OGVs, an accurate representation of the manufactured assembly must be generated and meshed in
order to perform new CFD simulations. This is critical in order to understand local effects introduced
by these variations, as well as
system-level effects such as
changes in the gas turbine
performance. These variations
are not easily represented by
changes in the parametric
representation of the blades,
and as such form an ideal
candidate for our test case.
For each blade, the
displacement field required to
morph the mesh generated
from the parametric
representation can be
computed by calculating the
signed shortest distance field
between the STL scan and the
mesh, this was done using in-
house code built for this
purpose called Point2Surface
(P2S)454. P2S computes the Figure 11.5 Outlet Guide Vane (OGV) Boundary Surfaces Defined for
Harsdorf distance between the a Single Passage
two surfaces and its associated
direction. This distance computation is only required on the outlet guide vane surface, the inner
boundary surface in , the inner boundary surface in Figure 11.5. For all other surfaces, we require
these to be fixed. In other words, the morphing process is purely needed to adapt the volume mesh
local to the OGV surface naturally and smoothly. A number of challenges were encountered in this
application, but practical solutions were found which allowed the use of the method to produce valid
meshes for all blades (see [Bellob and Shahpar]455.
Local features in the underlying displacement field presented an issue in avoiding negative volumes.
Three kinds of features were found to affect the validity of the result. High displacements applied to
cells with high curvature area, particularly near the leading and trailing edge. This is currently being
investigated as an improvement to the sampling routines and distance computations. Because the
Harsdorf distance is not necessarily normal to the original surface, angular variations are found
where certain features are present on the surfaces (see Figure 11.6). Where locally the distance
field deviated largely with the surface normal, the morphing process was found to be prone to
inversions, i.e negative volume cells. These variations were usually due to local features in the
scanned component such as surface imperfections and fillet radii. In order to avoid this, an additional
filtration of the input data was done to exclude such measurements from the sampled data. In other
words, given a threshold angle, all distance vectors that deviate from the surface normal by greater
than that value are excluded from the morphing constraints in order to not capture such features.

R. Tilch, “P2S User Guide,” Rolls-Royce internal Document, Derby, 2018.


454
455Ismail Bello, Shahrokh Shahpar, “Mesh Morphing For Turbomachinery Applications Using Radial Basis
Functions”, Rolls-Royce PLC CFD Methods Group, Derby, UK.
255

Figure 11.6 Typical Angular Variation Between the Computed Distance Field Vector and the Surface
Normal (OGV not shown to scale)

11.4.5 Generalized Grid Interface


The Generalized Grid Interface (GGI) refers to a grid on either side of two connected surfaces, where
the grid connectors do not have to match. GGI connections allow non-matching of nodes which can
be beneficial for many reasons. The main advantage to this meshing technique is that it does not have
to adapt the topology of the mesh at the interface between two non-conformal meshes. Each of the
GGI regions can be different sizes, but cannot have overlap regions. One paper studies the use of a
GGI for the application of turbomachinery456. GGI can be described as using weighed interpolation to
evaluate and transmit flow values over patches in the mesh. These flow values are controlled from
the master patch to the shadow patch through a set of finite volume method discretization reasoning.
The downfall to this method is that even with minimal error in the master patch variable,
unacceptable discretization error can occur457. The GGI weighting factors relate to the percentage of
surface intersection between two overlapping faces. The GGI method uses the Sutherland-Hodgman
algorithm in OpenFOAM® to compute the master and shadow face intersection surface area. This
algorithm must be used with convex polygons only, which could cause problems with complicated
geometries where non-convex polygons are present. Inaccuracies can also occur at the border
between a rotating and fixed part of the mesh due to possible gaps between the faces. The objective
here is to mimic behavior of sliding interface without changing the mesh. (See Figure 11.7).

456 M. Beaudoina and H. Jasak. “Development of a Generalized


Grid Interface for Turbomachinery simulations with
OpenFOAM”. Open Source CFD International Conference, 2008.
457 Same as previous.
256

Figure 11.7 GGI interface

The GGI design rationale with respect to examples like Turbomachinery is:

• Apart from “fully overlapped” cases, turbomachinery meshes contain similar features that
should employ identical methodology, but are not quite the same.
• Non-matching cylices for a single rotor passage.
• Partial overlap for different rotor-stator pitch.
• Mixing plane to perform averaging instead of coupling directly.

• Component coupling requires data manipulation (copy, transform, average).


• In such cases, the behavior is closer to a coupled boundary condition, but the numeric is
similar to sliding interface458.

458 Hrvoje Jasak, “General Grid Interface Theoretical Basis and Implementation”, Wikki Ltd, United Kingdom.
257

11.4.6 Overset Methods


One method of grid generation that has many advantages is an overset-grid approach. This process
involves constructing several blocks that are overlapping, made up of structured or unstructured
grids. Partial differential equations are solved on each component and boundary information is then
exchanged between these grids based on interpolation459. The unused grid points are cut from the
solution known as hole points. The points that are overlapped between grids are known as fringe
points. The interpolation points are identified as the points that interpolate between the overlapped
grids to obtain a solution460. Figure 11.8-(a) shows an example of a boundary layer grid and a
background grid. Figure 11.8-(b-c) displays an overset grid arrangement showing hole,
interpolated and active points correlates for a ship motions using dynamic overset grids461. This
method uses rigid overset grids that move with relative motion at large amplitude motions. The code
Suggar is used to obtain interpolation coefficients between the grids at each time step that the grid
is moved. The overset grid comparison with experimental data for sink age, trim, and resistance
showed good comparison proving that this meshing technique allows accurate computations of ship
flows in motion.

(b) Overset Mesh


Motion with no
rotation

(c) Overset Mesh


Motion with
45°Rotation

(a) Initial Overset mesh

Figure 11.8 Overset Method

11.4.7 Delaunay Method


Delaunay method used in mesh motion divide into four steps: First, we generate the Delaunay graph
according to the geometry boundary. The Delaunay criterion is that the circum-circle for triangles or
the circum-for tetrahedron should not include other points except the points which construct the
triangular or tetrahedron. If the geometry boundary is convex, this mesh can always proceed and
unique. Usually, wing surface and far boundary points take as geometry to generate the Delaunay
triangular. After the Delaunay triangular generation, all spatial nodes should locate in its Delaunay
triangular. For a point p, search the triangular which contain this point and calculate the surface or
volume coordinates as

459 S.E. Sherer and J.N. Scott. “High-order compact finite-difference methods on general overset grids”. Journal of
Computational Physics, 210(2):459–496, 2005.
460 P.M. Carrica, R.V. Wilson, R.W. Noack, and F. Stern, “Ship motions using single phase level set with dynamic

overset grids”, Computers and Fluids, 36(9):1415–1433, 2007.


461 See previous.
258

Sj Vj
ej = j = 1,2,3 ej = j = 1,2,3,4 Eq. 11.9
S V
The key step in Delaunay method is moving the Delaunay triangular base on boundary deformation.
All the connectivity and vertex index should be kept. If the deformation is too large, triangular
deformation may failure. In this case, split the deformation into two shell steps and go back to step 1
regenerating the Delaunay triangular. At last, relocate the spatial node. According to the surface or
volume coordinate at step2, turn them into Cartesian at the moved triangular. As equation :

4
xp =  ei xi Eq. 11.10
i =1

An interesting discussion regarding the Delaunay Graphed Method with Damping Function
(DGMDF), for fluid-structure integration, is provided by [Wang et al.]462 which accordingly works
with efficiency that requires.
11.4.7.1 Case Study - Airfoil Rotation
In this case, NACA 0012 airfoil will rotate about its back edge 30 degrees. All the fluid uses a structure
mesh with lowest quality 0.7. The surface girds are quad with 200 nodes and spatial grids are
hexahedron with 40325 nodes. Figure 11.9-(a) demonstrates the mesh before deformation. For
Delaunay method, first step is generating Delaunay triangular according to geometry boundary as

(a) mesh before (b) initial Delaunay


deformation triangular

(c) Delaunay triangular (d) dynamic mesh by


after deformation Delaunay
Figure 11.9 Delaunay Method of Dynamic mesh

462Yibin Wang, Ning Qin , Ning Zhao, “Delaunay graph-based moving mesh method with damping functions”,
Chinese Journal of Aeronautics, August 2018.
259

Figure 11.9-(b) displayed. Then, compute the surface coordinates of spatial nodes in Delaunay
triangular. After the geometry deformation, the Delaunay triangular will deform as Figure 11.9-(c).
By keeping the surface coordinates unchanged, we relocate the spatial nodes in Cartesian
coordinates. Figure 11.9-(d) show the mesh after deformation463.
11.4.8 Spring Analogy
Other technique is the spring analogy, where the mesh nodes are connected through tension springs,
where the stiffness is related to the length of the edge. This approach tends to produce highly
deformed meshes with collapsed or negative volume and is incapable of reproducing solid body
rotation. The tension spring model has been improved by attaching torsion springs to each vertex
where the stiffness is related to the angle.
11.4.9 Six Degrees of Ferndom (6
DOF)
11.4.9.1 Transitional Deformation
The grid was deformed in the y-and z-
directions using a spring analogy
technique. The 6DOF solver uses the
object's forces and moments in order
to compute the translational and
angular motion of the center of gravity
of an object. The governing equation
for the translational motion of the
center of gravity is solved for in the
inertial coordinate system. As an
example, Figure 11.10 shows the
mesh after the translational
deformation for a wing. The original
un-deformed mesh is shown in grey
color, and the deformed mesh is Figure 11.10 Mesh Before and After the Translational
shown in red. In this case the tip Deformations
deformation along the y-axis is 20% of
the wing semi-span464.
11.4.9.2 Rotational Deformation
The rotational grid can be obtained by multiplying the original grid with the matrix on R as:

 Cθ C ψ C θ Sψ - Sθ 

R =  S SθCψ - C Sψ S SθSψ + C Cψ S Cθ  Eq. 11.11
C Sθ C ψ + S Sψ C SθSψ − S C ψ C Cθ 
 
where, in generic terms, CX = Cos(X) and SX = Sin (X) . The angles φ , ϴ, and ψ are Euler angles that

463JIA Huana, SUN Qin b, “A Comparison of Two Dynamic Mesh Methods in Fluid –Structure interaction”, School
of Aeronautics, Northwestern Polytechnic University, Xi‘an china. 2nd International Conference on Electronic &
Mechanical Engineering and Information Technology (EMEIT-2012).
464 Joaquin Ivan Gargoloff, “A Numerical Method For Fully Nonlinear Aero-elastic Analysis”, Dissertation,

Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements
for the degree of Doctor of Philosophy, 2007.
260

represent the following sequence of rotations:

• rotation about the x-axis (e.g., roll for airplanes)


• rotation about the y-axis (e.g., pitch for airplanes)
• rotation about the z-axis (e.g., yaw for airplanes)

Figure 11.11 illustrates an transitional (y axis) + rotation about x axis.

Undeformed Deformed

Figure 11.11 Mesh Before and After the x-axis Rotational Deformation

11.5 Dynamically Adaptive Mesh Refinement (DAMR)


While our adaptive mesh can effectively resolve very singular functions we still need to provide a
mechanism for dynamically adjusting the mesh to possible rapid changes of time dependent
solutions. There are several methods to obtain a moving mesh. Here, we adopt the so-called moving
mesh PDE approach465-466 in which a time-dependent PDE is introduced to determine the motion of
the mesh. Both the moving mesh PDE (MMPDE) and the underlying physical equations are solved
simultaneously or alternately. This approach has the advantage of avoiding interpolation
between old and new grids which is necessary in the static methods. Interpolation may introduce
too much numerical smoothing in problems in which the resolution of small scales is important and
thus, desirably, it should be avoided. Recently [Huang and Russell]467 have introduced a very robust
class of MMPDEs derived from the gradient flow equations associated with the mesh variational
principle. Here, we apply the same idea directly to our proposed mesh equations (Eq. 11.6). A
standard method to solve is to consider the equations
𝐱 𝝉 = ∇. (k∇𝐮i,mesh )
Eq. 11.12

465 W. Huang, Y. Ren, and R. D. Russel, Moving mesh methods


based on moving mesh partial differential equations,
J. Comput. Phys. 113, 279 (1994).
466 W. Huang and R. D. Russell, Moving mesh strategy based on a gradient flow equation for two-dimensional

problems, SIAM J. Sci. Comput. 20(3), 998 (1999).


467 W. Huang and R. D. Russell, Moving mesh strategy based on a gradient flow equation for two-dimensional

problems, SIAM J. Sci. Comput. 20(3), 998 (1999).


261

Where τ is an artificial time. Then, beginning with an initial guess, we march in “time” to steady state.
Any discrete marching scheme to solve (Eq. 11.12) can be regarded as an iterative method to solve
the nonlinear system (Eq. 11.6). At τ = 0, we can find the solution up to steady state to obtain a
mesh that adapts well to the initial data. With this initial adaptive mesh, the solution u can be updated
(using the underlying PDE) one time step. Then a new mesh is obtained using the updated u in the
monitor function. However, since u changes only very little in one time step, it is not necessary to
solve again (Eq. 11.12) all the way to steady state. Besides, the initial mesh is already a very good
initial guess. Thus, it is natural to march only one time step in (Eq. 11.12) (or equivalently to do only
one iteration) at a time. In other words, taking τ as the actual time. Therefore, we proceed solving the
moving mesh and the underlying PDEs alternately one time step at a time468.

11.5.1 Case Study - Dynamically Adaptive Mesh Refinement FDTD: A Stable and Efficient
Technique for Time-Domain Simulations469
The Finite-Difference Time-Domain (FDTD) technique has been extensively employed in the modeling of
microwave and optical structures, due to its simplicity and versatility. However, these FDTD qualities are
partially compensated by the stability and numerical dispersion limitations on the choice of the cell size
and the time step of the method, that render its application to complex and/or electrically large structures
computationally expensive. In the past, a variety of static sub-gridding techniques have been proposed,
aimed at accelerating the conventional FDTD technique for structures with localized fine geometric
features. According to such approaches, local mesh refinement is pursued in a priori defined regions of a
computational domain, as dictated by physical considerations.
For example, the presence of metallic edges, or high dielectric permittivity inclusions, would call for a
locally dense mesh, embedded in a coarser global one. The use of local mesh refinement typically results
in significant computational savings compared to the conventional FDTD, despite the fact that its
implementation is associated with additional interpolation and extrapolation operations in both space and
time. However, static mesh refinement ignores the dynamic nature of time-domain field simulations. In
fact, techniques such as FDTD and the transmission line matrix (TLM) essentially register the evolution of
a broadband pulse propagating in a device under test, along with its retro-reflections. Hence, a localized
discontinuity in a simulated domain is only illuminated for a (potentially small) fraction of the total
simulation time, during which a local mesh refinement around it is needed. Therefore, static mesh
refinement, which is widely employed in frequency-domain simulations and has been incorporated in
commercial finite-element tools, is only a sub-optimal solution to the mesh refinement problem in the
framework of time-domain analysis.
Recently, the AMR technique was coupled with FDTD to produce a dynamically mesh adaptive FDTD
algorithm, that was successfully applied to microwave integrated circuit and optical waveguide problems.
Instead of applying local mesh refinement in a priori defined regions of a computational domain, the
dynamic AMR-FDTD uses sub-grids, which are adaptively defined according to the spatial-temporal
evolution of field distributions. As a result, significant execution time savings, up to two orders of
magnitude, are attainable for large-scale open-domain problems. In this paper, the dynamic AMR-FDTD
approach is explained and realistic applications, demonstrating the salient features of the method are
provided.

468 Hector D. Ceniceros and Thomas Y. Hou, “An Efficient Dynamically Adaptive Mesh for Potentially Singular
Solutions”, Journal of Computational Physics 172, 609–639 (2001).
469 Yaxun Liu and Costas D. Sarris, “Dynamically Adaptive Mesh Refinement FDTD: A Stable And Efficient

Technique For Time-Domain Simulations”, Department of Electrical and Computer Engineering University of
Toronto, Toronto, ON, M5S 3G4, Canada.
262

11.5.1.1 Numerical Results


To demonstrate the dynamic AMR-FDTD
algorithm, the geometry of a spiral
inductor of Figure 11.12 is analyzed.
The AMR-FDTD method uses a
60×40×10 mesh and 8192 time steps. A
reference FDTD simulation of a
120×80×20 mesh is used for
comparison. The mesh refinement
process is illustrated in Figure 11.13,
which shows the effective vertical
electric field wave front tracking
achieved by the algorithm. Despite the
highly resonant nature of the spiral
inductor, which necessitates the use of a Figure 11.12 Spiral Inductor Geometry where P1 and P2
significant number of time steps for the denote port 1 and Part 2
extraction of the S-parameters,
significant execution time savings (of about 80%) have been achieved. The time-domain results for
this case study demonstrate the absence of late-time instability in the AMR-FDTD. In fact, the number

(a) Time-step 100 (b) Time-step 200

(c) Time-step 300 (d) Time-step 400


Figure 11.13 Vertical field evolution and associated mesh refinement in the microstrip spiral inductor,
simulated by a two-level dynamic AMR-FDTD
263

of AMR-FDTD child meshes converges to zero over time, implying that only the root mesh is still
present at a late stage of the code. Therefore, no spatial or temporal interpolation operations, which
are the primary sources of instabilities in adaptive mesh FDTD codes, are applied then. This is an
additional advantage of using a dynamically adaptive instead of a statically adaptive mesh in time-
domain simulations. For further info, please refer to development in [Liu and Sarris]470.

470Yaxun Liu and Costas D. Sarris, “Dynamically Adaptive Mesh Refinement FDTD: A Stable And Efficient
Technique For Time-Domain Simulations”, Department of Electrical and Computer Engineering University of
Toronto, Toronto, ON, M5S 3G4, Canada.
264

12 Assessment of Mesh Types


It is an old age question. Which is better? Structured or Unstructured meshes? Hexahedra
(Polyhedral) vs Tetrahedral? It is a lengthy and heated debate which cannot be fully covered here.
The answer may be depends in the case itself.
In general, most people dislike unstructured
meshes because of lack of direct control over
the mesh and they produce more data points
and cells than their structured ones, therefore,
requiring more CPU. On the other hand, they
mostly automated, easier to produce. An
example using a backward step in a duct by
means of all three types of meshing. The result
clearly indicates that polyhedral meshing in
superior. Figure 11.1 displays residual
comparison for three cell types. Polyhedral
cells got the best results, then hexahedral cells
closely second, with tetrahedral counting as
third. But be aware that this is a modest highly Figure 12.1 Backward facing step in a duct using
anisotropic flow, and could not be used as a Polyhedral, Hexahedral and Tetrahedral cells
decisive criteria.

12.1 Structured vs. Unstructured


A major mesh generation vendor (Pointwise®) argues that Structured Meshing is not going away,
mainly due to Control and Quality as the reasons are. Here are several factors they view including:
12.1.1 Time and Memory
You can fill the same volume with fewer hexes than Tets, thereby lowering the cell count and your
CFD computation time and memory usage. Structured grids generally have a different topology than
unstructured grids, so it is difficult to make a direct cell count comparison. At its simplest, each
hexahedron can be decomposed into 5 Tetrahedral that share its edges, giving a 5:1 reduction in cell
count for the same flow field resolution. The benefit to reducing cell count becomes very apparent
when generating a mesh with a wide variation in resolved length scales; you will use many more Tets
than you would Hex cells.
12.1.2 Resolution
Flow of a fluid will often exhibit strong gradients in one direction with milder gradients in the
transverse directions (e.g. boundary layers, shear layers, wakes). In these instances, high quality cells
are easily generated on a hex grid with high aspect ratio (on the order of one thousand or more). It is
much more difficult to generate accurate CFD solutions on highly stretched tetrahedral. (Plus, not all
stretched Tet are equal depending on the maximum included angles.)
12.1.3 Alignment
CFD solvers converge better and can produce more accurate results when the grid is aligned with the
predominant flow direction. Alignment in a structured grid is achieved almost implicitly because grid
lines follow the contours of the geometry (as does the flow), whereas there's no such alignment in an
unstructured mesh.
12.1.4 Definable Normal
Application of boundary conditions and turbulence models work well when there is a well-defined
computational direction normal to a feature such as a wall or wake. Transverse normal are easily
defined in a structured grid. To demonstrate, following example is used.
265

Effect of Cell Topology in Truncation Error


In general, structured mesh are more aligned with flow gradient, therefore, producing less truncation
errors, as depicted in Figure 12.2471. In contrast, tetra cells, have angle with the flow direction as
shown in previously. It is suffice to say that the argument is not as simple as case in 2D here, like so
many things in CFD
where no clear cut
definitions are involved
(an art?). While some
application like
Turbomachinery (with
clear flow direction)
prefer hex meshes,
others depend on tet
meshes. Basically it
comes down to whom
you talking and case in
hand. While
unstructured meshes
offer better flexibility for Figure 12.2 Effect of truncation error on Hex and Tet cells
today’s application, then
lack strict control of structure and overheads of data base. Also the availability of resources should
be factor. With advent of Polyhedral cells and their relatively ease of use some vendors such as CD-
Adapco© and others are keen to pursue their use
(economical concerns?). In fact CD-Adapco© been
one of the pioneers of poly cell, argued against the
Tet meshing, and for poly meshing, in a blog in
titled “Natures answer to Meshing”. That may be
true since most of nature is composed of different
(patch work) topology. With hummer, it argues
that “So how is it that honeybees (average brain
size 1g) manage to out mesh those CFD
engineers (average brain size 1250g) who still
religiously rely on tetrahedral meshing”? With
exception of course. (See the smart bee in Figure
12.3)472. But seriously, the case for/or against
structures vs unstructured meshes with particular Figure 12.3 Average Bees Being Smarter than
CFD Engineer? (Courtesy of Stephen Ferguson)
attention to Poly versus Tet cells are argued in two
folds as discussed below.
12.1.5 Polyhedral vs. Tetrahedral
The argument against the Tet cells versus Poly cells are relatively straight forward. Beside cell the
count, a major advantage of polyhedral cells is that they have many neighbors (typically of order 10),
so gradients can be much better approximated (using linear shape functions and the information
from nearest neighbors) than is the case with tetrahedral cells. Two of the most common methods
for gradient calculation are the Green-Gauss and the Least Squares approaches473. Polyhedral cells

471 Sideroff, C,. “Multi-Block Structured Meshing and Pre-Processing for OpenFOAM Turbomachinery Analysis”.
472 Stephen Ferguson, CD-Adapco Blog, “Nature’s Answer to Meshing”, 2013.
473 Emre Sozer, Christoph Brehm and Cetin C. Kiris, “Gradient Calculation Methods on Arbitrary Polyhedral

Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
266

are also less sensitive to stretching than tetrahedral. Smart grid generation and optimization
techniques offer limitless possibilities: cells can automatically be joined, split, or modified by
introducing additional points, edges and faces. Indeed, substantial improvements in grid quality are
expected in the future, benefiting
both solver efficiency and accuracy
of solutions.
Polyhedral cells are especially
beneficial for handling recirculating
flows. Tests have shown that, for
example, in the cubic lid-driven
cavity flow, many fewer polyhedral
are needed to achieve a specified
accuracy than even Cartesian
hexahedra (which one would expect
to be optimal for rectangular
solution domains). In fact for a
hexahedral cell, there are three
optimal flow directions which lead
to the maximum accuracy (normal
to each of the three sets of parallel
faces); for a polyhedron with 12
faces, there are six optimal
directions which, together with the
larger number of neighbors, leads to
a more accurate solution with a
lower cell count.
Although tetrahedral are the
simplest form of volume elements Figure 12.4 Polyhedral cells vs Tetrahedral cells
and tetrahedral meshes are able to
approximate any arbitrarily shaped
continuum with a remarkable level of detail. Automated tetrahedral mesh generation methods have
been well studied and developed, providing currently the only robust solution for meshing complex
geometries in 3D, making them a standard choice of major CFD codes. However, despite the fact that
tetrahedral present several geometric assets, such as planar faces and well defined face and volume
centroids, they suffer from certain disadvantages that make analysts deem them inferior to
hexahedra. Tetrahedral elements cannot provide reasonable accuracy, as soon as they become too
elongated, which is often the case in boundary layers or sharp corners of the domain. Furthermore,
they have only four neighbors making them not an optimal choice for CFD, as computation of
gradients at cell centers can become problematic. It is, therefore, not unusual during simulations
serious numerical stability issues to appear, additionally to the reduced accuracy, and problematic
convergence properties to dominate the analysis. Figure 12.4 indicate the pro and con of Polyhedral
cells vs Tetrahedral ones.
12.1.5.1 Boundary Prismatic Cells
An issue for general unstructured cells, are boundary cells. Several remedies exist in order to
overcome those disadvantages. A boundary layer, formed using prismatic elements along walls, is
able to balance, up to a certain degree, the negative effects in accuracy and stability (see Figure 12.5-
left). Furthermore, advanced discretization methods combined with very fine meshes can result to
accurate solutions and good convergence properties. This, however, demands for increased memory
usage and computing time, while it makes the analysis code more complicated. Recently, an
267

alternative option to tetrahedral meshes has emerged, suggesting the use of polyhedral elements
instead474. Polyhedral over the same level of automatic mesh generation as tetrahedral do, while they
are able to overcome the disadvantages adherent to tetrahedral meshes (see Figure 12.5-right). A
major advantage of polyhedral occurs from the fact that they are bounded by many neighbors,
making approximation of gradients much better that tetrahedral. Furthermore, they are much less
sensitive to stretching and, since their typically irregular shape is not a restriction for several CFD
codes, they over the possibility of post-processing and optimization without the strict geometric
criteria that are necessary for optimizing tetrahedral, or even hexahedral meshes.
On the negative side, polyhedral are usually of much more complex geometry than regular volumes,
and, depending on the generation method, it cannot always be guaranteed that they are convex, or,
even more, that their faces are planar. The topology of polyhedral meshes is, typically, also complex,
preventing the implementation of efficient and easy to maintain generation algorithms from being
straightforward. As a further consequence, polyhedral meshes require a considerable amount of
adjacency relations, in comparison to tetrahedral and hexahedral meshes, making them candidates
for resource expensive solutions. All the above set the basis for an interesting field of exploration in
volume meshing. Previous studies on the subject have shown promising results, however polyhedral
meshing is still far from becoming a standard practice in CFD simulations. Some explanations for this
may be its limited adoption from analysis codes and the fact that polyhedral are not an appropriate
solution for every type of analysis. It should be mentioned that, currently, polyhedral meshes attract
more attention in fields such as Computer Graphics and Medical Imaging, where in 3D volume
rendering is of specific interest. However, the few researches dedicated to exploring polyhedral mesh
generation for CFD remain active, making constant progress towards more efficient methods and
high quality meshes.

Figure 12.5 Boundary prims cells for tetrahedral (left) and polyhedral (right) cells – (Courtesy of
CD-Adapco)

474M. Peric, “Simulation of flows in complex geometries: New meshing and solution methods”, NAFEMS seminar:
Simulation of Complex Flows (CFD).
268

12.2 Accuracy Assessment of Gradient Calculation Methods 475


An unstructured mesh, commonly depicted as consisting of tetrahedral elements, can be considered
a superset encompassing any valid cell geometry including hexahedral, tetrahedral and arbitrary
polyhedral. A survey of gradient reconstruction methods for cell-centered data on unstructured
meshes is conducted within the scope of accuracy assessment. Formal order of accuracy, as well as
error magnitudes for each of the studied methods, are evaluated on a complex mesh of various cell
types through consecutive local scaling of an analytical test function. The tests highlighted several
gradient operator choices that can consistently achieve 1st order accuracy regardless of cell type
and shape. The tests further offered error comparisons for given cell types, leading to the observation
that the “ideal” gradient operator choice is not universal. During implementation of an unstructured
solver, a choice about where to place the discrete data must be made. Alternative choices include
vertices, face-centers, cell-centers or a combination. While advantages and drawbacks of each
approach have been heavily debated in the CFD community476-477 the current feel is that no clear
“best” choice emerges. Gradient operator choice for an unstructured solver has a strong impact on
accuracy, efficiency and robustness. While all of these are crucial factors, we limit our scope to the
analysis of accuracy alone.
12.2.1 Geometric Properties
For detail calculation of geometric properties such as Polygonal Face Area and Centroid as well as
Polyhedral Volume and Centroid, the reader should refer to [Sozer et al]478.
12.2.2 Literature Survey
[Aftosmis, et al.]479 investigated the behavior of linear reconstruction techniques on unstructured
meshes. Their chief concern was the behavior of limiters and the effect of element types (triangular
vs. Quadrilateral) for CFD solutions, particularly for high aspect ratio or irregular elements. They did
however, investigate the least squares (LSQR) and Green-Gauss methods for gradient calculation. The
methods behaved similarly for regular meshes whereas the LSQR was found to be more tolerant to
mesh distortions. [Mavriplis]480 examined the LSQR procedure for gradient reconstruction, observing
that the method produced accurate gradients for isotropic meshes but the accuracy deteriorated for
highly stretched meshes in the presence of curvature. In the latter case, they found the Green-Gauss
reconstruction method to be more accurate. [Shima, et al.]481 devised an LSQR method where they
incorporate weights based on face areas, attempting to inherit benefits of the Green-Gauss method
for stretched meshes. While they note accuracy improvements, they still resort to a hybrid approach
where Green-Gauss method is used for thin and distorted mesh regions482. A comprehensive survey
of unstructured mesh gradient methods, in the context of computer graphics, is conducted by [Correa,

475 Emre Sozer, Christoph Brehm and Cetin C. Kiris,”Gradient Calculation Methods on Arbitrary Polyhedral
Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
476 Diskin, B., Thomas, J., Nielsen, E., Nishiwaka, H., and White, J., “Comparison of Node-Centered and Cell-

Centered Unstructured Finite-Volume Discretization: Viscous Fluxes,” AIAA Journal, Vol. 48, No. 7, 2010.
477 Diskin, B. and Thomas, J. ,“Comparison of Node-Centered and Cell-Centered Unstructured Finite-Volume

Discretization: Inviscid Fluxes,” AIAA Journal, Vol. 49, No. 4, 2011, DOI: 10.2514/1.J050897.
478 Emre Sozer, Christoph Brehm and Cetin C. Kiris, “Gradient Calculation Methods on Arbitrary Polyhedral

Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
479 Aftosmis, M., Gaitonde, D., and Tavares, T., “Behavior of Linear Reconstruction Techniques on Unstructured

Meshes,” AIAA J., vol. 33, no. 11, pp. 2038-2049, 1995.
480 Mavriplis, D., “Revisiting the Least-Squares Procedure for Gradient Reconstruction on Unstructured Meshes,”,

AIAA Paper 2003-3986, 2003.


481 Shima, E., Kitamura, K., and Fujimoto, K., “New Gradient Calculation Method for MUSCL Type CFD Schemes in

Arbitrary Polyhedra”, 48th AIAA Aerospace Sciences Meeting, Jan 4-7, Orlando, FL, 2010.
482 Shima, E., Kitamura, K., and Haga, T., “Green-Gauss/Weighted-Least-Squares Hybrid Gradient Reconstruction

for Arbitrary Polyhedra Unstructured Grids,” AIAA Journal, Vol. 51, No. 11, 2013, DOI: 10.2514/1.J052095.
269

et al.]483. They focus on cost and performance in volume rendering with respect to mesh resolution,
element shapes, neighborhood size and scalar field complexity. They find the inverse weighted
regression method to provide the highest accuracy for irregular meshes and the Green-Gauss method
to perform poorly for badly shaped elements.
12.2.3 Gradient Calculation
The difficulty in calculating gradients in an unstructured mesh stems from the lack of a consistent
and inherent connectivity. The stencil for gradient calculation, as well as the corresponding
coefficients vary cell-by-cell and are costly to compute. Hence, those are typically pre-computed and
stored. Two of the most common methods for gradient calculation are the Green-Gauss and the Least
Squares approaches. Both have several common variations, some of which are explained in the
following sections.
12.2.3.1 Green-Gauss Gradient Method
The Green-Gauss method represents an intuitive, sound basis for gradient calculation. According to
the Green-Gauss theorem, average gradient of a scalar φ in a closed volume V can be obtained by

1
  dV =   n̂ dA ,
V A
 =
V 
A
 n̂ dA Eq. 12.1

Where ň is the surface unit normal vector and A is the surface area. For a 2nd order scheme with
midpoint quadrature, the Green-Gauss method takes on the following discrete form for a polyhedral:

1 N faces
 = f n̂ f Af
V f =1
Eq. 12.2

Where Nfaces is the number of faces and φ͞f is the


average of the scalar over the face f. Up to this
point, average gradient of a linear function at
the polyhedral cell centroid. The potential
errors are introduced through the particular
choice of a face averaging method to obtain φ͞f .
Several common alternatives in this regard are Figure 12.6 GG simple face averaging
discussed below.
12.2.3.2 GG-Simple Face Averaging
Simple average of the cell center values at the left and right sides of the face is taken as the face center
value (see Figure 12.6).
c-left + c-right
f = Eq. 12.3
2
As the most basic approach, the simple averaging method is still commonly used due to its attractive
properties of straightforward and cheap implementation. In fact, its usage is usually implied when
cell-centered Green-Gauss gradient method is referred to without mention of the associated face
averaging method.

483Correa, C., R., H., and K., M., “A Comparison of Gradient Estimation Methods for Volume Rendering on
Unstructured Meshes,” IEEE Transactions on Visualization and Computer Graphics, vol. 18, no. 3, March, 2011.
270

12.2.3.3 GG-Inverse Distance Weighted (IDW) Face Interpolation


Another popular approach to face averaging, IDW method utilizes the entire neighbor stencil around
face f (see Figure 12.7). It is clearly demonstrates the advantage of Hex cell over Tet in this example..
This also indicates a good agreement with
experimental data using the hybrid mesh (Tet +
Prism). As you clearly see the argument about
which mesh to use is far from over and
depending to whom you talking. It appears that
case against the Tet cells is relatively straight,
but Poly cells and Hybrid meshing is still
debatable. With most vendors, have capability of
offering both structured as well as unstructured
meshes at will and table below displays the type
of meshing available. Where the sum is carried
out over the entire stencil and di = ri −rf
represents the distance between the stencil
point and the current face center. IDW has
shortcomings when the neighboring cell centers
are not evenly distributed around the face but Figure 12.7 GG Inverse Distance Weighted
clustered in certain directions; a scenario likely (IDW) Face Interpolation
to occur for regions with poor grid quality or at
the interfaces of different cell types in mixed cell type meshes. In addition to this non-isotropy,
potentially large discrepancies in stencil distances may occur for regions with poor grid quality or at
the interfaces of different cell types in mixed cell type meshes. In addition to this non-isotropy,
potentially large discrepancies in stencil distances may skew the weights significantly, a phenomena
made worse by the usage of squared distances. Nonetheless, the squared weighting seems to be the
most common approach taken with IDW and hence we chose to adopt it for our evaluation. Variations
of this method involving different weightings (e.g. volume, inverse distance…) are possible but this
does not change the fundamental flaws explained above. Other methodologies considered are:

• GG-Weighted Least Squares (LSQR) Face Interpolation


• GG-Weighted Tri-Linear Face Interpolation (WTLI)
• Least Squares (LSQR) Gradient Method
• Curvilinear Gradient Method

Detailed information regarding these methods and more are available in 484.

N
i
d
i =1
2

f = N
i
Eq. 12.4
1
d
i =1
2
i

484Emre Sozer, Christoph Brehm and Cetin C. Kiris, “Gradient Calculation Methods on Arbitrary Polyhedral
Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
271

12.2.4 Visual Inspection


The gradient order of accuracy (GOA) for various aforementioned methodologies are presented in
Figure 12.8 (a-f) for x-coordinates. Note that for a 2nd order scheme, a gradient operator of at
least order 1 is needed. Figure 12.8 (a) shows the distribution of GOA for the LSQR scheme with
compact stencil. The operator is able to produce at least 1st order accuracy in the entire field. The
cells with a uniformly spaced stencil that are aligned with x or y directions exhibit 2nd order accuracy
in the corresponding directions. This is due to perfect cancellation of 1st order errors and it breaks
down as soon as mesh uniformity is lost. The cancellation leading to the increased order now needs
to be satisfied in a wider stencil. The Green-Gauss method with Simple averaging as well as IDW fails
to achieve 1st order accuracy as seen in Figure 12.8 (b-c) respectively. Both of these methods
neglect to incorporate directionality of their stencils and neither is linear-exact, i.e. can’t reproduce
gradient of a linear function exactly. The WTLI and LSQR face interpolation methods for the Green-
Gauss gradient yields very similar results (see Figure 12.8 (d-e)). The curvilinear gradient results,
as shown in Figure 12.8 (f), are much like those of the LSQR with compact stencil. This is not

(a) LSQR

(b) GG Simple

(c) GG IDW (d) GG WTLI

(e) GG LSQR (f) Curvlinear

Figure 12.8 Methodologies for various Gradient Order of Accuracy


272

surprising as both methods are linear-exact and both utilize compact stencils. Note that the
curvilinear gradient operator has the most compact stencil of the alternative methods in scope here,
utilizing at most 4 points (for 2D).
12.2.5 Results Based on L2 Norm
While order of accuracy is a crucial property to inspect, it is pertinent to look at the actual error levels
as several of the gradient operator choices were demonstrated to satisfy 1st order accuracy. Figure
12.9 shows L2 error norms with
respect to the refinement level. L2 Norm (vertical) vs Refinement level
First we would like to clear the
peculiar behavior of the Green-
Gauss method with simple and
IDW face averaging. It seem to
approach a 1st order convergence Global L2 norm
rate before stalling at a fixed error for x-direction
level. This is due to the vs various
aforementioned inconsistency as gradient
method
they converge, in a 1st order
manner, to a gradient value that is
not consistent with the exact
value. Note here that without a
deep enough convergence study,
this issue could have been
overlooked, leading to a false
conclusion that these methods are
1st order accurate. The rest of the
operators are all linear-exact, and Figure 12.9 Global Error Norms for x-Direction Gradient for
consequently they all consistently Various Gradient Methods
exhibit 1 order accuracy as it was
st

apparent from the GOA distributions shown earlier on the test mesh. The error norms shown in
Figure 12.9 now reveal that the Green-Gauss methods (with WTLI or LSQR face averaging) yield
significantly larger errors compared to the curvilinear or the LSQR methods. Within the latter group,
the LSQR compact has slightly lower error then the LSQR extended while the curvilinear method
places in between.
It is possible to inspect errors for individual cells of various cell types. For regular cell types (square,
equilateral triangle and right triangle), all the gradient operators are able to produce at least 1st order
accuracy. In fact, the square cell type stencil yields 2nd order accuracy for each method. The
curvilinear method produces a notably smaller error for this case. For irregular stencils, which are
of greater practical interest, we start observing the familiar result of convergence stalling for the
inconsistent schemes, namely the Green-Gauss method with simple or IDW face averaging.
Discarding the special case of the square stencil, the LSQR gradient operator consistently produces
the lowest errors except for the cases of thin triangles and thin quadrilaterals (commonly
encountered in boundary layer regions of CFD meshes). For the thin cells, the trend reverses and the
LSQR method yields the largest errors while the consistent Green-Gauss methods perform the best.
Note that the thin cells mentioned here were sampled near the curved boundary region of the test
mesh. Whereas the Green-Gauss method exhibited mediocre performance elsewhere, its favorable
behavior in the crucial boundary layer type meshes demonstrates its appeal.
The errors associated with the curvilinear method were erratic, yielding the best result for the square
cells and placing among the lower error range elsewhere with two exceptions; the thin quadrilateral
and the arbitrary polyhedral where it exhibited the largest errors. This suggests that a smarter logic
273

for stencil reduction (in 2D, down-selection of 4 stencil points) needs to be developed. Otherwise, we
consider this method promising, considering that it has the most compact stencil, hence the lowest
computational cost.
12.2.6 Concluding Remarks
A detailed accuracy study of gradient calculation methods for cell-centered unstructured data is
presented. Necessity of the linear-exactness property for 1st order gradient accuracy, and
consequently a 2nd order scheme, is emphasized. A straightforward, yet novel, approach utilizing
local curvilinear transformation is proposed. The curvilinear method offers the most compact
gradient stencil among those studied here. No clear “best” method emerged but strengths and
shortcomings of the investigated methodologies for different cell types are exposed. Gradient
operators with compact stencils, namely LSQR compact and curvilinear, generally exhibited lower
errors. LSQR compact scheme caused stability issues for the solution of the inviscid standing vortex
problem on the random triangulated mesh. The curvilinear scheme, on the other hand, had an erratic
behavior for different cell types, yielding overall low error levels but exhibiting a large error for a
sample arbitrary polyhedral cell. This suggests that the method could benefit from development of a
smarter stencil reduction logic (to down-select 4 points from the available stencil in 2D). The Green-
Gauss method stood out with lower errors for thin triangular or quadrilateral cell types, such as those
found in typical boundary layer meshes, which is it is a very attractive quality for CFD solvers.

12.3 Automatic Mesh Generation Envisioned by Pointwise485


Creating an automatic mesh generator; one that supports geometry of any format, type, or quality;
understands diverse configurations is not an easy job. Furthermore, it ranging from biological to
automotive to chemical process to aerospace; generates topology is tedious at best. It should have
and cells supported by all available CFD solvers; and exports or shares data with your particular
solver. In addition, automatic meshing methods are usually plagued by the inevitable dead ends
where 90 percent of the mesh is generated automatically, but the last 10 percent is either virtually
impossible to complete or consumes days or even weeks of time. But creating an automated mesh
generator is a much more tractable task, especially when automation is coupled with or built upon
manual techniques that serve as backups when automation goes astray. So let us explore how
automation has been implemented, starting from the very beginning with CAD model import.
12.3.1 Automated Solid Model Assembly
Import and preparation of geometry is the nuisance of mesh generation. The main issue is one of
sloppiness: the gaps and overlaps between what should be adjacent surfaces. These gaps and
overlaps cause the Mesher to see each surface as an isolated, disjoint piece rather than part of a whole
(Figure 12.10). When you mesh sloppy CAD, there is no guarantee that component meshes will
match across surface boundaries. Fortunately, during CAD file import Pointwise automatically
assembles the surfaces from your CAD file (e.g. STEP, SolidWorks)© into a topological solid. The
resulting solid model has neither gaps nor overlaps. All its surfaces are part of the whole. The
significance of meshing a solid model is that when you mesh the model, all the component meshes -
one per CAD surface - will knit together seamlessly while still respecting the geometric intent. This
in turn makes the surface meshes immediately suitable for volume meshing. On the other hand, when
solid model assembly does not work fully or at all during import due to excessive sloppiness,
Pointwise gives you the ability to manual perform the assembly operation with full control over
tolerances and the surfaces to assemble.

485 John Chawner, Pointwise, Inc.


274

Figure 12.11 Notional Launch Vehicle was Imported from an IGES file – (Courtesy of Pointwise Inc.)

Figure 12.10 Broken Rules are Dsplayed on-screen as a Guide to Repair – (Courtesy of Pointwise Inc.)
275

12.3.2 Automated Surface Meshing


Surface meshing can often represent a challenge. Ensuring points are properly projected to complex
CAD geometry and dealing with CAD surface artifacts like slivers or overlaps often forces you to
resort to manual techniques. Fortunately, with a single button click Pointwise can mesh all the CAD
surfaces , have them all fully connected. You can set many default meshing attributes to ensure the
resulting meshes meet your requirements for geometric resolution and cell size. While the surface
mesh in Figure 12.10 is quite suitable, it also probably is not exactly what you want for CFD because
the mesh topology obviously mimics, surface for surface, the CAD topology. The latter is simply an
artifact of how the CAD software creates and exports the geometry and has nothing to do with the
true nature of the geometry or the needs of CFD. Using another automated tool for recovering from
the CAD geometry what we refer to as the engineering geometry. Using a single angular tolerance the
solid model can be subdivided into topological entities called quilts during automatic assembly.
Think of a quilt as a collection of surfaces on which a single mesh will be generated. Now when
meshing the model, each of its quilts is covered with a single surface mesh that blends smoothly
across seams between surfaces and is likely better suited for CFD.
12.3.3 Automated Volume Meshing
Some commercial vendors such as Pointwise© provide both structured (quad, hex) and unstructured
(tri, tet) meshing techniques are applied automatically at the time meshes are created (with user-
specified default parameters) and are adjusted automatically whenever the mesh topology is edited.
What is probably of utmost importance during the meshing process - which often takes a meandering
path with edits and changes and updates is ensuring that the mesh cells still meet your quality criteria
after all this poking and prodding. Once rules have been created, any meshing or topology operation
that breaks any rule will automatically post a flag on the screen. You can then refresh the Rule's
graphics to see specifically where it is broken as shown in Figure 12.11. On the other hand, because
you often want a more detailed view of mesh quality from histograms to single cells, Pointwise
includes a full suite of mesh diagnostic and visualization tools that you can apply at any time to any
meshes.
12.3.4 Hybrid Meshes
The structured and unstructured meshing techniques described in the previous section work very
closely with volume mesh topology. But hybrid meshes such as those generated by Pointwise's
anisotropic tetrahedral extrusion (T-Rex) have less reliance on volume mesh topology and thus can
be generated much more automatically. As an extrusion technique, T-Rex begins with surface meshes
like those described in the section above. The technique marches outward from the surface meshes
creating layers of anisotropic tetrahedra (with included right angles) that can be later post-processed
into stacks of prisms or hexes. Along the way, the T-Rex technique automatically accounts for:

• Quality of the extruded cells according to user-specified metrics.


• Collision with other extruded layers.
• Transition to the isotropic far field mesh.
• Adjacency with symmetry planes and other meshes.

The results are rapid generation of high density, boundary layer refined meshes as illustrated in
Figure 12.12.
276

Figure 12.12 T-Rex Mesh Generates Near-Wall Hex Layers for Boundary Layer Resolution and
Transitions to an Isotropic Tetrahedral Mesh in the Far Field – (Courtesy of Pointwise Inc.)

12.3.5 Automated Meshing via Scripted Templates


The best approach for truly automatic meshing, at least in the near future, is to target specific
applications such as airfoils, wings, exhaust nozzles, blade passages, etc. Of course, no one relishes
writing a complete meshing application from scratch for each of these applications so the key to
success is having a common, core Mesher that is extensible. Fortunately, Pointwise's Tcl-based
scripting language, Glyph, was designed specifically for extending Pointwise via macros (to
encapsulate frequently performed sets of operations), extensions (to create new commands that are
not part of the baseline code), and templates (complete meshing applications). For further
information, please consult the Pointwise manuals and published literatures like [Karman and
Wyman]486.

12.4 High-Order Mesh Generation


The generation of curvilinear, high-order meshes for CFD applications remains a significant
bottleneck in the progress and application of high-order CFD methods [Turner]487. These methods
have superior numerical accuracy over low-order methods due to their use of piecewise polynomial
representations of domains and solutions. As such they are viewed as a potential source of higher
fidelity simulations with a view of industrial application. Figure 12.14 provides a linear vs high

486 Steve Karman & Nick Wyman, “Automatic Unstructured Mesh Generation with Geometry Attribution”, AIAA
Sci tech 2019 Forum, Pointwise, Inc.
487 Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London, Faculty of

Engineering Department of Aeronautics, A thesis submitted for the degree of Doctor of Philosophy, 2017.
277

order meshing created around a circular geometry488. It was argued, that The classification of
curvilinear meshing techniques has traditionally been separated into direct and indirect methods489.
The direct approach seeks to build a curvilinear high-order mesh directly from the CAD boundary
representation whereas the indirect approach seeks to elevate and untangle a linear mesh generated
using pre-existing meshing and smoothing technologies. In general, creating valid elements of
arbitrary order directly from CAD is very computationally intensive, so even the direct methods often
generate and elevate linear elements. Regardless of which approach is used, every curvilinear
meshing technique requires a way of identifying and correcting invalid elements. The current
curvilinear meshing techniques can be loosely categorized into two main groups based on the
method of correcting invalid elements: local mesh modification and energy models.
The current state of the art in high-order mesh generation does not provide a reliable and efficient
approach which would be required in an industrial setting. The aims here is to create high-order
meshes directly from CAD as automatically and robustly as possible. This means that all parts of the
high-order meshing problem must be addressed including CAD handling and linear mesh generation.
It has been shown to be able to apply several high-order mesh generation methods found throughout
the literature and unify them in one context. In addition to this the algorithms used within this
framework mitigate a significant amount of the high computational cost associated with high-order
mesh generation and attempts to address robustness issues.
In the case of inviscid meshes, where the wall spacing is large compared to the boundary
deformation, it is possible to curve the boundary without inverting the element or causing severe
degradation to element quality. However, for viscous meshes, where the wall spacing is much smaller
compared to the boundary deformation, simply deforming the boundary edge can result in the edge
inverting the boundary element and crossing over several layers of interior elements, as shown in
Figure 12.13-a. In this situation, curvature must be applied to at least the layers that were crossed,
but possibly to additional layers in order to increase element quality throughout the mesh. Figure
12.13-b shows the minimal amount of curving required to produce elements with positive areas,
however the third layer still contains nearly inverted elements. Propagating the curvature further
into the interior, as shown in Figure 12.13-c, produces much better quality elements throughout
the entire mesh. The challenge for high-order curvilinear meshing, therefore, is to adequately
represent increasingly complex geometries while also maintaining element validity and maximizing

(a) Invalid (b) Nearly Invalid (c) Valid

Figure 12.13 Visualization of Boundary Conforming Anisotropic Elements

488 Kristen Catherine Karman, “Higher Order Mesh Curving Using Geometry Curvature Extrapolation”, A
Dissertation Submitted to the Faculty of the University of Tennessee at Chattanooga in Partial Fulfillment of the
Requirements of the Degree of Doctor of Philosophy in Computational Engineering, Dec, 2017.
489 Blum, H. A transformation for extracting new descriptors of shape. Models for the Perception of Speech and

Visual Form 5 (1967).


278

element quality 490.


12.4.1 High Order Edge Generation via Interpolating Curves
Following the conventional notation, the geometric form of a generic interpolating curve be written
as
𝐩(u) = ∑ F𝑖 (u)𝐩𝑖
i
Eq. 12.5
where u is the parametric coordinate of the blending functions Fi(u) and pi are geometric coefficients.
The geometric form is preferable to other forms because it allows a curve to be defined in terms of
conditions at the endpoints (such as locations, tangents, curvature, torsion, etc.) and provides a more
intuitive means of controlling the shape of the curve. The information obtained from the geometry
regarding shape are the normal, tangent, and binomial vectors (usually of unit length) and Gaussian
curvature. These will be the conditions considered for interpolation. Although many different types
of interpolating curves exist, we will consider the three most common: Lagrange interpolating
polynomials, Hermite interpolating polynomials, and Bézier curves.
12.4.1.1 Lagrange Interpolating Polynomials
Given a set a set of n + 1 distinct points x0, x1 ,,,,, xn and a corresponding set of values y0, y1 ,,,,,, yn there
is a unique polynomial of degree at most n such that p(xi ) = yi for 0 ≤ i ≤ n. This is the Lagrange
polynomial which has the form

n n
x − xj
pn (x) = ∑ Li (x)yi ; Li (x) = ∏
xi − xj
i=0 j≠i j=0
Eq. 12.6

Linear Non-Linear

Figure 12.14 Linear vs Full Curving (Non-Linear) Mesh (Courtesy of Karman)

490 Kristen Catherine Karman, “Higher Order Mesh Curving Using Geometry Curvature Extrapolation”, A
Dissertation Submitted to the Faculty of the University of Tennessee at Chattanooga in Partial Fulfillment of the
Requirements of the Degree of Doctor of Philosophy in Computational Engineering, Dec, 2017.
279

where Li (x) has the property Li(xj ) = δij. Lagrange polynomials only interpolate the points themselves
and since the initial edge has no interior points, this produces a polynomial of at most degree 1, which
gives us back the linear edge, as shown in Figure 12.15-a.
12.4.1.2 Hermite Interpolating Polynomials
Hermite polynomials interpolate both the coordinates and the derivatives at the control points.
Given an edge with two endpoints p0 and p1 and corresponding tangents t0 and t1, the Hermite
interpolation is defined by 491

p(u) = (2u3 − 3u2 + 1)p0 + (2u3 + 3u2 )p1 + (u3 − 2u2 + u)t 0 − (u3 − u2 )t1
Eq. 12.7
It is important to note that the general form of the Hermite interpolating polynomial does not require
the tangent vectors be normalized. Therefore it is possible to determine the appropriate lengths
which would also interpolate the Gaussian curvature at the end points, however this technique was
not pursued for this study. Figure 12.15-b shows the visualization of the resulting Hermite
interpolating curve for the example edge.
12.4.1.3 Bézier Curves
Whereas the Lagrange and Hermite interpolating polynomials interpolate a given set of points and
conditions, an alternative approach is to define a curve that can be easily manipulated which
approximates a given set of points. Bézier started with the principle that any point on a curve
segment must be given by a parametric function of the form

(a) Lagrange interpolating


(b) Hermite interpolating
polynomial
polynomial

(c) Bézier curve

Figure 12.15 Visualization of Three Non-Linear Interpolating Polynomial

Garanzha, V. A., and Kaporin, I. E. Regularization of the variation method of grid generation. Computational
491

Mathematics and Mathematical Physics 39 (1999).


280

p(u) = ∑ p𝑖 f𝑖 (u)
i=0
Eq. 12.8
where u is the parametric coordinate with the restriction u2 [0,1] and pi represent the n + 1 vertices
of a characteristic polygon (also called control points). He also set forth the following properties for
the blending functions fi(u):

➢ The functions must interpolate the first and last vertex points.
➢ The tangent at p0 must be given by p1 - p0 and the tangent at pn must be given by pn - pn-1. This
allows for direct control of the tangent.
➢ The previous requirement was also generalized for higher orders, namely that the r-th
derivative at an endpoint must be determined by its r neighboring vertices. This allows for
control of the continuity at joints between segments of a composite Bézier curve.
➢ The functions fi(u) must be symmetric with respect to u and (1 - u). This allows for reversing
the sequence of vertex points without altering the shape of the curve.

Bézier chose a family of functions known as the Bernstein polynomials to fulfill these properties.
Figure 12.15-c shows the visualization of the four point Bézier curve as derived.

12.4.2 High-Order Surface Generation


This surface is typically used as boundary conditions for the interior deformation procedure,
therefore it is important to the high-order process as a whole. It is well known that inaccuracies in
the representation of the geometric boundary have a significant impact on the ow solution in high-
order simulations. These inaccuracies include:

➢ highly distorted surface elements;


➢ mesh nodes being a significant distance from the true CAD surface;
➢ and under-representation of the geometric curvature due to using a too low polynomial order
with too large a element.

If the vertex locations of the linear surface mesh are taken to be fixed, producing a high-order surface
can be accomplished simply by using an affine mapping of the triangle in the 2D parameter plane to
the reference triangle of a high-order element. This can then be used to locate the new high-order
nodes in the parameter space, which are then projected into 3D using the CAD engine. However, this
means that the high-order triangles will inherit the distortion of the CAD surface, lowering the quality
of the mesh and in some cases causing invalid elements. The rest of this section presents a method to
take the high-order surface mesh made using the affine mapping approach and optimize the location
of the high-order nodes to reduce CAD induced distortion. This is done by modelling the mesh entities
as spring networks and minimizing the spring energy, in a similar approach to the work of 492. In
mathematical notation, this can be expressed as

‖x1 − x2 ‖2
Min f = ∑
w𝑆
𝑆
Eq. 12.9

492Sherwin, S. J., and Peir_o, J. Mesh generation in curvilinear domains using high-order elements. International
Journal for Numerical Methods in Engineering 53, 1 (2002).
281

which states that f, the spring energy, is the sum over all the springs in the system, where x1 and x2
are the 3D locations of the nodes at the ends of the springs and ws is the inverse of the spring stiffness,
which is calculated as a function of the nodal distribution being targeted. Because the linear mesh
vertices are held fixed during this procedure, the problem can be reduced to an entity-by-entity
approach.
First optimizing mesh edges that lie on curves; then edges that lie on surfaces; and finally interior
triangle faces that lie on CAD surfaces. In the first case (edges on CAD curves), the problem is a 1D
optimization of spring system in the curve's parameter space t.

p
‖x(t i+1 ) − x(t i )‖2
f=∑
wi
i=1
Eq. 12.10
Where i is one of the P + 1 nodes along the high-order edge. Here, P is the polynomial order of the
mesh being created and wi = zi+1 - zi, where zi is the i-th entry in the distribution of nodal points in the
where -1 ≤ z ≤ 1. The initial values of t are obtained from the linear 1D mapping ti = t1

1 − 𝑧𝑖 1 + 𝑧𝑖
t 𝑖 = t1 ( ) + t 𝑝+1 ( ) , i = 1, , , , , , , p + 1
2 2
Eq. 12.11
where t1 and tP+1 are the parametric coordinates of the end nodes of the edge, which are the vertices
in the linear mesh and are considered to be fixed. Performing the optimization of the edges which lie
on the CAD surfaces follows Eq. 12.9. High-order surface generation 493 a similar procedure but is
formulated in the 2D parameter plane, i.e.,

p
‖x(ui+1 , vi+1 ) − x(ui , vi )‖2
f=∑
wi
i=1
Eq. 12.12
This procedure reduces the distortion found in the high-order edges by minimizing the length of the
edge; that is, the optimized high-order edge will lie approximately on the geodesic between the two
end points on the surface. The procedure for optimizing the location of face interior nodes requires
a slightly alternative approach. The system is considered as a set of freely movable nodes, consisting
of those nodes lying on the interior of the triangle, and a set of fixed nodes which lie on the edges.
Each of the free nodes is connected to a system of six surrounding nodes by springs, and this is the
system which is minimized. In a triangle of order P, there are (P-2)(P-1)/2 interior nodes. The
function f is

493 Nektar++. http://www.nektar.info/, 2017


282

(p−2)(p−1)/2 6
‖x(ui , vi ) − us , vs )‖2
f= ∑ ∑
ws
i=1 s
Eq. 12.13
where ws is calculated as the distance between the
two nodes in a reference equilateral triangle, shown
in Figure 12.16 along with the connectivity of the
springs. The choice of a six spring system means that
the method is applicable to any point distribution at
any order. For example, Figure 12.16 shows a P = 4
triangle with a Gauss-Lobatto-Legendre
distribution along the edges and a triangular Fekete
distribution for the face interior points.
To optimize the energy of the system a bounded
version of the BFGS algorithm is used494. This
bounding is necessary due to the limits of the
parameter space in the CAD entities. Figure 12.17
shows the effectiveness of this optimization
procedure. The left-hand figure shows the surface Figure 12.16 Distribution of points in a
mesh before optimization, and the right-hand figure Fourth-Order Triangle and the Six Spring
System Linking the Free Nodes - Fekete
after optimization of the spring networks. In this
Distribution
case, the highly distorted CAD surface of the rounded
leading edge of a wingtip causes suboptimal surface
mesh generation.
The figure clearly shows that the high-order triangles are deformed under the linear mapping.
However, when this optimization procedure is performed, the mesh edges approximate geodesic

Figure 12.17 The High-Order Surface Created Using the Affine Mapping with / without Optimization in
a Region of High Distortion in the CAD Surface (left to right)

494Byrd, R. H., Lu, P., Nocedal, J., and Zhu, C. A limited memory algorithm for bound constrained optimization.
SIAM Journal on Scientific Computing 16, 5 (1995).
283

lines better and the resulting surface mesh is smoother. There are a number of advantages in using
this simple approach to high-order surface mesh optimization. In addition to being simple to
implement and obtain analytical gradients of the functional, the primary advantage it is relatively
cheap. This is because the bottom-up, disconnected, nature of the method means that each individual
optimization problem is small. However because of the disconnected approach it cannot always
achieve optimal meshes. It can however alleviate invalidity and low quality elements induced by the
curved surface mesh.
12.4.3 High-Order CFD Methods in Industrial Applications
The goal of transferring high-order CFD methods from academic to industrial, production impacting,
applications is as yet unrealized. Using high-order CFD as a production tool for industry has a number
of hurdles to overcome, chief among which are:

➢ robustness of the numerical methods,


➢ computational cost of the simulations
➢ reliable generation of suitable curved meshes on complex geometries.

This chapter will focus on the last point, with a focus to achieving practical results for industrial
applications. The robustness found in commercial linear mesh generators is due to a number of
factors. Primarily the system will have a series of failsafe options which allow the mesh generator to
recover and continue in the case of a critical error. These fail safes are developed over time by looking
at a case, seeing what works and what does not and depending a solution for the problems at hand
before moving onto the next test case. This philosophy has allowed a number of commercial mesh
generators achieve significant levels of robustness over a range of very complex cases. This kind of
methodology has, as yet, not been applied to high-order mesh generators.
Each example in the literature aims to achieve complete geometric accuracy without compromise.
This chapter explores the idea of relaxing strident criteria on the high-order mesh with the goal of
producing meshes on complex geometries which would otherwise be truly impossible. The study
focuses around the idea of obtaining high-order CFD results on complex geometries with the goal of
achieving practical outcomes. That is, for most aerodynamic external flows, studying the lift, drag and
vortex behavior of the flow. The goal was to produce, by any means, meshes that obtain results
without compromising the outcomes. To achieve this, when considering an a posteriori approach to
high-order meshing, it is vital to think beyond the limitations of the linear mesh generator
It would, on the face of it, seem possible and even trivial, to take these already robust tools and simply
extend them to achieve high-order meshes. In theory, all the positive properties of the linear meshes,
such as the robustness and CAD capability, would be inherited, but this is far from the case. This
chapter focuses around the production of meshes for three geometries which represent the design
progress of a high aerodynamic performance road car.
12.4.3.1 Methodologies
One of the most significant factors contributing to the robustness of commercial linear mesh
generators is that prior to making the mesh the CAD surface will be linearized. The surface is
triangulated with no consideration for quality but simply CAD accuracy. The surface triangulation is
usually produced by repeatedly subdividing the surface until the deviation from the true surface of
the edges of the triangles is less than some tolerance. The final mesh is then built upon this linearized
CAD representation. The primary advantage is that any poor quality CAD features can be paved over,
removed or altered easily within the triangulation. The disadvantage is the reduced CAD accuracy of
the resulting mesh. This can be offset by increasing the resolution of the linearized CAD surface.
However for finite volume CFD methods, where these meshes are used the most, the loss in CAD
accuracy does not have a significant impact on the final flow result. Most critically, when considering
high-order meshing, this means that the surface mesh vertices cannot be located in the parameter
284

spaces of the surfaces without using some form of reconstruction of this information, which can
introduce errors and robustness issues. This makes the idea of curving the surface elements from a
generically made linear mesh very challenging.
Two strategies have been developed which provide the relatively simple creation of high-order
meshes for extremely complex cases. The first is based on being able to know the parametric
information associated with the linear surface mesh, hence high-order curving of the surface is a
relatively easy task and shall be referred to as analytic curving. The second is on being able to
reconstruct the CAD information or project the linear mesh onto the CAD surfaces. The approach has
significant issues with speed and robustness but offers an alternative method to curving the surface,
which will be referred to as projection curving.
12.4.3.2 Analytic Curving
The process of curving the geometric surface of a high-order mesh has been considered as a bottom-
up process. That is to say that when curving the surface mesh entities each surface mesh vertex is
aware of the CAD object, whether that be a curve or a surface, it belongs to as well as its associated
parametric coordinates. Armed with this information, obtaining an initial curving of the surface is
quite a simple.
The first version of the pipeline to combine robust linear meshing with high-order tools was designed
to preserve the simplicity of analytic curving and the robustness of the linear volume generation. To
achieve this, the surface mesh was produced using the linear meshing tools within NekMesh and then
exporting this surface mesh to Star-CCM+ for the generation of the volume mesh. All parametric
information was preserved and therefore curving the surface was a simple task. The commercial
linear meshes was then used to build the near-wall macro prism layer and mesh the interior of the
domain with tetrahedral.
Robustness of linear boundary layer generation in this approach is obtained without compromising
the simplicity and robustness of the high-order surface generation. However it was found that the
use of this approach, which was applied to one of the examples shown later, resulted in dozens of
cycles of running NekMesh, Star-CCM+ meshing, and altering the CAD to obtain a mesh.
A second approach overcame a number of these shortcomings by allowing the linear mesh generator
to create the surface mesh itself. This had a significant increase in the quality and ease in creating the
meshes. In this process NekMesh generated the linearized CAD surface, using its own CAD engine,
and then exported this to Star-CCM+. The linear surface mesh generator would then use this as its
base for generating the mesh. The data structures used allowed for robustly and cheaply obtaining
the parametric information of the surface mesh vertices. This is because the linearized CAD
triangulation is divided into sections of the CAD surfaces which it came from. It is possible to get the
linear surface mesh in Star-CCM+ to obey the boundaries of the CAD. That is, it will not generate a
triangle which has area over two different CAD surfaces. This information permitted the identifying
of which CAD surface the surface mesh vertices came from.
Obtaining the parametric coordinates was more difficult. The parametric coordinates of the
linearized CAD triangulation are stored, therefore for a given surface mesh vertex an approximate
parametric location is known by taking the value from the nearest CAD triangulation point. Using the
CAD engine, the actual location can be obtained through reverse projection, a processes which is
nonlinear, usually slow and can fail but it can be made significantly faster and more robust by having
an approximate location. The surface mesh edges which exist on CAD curves can then be inferred by
looking through the data structures and seeing which edges are connected to two triangles which are
on two different CAD surfaces. Once all parametric coordinates are obtained, the high-order meshing
process can continue as before.
This analytic curving approach was found to be significantly easier to use as it only required the
running of Star-CCM+ once and NekMesh twice, first to produce the CAD linearization and then to
reimport the Star-CCM+ mesh and curve it. However, it still had one critical aw: it required the linear
285

surface mesh to explicitly obey the boundaries of the CAD surfaces. This is not the worst requirement,
but when moving to more complex CAD models, those with in excess of thousands of surfaces, it
proved to be a significant limitation. This was due to requiring an impractical amount of effort in
preparing and cleaning the CAD for the size of problems being tackled. The CAD healing was required
because while the user can tell Star-CCM+ to obey the surface patches beyond a certain limit of mesh
quality, it will no longer do so. The surface triangles could not be curved in this scenario.
12.4.3.3 Projection Curving
The final high-order meshing approach took proactive measures to ensure the meshing pipeline
would be as robust and easy to use as possible. In this case, all CAD information is reconstructed after
the generation of the linear mesh. This places no criteria, or additional steps on the linear meshing
stage. As stated this approach can suffer from a lack of robustness and computational cost. However,
here a number of steps are taken to ensure the method is viable for even the largest CAD models. The
method begins by importing a linear mesh info NekMesh that is a reasonably close representation of
the underlying CAD model. The CAD model is then processed in two ways. Firstly, each surface in the
model is linearized (triangulated). The triangulation for each surface is then stored alongside the
curvilinear CAD model so that two CAD representations exist. Secondly the model is processed into
a tree structure. A bounding box is determined for each CAD surface. Each box is slightly distinctive
in each direction by 5%.
The surface mesh nodes are then processed to obtain their CAD parameterization information. For
each node, the process begins by obtaining a list of potential parent surfaces by querying the
bounding box. If a node is within a box, the surface is added to the list. Because of the use of the tree,
this process is itself quick and serves to reduce the potential number of surface operations down
from the whole model to just a few candidates, typically 2 or 3. The node is projected onto the surface
for each of the candidate surfaces. This is done by firstly finding the nearest vertex in the surface
triangulation and then using this as an initial guess for the non-linear problem of surface projection.
The parent surface to the node is then identified as the closest surface. A few additional
considerations must be made.
Because of the linearization of the CAD prior to linear meshing, it is quite possible that the surface
node, may not actually lie on the CAD surface. Therefore once the node's surface has been identified
it is then moved to the surface. It is important to remember that moving the surface node like this
may induce inverted elements. This must be tested for, if moving the surface node creates inverted
elements the node is placed into an exclusion set and left in its original location. Likewise it is possible
that the node may need to be moved a significant distance to the surface, while this move may not
induce invalid elements it may significantly lower the quality.
Therefore a node is not moved if the required displacement is greater than 10% of the length of the
edges in the local mesh and it will also be placed in the exclusion set. In other words, the node will
not move a significant distance with respect to the size of the elements in the local region. The
generation of the curved surface then proceeds as in the analytic approach, bar a few exceptions.
Firstly any mesh entity, face or edge, which has a mesh node in the exclusion set will not be curved
and left linear. This is because either the CAD information is not available or it would be unreliable.
Secondly, curving inducing an invalid element will be reverted and the element remains linear.
Lastly, if a mesh entity overlaps two or more CAD surfaces, i.e. if in an edge each of the vertices have
CAD parents which are different, the system will use a projection based approach to curve the entity.
High-order nodes will be placed along the linear mesh entity producing a high-order but straight-
sided entity. To curve the mesh entity the nodes are then projected onto the CAD surface and moved
to the surface.
A small but not insignificant proportion of the surface mesh entities will be straight-sided as opposed
to curved. This will have significant impact on the geometric accuracy of the mesh and in turn on the
solution. However, in the results below this will be shown to have little noticeable impact. A full
286

investigation into this has not been conducted due to time and resource constraints, but this work
proves that high-order meshes can be produced on industrial models and sensible results obtain with
little meshing effort. Indeed the final projection meshing pipeline only required one execution of the
linear mesh generation and NekMesh, with no need for repetition with either system or the CAD.

12.4.3.4 Case Study - Example Application of Elemental RP1 Road Car


To demonstrate the applicability of the meshing methods detailed above, they have each been applied
to the Elemental RP1 road car, shown in Figure 12.18. It is a high performance, light-weight, street
legal track car which produces 500 kg-f of downforce at 150mph, much more than any other car in
its class. This car was the focus of a collaborative study between Imperial College London, Elemental
cars group, London Computational Solutions (LCS) and SGI (now HPE). It focused on the high-order
CFD simulation of three design iterations of the car. It is firmly believed that the scale and Reynolds
number of these simulations mean they are the first of their kind.

Figure 12.18 The Elemental RP1 Road Car

The simulations were performed using the incompressible Naiver-Stokes solver in Nektar++. This
solver uses an implicit large-eddy simulation (iLES) formulation. Each of the simulations were run at
a Reynolds number of 250,000, which is lower than the experimental value of approximately 2
million but still higher than other simulations which have been attempted of this type. The
simulations were run at a polynomial order 5 and to increase the accuracy of the integration the
quadrature order used was 7. This meant that the meshes had to be generated at P = 7 to ensure the
elements were valid with this quadrature. Numerical stability was a big factor in these simulations
and is one of the reasons the Reynolds number is lower than experimental values. Indeed new
stabilization techniques were developed which are an extension of the work. Meshes in this study
ranged from approximately 2-3 M elements as the geometries became more complex and were a
combination of triangular prisms in the near-wall region and tetrahedral in the rest of the domain.
287

The study began with design 1 (D1): the baseline model of the car currently in production. This model
was meshed using the first analytic meshing pipeline. A process which in total took approximately 4
months of going back and forth between CAD healing and linear and high-order meshing to produce
a viable mesh. The process succeeded but was deemed too complex for robust high-order meshing.
This mesh contained 2.2 M elements of which, approximately 0.6 M were prisms within a boundary
layer mesh. The simulation was conducted under the conditions detailed previously. Because of the
aggressive linearization method used to ensure the ability to produce the mesh, its quality, by the
scaled Jacobian measure, was guaranteed to have a minimum value greater than 0.1. This was the
case for all three meshes presented in this section. The study moved onto work with a second
geometry (D2) which was designed based on the results of the D1 simulation. The D2 mesh was
created using the second analytic curving method. This mesh contained 2.6 M elements with
approximately 0,7 M boundary layer prisms. Figure 12.19 shows, firstly, the mesh of the two
designs, D1 (left) and D2 (right), and the corresponding flow solutions is shown in Figure 12.20. In

Figure 12.19 High-Order Surface Meshing for 2 Designs


288

the case of these images, the mesh is indeed curved but for clarity only the curved edges of the
elements are shown. For further information, please consult the [Turner]495.
From the high-order D1 simulation two key findings were made, neither of which were identified in
low-order RANS simulations. Firstly, there appeared to be strong vortical structures hitting the
drivers helmet. This was fixed in D2 with a redesigned console area in front of the driver. The D2 is
contour shows clearly that these structures now pass cleanly over the drivers head and are in
somewhat less noisy in terms of the substructures. Secondly, the roll hoop produced significantly
more drag and separation than predicted. D2 had a redesigned roll hoop with an airfoil profile as

Figure 12.20 Surface Simulation for Pressure - D1 (left) D2 (right)

495Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London, Faculty of
Engineering Department of Aeronautics, A thesis submitted for the degree of Doctor of Philosophy, 2017.
289

opposed to a circular cylinder. This airfoil profile was slightly angled to help control the flow over the
new Gurney ape at the rear of the car. This, combined with redesigned diffusers on the underside, led
to increased downforce over D1. The trend of changes in downforce and drag between the D1 and D2
simulations was well predicted by the high-order simulations and matched the trend in the RANS
results.
Between the two simulations, D1 and D2, despite no geometry changes on the forward part of the
underside of the car, the front splitter showed significant variation in the flow physics. The D1
simulation shows significantly lower pressure in this region and separation of the flow. In contrast,
D2 shows much smoother, attached ow. As there is little variation in the geometry in these two
regions between the two CAD models the most likely explanation of the greatly differing results is
mesh error. To investigate this, Figure 12.21 shows the mesh in these regions. Recalling that these
meshes were made using the two different analytic curving approaches, it is observed that the
mesh is much smoother in gradation for D2. A possible explanation of the non-physical separation is
that the lower mesh quality of D1 induced this error. This result demonstrates the sensitivity of high-
order simulations to mesh quality as well as the higher quality obtained using mesh from the second
analytic curving method, where the commercial linear mesh generator had some degree of control
on the surface mesh.

Figure 12.21 Underside of the RP1 car surface mesh, design 1 (D1) left, design 2 (D2) right
290

The study concludes with one final design (D3) which is full aerodynamic upgrade over the previous
two designs. This car is designed to achieve extremely high levels of downforce specifically for track
racing. This design includes a fully redesigned floor, front splitter and the addition of a rear wing. The
ride height has also been altered, raising the car at the rear for increased diffuser performance and
lowering the front of the car to increase in-ground effect of the front splitter. The increased
geometrical detail lead to an increase in mesh size for this geometry of 3.1 M elements, just under a
third were boundary layer prisms. In the following images there is a noticeable offset in the
geometries of the two cars, this is because of the alteration in ride height.
The D3 mesh which was also the largest at approximately 4 M elements was made using the
projection method. This method can be aggressive in regions of the surface mesh straight sided
where the curving process either would not work or would produce invalid elements. This meant
that a small percentage of the surface was not geometrically accurate. However as the results show
for D3, because they are consistent with D2 and show no obviously non-physical flow region, this
aggressive approach had little impact. Indeed it allowed the mesh to be created almost effortlessly, it
required only one execution of the linear meshing and NekMesh each, it also required no CAD healing
or repetitive cycles. However a more conclusive study with more simulations is required to draw
stronger conclusions on whether the compromised geometric accuracy is a compromise worth
taking. The early results here show that it may well be.
12.4.4 Application of Optimization Framework
This section outlines the application of the optimization framework to the generation of triangular,
quadrilateral, tetrahedral and prismatic meshes and combinations thereof. This section begins with
a brief discussion of how to compare the relative qualities of each mesh. We follow closely the
development in [Turner]496.
12.4.4.1 Quality Metric
The current state of quality metrics for high-order mesh analysis is a confusing one. However a
metric with which to comment on the meshes in this work must be selected. The clear choice, simply
because it is the most widely used despite its flaws is the scaled Jacobian. However within the context
of this work, this measure has a key drawback: this work studies a posteriori mesh generation and
therefore looks primarily at the mapping ⊽Φ. Whereas this quality metric is analyzing the mapping
ΦM. Therefore it would be more logical to use the scaled Jacobian of the mapping Φ. The quality
element Qe that is used to analyses meshes in this work is therefore defined to be

e
Minξ [det∇ϕM (ξ)) det (∇ϕ−1
I (ξ))]
Q = ∀Ω𝑒 ⊂ Ω
Maxξ [det∇ϕM (ξ)) det (∇ϕ−1
I (ξ))]
Eq. 12.14
Where I denotes the ideal element. It is possible to further define the overall quality of the mesh by
considering the minimum metric over the mesh, defined as

Q= Min
⏟ Qe
1≤ e ≤ Nel
Eq. 12.15
These quality metrics lie in the range (-∞ , 1] and from a physical viewpoint make the assumption
that, an `ideal' element should be as close to straight-sided as possible. Results near Qe = 1 are
considered to be the highest quality, as this suggests smoothness of the Jacobian, and any element
with Qe < 0 is an invalid element. The key difference between Jes and Qe is that Qe provides a

496Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London, Faculty of
Engineering Department of Aeronautics, A thesis submitted for the degree of Doctor of Philosophy, 2017.
291

measurement of the deformation between the straight-sided and curvilinear element. This makes no
difference in the case of triangular and tetrahedral elements (asides from a multiplicative constant)
since ⊽ΦI is a linear mapping. However, in other elements possessing quadrilateral faces, it is possible
to have deformation in even a straight sided or planar element due to ΦI being a quadratic mapping.
This new quality metric is therefore invariant to element type, allowing the fair assessment of the
quality of hybrid meshes.
12.4.4.2 Case Study 1 - Simple 2D Demonstration Case
An initial mesh of nine triangles, two of which are invalid, are untangled to produce the valid meshes
shown in Figure 12.22-b and Figure 12.22-c, to show the capability of the framework to correct
invalid elements. This shows how domain interior deformation to improves the quality of a
curvilinear mesh and the ability to correct invalid elements. In this case, the mesh is initially invalid
with Q = -0.24. The mesh further improved based on the Hyper elastic and Distortion functional.
Each of the figures the quality distribution Qe of each element is shown. The results demonstrate that
elasticity functional produce a higher quality final mesh.

Figure 12.22 Optimization of An Originally Invalid (blue) 2D Example Mesh

12.4.4.3 Dealing with Very High Polynomial Orders


Figure 12.23 shows the optimization of a 2D quadrilateral mesh of 10th order, to demonstrate that
the framework is capable of optimizing and correcting very high-order meshes. In terms of mesh
quality, much the same result as in Figure 12.22 is observed. In this case, we use an integration of
the functional using a 20th order quadrature rule. For the sake of accuracy, in the majority of cases it
is necessary to integrate at least 6 orders higher than the mesh order. For quadrilateral and
hexahedral elements the generation of the suitable quadrature rules at very high orders, as outlined
the previous section, is sufficiently easy and cheap it can be done at runtime for arbitrary orders.
However this is not the case for elements with triangular faces, as such quadrature rules have to be
stored. The only reason why these results do not go higher than fourth-order for triangular and
292

tetrahedral meshes is simply the lack of suitable integration rules above 10th order. The quadrilateral
mesh example shows that the method works for very high-order meshes.

Figure 12.23 Optimization of 10th Quadrilateral Mesh Showing the Initial Configuration and
Optimization using the Hyper Elastic and Distortion Functional

12.4.4.4 Case Study 2 - Sphere Within a Cube


As an example of a 3D geometry, Figure 12.25 shows slices through a 4th order tetrahedral mesh of
a simple cube geometry, in which a spherical cavity is removed from the center of the cube. The initial
mesh begins valid, and the objective is the improvement of mesh quality. Again, visually, the meshes
optimized by different functional look very similar and differences can only be drawn when
comparing the quality of the elements. For a more quantitative analysis, Figure 12.24 shows the
mesh quality as a function of the global optimization iteration count. On the left the residual,
measured as the L1 norm of the movement of a node from one iteration to the next is shown. Here
the L1 norm takes its usual meaning as the maximum value in the set. The Winslow and Distortion
functional converge much faster than the elasticity methods. The linear elasticity appears to not
converge as smoothly as the other functional, which is believed to be due to the order of integration
being used. For each of the other functional, this appears to be completely sufficient; however the
linear elasticity requires a higher integration rule. Indeed when operating on smaller 2D meshes it
has been found that the linear elastic functional recovers a smooth convergence profile. This means
that in most cases, especially in 3D, the increased cost of using a sufficiently accurate integration for
the linear elastic makes it more computationally expensive compared to the other functional.
The right plot in Figure 12.24 showing the mesh quality, Q, as a function of iteration, highlights that
very few iterations of the global optimization are required in order to significantly improve the
quality of the mesh. The residual properties are therefore not necessarily that important in the
context of mesh optimization, because the quality does not improve much beyond the first few
iterations. It also establishes the rating of the functional in terms of the quality of mesh produced:
Elasticity functions appear to generate higher quality meshes than the Distortion and Winslow
functional.
293

Figure 12.25 Optimization of 4th Order Sphere mesh from the Initial Configuration
using the Hyper Elastic and Distortion Functional

Figure 12.24 Shows the Displacement Residual and Quality, Q, of the Cube Sphere Mesh
294

12.4.4.5 Case Study 3 - DLR F6 497


A more complex geometry is shown in order to demonstrate the effectiveness of the framework on
test cases of interest to the aeronautics industry, by examining a mesh of a DLR F6 geometry. The
initial coarse mesh, which comprises of approximately 100 K tetrahedral, can be seen in the top left
position of Figure 12.26, where elements that are of quality Qe < 0.5 are shown498. This case also
has a number of invalid elements, which can be seen in the top right figure. This inset shows the
distribution of Qe, in which a number of invalid elements can be seen having quality less than 0. This
case again uses the hyper elastic functional to both untangle and optimize the mesh, which results
in a significant overall improvement in element quality.

Figure 12.26 Optimization of the DLR F6 Geometry

The resulting distribution is seen in the bottom right figure, where a noticeable shift towards Qe = 1
can be observed. A few very poor quality tetrahedral remain, which can be seen in the bottom left of
the figure. These are solely due to the initial linear mesh, which in this region contains a number of
at elements, which in turn limits the capability of the framework. This highlights need for further
improvement in linear mesh generation for high-order generation. An interesting additional point to
note is that the hyper elastic functional was the only one able to untangle the mesh from the initial
invalid configuration. We posit that further investigation into the integration order is required to

497 Brodersen, O., and Stuermer, A. Drag prediction of engine-airframe interference effects using unstructured
Navier-Stokes calculations. 19th AIAA Applied Aerodynamics Conference (Anaheim, 2001), no. 2001-2414.
498 Untangling and optimization of the DLR F6 geometry. The left figures show the mesh before and after

optimization. On the right the distribution of the quality metric Qe is shown before and after optimization with
the hyper elastic functional.
295

further understand this phenomenon. In theory each of the functional have the necessary properties
to achieve a valid mesh, therefore the failure of the other three is most likely due to the accuracy of
the numerical method. It is also possible that the regularization approach is not suitable for all the of
the functional and a bespoke regularization method is required for each.

12.4.4.6 Case Study 4 - CAD Sliding


Figure 12.27 highlights the effects of the CAD sliding499. In this example, a at surface has a semi-
sphere placed a onto it. This generates an initial curved mesh, visualized on the left hand side, which
possesses 8 invalid elements. Taking a closer look at the initial mesh, it is very clear that the surface
mesh induces an invalidity where the sphere meets the at plane. The ability to slide the element edges
along the at plane and additionally the surface of the sphere is therefore required in order to have
any chance of generating a valid mesh. The optimized mesh on the right-hand side shows how the
deformation is incorporated into the surface edges, deforming them appropriately in order to
produce a valid and very high-quality mesh, as can be seen from the quality metric.

Figure 12.27 Cross Section of a Semi-Sphere Case Highlighting the Sliding of CAD
Curves Along the Surface

12.4.4.7 Case Study 5 - Boeing Reduced Landing Gear 500


In the final example, results for optimization of another well-known complex geometric example are
shown: the Boeing reduced landing gear. In this case, a hybrid mesh containing a prismatic boundary
layer, filled with tetrahedral in the interior, has been created. The purpose of the prism layers is to
capture the wall normal ow physics, where very large gradients of the ow velocities occur close to
the surface. Since this region contains very high shear, the prismatic elements should substantially
decrease in thickness near the wall so that they become highly stretched relative to the tangential
surface direction. This poses a substantial challenge for curved boundary layer generation. If
curvature is applied to a standard linear boundary layer mesh, it is all but guaranteed for all but the
most simple geometries that there will be a large number of invalid elements. Given that there is
very little space available to accommodate the curvature of the boundary, correcting these boundary
layer elements becomes very difficult. Further, the number of elements to optimize also increases

499 Cross section of a semi-sphere case highlighting the sliding of CAD curves along the surface. The left-hand
image shows the initial mesh and the right-hand figure shows the optimized mesh. Note that the color of the
surface triangles is not related to mesh quality.
500 Spalart, P., and Mejia, K. Analysis of experimental and numerical studies of the rudimentary landing gear.

Proceedings of the 49th AIAA Aerospace Sciences Meeting including the New Horizons Forum and Aerospace
Exposition (Orlando (FL), USA, 4-7 January 2011).
296

substantially, thus increasing the computational cost of the method.


As has been noted in previous work it is far more practical and robust for high order meshing to
generate a single `macro' isotropic prism at the geometric boundary, in which the curvature of the
surface can be readily applied, and then use a method of isoperimetric splitting to produce the
anisotropic elements501. Adopting this approach here, the linear hybrid mesh combining tetrahedral
elements and triangular prismatic `macro' elements is first generated, introduce the boundary
curvature and then apply the variation optimization to optimize the quality of the mesh. The mesh is
then finished by applying isoperimetric splitting to obtain the desired boundary-layer thickness.

Figure 12.28 Hybrid prismatic-tetrahedral mesh of the Boeing reduced landing gear configuration
before (a) and after (b) optimization, and after the isoperimetric splitting is applied (c). Note that the
color of the surface triangles is not related to mesh quality

501Moxey, D., Green, M., Sherwin, S. J., and Peir_o, J. An isoparametric approach to high-order curvilinear
boundary-layer meshing. Computer Methods in Applied Mechanics and Engineering 283 (2015).
297

Figure 12.28 shows the `macro' mesh before and after optimization, for which the hyper elastic
functional has been used since this has been shown to produce the highest quality meshes. The final
mesh created after the macro layer has been split is also shown. For the purposes of clarity, the
tetrahedral have been removed. Overall the figure shows that whilst the initial configuration before
optimization is of a reasonable quality, there are a number of lower-quality elements on the
shoulders of the tires. The quality in this area, as well as throughout the mesh generally, is then
improved in optimization across all of the elements shown. The figure also show the quality of the
prismatic layers after splitting, where in general it can be seen that this approach produces a high
quality mesh.
To quantify the increase in element quality, a number of element quality histograms for this case in
Figure 12.29 are shown. Firstly, the overall distribution from the initial configuration seen in
Figure 12.29-a improves substantially under optimization, as shown in Figure 12.29-b, where a
clear shift to the right of the graph is observed, i.e., towards an improved mesh quality. However, it
should be noted that Figure 12.29. Element quality histograms of the Boeing reduced landing gear
configuration for initial configuration and various optimization settings.
this optimization was conducted with a material constant of ν = 0.45, which means that the elastic
solid which is being relaxed is very stiff. Figure 12.29-c shows that reducing ν to 0.4 leads to a mesh
that, whilst being improved over the initial configuration, is overall of a lower quality compared to ν
= 0.45. This observation aligns well with the results reported in reference502, where meshes

Figure 12.29 Element Quality Histograms of the Boeing Reduced Landing Gear Configuration for
Initial and various Optimization Settings

502 Poya, R., Sevilla, R., and Gil, A. J. A unified approach for a posteriori high-order curved mesh generation using
solid mechanics. Computational Mechanics 58, 3 (2016).
298

generated using values of ν close to the incompressibility limit lead to higher quality elements.
Curiously, both the distortion and Winslow functional lead to a decreased quality of the mesh, as
shown in Figure 12.29-d for the distortion functional.
It should also be noted that the use of the isoperimetric splitting of the macro layer was a necessity
when generating high-order anisotropic boundary layers. Generally it was found that, when using
the variation framework on anisotropic elements, the optimization algorithm would very regularly
fail to find a new minimum.
It is logical that because of the shape of the prismatic element, the sensitivity of the functional to
nodal location is very strong, meaning that very large gradients are seen in the optimization. As
shown before, when the gradient is large, high degree quadrature is required and the Q = P+6 rule is
not sufficient. While an adaptive or very high-order integration would allow for the optimization of
anisotropic elements, it is simply not required when using the isoperimetric splitting, meaning that
this approach is more computationally viable. While other examples of a posteriori high-order mesh
generation have shown the ability to correct anisotropic elements, they regularly report the need
for greatly increased iteration count in the solution of either their PDEs or optimization processes. It
is proposed that this is a similar phenomenon to what is experience with failed optimization.
12.4.4.8 Case Study 6 - Example of application: NACA Wing
This section describes an example of a 3D geometry for which high order meshes have been created
using the NekMesh system. Of particular interest to the high-order community is the test case of a
high angle of attack symmetric NACA wing with a rounded wingtip503. In this high Reynolds number
case (Re = 4.6 x 106), as shown in numerous numerical examples, it is challenging to accurately
predict the position of the wingtip vortex when compared to experimental data. This is due to the
strong vortical structures and complex boundary layer physics. To demonstrate the validity of the

Figure 12.30 High-Order Mesh of the NACA Wing

503Lombard, J.-E. W., Moxey, D., Sherwin, S. J., Hoessler, J. F. A., Dhandapani, S., and Taylor, M. J. Implicit large-
eddy simulation of a wingtip vortex. AIAA Journal (2015).
299

mesh produced by NekMesh, an incompressible flow simulation at Re = 105 was performed using
Nektar++.
Due to the convex nature of the geometry, the addition of a prismatic layer adjacent to the geometry
meant that the high-order mesh was valid without needing to resort to variation module to correct
any elements. Each mesh of this geometry was created from the CAD definition using four user
parameters only: δmin, δmax, ε and P, where P is the desired order of the mesh. Meaning that the meshes
NekMesh were significantly easier to produce than by other means. Figure 12.30 shows an image
of the surface of the NACA wing geometry. This mesh has a anisotropic boundary layer, as shown in
Figure 12.31. Regions of high curvature such as the leading edge of the wing and the curved wing
tip, have increased resolutions compared to other parts of the mesh, as would be expected with the
automated specification system. On the suction surface the resolution of the mesh has been manually
increased to capture a separation region in the flow solution. Despite this modification, the octree
system has ensured that the mesh remained smooth, without large changes in element volume.
Further information is available in [Turner]504.

Figure 12.31 Enlargements of Regions of the NACA Wing Mesh

504Michael Turner, “High-Order Mesh Generation For CFD Solvers”, Imperial College London, Faculty of
Engineering Department of Aeronautics, A thesis submitted for the degree of Doctor of Philosophy, 2017.
300

13 Comparisons of Structured vs. Unstructured Meshes


13.1 Case Study 1 – Flow through Pipe with 90 Deg, Bend
These last two items are why boundary layers are best modeled in an unstructured mesh with prism
layers as they provide structure in the direction away from the wall. Further, another parametric
study done by (Fluent®) as turbulent flow over a pipe with 90 degree bend and Reynolds number of
ReD = 43000 and turbulent model of Realizable k-ε505. Axial velocity contour are compared at the 90
degree bend. The result show difference in 90 degree bend, as shown in Figure 13.1. It is clearly
demonstrates the advantage of Hex cell over Tet in this example. This also indicates a good agreement
with experimental data using the hybrid mesh (Tet + Prism, See Figure 13.2). As you clearly see the
argument about which mesh to use is far from over and depending to whom you talking. It appears
that case against the Tet cells is relatively straight, but Poly cells and Hybrid meshing is still
debatable. With most vendors, have capability of offering both structured as well as unstructured
meshes at will and table below displays the type of meshing available.

Hex Mesh 16 K Tet Mesh 440 K


Cells cells

Axial Velocity Axial Velocity


Contour at Contour at the
the 90° bend 90° bend (Tet)
(Hex)

Figure 13.1 Comparison of Hex (16 K Cells) and Tet (440 K Cells) for a Pipe with 90 Degree Bend

505 Fluent, “Meshing and CFD Accuracy”, CFD Summit, June 2005.
301

Figure 13.2 Results of Hex vs Tet Meshes as well as Hybrid Mesh in a Pipe with 90 Degree Bend

13.2 Case Study 2 - Comparison of Hexa-Structured and Hybrid-Unstructured


Meshing Approaches for Numerical Prediction of the Flow Around Marine
Propellers506
Here, we present a comparison between hex structured and hybrid-unstructured meshing
approaches for the numerical prediction of the flow around marine propellers working in
homogeneous flow (Open Water Conditions)507. The objective was to verify if the accuracy of the
predictions based on structured meshes is significantly better than predictions based on hybrid
meshes. The study was performed on two five-bladed propellers in model scale. Simulations were
carried out with a commercial RANS solver, using a moving frame of reference approach and
employing the SST (Shear Stress Transport) two equation turbulence model. Computational results
from both meshing approaches were compared against experimental data. The thrust and torque
coefficients were used as global quantities. Circumferentially averaged velocity components and
root-mean square values of the turbulent velocity fluctuations, available for one of the propellers,
were used to indicate the local flow field. The computational results of global quantities for both
meshing approaches were very close to each other and in line with experimental data. Also the local
values of the flow were in line with the experimental data, except for turbulent velocity fluctuations
which were under predicted, especially in the case of the hybrid approach, where higher diffusivity
was observed. The overall results suggest that for the prediction of the propulsive performances of
marine propellers, at model scale, there are no significant differences, in term of accuracy, between
structured and hybrid meshes but for a detailed study of the flow, the structured mesh seems to offer
a better resolution.

506 Mitja Morgut, Enrico Nobile, “Comparison of Hexa-Structured and Hybrid-Unstructured Meshing Approaches
for Numerical Prediction of the Flow Around Marine Propellers”, First International Symposium on Marine
Propulsions smp’09, Trondheim, Norway, June 2009
507 See Previous.
302

13.2.1 Introduction & Contributions


The flow around a marine propeller is one of the most challenging problems in (CFD), where for
decades it has been investigated numerically using conventional methods based on the potential
theory. More recently, due to the improvements of computer performances, (RANS) solvers are
becoming the practical tool as demonstrated by [Abdel-Maksoud et al.]508, [Chen and Stern]509,
[Stanier]510, [Watanabe et al.]511, and [Rhee and Joshi]512, to name a few. Even though the capabilities
of CFD technologies are improving, a fundamental role in a successful CFD simulation is still played
by the mesh quality and type. Generally speaking, simulations carried out using Hybrid-Unstructured
(HU for brevity) meshes i.e. tetrahedral with prisms or hexahedral layer on solid surfaces, are less
accurate then simulations carried out using Hexahedral Structured (HS) grids. On the other hand the
effort to generate HU meshes is generally lower than that needed to generate HS meshes. As a matter
of fact the hybrid mesh generation is semi-automatic, whilst the structured mesh generation is non-
automatic, and requires a significant amount of work. It can also be very difficult to generate a good
quality HS mesh for complex geometries: this is the case of modern marine propeller due to complex
shapes, strong twisting of the blade and stagnation point on hub close to the propeller. Moreover the
structured meshing approach can be very difficult to apply to the study of the propeller-hull
interaction with the currently available commercial codes.
Recently also the section of applied physics of the Department of Naval Architecture, Ocean and
Environmental Engineering (DINMA) of the University of Trieste, in collaboration with the office of
Naval Architecture of Fincantieri - Cantieri Navali S.P.A has developed a CFD procedure for the
prediction of the flow around marine propellers working in open water conditions based on the use
of the commercial RANS solver ANSYS-CFX 11 and the commercial meshing tool ANSYS ICEM-CFD
The procedure has already been validated, using HS meshes. But the long time needed for the
generation of HS meshes suggested to investigate the possibility of using hybrid meshes in place of
structured meshes. For this reason a comparison between structured and hybrid meshing
approaches is carried out. The study is performed on two five-bladed propellers in model scale. One
is called Propeller A, propriety of Fincantieri, and the other is propeller DTMB (David Taylor Model
Basin) P5168 [Chesnakas & Jessup]513. The study is made by comparing numerical results from both
approaches with the available experimental data. For both propellers thrust coefficient and torque
coefficient are compared for a wide range of advance ratios. In the case of propeller P5168 the
comparison includes circumferentially averaged velocity components, and turbulent quantities, in a
plane downstream of the propeller mid plane respectively. For both propellers and meshing
approaches the numerical results are in line with experimental data, but the hybrid meshes seem to
introduce more diffusivity in the solution than structured meshes.

508 Abdel-Maksoud, M., Menter, F., and Wuttke, H.. ‘Viscous flow simulations for conventional and high skew
marine propellers’. Ship Technology Research, 45:64 – 71. 1998.
509 Chen, B. and Stern, F. ‘Computational fluid dynamics of four-quadrant marine-propulsor flow’. Journal of Ship

Research, 43(4):218 – 228., 1999.


510 Stanier, T. ‘The application of ’rans’ code to investigate propeller scale effects’. Proc. 22nd Symposium on

Naval Hydrodynamics, Washigton, D.C., USA, 1999.


511 Watanabe, T., Kawamura, T., Takekoshi, Y., Maeda, M., and Rhee, S. H. ‘Simulation of steady and unsteady

cavitation on a marine propeller using a rans cfd code’. 5th International Symposium on Cavitation, CAV2003,
Osaka, Japan, 2003.
512 Rhee, S. H. and Joshi, S. ‘Computational validation for flow around marine propeller using unstructured mesh

based navier-stokes solver’. JSME International Journal, Series B, 48(3):562 – 570, 2005.
513 Chesnakas, C. and Jessup, S. ‘Experimental characterization of propeller tip flow’. Proc. 22nd Symposium on

Naval Hydrodynamics, Washington, D.C., USA, 1998.


303

13.2.2 Propeller Models


Here, the two five-bladed propeller models visible in Figure 13.3 considered. One is the propeller
propriety of Fincantieri. While the other is propeller P5168, designed at David Taylor Model Basin.
P5168 is a controllable pitch
propeller with diameter D =
0.4027m and experimental
measurements were carried
out at the David Taylor 36-
inch, Variable Pressure Water
Tunnel514. For simulations
both propellers were placed
on the cylinder, simulating the
hub, and the axis of the
propellers were coincident
with the direction of the free
Figure 13.3 Design of Propellers, (left) Propeller P5168,
stream. (right) Propeller A – (Courtesy of Morgut & Nobile)
13.2.3 Numerical Method
In this study only one blade is considered since, the flow around a marine propeller working in
uniform flow can be considered periodic with respect to the blades when the hydrostatic pressure is
assumed constant. In the given conditions the computational domain used in this study is 72o
segment of cylinder covering only one blade. Moreover as a propriety related to the above mentioned
conditions and also to capability of the ANSYS-CFX 11 to run different zones of the domain with either
rotor or static frame of reference the cylinder is split as revealed in Figure 13.4 in a rotating part
called Rotating, and in a stationary part called Fixed. The dimensions of computational domains of
both propellers are listed in Table 13.1, where D is diameter of the propeller. The variable Lmid,

Figure 13.4 Computational Domain– (Courtesy of Morgut & Nobile)

514 See Previous.


304

presented but not visible in Figure 13.4, is the length in direction of uniform flow of rotating. To
simulate the flow around a rotating propeller the following boundary conditions were set. On the
Inlet boundary, velocity components of uniform stream with the given inflow speed were imposed,
while the turbulence intensity was set to 1%
of the mean flow. On the Outlet boundary the Rotating Fixed
static pressure was set to zero. On the outer A P5168 A P5168
surface and on the part of the hub included in
Hmid 0.70 D 0.57 D
Fixed free-slip boundary conditions were set.
Lmid 0.14 D 0.75 D
On the blade surface and on the part of the hub
L1 2.0 D 1.5 D
included in Rotating no-slip boundary
conditions were set. On the periodic L2 6.0 D 5.0 D
boundaries (sides of the domain) rotational H2 1.8 D 1.4 D
periodicity was ensured. As turbulence
Table 13.1 Dimensions of Domains – (Courtesy of
model, the two equation SST (Shear Stress Morgut & Nobile)
Transport) model with the automatic
treatment of wall functions was employed.
13.2.4 Meshing
All the meshes used in this study were generated using the commercial meshing tool ANSYS-ICEM
CFD 11. For both propellers the Fixed part was discretized only with a unique structured mesh, while
Rotating was discretized with both meshing approaches. Moreover in the case of propeller P5168
were used for Rotating two meshing regimes (coarse, fine). The number of nodes of meshes of
propeller A and propeller P5168 are visible in Table 13.2 and Table 13.3. Since ANSYS-CFX 11
employs the node-centered finite volume method, (More precisely a Control Volume-based Finite
Element Method - CVFEM) the
number of nodes was chosen Fixed Nodes Rotating Nodes
as a parameter of congruence. Type Hexa Hexa Hybrid
For that reason, Grid1 and Grid 1 223820 784914 -
Grid2, Grid3 and Grid5, Grid4 Grid 2 223820 - 785344
and Grid6 have a similar
number of nodes, Table 13.2 Grids for Propeller A– (Courtesy of Morgut & Nobile)
respectively. To generate
structured meshes of both
propellers, Fixed and especially Rotating were decomposed in a large number of blocks and proper
nodes distributions were used to control dimensions and quality of the cells. The single hybrid
meshes were instead
generated with two Fixed Nodes Rotating Nodes
successive steps. First Type Hexa Hexa Hybrid
surface meshes and Grid 3 Coarse 229437 348810 -
volume tetrahedral Grid 4 Fine 229437 711932 -
meshes were created Grid 5 Coarse 229437 - 340400
using the robust Octree Grid 6 Fine 229437 - 741378
method. Then in order
to resolve the turbulent Table 13.3 Grids for Propeller P5168 – (Courtesy of Morgut & Nobile)
boundary layer on the
solid surfaces, with the similar resolution to the one used with structured meshes, layers of prism
were placed around the hub and blade. In the case of propeller A, 6 layers were generated and in the
case of propeller P5168, 15 layers were placed. The average values of y+ on solid surfaces (hub,
blade) of propeller A and propeller P5168 were 20 and 15 respectively. The y+ was defined as y+ =
μT y/ν where μT = (τw/ρ)1/2 is friction velocity, y is normal distance from the wall, ν is kinematic
305

viscosity, ρ is density and τw is wall shear stress. In the case of propeller P5168 during the refinement,
the height of the first node off the solid surfaces was kept unchanged. For propeller P5168 the
structured mesh of Fixed is visible in Figure 13.5 (a). Structured and hybrid meshes on the blade
and hub surfaces are depicted in Figure 13.5 (b-c).

(a) Hexa Mesh of part (b) Surface mesh, Hexa (c) Surface mesh, Hybrid,
Fixed, Propeller P5168 Fine, Propeller P5168 Propeller P5168

Figure 13.5 Meshing for Propeller P5168– (Courtesy of Morgut & Nobile)

13.2.5 Results
To study the influence of the grid on the quality of the prediction of the flow around a marine
propellers, numerical data were compared with available experimental data. Propeller A was used as
a preliminary study. Comparison was carried out only on global quantities of the flow while for
Propeller P5168 comparison was made, analogous as (Rhee and Joshi, 2005), also on the local values
of the flow in a downstream location x/R=0.2386 measured from the propeller mid plane, where R
is the radius of the propeller and x is the distance. The global values considered were thrust
coefficient KT , torque coefficient KQ and efficiency η defined as:

T Q J KT
KT = , KQ = , η=
ρn2 D4 ρn2 D5 2π K Q
Eq. 13.1
where T[N] is the thrust, Q[Nm] is the torque, η[rps] is the rotational speed of propeller, D[m] is the
diameter of the propeller, ρ[kg/m3] is the density of the fluid. J=V/nD is the advance coefficient,
where V[m/s] is the velocity of uniform flow. Circumferentially averaged velocity components, and
root-mean square values of turbulent velocity fluctuations were selected as local flow values. The
root mean square of turbulent velocity fluctuations q was defined as

q = √2k
Eq. 13.2
where k is the turbulent kinetic energy. In the following graphs and contours all local flow values are
non-dimensionalized by velocity of the uniform flow V. Relative percentage errors present in the next
tables are defined as
306

K T,Num − K T,Exp K T,Num − K T,Exp


ϵ(K T )% = × 100 , ϵ(K T )% = × 100
K T,Exp K T,Exp
Eq. 13.3
where KT,exp , KQ,Exp are experimental data and K Q,Num, K T,Num are numerical values.

13.2.5.1 Propeller A
In the case of propeller A the simulations
were carried out for a wide range of
advance ratios. From Table 13.4 and
Figure 13.6 it is seen that numerical
results of different meshing a approaches,
are very close to each other and also in line
with the experimental data, especially
within the range J = 0.1 - 1.0. Moreover
differences between results obtained
using different meshes are less than 4%.
The relative percentage errors, within the
range J = 1.1 - 1.2 but especially at J = 1.2,
are very height for both meshing
approaches as expected, because thrust
and torque are both almost null.

Table 13.4 Results of Propeller A– (Courtesy of Morgut


& Nobile)

Figure 13.6 KT , KQ and η Curves of Propeller A – (Courtesy of Morgut & Nobile)


307

13.2.5.2 Propeller P5168


In the case of propeller P5168 the simulations were carried out
at four advance coefficients, following experimental setup J N(rpm) V(m/s)
(Chesnakas and Jessup, 1998) showed in Table 13.5, where N = 0.98 1200 7.89
60n is the rotational speed of propeller in rpm. In this case, the 1.10 1450 10.70
simulations were carried out first using coarser grids and then 1.27 1300 11.08
using finer grids. The relative percentage differences of the 1.51 1150 11.73
computed values in KT and KQ on grids of different resolution are
showed in Table 13.6. It is noteworthy that differences of KT are Table 13.5 Experimental
higher than differences of KQ especially for the structured setup of Propeller P5168
meshing approach. The relative percentage differences are
defined as:

K T,Fine − K T,Coarse K T,Fine − K T,Coarse


λ(K T )% = × 100 , λ(K T )% = × 100
K T,Coarse K T,Coarse
Eq. 13.4

λ(KT)% λ(KQ)% ε(KT)% ε(KQ)%


J Hexa Hybrid Hexa Hybrid Hexa Hybrid Hexa Hybrid
0.98 1.37 1.34 0.55 0.98 1.65 3.30 1.35 3.49
1.10 1.64 1,60 0.63 1.23 0.65 2.60 2.31 4.88
1.27 1.36 2.25 0.31 1.56 6.70 8.61 4.28 6.92
1.51 7.89 7.59 0.91 3.88 18.84 23.19 5.73 10.83

Table 13.6 Relative Percentage Differences of Computed Values Between Finer and Coarser Mesh for
propeller P5168 – (Courtesy of Morgut & Nobile)

The results obtained using finer grids


are presented and discussed in the
following part. First the comparison of
KT and KQ is presented. From Figure
13.7 and Table 13.6 it is visible that
computed values of KT and KQ on both
meshes are all slightly overestimated
but they compare well with
experimental data, except for J = 1.51.
Results obtained using hexa-
structured mesh are better than those
obtained using hybrid-unstructured
mesh but the differences in computed
values, within the range J = 0.98 - 1.27,
are lower than 3%. See [Morgut and
Nobile]515 as they depict respectively Figure 13.7 KT and KQ curves of Propeller P5168 –
for structured and hybrid mesh the (Courtesy of Morgut & Nobile)

515Mitja Morgut, Enrico Nobile, “Comparison of Hexa-Structured and Hybrid-Unstructured Meshing Approaches
for Numerical Prediction of the Flow Around Marine Propellers”, First International Symposium on Marine
Propulsions smp’09, Trondheim, Norway, June 2009.
308

circumferentially averaged velocity components in axial (Vx), tangential (Vt) and radial (Vr) direction
vs non dimensioned radial coordinate (r/R) for various J, where r is the radial distance from the
centerline of the hub. From these figures it is visible that the predicted trends of velocity components
of both structured and hybrid meshes are very similar and differences are hard to detect. Moreover
the axial and tangential velocity components compare well with the experimental data. The radial
components, instead, are not so close to the experimental data, but their value are lower and
therefore also the experimental uncertainty are larger.
It is however noteworthy that within the range r/R = 0.6 -1.0 even though computed values are under
predicted they seem to have the same trends as the experimental data. A comparison of contours of
the root-mean square values of turbulence velocity fluctuations q on the plane x/R = 0.2386
downstream of the propeller mid plane, for J = 1.1 is presented in [Morgut and Nobile]516. From a
qualitative point of view the contours agree well with experimental data, but from a quantitative
point of view it is clear that the magnitude of turbulence kinetic energy is under predicted especially
on the hybrid-unstructured mesh where is clearly visible the effect of excessive numerical diffusion.
It seems therefore that, at least at model scale, the differences, between hexa-structured and hybrid
structured meshes do affect the accuracy in the predictions of the turbulence quantities but the effect,
for global quantities is modest. It is hard - or even impossible to extrapolate this conclusions to real
scale, given the different qualitative and quantitative character of turbulent phenomena.
13.2.6 Conclusions
In this study a comparison between hexa-structured and hybrid-unstructured meshing approaches
for the prediction of the flow around a marine propellers working in uniform flow was carried out.
The study was performed on two five-bladed propellers in model scale. Hexa-structured and hybrid-
unstructured meshes used for comparison were generated with the commercial meshing tool ANSYS-
ICEM CFD 11. The simulations were carried out with the commercial RANS solver ANSYS-CFX 11,
using the moving frame of reference approach and employing the SST (Shear Stress Transport) two
equation turbulence model. Computational results from both meshing approaches were compared
against the experimental data. In the case of propeller A the comparison was made only on global
values while for propeller P5168 the comparison was carried out also on local values of the flow field.
The numerical values of the thrust and torque coefficients computed using structured and hybrid
meshes are both in line with the experimental data. The performance curves computed using
structured meshes are slightly better than those predicted using hybrid meshes. The differences
in computed values, using different meshing approaches and except for the extreme operational
conditions, are less than 4% for propeller A and less than 3% for propeller P5168. Also the velocity
profiles of propeller P5168, computed using different meshing approaches are in line with the
experimental data, especially for axial and tangential components, (See [Morgut and Nobile]517). The
overall results suggest, that for the numerical prediction of propulsive performances the use of
hybrid meshes might be an adequate choice at least at model scale. They can offer a similar accuracy
to the one of structured meshes and moreover they need a less effort to be generated. On the other
hand, at the model scale and for the CFD code employed, the hybrid meshes do not seem to be the
preferred choice for a detailed investigation of the flow field since they introduce and excessive
diffusion in the solution.

516 Mitja Morgut, Enrico Nobile, “Comparison of Hexa-Structured and Hybrid-Unstructured Meshing Approaches
for Numerical Prediction of the Flow Around Marine Propellers”, First International Symposium on Marine
Propulsions smp’09, Trondheim, Norway, June 2009.
517 Mitja Morgut, Enrico Nobile, “Comparison of Hexa-Structured and Hybrid-Unstructured Meshing Approaches

for Numerical Prediction of the Flow Around Marine Propellers”, 1st International Symposium on Marine
Propulsions, Trondheim, Norway, June 2009.
309

13.3 Case Study 3 – Structure & Unstructured Hybrid Meshing and its effect on
Quality of Solution on Turbine Blade
Automatic robust unstructured hybrid meshing is indispensable for the success in design
optimization518. In addition, it is important to maintain the mesh quality for deformation of geometry
throughout the optimization process for the reliability of optimal design. Mesh adaptation is useful
to capture the flow feature which can highly affect flow properties. Therefore, the present hybrid-
meshing technique with adaptation is applied for various turbomachinery components to validate its
robustness. In addition, a turbine blade is used to compare the effects of mesh for the optimization.
13.3.1 Results
➢ Effect of mesh quality for design optimization with large deformation of turbine blade is
investigated by using structured mesh, unstructured hybrid mesh without adaptation, and
unstructured hybrid mesh with adaptation (Figure 13.8 (a-c)).
➢ Flow around turbine blade is computed by structured and hybrid meshes (Figure 13.8 (d-
e)). Because of different mesh topology and quality, the flow is totally different. In the figures,
structured mesh can capture the wake region well compared to hybrid mesh without mesh
adaptation.

(c) Hybrid with


(a) Structure (b) Hybrid Adaptation

(d) Structured (e) Hybrid Without


Solution Adaptation Solution

Figure 13.8 Flow Around Turbine Blade – (Courtsy of Sasaki et al.)

Daisuke Sasaki, Caleb Dhanasekaran, Bill Dawes, Shahrokh Shahpar, “Efficient Unstructured Hybrid Meshing
518

and its Quality Improvement for Design Optimization of Turbomachinery”, European Conference on
Computational Fluid Dynamics, ECCOMAS CFD 2006.
310

13.4 Case Study 4 - Evaluation of Structured vs. Unstructured Meshes for Simulating
Respiratory Aerosol Dynamics519
In simulating biofluid flow domains, structured hexahedral meshes are often associated with high
quality solutions. However, extensive time and effort are required to generate these meshes for
complex branching geometries. In this study, conducted by [Samir Vinchurkar & Worth Longest]520,
to evaluates potential mesh configurations that may maintain the advantages of the structured
hexahedral style while providing significant savings in grid construction time and complexity.
Specifically, the objective here is to evaluate the performance of unstructured hexahedral,
prismatic and hybrid meshes (prismatic + Tetrahedral) based on grid convergence and local
particle deposition fractions in a bifurcating model of the respiratory tract. A grid convergence
index (GCI) has been implemented to assess the mesh-independence of solutions in cases where true
grid halving is not feasible. Structured hexahedral, unstructured hexahedral and prismatic
meshes were found to provide GCI values of approximately 5% and nearly identical velocity
fields. In contrast, the hexahedral–tetrahedral hybrid model resulted in GCI values that were
significantly higher in comparison to the other meshes. The resulting velocity field for the hybrid
configuration differed from the hexahedral and prismatic solutions by up to an order of magnitude
at some locations. Considering the deposition of 10 μm particles in the planar configuration, all
meshes considered provided relatively close agreement (2–20% difference) with an available
experimental study. For all particle sizes considered, local and total deposition results for the
structured and unstructured hexahedral meshes were similar. In contrast, the prismatic and hybrid
geometries resulted in significantly higher deposition rates when compared to the hexahedral
meshes for particles less than 10 μm. As a result, only the unstructured hexahedral mesh was found
to provide overall performance similar to the structured hexahedral configuration with the
advantage of a significant savings in construction time. These results emphasize the importance of
aligning control volume gridlines with the predominant flow direction in bio fluid applications that
involve long and thin internal flow domains.
13.4.1 Bifurcation Model, Boundary Conditions, and Contributions
The geometry selected to evaluate the mesh styles of interest is a double bifurcation model
representative of respiratory generations G3–G5 (see Error! Reference source not found.). This m
odel is generated from the ‘‘Physiologically Realistic Bifurcation’’ (PRB) geometry specified by
[Heistracher & Hofmann]521. For the PRB geometry, [Heistracher and Hofmann]522 provide a
complete mathematical description of a single symmetric or asymmetric bifurcation based on a set
of 11 geometric parameters and two sigmoid functions. Specific parameters for the double
bifurcation model of generations G3–G5 employed in this study are identical to the values used in the
work of [Heistracher and Hofmann] and the localized particle deposition measurements of [Oldham
et al.]523. The inlet diameter of G3 in the model is 0.56 cm. Further geometric details of this
configuration have been reported in [Longest and Vinchurkar]524. In this study, grid convergence,
velocity fields, and local particle deposition profiles will be evaluated for an in-plane configuration,
as implemented in the experimental study of [Oldham et al.]. For comparison, local deposition

519 Samir Vinchurkar, P. Worth Longest, “Evaluation of hexahedral, prismatic and hybrid mesh styles for
simulating respiratory aerosol dynamics”, Computers & Fluids, 2008.
520 See Previous.
521 Heistracher T, Hofmann W. Physiologically realistic models of bronchial airway bifurcations. J Aerosol Sci

1995;26:497–509.
522 See Previous.
523 Oldham MJ, Phalen RF, Heistracher T. Computational fluid dynamic predictions and experimental results for

particle deposition in an airway model. Aerosol Sci Technol 2000;32:61–71.


524 Longest PW, Vinchurkar S. Effects of mesh style and grid convergence on particle deposition in bifurcating

airway models with comparisons to experimental data. Med Eng Phys 2007;29:350–66.
311

patterns will also be considered in an out-of-plane model where the second bifurcation has been
rotated by an angle of 90 degrees.
The steady inspiratory flow rate employed in the PRB model results in an inlet Reynolds number of
1788. For respiratory generations G3–G5, this is consistent with an inhalation flow rate in the trachea
of 60 l/min and represents a state of heavy exertion. The flow rate in generation G3 is 125 ml/s, as
specified in the experimental study of [Oldham et al].
Both inlet velocity and initial particle profiles are expected to have a significant impact on the flow
field and particle deposition locations. For comparisons to in vitro deposition data, these profiles may
be largely influenced by upstream effects in the experimental particle generation system. [Longest
and Vinchurkar] have shown that upstream transition to turbulence results in a relatively blunt
initial velocity field and particle profile at the model inlet. However, the flow within the PRB model
can be approximated as laminar. As such, fully-developed blunt turbulent profiles of velocity and
initial particle distributions have been assumed at the model inlet. Within the model, laminar flow is
assumed. Outlet flow is assumed to be evenly divided between the left and right symmetric branches,
i.e., homogeneous ventilation. Gravity has been included in the flow field and particle trajectory
calculations of the PRB model with the gravity vector oriented in the negative z-direction, i.e., normal
to the plane of the bifurcation, to remain consistent with the experiments of [Oldham et al].

13.4.2 Mesh Types


For comparisons to the structured hexahedral base case, three unstructured mesh styles have been
considered. Unstructured meshes are defined as having at least one face or block surface on which
the gridlines do not remain continuous. For the structured hexahedral mesh, four-sided blocks are
used (Figure 13.9 a), which allows the gridlines to remain continuous within each block. For the
unstructured hexahedral mesh, blocks with one triangular face have been implemented. On the
triangular cross-sectional faces, the gridlines become discontinuous at the center of each triangle
(Figure 13.10 b, Slice 1). As a result, this blocking structure produces an unstructured hexahedral
mesh. The other unstructured meshes considered include prismatic and hybrid styles (Figure
13.10). All meshes were created using the integrated solid modeling and meshing program Gambit
2.2.

Figure 13.9 Geometric Blocking Used (a) Structured Hexahedral (178 Blocks) and (b) Unstructured
Hexahedral (80 Blocks) – (Courtesy of Samir Vinchurkar & Worth Longest)

13.4.2.1 Structured
The structured base case mesh consists of six-sided hexahedral elements arranged in a system of
interconnected rectangular blocks. The blocks have been arranged in a butterfly blocking design
312

which minimizes control volume distortions while aligning a higher percentage of elements with the
local flow direction (Figure 13.9 a). Moreover, mesh density is increased near the wall and near the
bifurcation points. This multi-block structure is difficult to develop because gridlines may be
distorted, but must remain continuous throughout the geometry. Designing a high quality block-
structured meshing configuration for a geometry with multiple branches in which hexahedral
elements largely align with streamlines is a user intensive non-trivial task.
13.4.2.2 Unstructured
As with the structured mesh, the unstructured hexahedral configuration requires the creation of
sub-blocks within the geometry. However, the unstructured hexahedral design allow for two faces
on each block to have a non-continuous grid (Figure 13.10 b). Furthermore, blocks with one pair of
triangular faces may be accommodated. As a result, the planes forming these blocks may pass entirely
through the geometry (Figure 13.9 b). These planes are much easier to construct than the planes in

Figure 13.10 Four Meshing Styles of the PRB Model (a) Structured Hexahedral, (b) Unstructured
Hexahedral, (c) Prismatic, and (d) Hybrid – (Courtesy of Samir Vinchurkar & Worth Longest)

the structured hexahedral configuration that only partially bisect the geometry. In addition, the
blocking structure for the unstructured hexahedral mesh reduces the number of required blocks by
313

over 50% (Figure 13.9). Once the geometry is divided into the required blocks, non-continuous
meshes are created on cross-sectional surfaces. These meshed faces are then swept through the
geometry in the axial direction to generate the volumetric mesh. As a result, this mesh style retains
the advantage of aligning mesh elements in the predominate direction of flow.
The prismatic mesh consists of five-sided elements which are composed of two triangles joined
together by a longitudinal section of three rectangular faces. Generation of this mesh style requires
four-sided faces to be constructed on the surface of the PRB (Figure 13.10 c). The prismatic
elements are arranged such that their triangular faces fill the axial slices (Figure 13.10 c). This
allows for the rectangular sections of each prismatic element to be aligned with the direction of
predominate flow.
In order to improve the accuracy of the tetrahedral mesh style, an unstructured hexahedral–
tetrahedral hybrid mesh has been created (Figure 13.10 d). As with the prismatic mesh, four-
sided faces are required on the surface of the PRB geometry. These faces are used to construct
structured quadrilateral surface meshes, which form the basis for a layer of near-wall hexahedral
cells. The hexahedral elements are intended to better resolve the flow field near the walls where
velocity gradients are typically highest. The inner core of the flow field is then meshed with randomly
oriented tetrahedral elements. A layer of prismatic elements is used to join the hexahedral and
tetrahedral cells. In this configuration, the thin near-wall layer of hexahedral elements is aligned
with the predominate direction of flow. However, it is not possible for the randomly oriented
tetrahedral elements, which comprise a majority of the flow field, to be aligned with the axial flow
direction525.
13.4.3 Governing Equations
Flow conditions in the meshes considered are assumed to be isothermal, incompressible, laminar
and steady. Furthermore, the particle concentrations are assumed to be sufficiently dilute such that
momentum coupling effects of the dispersed phase on the fluid can be neglected, i.e., a one way
coupled flow. The governing equations for the respiratory airflow of interest include the
conservation of mass and momentum as:

∂𝐮 1
∇. 𝐮 = 0 , + (𝐮. ∇)𝐮 = (−∇p + ∇. 𝛕)
∂t ρ
Eq. 13.5
Where u is the velocity vector, p is the pressure, ρ is the fluid density, τ the shear stress tensor is
given by
𝛕 = μ[∇𝐮 + (∇𝐮)T ]
Eq. 13.6
and μ is the absolute viscosity. Hydrodynamic inlet and boundary conditions, in addition to the no-
slip wall condition, were selected to match the experimental conditions of interest. To approximate
a uniform outflow distribution, equally divided mass flow was specified. Furthermore, flow field
outlets were extended far downstream such that the velocity was normal to the outlet plane, i.e., fully
developed flow profiles with no significant radial velocity component. One-way coupled trajectories
of monodisperse 1–10 μm aerosols have been calculated on a Lagrangian basis by integration of an
appropriate version of the particle trajectory equation for comparison to the experimental results of
[Oldham et al.]. Characteristics of the 1–10 μm aerosols of interest within this model include a particle
density ρp = 1.06 g/cm3, a density ratio α = ρ/ρp ≈ 10-3, a Stokes number St =ρpd2p CCU/18μD ranging

525 The hybrid style consists of tetrahedral elements throughout the interior surrounded by three layers of
hexahedral control volumes on the surface. The internal block divisions have been shown in the cross-sectional
slices of the structured and unstructured hexahedral meshes.
314

from 0.003 to 0.26, and a particle Reynolds number Rep = ρ|u -v| dp/μ ≤ 10. The appropriate equations
for spherical particle motion under the conditions of interest are expressed as

dvi Dui f dxi


=α + (u − vi ) + g i (1 − α) + fi,lubcrication and = vi (t)
dt Dt τp i dt
Eq. 13.7
In the above equations, vi and ui are the components of the particle and local fluid velocity,
respectively. The ratio of fluid to particle density is represented as α = ρ/ρp, and gi denotes gravity.
The characteristic time required for particles to respond to changes in the flow field, or the
momentum response time, is τp = CCρpd2p/18μ, where CC is the Cunningham correction factor. The
pressure gradient or acceleration term is often neglected for aerosols due to small values of the
density ratio. However, it has been retrained here to emphasize the significance of fluid element
acceleration in biofluid flows. The drag factor f, which represents the ratio of the drag coefficient to
Stokes drag, is based on the expression of [Morsi and Alexander]526 :

CD Rep Rep a2 a3
f= = (a1 + + 2)
24 24 Rep Rep
Eq. 13.8
where the ai coefficients are constant for smooth spherical particles over the range of Reynolds
number considered, i.e. 0 ≤ Rep ≤ 10. The effect of the lubrication force, or near-wall drag
modifications, are shown but are expected to be reduced for the aerosol system of interest in
comparison to liquid flows due to near-wall non-continuum effects. As such, this term has been
neglected for the simulations considered here. Due to the significant size of the particles considered
and the dilute concentrations, Brownian motion and particle-to-particle collision effects have been
neglected. The Cunningham correction factor has only been applied for 1 lm aerosols based on the
expression of [Allen and Raabe]527. Inlet particle profiles have been specified to be consistent with
the local mass flow rate associated with the blunt velocity profile considered. That is, the mass flow
rate of particles on a finite ring, m p,ring, at the inlet is given by

r2
ṁp,ring ~ṁring = ∫ ρu(r)2πdr
r1
Eq. 13.9
where r1 and r2 define the extent of the ring and u(r) is the inlet velocity profile. Initial particle
velocities were assumed to match the local fluid velocities. Further details describing the
specification of initial particle profiles are discussed in [Longest and Vinchurkar]528.
13.4.4 Numeric Method
To solve the governing mass and momentum conservation equations in each of the geometries and
for each mesh style, the CFD package Fluent 6.2 has been employed. User-supplied FORTRAN and C
programs have been employed for the calculation of initial particle profiles, particle deposition
locations, grid convergence, and post-processing. All transport equations were discretized to be at

526 Morsi SA, Alexander AJ. An investigation of particle trajectories in two-phase flow systems. J Fluid Mech
1972;55(2):193–208.
527 Allen MD, Raabe OG. Slip correction measurements of spherical solid aerosol particles in an improved Millikan

apparatus. Aerosol Sci Technol 1985;4:269–86.


528 Longest PW, Vinchurkar S. Effects of mesh style and grid convergence on particle deposition in bifurcating

airway models with comparisons to experimental data. Med Eng. Phys 2007;29:350–66.
315

least second order accurate in space. For the convective terms, a second order upwind scheme was
used to interpolate values from cell centers to nodes. The diffusion terms were discretized using
central differences. To improve the computation of gradients for the tetrahedral elements of the
hybrid mesh, face values were computed as weighted averages of values at nodes, which provides an
improvement to using cell-centered values for these meshes. Nodal values for the computation of
gradients were constructed from the weighted average of the surrounding cells, following the
approach proposed by [Rauch et al.]529. A segregated implicit solver was employed to evaluate the
resulting linear system of equations. This solver uses the Gauss–Seidel method in conjunction with
an algebraic multigrid approach to solve the linearized equations. The SIMPLEC algorithm was
employed to evaluate pressure–velocity coupling. The outer iteration procedure was stopped when
the global mass residual had been reduced from its original value by five orders of magnitude and
when the residual-reduction-rates for both mass and momentum were sufficiently small.
To ensure that a converged solution had been reached, residual and reduction-rate factors were
decreased by an additional order of magnitude and the results were compared. The stricter
convergence criteria produced a negligible effect on both velocity and particle deposition fields. To
improve accuracy, CGS units were employed, and all calculations were performed in double
precision. To further improve resolution in the particle deposition studies, geometries were scaled
by a factor of 10 and the appropriate non-dimensional parameters were matched. To determine grid
convergence and establish grid independence of the velocity field solutions, successive refinements
of each mesh style have been considered. For each refinement, grid convergence is evaluated using a
relative error measure of velocity magnitude between the coarse and fine solutions:

ui,coarse − ui,fine
εi = | |
ui,fine
Eq. 13.10
A vector of relative error values was determined for 1000 consistent points located in the region of
the bifurcation. The root-mean-square of the relative error vector was used to provide an initial
scalar measure of grid convergence for the points considered

1/2
∑1000 2
i=1 εi
εrms =( )
1000
Eq. 13.11
Rigorously, grid convergence measures should be based on refining the grid by a factor of two, i.e.,
grid halving. However, dividing hexahedral elements by a factor of two in three dimensions is often
not practical due to the significant increase in the number of control volumes. As such, relative error
values must be adjusted to account for cases in which grid reduction factors less than r = 2 are
employed. To extrapolate εrms values to conditions consistent with true grid halving, the Grid
Convergence Index (GCI) has been suggested by [Roache]530. This method is based on Richardson
extrapolation and can be applied as
εrms
GCI = Fs
rp − 1
Eq. 13.12
In the above equation, r represents the grid refinement factor and p is the order of the discretization
method. Based on second-order discretization of all terms in space, p = 2 for the systems of interest.

529 Rauch RD, Batira JT, Yang NTY. Spatial adaption procedures on unstructured meshes for accurate unsteady
aerodynamic flow computations. Technical Report AIAA-91-1106, 1991.
530 Roache P. Computational fluid dynamics. Albuquerque: Hermosa; 1992.
316

Refinement of the meshes was performed to maintain a constant reduction value in the three
coordinate directions. The associated r value has been calculated as the ratio of control volumes in
the fine and course meshes
Nfine 1/3
r=( )
Ncoarse
Eq. 13.13
To limit errors arising from the extrapolation procedure, r values of approximately 1.5 or greater
have been considered. A factor of safety FS equal to 3 has been selected to provide a GCI value equal
to the εrms value when r = 2 and p = 2. Therefore, the GCI value represents a scaled version of εrms to
account for mesh refinement factors less than 2. Particle trajectories were calculated within the
steady flow fields of interest as a post-processing step. The integration scheme employed to solve Eq.
13.7 was based on the trapezoid rule with a minimum of 10 integration steps in each control volume.
Doubling the number of integration steps within each control volume had a negligible (less than 1%)
effect on cumulative particle deposition values. Due to relatively small particle response times,
double precision calculations have been employed. It was found that approximately 20,000 particle
trajectories were required to produce convergent cumulative deposition values based on a 1%
relative error criterion. As such, 20,000 particles have been initialized in all deposition cases
considered.
13.4.5 Results
13.4.5.1 Validation Studies
Validations of velocity field values for the structured hexahedral mesh scheme applied to a
bifurcation geometry have been reported in a previous study. Briefly, a single bifurcation model was
considered with a characteristic Reynolds number of 518 and results were compared to the empirical
velocity field data of [Zhao and Lieber]531. For steady inhalation flow, the velocity field results of
[Longest and Vinchurkar] indicate good quantitative agreement with the empirical data of [Zhao and
Lieber].
13.4.5.2 Grid Convergence
To evaluate grid convergence for each mesh style considered, low, mid and high-resolution
comparisons between coarse and fine grids have been considered for the planar geometry. Results
of this comparison in the form of grid convergence values and required simulation times are reported
in Table 13.7 (a-d) and are discussed below. The reported grid convergence results are for the
planar bifurcation model. Similar grid convergence results were observed for the out-of-plane
configuration. The number of grid cells required is based on the presence of one symmetry plane, i.e.,
one-half of the geometry is meshed. As described, grid convergence has been based on comparisons
between coarse and fine grid solutions at 1000 points concentrated in the region of the bifurcation.
A layer of near-wall comparison points was positioned to be less than 5% of the internal radius away
from the wall. Selections of other sets of 1000 points as well as doubling the number of points
considered had a negligible (i.e., less than 1%) impact on the grid convergence values reported. For
the structured hexahedral mesh, successive grid refinements resulted in an effective reduction of εrms
values (Table 13.7a). For the high resolution case, an εrms of 1.99% was obtained. In comparison to
other relative error estimates, this value is relatively high. However, the selection of 1000 points with
many locations near the wall and in low velocity positions produces a very rigorous condition for
testing grid convergence. Moreover, errors on the order of 1% are expected to arise from the linear
interpolation algorithm used to calculate values at the positions of interest for comparisons of the
coarse and fine grid solutions. Therefore, achieving εrms values below 1% may not be possible with

531 Zhao Y, Lieber BB. Steady inspiratory flow in a model symmetrical bifurcation. J Biomech Eng 1994.
317

the rigorous grid convergence method employed. In this study, values of εrms on the order of
approximately 1% are considered to represent a well converged solution.
Accounting for the grid reduction factor used in the high resolution case results in a GCI value of
4.27% for the structured hexahedral mesh with 214 K control volumes. Grid convergence estimates
for the unstructured hexahedral mesh are reported in Table 13.7 b. These results are highly similar
to the grid convergence values observed for the base case. That is, an εrms value of 1.95% is achieved
for the high resolution case. However, the number of grid cells required to achieve this level of grid
convergence was increased from 214K for the structured hexahedral mesh to 318 K for the
unstructured hexahedral mesh. This increase in cell number resulted in a 10% increase in solution
time. Grid convergence index values on the order of 10%, as observed for the medium-level
resolution, are shown to result in visible differences between velocity profiles. For the high resolution
case, which is characterized by a GCI of 4.32%, differences in the velocity profiles are much less
discernable. For the prismatic mesh configuration, εrms and GCI values are similar to those observed
for the hexahedral style meshes (Table 13.7 c). However, to achieve this level of grid convergence,
grid resolution was increased by approximately 30–40% for each case considered. This increase in
grid density produces an associated increase in simulation time of approximately 20%. Furthermore,
it is observed that the medium-level resolution case of the unstructured prism mesh results in a GCI
value of approximately 6.6%, which is consistent with the high resolution prismatic case and

(a) Structure (Hexa)

(b) Un-Structured (Hexa)

(c) Un-Structured (Prism)

(d) Un-Structured (Hybrid)

Table 13.7 Grid Convergence – (Courtesy of Samir Vinchurkar & Worth Longest)
318

significantly lower than with the medium resolution hexahedral meshes. Grid convergence values for
the hybrid meshes are significantly higher than values reported for the their configurations (Table
13.7 d). The minimum GCI value for the hybrid style was 17.7% and occurred medium-level grid
density.
For the high-level resolution condition, the GCI value increased to 21.3%. Further increases in grid
density resulted in a higher GCI value. This increase may be a result of round-off errors arising from
an over-resolved grid. Furthermore, this level of grid convergence is consistent with GCI values
observed for purely tetrahedral meshes with and without flow adaption. As a result, the hybrid mesh
style results in GCI values that are significantly higher than observed for the other meshes considered
in this study and appears to provide little advantage to purely tetrahedral style meshes. The higher
GCI values of the hybrid configuration may largely be a result of mesh elements not aligning with the
direction of predominate flow.
13.4.5.3 Velocity Fields
Velocity vectors, contours of velocity magnitude and streamlines of secondary motion are resented
in Figure 13.11 for the high resolution cases of the four mesh styles considered in the planar
bifurcation model. Midplane velocity fields appear highly similar among the hexahedral and
prismatic meshes (Figure 13.11 c). However the hybrid mesh results in a significant reduction in
midplane velocity gradients, which may arise from artificial or numerical dissipation (Figure 13.11
d). Similarly, secondary motions viewed at cross-sectional slice locations appear similar among the
first three mesh styles considered (Figure 13.11 c). A single vortex is observed for the upper half of
the geometry at Slice 1. The second carinal ridge produces a pair of counter rotating vortices for the
inner branch of G5, as observed in Slice 2 (Figure 13.11c). However, due to the highly dissipative
conditions of the hybrid mesh, only one fully formed vortex is observed in each of the three cross-
sectional planes considered (Figure 13.11 d). In summary, mid plane velocity vectors appear
relatively consistent among the four meshes considered, with some variations observed for the
hybrid configuration.
Secondary velocity profiles appear similar between the two hexahedral mesh styles. However,
secondary velocity profiles are significantly different for the non-hexahedral meshes with the largest
variations occurring for the hybrid configuration. In order to better evaluate differences among the
solutions of the meshes considered, mid plane velocity profiles have been plotted at Slices 1–3 for
high resolution conditions in the planar model. At each location, velocity profiles for the hexahedral
and prismatic meshes are similar. However, minor differences among the first three solutions are
discernable. This observation highlights the fact that a high level of grid convergence does not ensure
an exact match among solutions of different mesh types. In contrast to the hexahedral and prismatic
solutions, the hybrid configuration results in significantly different velocity profiles. Velocity values
for the hybrid solution again appear to be influenced by a high degree of dissipation. Considering
Slice 3, differences between the first three solutions and the hybrid configuration vary between
approximately 30% to one order of magnitude.
13.4.5.4 Particle Deposition
Deposition locations for the four mesh styles considered and the planar geometry with 10 μm
particles are shown in Figure 13.12. The 10 μm aerosols deposit primarily by impaction.
Qualitatively, the observed deposition locations are very similar between the structured and
unstructured hexahedral meshes. Furthermore, the hexahedral mesh styles exhibit very distinct
divisions between regions of deposition and areas devoid of particle–wall interactions. In contrast,
particle deposition locations for the prismatic and hybrid meshes appear more diffuse. This effect
may be the result of fewer mesh elements aligned with the flow, especially for the hybrid
configuration. Nevertheless, each of the mesh styles considered emphasizes local accumulations of
particles, referred to as hotspots, occurring just upstream of the bifurcation points and continuing
downstream for approximately one-half the branch lengths.
319

For 10 μm particles, the structured hexahedral, unstructured hexahedral and prismatic high
resolution meshes all match the experimental data of [Oldham et al]. For these three solutions,
variations from the cumulative particle deposition experimental data are within 2–3%. Furthermore,
these solutions result in a final deposition fraction that is within approximately 1% of the
experimentally reported value of 81%. Differences in cumulative deposition values among the
solutions for the hexahedral and prismatic meshes vary by less than 1%. In contrast, cumulative

Figure 13.11 Velocity Vectors (a) Structured Hexahedral Mesh with 214 K C.V. (b) Unstructured
Hexahedral Mesh with 318 K, C. V. (c) Prismatic Mesh with 510K C. V, (d) Hybrid Mesh with 608 K C.
V. – (Courtesy of Samir Vinchurkar & Worth Longest)

deposition results for the high-resolution hybrid mesh and 10 μm particles are significantly lower
320

than the experimental data. The hybrid mesh considered is observed to under-predict cumulative
deposition by approximately 20%. (see [Samir Vinchurkar & Worth Longest]532).
As particle size decreases, larger differences are observed among the cumulative deposition
predictions for the mesh styles considered. For 5 μm aerosols, the structured and unstructured
hexahedral meshes are in close agreement with a final deposition fraction between 5% and 6%. In
contrast, the prismatic mesh predicts a cumulative deposition of 11%, which is approximately double
the hexahedral mesh estimates. Results for the hybrid mesh and 5 μm particles are even higher, with
a total deposition fraction of 12%. Considering 3 μm particles, close agreement is observed between
the hexahedral mesh predictions with a total deposition fraction of 0.3%. In contrast, the prismatic
and hybrid configurations predict a deposition rate of approximately 1.8%. A similar trend is
observed for 1 μm aerosols. Again, results for the structured and unstructured hexahedral
configurations are in close agreement with a total deposition fraction ranging between 0.12% and
0.17%. However, predictions of the prismatic and hybrid meshes are significantly higher by a factor

Figure 13.12 Deposition Locations for 10 lm Particles in the Planar Geometry for the (a) Structured
Hexahedral Mesh, (b) Unstructured Hexahedral Mesh, (c) Prismatic Mesh, and (d) Hybrid Mesh –
(Courtesy of Samir Vinchurkar & Worth Longest)

of approximately five.

532Samir Vinchurkar, P. Worth Longest, “Evaluation of hexahedral, prismatic and hybrid mesh styles for
simulating respiratory aerosol dynamics”, Computers & Fluids, 2008.
321

In general, cumulative deposition results are consistent between the structured and unstructured
hexahedral meshes for the planar geometry. Results for the prismatic and hybrid meshes differ from
the hexahedral results by values ranging from 20% (10 μm) to a factor of five (1 μm). Deposition
predictions of the prismatic and hybrid meshes are also generally higher than for the hexahedral
models. Differences in deposition results between the hexahedral and prism/hybrid meshes appears
to increase with decreasing particle size. For all particle sizes considered in respiratory generations
G3–G5, impaction is the primary deposition mechanism. However, the smaller particles considered
have less inertia and are influenced to a greater extent by the secondary velocity patterns. Significant
differences in secondary velocity profiles were observed between the hexahedral and other mesh
styles considered in Figure 13.11. Therefore, it is concluded that differences in secondary motion
patterns associated with mesh style are partially responsible for increased differences in deposition
patterns as particle size is reduced.
Furthermore, increase in secondary motion associated with out of plane bifurcations may induce
additional discrepancies among the models considered. Cumulative deposition results for the out-of-
plane geometry and particle sizes of 3 and 10 μm are shown in533. As with the planar geometry for 10
μm particles, close agreement is observed between the hexahedral and prismatic mesh
configurations with a total deposition rate of approximately 90%. The hybrid mesh results in an 85%
deposition value, which is in relatively close agreement with the other mesh styles considered.
However, significant differences in model predictions are again observed as the particle size is
decreased. For 3 μm aerosols, results for the structured and unstructured hexahedral meshes appear
to be in close agreement with a total deposition rate of approximately 1.8%. Deposition results for
the prismatic and hybrid meshes are approximately six times higher than the other model predictions
with a total deposition fraction of 11%.
13.4.6 Discussion
In this study, the effects of mesh style have been evaluated with respect to grid convergence, velocity
fields and particle deposition values in a double bifurcation model of the respiratory tract. Mesh
styles considered include structured hexahedral, unstructured hexahedral, prismatic and hybrid
configurations. Particles ranging from 1 to 10 μm have been evaluated in planar and out-of-plane
geometries. Deposition results for 10 μm particles in the planar geometry were found to be in close
agreement with the experimental deposition data of [Oldham et al.] on a highly localized basis. In
general, grid convergence, velocity fields, and local particle deposition values were consistent
between the structured and unstructured hexahedral meshes. Both hexahedral meshes considered
resulted in GCI values of approximately 5% and nearly identical midplane and secondary velocity
patterns.
Furthermore, local particle deposition profiles were largely similar for the hexahedral meshes across
the range of particle sizes evaluated. Considering the prismatic mesh, GCI values were comparable to
the hexahedral configuration with only a moderate increase in control volume number. Prismatic
velocity fields were consistent with the hexahedral results, with some minor variations in the
secondary velocity profiles. However, the prismatic mesh resulted in significant differences in local
deposition profiles for particles less than 10 μm. The hybrid mesh resulted in a GCI value that was
significantly higher than observed for the other meshes. This increase in GCI occurred despite a
significant increase in the number of cells in the hybrid mesh. The velocity field for the hybrid
configuration differed from the hexahedral and prismatic solutions by up to an order of magnitude
at some locations with significant differences in the secondary vortex patterns. Moreover, deposition
results for the hybrid mesh differed from the hexahedral results by values ranging from 20% (10 μm)

533Samir Vinchurkar, P. Worth Longest, “Evaluation of hexahedral, prismatic and hybrid mesh styles for
simulating respiratory aerosol dynamics”, Computers & Fluids, 2008.
322

to a factor of five (1μm). For the out-of-plane bifurcating geometry, local deposition results were
generally consistent for 10 μm aerosols, but differed significantly for 3 μm particles among the mesh
styles considered.
This study highlights the effects of mesh style on grid convergence and related solution variables for
an internal biofluid flow field. For any CFD problem, the required quality of the solution is often
weighted against the time and resources available for mesh development. Structured hexahedral
meshes are often thought to provide the highest quality solution, but the associated mesh
construction time may be prohibitively expensive. In this study, structured hexahedral and
unstructured hexahedral mesh schemes have been shown to provide highly comparable grid
convergence values, velocity fields and particle deposition profiles.
Moreover, both of these mesh styles predicted deposition results in very close agreement with
experimental data for 10 μm aerosols in a planar geometry. As illustrated in Figure 13.10
construction of the unstructured hexahedral mesh requires a less complex blocking schemes than for
the structured hexahedral configuration. For example, construction of the structured hexahedral
mesh requires the creation of 178 blocks in comparison to 80 blocks for the unstructured hexahedral
mesh. Therefore, the unstructured hexahedral mesh offers a significant savings in construction time
without an appreciable loss in solution performance. Compared with the purely tetrahedral meshes
considered in [Longest and Vinchurkar], the hybrid mesh employed in this study showed no
improvement in performance.
Construction of the hybrid mesh did require subdivision of the PRB surface geometry into
rectangular faces. In contrast, construction of purely tetrahedral meshes does no require subdividing
the surface into rectangular faces. As a result, purely tetrahedral and flow adaptive tetrahedral
meshes may be advantageous in comparison to the hybrid mesh considered in this study.
Furthermore, the use of tetrahedral meshes may be preferred when rapid approximate solutions are
the top priority. This scenario may arise for patient-specific modeling in the clinical setting. That is,
approximate solutions with rapidly generated tetrahedral meshes may be necessary in order to make
true patient-specific modeling a reality in the clinical setting .
13.4.6.1 Advantages of Hexahedral Structured Mesh
In this study, hexahedral and prismatic meshes were found to provide adequate grid convergence
and similar velocity fields. For particle deposition, hexahedral mesh configurations appear to
provide the best solution. The observed better performance of the hexahedral and prismatic meshes
in comparison to the hybrid mesh may occur for two reasons:
First, both hexahedral and prismatic meshes can be aligned with the predominate direction of flow.
This alignment is reported to reduce numerical diffusion errors. Furthermore, discretization errors
partially cancel on opposite hexahedral faces. In contrast, mainly tetrahedral meshes cannot be
aligned with the direction of predominate flow, thereby increasing the potential for numerical
diffusion. Therefore, numerical diffusion errors associated with randomly oriented tetrahedral faces
are one likely cause of the higher grid convergence values observed for these meshes. The occurrence
of these errors is enhanced in the unidirectional flow system considered.
The second possible factor responsible for the improved performance of the hexahedral solutions is
the use of higher order elements. The hexahedral elements implemented provide more nodes per
face for improved predictions of flux values and particle tracking. Some commercial CFD packages
provide an increased number of nodes per face to account for this problem. However, the effect of
increasing the number of nodes per face has not been quantified for internal biofluid flows.
Furthermore, the effects of nodes per face on solution performance is expected to be a secondary
factor in comparison to aligning the grid with the predominate direction of flow in the long and thin
conduits of interest.
Limitations of the current study include calculation of the GCI parameter at linearly interpolated
points, the evaluation of a single software package, and the construction of only one style of hybrid
323

mesh. The grid convergence parameter was evaluated at 1000 representative points throughout the
flow field. These points include near-wall locations where minor variations in flow field velocities
can result in very large relative errors. Modifying the number and location of these randomly selected
points did not appreciably change the GCI value provided at least 1000 points were included.
However, interpolation errors are present in determining values at comparison points. These errors
are estimated to be on the order of approximately 1%. Nevertheless, the grid convergence algorithm
employed provided an effective strategy for evaluating relative performance among the mesh styles
considered that includes low velocity and near-wall regions.
In this study, only one commercial software package was evaluated. Other software may improve the
solution quality of the hybrid configuration. Moreover, many other hybrid mesh styles are possible.
Nevertheless, evaluation of a representative state-of-the-art commercial software provides a
valuable basis of comparison for various styles of meshes. Furthermore, this study highlights the
advantages of aligning mesh elements with the predominate direction of flow, which is
independent of the computational package considered.
13.4.7 Conclusion
In deduction, structured and unstructured hexahedral meshes have been shown to provide
acceptable grid convergence values, comparable velocity fields and good agreement with
experimental 10 μm particle deposition data in a branching respiratory geometry. Generation of the
unstructured hexahedral mesh provided a significant time savings in pre-processing with an
associated minimal increase in computational run time. In contrast, a hybrid mesh configuration of
tetrahedral cells surrounded by multiple layers of near-wall hexahedral elements resulted in
significantly higher grid convergence values and different velocity and particle deposition
results. These findings emphasize the importance of aligning control volume gridlines with the
predominate direction of flow and using higher order elements in biofluid applications with long and
thin conduits. Future work is needed to better assess modified flux interpolation schemes, other
hybrid configurations and the use of polyhedral elements. For further discussion, please refer to
[Samir Vinchurkar, P. Worth Longest]534.

13.5 Case Study 5 - Comparison Between Structured Hexahedral and Hybrid


Tetrahedral Meshes Generated by Commercial Software for CFD Hydraulic
Turbine Analysis535
Reducing meshing time and improving hybrid tetrahedral meshes are desired goals in hydraulic
turbine analysis. This paper compares two different meshing methodologies in an industrial
application of Francis hydraulic turbines. The first meshing methodology is a structured
hexahedral mesh designed by ANSYS ICEM CFD 13.0©536 and the second is a hybrid tetrahedral
mesh developed by Pointwise 17.0 R1©537. This software promises to reduce meshing time in
comparison to hexahedral structured mesh as well as greatly improve hybrid tetrahedral meshing.
Two different spiral case geometries of the same hydraulic turbine are used for the comparison. The
features of these geometries are explained, especially in terms of understanding the challenges posed
by their meshing. The meshing methodologies and the advantages and disadvantages in the
application of these meshes to these geometries are then explained in detail. The numerical method
for the flow calculation and the boundary conditions used to obtain the results are shown. The total

534 Samir Vinchurkar, P. Worth Longest, “Evaluation of hexahedral, prismatic and hybrid mesh styles for
simulating respiratory aerosol dynamics”, Computers & Fluids, 2008.
535 Philippe Martineau Rousseau, Azzeddine Soulaïmani and Michel Sabourin, “Comparison between structured

hexahedral and hybrid tetrahedral meshes generated by commercial software for CFD hydraulic turbine analysis”,
Conference Paper, May 2013.
536 ANSYS ICEM CFD 13.0. Available from: http://www.ansys.com/Products/Other+Products/ANSYS+ICEM.
537 Pointwise 17.0 R1. Available from: http://www.pointwise.com/.
324

head loss and the meridian velocity at the symmetrical plane are used to show similarities between
the two meshing methodologies. An investigation of the small differences between the results is
made, utilizing the velocity and total pressure contours. These analyses indicate that these two
meshing methodologies achieve equivalent results for both spiral case geometries.

13.5.1 Problem Description


Structured hexahedral meshes are usually used to produce more accurate predictions of head losses
for internal flows or of the drag force for external flows. The quality of their elements and their
improved control over their distribution in the computational domain are the main factors that make
them more appealing than tetrahedral meshes. However, designing a hexahedral mesh with a good
level of quality for complex geometry requires a considerable time investment, very often from a few
days to a few weeks. In addition, it is sometimes impossible to obtain a mesh of acceptable quality
for very complex geometries. Unstructured tetrahedral meshes are preferred for their ability to
quickly mesh complex geometries. However, the addition of structured elements in boundary layers
is necessary to improve energy loss prediction. As a result, hybrid tetrahedral meshes are widely
used in aerospace and hydraulic turbomachines. Please be advised that the hybrid tetrahedral mesh,
often has problems in the transition between the boundary layer structured elements and the
neighboring unstructured ones. The too-rapid increase of volume elements, as illustrated in Figure
13.13 (a), is often the source of inaccuracies and convergence problems. Other problems inherent
to tetrahedral elements are the inappropriate spatial discretization of trailing and leading edges,
which are also the cause of inaccuracy in the determination of the energy loss. Figure 13.13 (b),
displays the correct transition between prismatic and volume elements in a boundary area mesh.

(a) Problematic Transition (b) Correct Transition

Figure 13.13 Boundary Layer Transition Between Prismatic and Volume Elements – (Courtesy of
Rousseau et al.)
325

13.5.2 Geometry
A turbine spiral case is the component before
the runner of a Francis hydraulic turbine.
More specifically, it begins after the penstock
and ends at the runner’s entrance, and it also
includes the stay vanes and the wicket gates.
Figure 13.14 shows a half domain used for
the calculation of a spiral case. The primary
function of the spiral casing is to rotate the
flow and distribute it equally to the runner [4].
The stay vanes and mostly the wicket gates
induce a direction to the flow at the entrance
of the runner. Ideally these functions are
carried out with minimum head loss and
evenly within each stay vane and wicket gate Figure 13.14 Example of a hydraulic turbine
Figure 13.15 spiral
Geometry of the
case (half Stay Vanes and
domain)
channel. For example, the effect of
Wicket Gates,
– (Courtesy of RousseauGeometry
Left: Geometry A, Right: et al.) B –
recirculation zones at the stay vanes could (Courtesy of Rousseau et al.)
affect the distribution and direction of the flow
at the runner. The behavior of the runner as
well as of the draft tube could thus be affected. In this paper, we consider two spiral case geometries
of the same hydraulic turbine and these are scaled at small model dimensions. Each spiral case has
24 stay vanes and wicket gates. Five different models of stay vanes are utilized in each spiral case.
These models are characterized by their different cord lengths, which decrease from the entrance to
the end of the spiral case. The wicket gates are identical within the same spiral case.
The difference between the two spiral cases lies with the stay vanes and the wicket gates. The stay
vane leading edge incidence angle of the geometry B is better aligned with the flow and rounded.
The trailing edges of the stay vanes and wicket gates are tapered. Figure 13.15 shows the
differences between the two geometries with the same model of stay vanes and wicket gates. These
changes improve the flow in the geometry B by reducing the separation on the upper surface of the
stay vanes. This greatly eliminates the recirculation zones. Replacement of the chamfer by a rounded
leading edge on the stay vanes and refinement of the trailing edge of the wicket gates also decrease
wakes in the flow. The flow is generally more uniform in the geometry B. The total head loss through
the spiral case is also greatly reduced. The complexity of the flow and the different models of stay
vane in the spiral case prevent any periodic simplification of the computational domain. However, it
is simplified symmetrically in the horizontal plane. The absence of the runner after the exit of the
spiral case allows this simplification. The computation domain of the geometry A is shown in Figure
13.14. The exit of the spiral case is far from the trailing edge of the wicket gates to reduce the effect
of the outflow condition on the flow.

13.5.3 Mesh Description


Some statistics of the meshes used in CFD are shown in Table 13.8. Three different mesh densities
are used for the geometry A; coarse (C), medium (M) and fine (F). The geometry B used two meshes;
coarse (C) and medium (M). The increase in the density of elements on the surface profiles and walls
of the spiral case is the main difference between each mesh. The thickness of the first element on the
wall is the same for all meshes. It is selected to achieve a Y+ of less than 5, and averages close to 2.
This value is a compromise with respect to the size of the mesh. In contrast to external flows, the
internal flow contains several solid walls. Obtaining a Y+ close to one would be ideal, but it was
impossible to achieve with our available computing resources.
326

Geometry A Geometry B

Table 13.8 Mesh Densities for Structured Hexahedral and Hybrid Un-Structural Tetrahedral –
(Courtesy of Rousseau et al.)

13.5.3.1 Structured Hexahedral Meshes


Structured hexahedral meshes are designed
with ICEM CFD 13.0 © and are of a multi block
type. Figure 13.16 show the symmetry
surface of the medium hexahedral mesh at
different resolutions. In this case, the
structured hexahedral mesh has the
advantage of an adequate definition of the
leading and trailing edges of the hydraulic
profiles. Elements in the wake are also of an
appropriate density and positioned correctly.
However, the use of structured hexahedral
mesh in a spiral case brings several
drawbacks. For example, the junction of the
blocking of each channel of the spiral case
leads to a needlessly high element density at
the domain exit, see the [Rousseau et al.]538.
This junction in the blocking also leads to
poor-quality elements on the upper surface of
the stay vanes, particularly near the leading
edge. It is the same at the leading and trailing
edges of the wicket gates. The time required
to construct a structured hexahedral mesh for
a spiral case is another drawback. The large
number of operations related to the multiple
blocks is the main cause539. Figure 13.16 Structured Hexahedral Mesh of the
Geometry A on the Symmetrical Surface and Close
Up – (Courtesy of Rousseau et al.)

538 Philippe Martineau Rousseau, Azzeddine Soulaïmani and Michel Sabourin, “Comparison between structured
hexahedral and hybrid tetrahedral meshes generated by commercial software for CFD hydraulic turbine analysis”,
Conference Paper, May 2013.
539 See Previous.
327

13.5.3.2 Hybrid Tetrahedral Mesh


Unlike structured hexahedral mesh, the hybrid tetrahedral design does not require complex blocking.
The construction of the mesh with Pointwise 17.0 R1© begins with the design of a surface mesh. The
volume mesh is then performed by a Pointwise tool called T-Rex, with smooth transition between
prismatic and volume elements as shown in Figure 13.13 (b). These tools allow a good-quality
volume mesh to be created in a shorter timeframe than with the hexahedral structured mesh. The
mesh density is generally adequate in every place of the spiral case. In addition, unlike the structured
hexahedral topology, the wall elements are of a higher quality because they are more orthogonal.
Figure 13.17 (left) shows an example of the hybrid tetrahedral mesh for the geometry A. A
drawback of using hybrid tetrahedral mesh is the difficulty to obtain a density of elements equivalent
to that of the structured hexahedral in the wake of hydraulic profiles, as illustrated in Figure 13.17
(right). In fact, the size of the elements increases too quickly. This difference may lead to an
overestimation of the dissipation in the wake.

Figure 13.17 Hybrid Tetrahedral Medium Mesh on the Symmetric Surface of the Geometry A (left) &
Mesh in the wake of a Hydraulic Profile (wicket gates trailing edge)(right) – (Courtesy of Rousseau et al.)

13.5.4 CFD Solution Strategy and Boundary Conditions


The flow is computed for a Reynolds number of , based on the runner diameter (350 mm). It is
modeled by the Reynolds Averaged Navier-Stokes equations (RANS) and the standard SST
turbulence. The presence of a separation and recirculation zone in the geometry A justifies the use of
this turbulence model540-541. The second-order advection scheme of ANSYS CFX (blend factor = 1) is
used to limit the numerical diffusion. The convergence is obtained when the RMS residuals of the
momentum and mass conservation equations are less than 10-5. It is also verified that the total head
loss in the spiral case has been stabilized. However, the presence of large recirculation zones
prevents this level of convergence to be achieved for all calculations, but the total head loss is always
stabilized. This implies that the flow is locally weakly unsteady. The lack of information about the
flow boundary conditions used in the physical setup lead us to assume the following conditions: the
flow rate corresponding to a maximum opening of the wicket gates is imposed at the entrance of the
spiral case by a velocity profile. This profile corresponds to a fully developed turbulent flow in a
circular duct as described by the Power Law542. A zero static pressure is imposed at the spiral case
exit. However, these conditions can only be valid in a comparative analysis situation.

540 Shur, M., et al., Comparative Numerical Testing of One- and Two-Equation Turbulence Models for Flows with
Separation and Reattachment, 33rd Aerospace Sciences Meeting and Exhibit, American Institute of Aeronautics
and Astronautics: Reno, NV, 1995.
541 Bardina, J.E., P.G. Huang, and T.J. Coakley, Turbulence Modeling Validation, Testing, and Development, NASA.
542 R. Munson, B., et al., Fundamentals of Fluid Mechanics. Sixth Edition ed2009, Hoboken, NJ: Wiley. 724.
328

13.5.5 Results
Analysis of the total head loss as a function of the radius provides details about the loss through the
spiral casing components, which in turn allows identification of the component that causes the
largest total head loss. This information is used to amend the problematic component, for example,
the stay vanes in the geometry A. Ultimately, the analysis helps in calculating the hydraulic efficiency
of the turbine. The meridian velocity on the symmetrical plane is also used to compare the two
meshes. It provides qualitative information on the flow. For example, it shows the effect of
recirculation zones or of an obtuse trailing edge. It also indicates if the hybrid tetrahedral mesh
overestimates the dissipation of the wake. The meridian velocity is measured at 10 % upstream of
the inlet radius of the stay vanes, between the end of the stay vanes and the beginning the guide
vanes, and at the average radius of the runner inlet.
The difference of the total cumulative loss between the two types of mesh is approximately 10% and
occurs predominantly near the trailing edge of the stay vanes and upstream of the leading edge of
the guide vanes. Figure 13.18 confirms that the total head loss difference originates at the end of
the
stay vanes. In fact, the hybrid tetrahedral mesh models a larger recirculation zone and thus a larger
wake. The better quality of the prism elements of the tetrahedral mesh on the wall could be the cause
for that larger wake. Furthermore, Figure 13.18 shows an effect of the second order advection
scheme (blend factor = 1) used in the geometry A by the non-physical total pressure augmentation
(red contour plot). This second order scheme could lead to local instabilities in cases of sudden flow
direction change or coarse meshes. The adaptive CFX advection scheme (high resolution) should
eliminates these instabilities but will induce more numerical diffusion in the presence of large
recirculation zones.

Figure 13.18 Relative Total Head Loss on the Meridian Plane for the Geometry A with fine mesh, left:
Structured Hexahedral, right: Hybrid Tetrahedral – (Courtesy of Rousseau et al.)
329

Figure 13.19 show the meridian velocity profiles for the geometry A with medium and fine meshes.
For both grids, the meridian velocity is almost identical at the entrance of the stay vanes. The slight
difference is due to the azimuthal change in the distribution of the flow. It should be noted that the
sudden jump in the meridian velocity corresponds to the end of the spiral case at an azimuthal
position of 40°. The wave pattern in the velocity profile shows the influence of the leading edge of
the stay vanes. The velocity profile in the gap between the stay vanes and the wicket gates is very
similar for all meshes. However, there remains a slight difference caused by the largest recirculation
zone in the hybrid tetrahedral mesh. The velocity profile at the entrance of the runner differs by its
faster dissipation of the wake and a gap in the velocity profile. The former tends to carry out a
smoothing of the velocity profile, and the latter results from the difference between the recirculation
zone in the hybrid tetrahedral mesh. The velocity profile at the entrance of the runner differs by its
faster dissipation of the wake and a gap in the velocity profile.
The former tends to carry out a smoothing of the velocity profile, and the latter results from the
difference between the recirculation zones of the two meshes. As noted on the velocity profile at the
entrance of the stay vanes, the recirculation zone differences slightly change the flow distribution in
the spiral case. These differences between the two meshes are slightly more pronounced with
increased refinement. In fact, the recirculation zone is larger with hybrid mesh. In contrast to the
geometry A, it appears that the evolution of the total head loss is very similar for both types of
meshes. Only the coarse hybrid tetrahedral mesh differs in the total head loss to the end of the stay
vanes and wicket gates. The too-rapid growth of the tetrahedral mesh at the trailing edge explains
this difference.

Figure 13.19 Meridian Velocity Near a Stay Vane with fine mesh for Geometry A, left: Structured
Hexahedral, right: Hybrid Tetrahedral – (Courtesy of Rousseau et al.)
330

For the geometry, only medium meshes are chosen due to the strong similarity of their assessment
of the total head loss. As expected, the meridian velocity at the entrance of the stay vanes is almost
identical for the two meshes. (see the [Roussea et al.]543). Similarly, the velocity is almost identical
between the stay vanes and the wicket gates. The meridian velocity at the runner entrance shows
that the hybrid tetrahedral mesh dissipates faster the wake. In fact, the extreme values caused by the
wicket gate’s wake are dispelled by this mesh. Figure 13.20 shows the overall effect of the
dissipation of the wake caused by the too-rapid growth of the tetrahedral mesh. However, a strong
similarity of the flow is observed between the two mesh types.

Figure 13.20 Meridian Velocity on the Meridian Plane for the Geometry B – (Courtesy of Rousseau et al.)

13.5.6 Conclusion
The comparison between the structured hexahedral and hybrid tetrahedral meshes in the complex
geometry of a hydraulic turbine spiral case gives an advantage to the latter. In fact, Pointwise
software eliminates many defects inherent to hybrid tetrahedral mesh, such as inadequate definition
of hydraulic profiles and poor transition between prismatic and volume elements. This mesh also
leads to higher quality elements near the walls. Furthermore, a significant savings in turnaround time
is obtained for the mesh construction compared to the hexahedral mesh. Typically, the mesh design
time is reduced between five and ten times with the construction of a hybrid tetrahedral mesh. The
results show a great similarity of the flow for the two meshes in the two geometries. However, the
flow in the geometry A differs in the recirculation zones in the upper surface of the stay vanes. The
hybrid tetrahedral mesh models a larger recirculation zone than that of the structured hexahedral.

543Philippe Martineau Rousseau, Azzeddine Soulaïmani and Michel Sabourin, “Comparison between structured
hexahedral and hybrid tetrahedral meshes generated by commercial software for CFD hydraulic turbine analysis”,
Conference Paper, May 2013.
331

The higher quality of the prismatic elements on the wall could be one cause. This difference modifies
the evolution of the total head loss and slightly alters the meridian velocity profile. In addition to
these differences, there is also a slightly faster dissipation of the wake downstream of hydraulic
profiles in the hybrid tetrahedral mesh. The too-rapid growth of tetrahedral elements is the main
cause. However, this disadvantage could be reduced with a finer mesh (and associated computational
resources). In the absence of detailed experimental results about the flow in the spiral case, it is not
possible to conclude on the accuracy of each mesh.
In regard to the geometry B, the flow and the evolution of losses are virtually identical. As in the
geometry A, there is only a slightly larger dissipation of the wakes due to the rapid expansion of the
size of tetrahedral mesh elements at the trailing edge. Finally, the application of two types of mesh in
both geometries shows similar results in terms of hydraulic performance. However, it is interesting
to note that the evolution of the total head loss function of the radius in the spiral case shows that the
hexahedral mesh requires fewer nodes than the tetrahedral hybrid mesh to achieve mesh
independence. This can be an important factor when the available computing power is limited or the
number of licenses for commercial software becomes an issue. The application of the hybrid
tetrahedral mesh is currently being used for the calculation of the entire flooded parts of a Francis
hydraulic turbine. That study should allow demonstrating the validity of this meshing method
compared with experimental results.
332

14 Mesh Sensitivity and Mesh Independence Study


Although mesh sensitivity, in our opinion, could be grouped as one of mesh quality criteria, it is still
debatable a, so we leave it as such. But more importantly what is the difference between mesh
sensitivity and mesh independence? Very little. Although some argue that grid sensitivity is a real
(measured quantity) while grid independence is merely a mist and cannot be truly achieved. So it
dependence who is your audience. Here we homage first mesh sensitivity than mesh independence
study.

14.1 Different Types of Mesh Sensitivity


Several methods concerning the derivation of mesh sensitivity equations are currently available.
Among the most frequently mentioned are :

• Direct (Analytical) Differentiation (DD),


• Adjoint Variable (AV),
• Symbolic Differentiation (SD),
• Automatic Differentiation (AD), ( e.g. Odyssée or ADIFOR)
• Finite Difference (FD), (Brute Force)

Each technique has its own unique characteristics. For example, the Direct Differentiation, used
here, has the advantage of being exact, due to direct differentiation of governing equations with
respect to design parameters, but limited in scope. By far, the most used sensitivity analysis, is
Adjoint Variables techniques, especially for aerodynamic optimization. Due to apparent popularity,
we consider these in more details.

14.1.1 Symbolic Differentiation


Manipulates mathematical expressions in the code. If you ever used Matlab or Mathematica, then
you probably used it. For every math expression they know the derivative and use various rules
(product rule, chain rule) to calculate the resulting derivative. Then they simplify the end expression
to obtain the resulting expression.

14.1.2 Automatic Differentiation


Manipulates blocks of computer each element of a program (when you define any operation in code,
you need to register a gradient for this operation). It also uses chain rule to break complex
expressions into simpler ones.

14.1.2.1 Symbolic vs Automatic Differentiation


You might think that Automatic differentiation is the same as Symbolic differentiation (in one place
they operate on math expression, in another on computer programs). And yes, they are sometimes
very similar. But for control flow statements (`if, while, loops) the results can be very different:
symbolic differentiation leads to inefficient code (unless carefully done) and faces the difficulty of
converting a computer program into a single expression programs544.

14.1.3 Finite Differencing


This method is easy implement, but cost insensitive. There are a series of issues with this approach.
Accuracy is the main drawback of the method especially for non-linear problems such as those of
aerodynamic nature. Cost is also something that should not be underestimated. For instance,
considering the case where the grid sensitivity needs to be computed, the number of operations that
need to be performed is 𝑁𝐷𝑉×𝑚, where m is the number of step size tested which is unknown a priori

544 Stackoverflow blog.


333

and is specific for each design variable (DV). It is obvious that the cost quickly becomes
unmanageable545.

14.2 Mesh Sensitivity via Direct Differentiation (DD)


The general equations can be written as Where R is the residual vector, X mesh vector, and P is the
meshing parameters. This results in a large system of linear equations in delta form at each time step
as for a steady-state solution (i.e., t → ∞) reduces to

𝐑( 𝐗 (𝐏), 𝐏) = 0
Eq. 14.1
Where the explicit dependency of R on grid and vector of parameters P is evident. The parameters P
control the grid X. Using chain rule of differentiation

∂𝐑 ∂𝐗 ∂𝐑
[ ][ ] + [ ] = 0
∂𝐗 ∂𝐏 ∂𝐏
Eq. 14.2
Further simplification could include the vector of grid sensitivity which is

 X   X   XB 
 =  
 P   XB   P 
Eq. 14.3
Where XB denotes the boundary nodes546.

14.2.1 Surface Modeling Using NURBS


Among many ideas proposed for generating any arbitrary surface, the approximate techniques of
using spline functions are gaining a wide range of popularity. The most commonly used approximate
representation is the Non-uniform Rational B-Spline (NURBS) function. They provide a powerful
geometric tool for representing both analytic shapes (conics, quadrics, surfaces of revolution, etc.)
and free-form surfaces547; or occasionally called Free From Deformations (FFD). The surface is
influenced by a set of control points and weights to where unlike interpolating schemes the control
points might not be at the surface itself. By changing the control points and corresponding weights,
the designer can influence the surface with a great degree of flexibility without compromising the
accuracy of the design. The relation for a NURBS curve is

n N i,p (r) ωi
X (r) =  R i,p (r) Di i = 0,........., n R i,p (r) = n
i =0
N
i =0
i, p (r) ωi
Eq. 14.4
where X (r) is the vector surface coordinate in the r-direction, Di are the control points (forming a
control polygon), ωi are weights, Ni,p (r) are the p-th degree B-Spline basis function, and Ri,p(r) are

545 Gabriele Luigi Mura, “Mesh Sensitivity Investigation in the Discrete Adjoint Framework”, Thesis submitted to
University of Sheffield in partial fulfilment of the requirement for the degree of Doctor of Philosophy, 2017.
546 Sadrehaghighi, I., Smith, R.E., Tiwari, S., N., “Grid Sensitivity and Aerodynamic Optimization Of Generic Airfoils”,

Journal of Aircraft, Volume 32, No. 6, Pages 1234-1239.


547 Tiller, W., “Rational B-Splines for Curve and Surface Representation," Computer Graphics and Applications,

Volume 3, N0. 10, September 1983.


334

known as the Rational basis functions set

∑ R i,p (r) = 1 , R i,p (r) ≥ 0


i=1
Eq. 14.5
Figure 14.2 represents a six control point representation of a generic airfoil. The points at the
leading and trailing edges are fixed. Two
control points at the 0% chord are used to
affect the bluntness of the section. Similar
procedure can be applied to other airfoil
geometries such as NACA four or five digit
series. Another example Figure 14.1
shows two airfoils NACA0012 and
RAE2822 parameterized using B-Spline
curve of order 4 with control points. The
choice for number of control points and
their locations are best determined using
an inverse B-Spline interpolation of the
initial data. The algorithm yields a system
of linear equations with a positive and
banded coefficient matrix. Therefore, it
can be solved safely using techniques such
as Gaussian elimination without pivoting.
The procedure can be easily extended to
cross-sectional configurations, when
critical cross-sections are denoted by Figure 14.2 Six Control Point Representation of a
several circular conic sections, and the Generic Airfoil
intermediate surfaces have been
generated using linear interpolation. Increasing the weights would deform the circular segments to
other conic segments (elliptic, parabolic, etc.) as desired for different flight regions. In this manner,
the number of design parameters can be kept to a minimum, which is an important factor in reducing
costs. The practice is effortlessly applicable to 3D for example like the common wing & fuselage as
designated in Figure 14.3 [Kenway et al.]548. The choice for number of control points and their
locations are best determined using an inverse B-Spline interpolation of the initial data. The
algorithm yields a system of linear equations with a positive and banded coefficient matrix.

Figure 14.1 B-Spline Approximation of NACA0012 (left) and RAE2822 (right) Airfoils

Gaetan K.W. Kenway, Joaquim R. R. A. Martins, and Graeme J. Kennedy, “Aero structural optimization of the
548

Common Research Model configuration”, American Institute of Aeronautics and Astronautics.


335

Therefore, it can be solved safely using techniques such as Gaussian elimination without pivoting.
The procedure can be easily extended to cross-sectional configurations, when critical cross-sections
are denoted by several circular conic sections, and the intermediate surfaces have been generated
using linear interpolation. Increasing the weights would deform the circular segments to other conic
segments (elliptic, parabolic, etc.) as desired for different flight regions. In this manner, the number
of design parameters can be kept to a minimum, which is an important factor in reducing costs. An
efficient gradient-based algorithm for aerodynamic shape optimization is presented by [Hicken and
Zingg]549 where to integrate geometry parameterization and mesh movement. The generalized B-
spline volumes are used to parameterize both the surface and volume mesh. Volume mesh of B-spline
control points mimics a coarse mesh where a linear elasticity mesh-movement algorithm is applied
directly to this coarse mesh and the fine mesh is regenerated algebraically. Using this approach,
mesh-movement time is reduced by two to three orders of magnitude relative to a node-based
movement.

Figure 14.3 Free Form Deformation (FFD) for Volume Grid with Control Points (Courtesy of
Kenway et al.)

14.2.1.1 Case Study - 2D Study of Airfoil Grid Sensitivity via Direct Differentiation (DD)550
The structured grid sensitivity of a generic airfoil with respect to design parameters using the NURBS
parameterization is discussed. The geometry, as shown in Figure 14.2, has six pre-specified control
points. The control points are numbered counter-clockwise, starting and ending with control points
(0 and 5), assigned to the tail of the airfoil. A total of 18 design parameters (i.e., three design
parameters per control point) available for optimization purpose. Depending on desired accuracy
and degree of freedom for optimization, the number of design parameters could be reduced for each
particular problem. For the present case, such reduction is achieved by considering fixed weights
and chord-length. Out of the remaining four control points with two degrees of freedom for each,

549 Jason E. Hickenand, David W. Zingg, “Aerodynamic Optimization Algorithm with Integrated Geometry
Parameterization and Mesh Movement”, AIAA Journal Vol. 48, No. 2, February 2010.
550 Sadrehaghighi, I., Smith, R.E., Tiwari, S., N., “Grid Sensitivity and Aerodynamic Optimization Of Generic Airfoils”,

Journal of Aircraft, Volume 32, No. 6, Pages 1234-1239.


336

control points 1 and 5 have been chosen as a case study. The number of design parameters is now
reduced to four with XD = {X1, Y1, X5, Y5}T, with initial values specified in Figure 14.2. Non-zero
contribution to the surface grid
sensitivity coefficients of these control
points are the basis functions R1,3(r)
and R5,3(r). The sensitivity gradients
are restricted only to the region
influenced by the elected control
point.
This locality feature of the NURBS
parameterization makes it a desirable
tool for complex design and
optimization when only a local
perturbation of the geometry is
warranted. Similar results can be
obtained for design control point 5
where the sensitivity gradients are
restricted to the lower portion of
domain. Figure 14.4 shows C-type
dual blocks structured grid and its
sensitivity with respect to NURBS
input for different design control
points.

14.3 Adjoint Variable


Sensitivity Analysis (AV)
Following closely the development in
[Luo and Liu]551, in the discipline of
aerodynamics, a performance function
I is usually dependent on flow
solutions w and aerodynamic shape,
which is essentially dependent on the
geometric parameters x = {x1; · · · ;xN},
and subsequently the grid. The
sensitivities of performance function
to geometric parameters can be given
as
δ𝐈 ∂𝐈 δ𝐰 ∂𝐈
= +
δ𝐱 i ∂𝐰 δ𝐱 𝐢 ∂𝐱 i
Eq. 14.6 Figure 14.4 Sample Grid and Grid Sensitivity
In the meantime, δw implicitly
depends on aerodynamic shape change through the governing flow equations R(w , x) = 0. A similar
form as Eq. 14.6 for R can be given as

551 Jiaqi Luo, Feng Liu, “Performance Impact Of Manufacturing Tolerances for a Turbine
Blade Using Second Order
Sensitivities”, Proceedings of ASME Turbo Expo 2018: Turbomachinery Technical Conference and Exposition,
GT2018, June 11-15, 2018, Oslo, Norway.
337

δ𝐑 ∂𝐑 δ𝐰 ∂𝐑
= + =0
δ𝐱 𝐢 ∂𝐰 δ𝐱 i ∂𝐱 𝐢
Eq. 14.7
By introducing a series of co-state variables, Ψ and subtracting the product of ΨT and Eq. 14.6 from
Eq. 14.7, we can get

δ𝐈 ∂𝐈 ∂𝐑 δ𝐰 ∂𝐈 ∂𝐑
={ − ψT } + { − ψT }
δ𝐱 i ⏟∂𝐰 ∂𝐰 δ𝐱 𝐢 ∂𝐱 𝐢 ∂𝐱 i
0
Eq. 14.8
The crucial issue of the adjoint method is to eliminate the effects of δw on δI to avoid the calculation
of δw due to the change of aerodynamic shape. It can be achieved if the adjoint operator Ψ satisfies
the adjoint equations, therefore the first term in Eq. 14.8 is set to zero. Then the sensitivities can be
determined by
δ𝐈 ∂𝐈 ∂𝐑
= − ψT
δ𝐱 i ∂𝐱 𝐢 ∂𝐱 i
Eq. 14.9
Once the flow solutions and adjoint solutions are obtained by solving the governing flow equations
and the adjoint equations, respectively, the complete sensitivities can be calculated by deforming the
aerodynamic shape and thus the grid for each geometric parameter. Considering that the evaluation
of an aerodynamic objective function involves perturbing the grid, it is to be expected that the
sensitivities of the objective function to the design variables will in some way involve sensitivities of
the grid perturbation algorithm. When evaluating the gradient using the discrete adjoint method,
these mesh sensitivities are implicitly included in the terms ∂I/∂xi and ∂R/∂xi .552 Table show the pro

Method Pro Cons


Prone to Cancellation
and Round-off error-
Cost scales linearly
Finite Difference Easy To Implementation
with the 𝑁𝐷𝑉 - Poor
accuracy and
Consistency
The Pre-Processing
No Convergence Issue Low Memory
Analytical cost is Proportional to
and CPU Requirements
the 𝑁𝐷𝑉
Needs the Solution of a
Adjoint Variables Independent from the 𝑁𝐷𝑉
Large Linear System
Increase in Memory
Automatic Easy to Implement - Largely
When Used in Reverse
Differentiation Automatic
Mode

Table 14.1 Pros & Cons of Different Grid Sensitivity Method (NDV = Number of Design Variable)

552Chad Oldfield, “An Adjoint Method Augmented with Grid Sensitivities for Aerodynamic Optimization”, A thesis
submitted in conformity with the requirements for the degree of M.A.Sc. Graduate Department of Aerospace
Engineering University of Toronto, 2006.
338

and cons of different mesh sensitivity routine as envisioned by [Gabriele Luigi Mura]553.

14.3.1 Case Study - Using An Adjoint Approach to Eliminate Mesh Sensitivities in Computational
Design
Authors : Eric J. Nielsen and Michael A. Park
Title : Using An Adjoint Approach to Eliminate Mesh Sensitivities in Computational Design
Source : https://ntrs.nasa.gov/search.jsp?R=20080015430 2019-12-29T19:30:31+00:00Z
An algorithm for efficiently incorporating the effects of mesh sensitivities in a computational design
framework is introduced. The method is based on an adjoint approach and eliminates the need for
explicit linearization of the mesh movement scheme with respect to the geometric parameterization
variables. An expense that has hindered practical large-scale design optimization using discrete
adjoint methods [Nielsen and Park]554. The effects of the mesh sensitivities can be accounted for
through the solution of an adjoint problem equivalent in cost to a single mesh movement
computation, followed by an explicit matrix–vector product scaling with the number of design
variables and the resolution of the parameterized surface grid. The accuracy of the implementation
is established and dramatic computational savings obtained using the new approach are
demonstrated using several test cases. Sample design optimizations are also shown.
14.3.1.1 Introduction
In recent years a concerted effort has been made to bring higher fidelity, physics-based
computational fluid dynamics (CFD) simulations into the aircraft design process. Such tools have
typically been used to perform validations of designs derived through the use of lower fidelity
methods, or in some cases, used in heuristic design methods that rely heavily on experience.
However, these advanced CFD tools are now routinely targeted as primary components of automated
optimization frameworks.
In the field of gradient-based design, one challenge in utilizing solvers based on the Euler or
Reynolds-averaged Navier-Stokes equations has been an efficient and accurate method for
computing the sensitivity derivatives required by many optimization algorithms. Approaches such
as finite differencing [1-3], direct differentiation,[4-10] and the complex variable method [11-16] can
be used for calculating these derivatives; however, their cost scales directly with the number of
design variables. For typical aerodynamic design problems where this value may be on the order of
tens to hundreds, this limitation precludes the use of such methods.
To alleviate the computational burden associated with problems containing many design variables,
recent work has focused on the use of adjoint methods [17-35]. Adjoint methods may be
implemented in either a continuous or discrete context, depending on the order in which the
differentiation and discretization operations are performed. The relative merits of the two
approaches are the subject of much debate in the literature; one such difference is the focus of the
current work.
Both the continuous and discrete adjoint approaches introduce an auxiliary, or adjoint, variable that
is determined through the solution of an additional linear system of equations. Using the same
solution procedure as is used for the governing equations, asymptotic convergence rates of both
systems are similar, as the eigenvalues of the two systems are the same. Moreover, for the discrete
adjoint variant, if the solution algorithm itself is constructed in a manner which is discretely adjoint
to the baseline scheme, the asymptotic convergence rates are guaranteed to be identical [19,20,31].

553 Gabriele Luigi Mura, “ Mesh Sensitivity Investigation in the Discrete Adjoint Framework”, Thesis is submitted
to University of Sheffield in partial fulfilment of the requirement for the degree of Doctor of Philosophy, 2017.
554 Eric J. Nielsen and Michael A. Park, “Using An Adjoint Approach to Eliminate Mesh Sensitivities in

Computational Design”, AIAA 2019.


339

The primary advantage of the adjoint approach is that the expense does not scale with the number of
design variables. Indeed, the solution of the adjoint system itself is independent of the number of
design variables. In practice, however, the discrete approach dictates that the effects of the mesh be
accounted for in the sensitivity derivatives, whereas these terms do not appear in the derivation of
the continuous operators. While perhaps counterintuitive, this difference is actually viewed as one
of the primary advantages of the discrete approach where, by definition, the sensitivity analysis is
discretely consistent with the flow simulation. If these grid-related contributions are not included, it
has been shown that the resulting sensitivities can be extremely inaccurate and even of the incorrect
sign.[29,30]. The continuous approach should converge to the discrete result in the case of a
sufficiently refined grid, but this condition is seldom, if ever, met in current practice for realistic
three-dimensional complex geometry computations.
Unfortunately, the expense of computing these grid-related terms has hindered large-scale
application of the discrete approach. For a single design variable, the use of a direct mode of
differentiation to obtain the derivative of a mesh movement scheme based on linear elasticity was
shown in Ref. 30 to cost as much as 30% of a flow simulation.
Clearly, the expense associated with performing this operation for several dozen design variables
will dominate the overall computation.
In the current work, an adjoint formulation is introduced that obviates the need for an explicit
computation of the grid sensitivities. Such an approach has previously been used in the automatic
differentiation (AD) community [36], however, no explicit formulations for hand coding such a
technique have been found in the literature. The scheme presented in the current work significantly
reduces the expense associated with the mesh linearization. Demonstrations of the method show that
a rigorous discrete sensitivity analysis for problems based on the Navier-Stokes equations may
ultimately be performed at a cost comparable to that of the analysis problem.
14.3.1.2 Mesh Sensitivities via Forward Mode Differentiation
The discrete adjoint technique for sensitivity analysis can be derived in several ways. Here, the
approach taken in Ref. 28 is used. Consider the vector of discretized residual equations R for the Euler
or Navier-Stokes equations as a function of the design variables D, computational mesh X, and flow
field variables Q. Given a steady-state solution of the form R (D, Q, X) = 0 , a Lagrangian function L
can be defined as
L(𝐃, 𝐐, 𝐗, Λ) = f(𝐃, 𝐐, 𝐗) + ΛT 𝐑(𝐃, 𝐐, 𝐗)
Eq. 14.10
where f (D, Q, X) represents a cost function to be minimized and Λ represents a vector of Lagrange
multipliers, or adjoint variables. Differentiating this expression with respect to D yields the following:

dL ∂f ∂𝐗 T ∂f ∂𝐐 T ∂f ∂𝐑 T ∂𝐑 T ∂𝐗 T ∂𝐑 T
={ +[ ] } + [ ] { + [ ] Λ} + {[ ] + [ ] [ ] } Λ
d𝐃 ∂𝐃 ∂𝐃 ∂𝐗 ∂𝐃 ⏟∂𝐐 ∂𝐐 ∂𝐃 ∂𝐃 ∂𝐗
0
Eq. 14.11
Since the vector of adjoint variables is essentially arbitrary, the coefficient multiplying ∂Q/∂D = 0 can
be eliminated using the following equation

∂f ∂𝐑
− = [ ] ΛT
∂𝐐 ∂𝐐
Eq. 14.12
340

The adjoint equation given in Eq. 14.12 represents a linear set of equations for the costate variables.
Although this system can be solved directly using GMRES, a time-like derivative is added and the
solution is obtained by marching in time, much like the flow solver:

V ∂𝐑 T n ∂f ∂𝐑
{ 𝐈 + [ ] }∆ Λ = − − [ ] Λn where Λn+1 = Λn + ∆n Λ
∆t ∂𝐐 ∂𝐐 ∂𝐐
Eq. 14.13
The time term can be used to increase the diagonal dominance for cases in which GMRES alone would
tend to stall. This ultimately results in a more robust adjoint solver. Due to the large amount of code
resulting from the linearization of the viscous terms and the turbulence model, these contributions
are stored in the present implementation. Because the stencil for the inviscid contributions is larger,
the linearization of these terms is recomputed at each step to avoid the need for extra storage and
data structure.
The solution of this linear system of equations for three-dimensional turbulent flows on unstructured
grids has been demonstrated previously in [28-31]. Once the solution for has been formed, the
remaining terms in Eq. 14.11 can be evaluated to give the desired sensitivity vector

dL ∂f ∂𝐗 T ∂f ∂𝐑 T ∂𝐗 T ∂𝐑 T
={ +[ ] } + {[ ] + [ ] [ ] } Λ
d𝐃 ∂𝐃 ∂𝐃 ∂𝐗 ∂𝐃 ∂𝐃 ∂𝐗
Eq. 14.14
The ∂X/∂D terms in Eq. 14.14 represent the mesh sensitivities. In Ref. 30, a mesh movement
strategy based on the equations of linear elasticity is described. Although generally not as expensive
as a flow field computation, the cost associated with solving these equations is not trivial. If the
system is posed as
𝐊𝐗 = 𝐗 surface
Eq. 14.15
then the mesh sensitivities may be computed from the following:

∂𝐗 ∂𝐗
𝐊 = ( )
∂𝐃 ∂𝐃 surface
Eq. 14.16

Note that the solution of this linear system is equivalent in cost to that of the mesh movement (Eq.
14.15), and must be obtained once for each design variable in D .

14.3.1.3 Adjoint Approach for Eliminating Mesh Sensitivities


Now reconsider Eq. 14.10, where a subscript f has been appended to indicate the adjoint variable
associated with the flow equations, and an additional adjoint variable Λg multiplying the residual of
the grid movement problem has been introduced:

L(𝐃, 𝐐, 𝐗, Λf , Λg ) = f(𝐃, 𝐐, 𝐗) + ΛTf 𝐑(𝐃, 𝐐, 𝐗) + ΛTg 𝐑(𝐊 𝐗 − 𝐗 𝐬𝐮𝐫𝐟𝐚𝐜𝐞 )


Eq. 14.17
Linearizing with respect to D as before yields
341

dL ∂f ∂𝐑 T ∂𝐐 T ∂f ∂𝐑 T
= + [ ] Λf + [ ] { + [ ] Λf } +
d𝐃 ∂𝐃 ∂𝐃 ∂𝐃 ⏟∂𝐐 ∂𝐐
0
T T
∂𝐗 ∂f ∂𝐑 ∂𝐗
[ ] { + [ ] Λ f + ΛTg K} − ΛTg [ ]
⏟∂𝐃 ∂𝐗 ∂𝐗 ∂𝐃 surface
0
Eq. 14.18
As before, the coefficient multiplying [∂Q/∂X]T can be eliminated by satisfying the adjoint equation
for the flow simulation, Eq. 14.12. In a similar fashion, the term multiplying [∂Q/∂X]T can also be
eliminated by satisfying a second adjoint problem:

∂f ∂𝐑 T
𝐊Λg = − { + [ ] Λf }
∂𝐗 ∂𝐐
Eq. 14.19
With the solution of Eq. 14.12 and Eq. 14.19, the final form of the sensitivity vector becomes

dL ∂f ∂𝐑 ∂𝐗
= + ΛTf [ ] − ΛTg [ ]
d𝐃 ∂𝐃 ∂𝐐 ∂𝐃 surface
Eq. 14.20
With the formulation outlined above, a single solution of the linear system given by Eq. 14.19 is
required for each function . If is some quantity composed of aerodynamic coefficients such as lift,
drag, or moments, several observations can also be made about Eq. 14.20. For design problems in
which the shape is held constant and only global parameters such as the angle of attack or Mach
number are allowed to vary, Eq. 14.19 need not be evaluated, and the third term in Eq. 14.20 is
identically zero. Conversely, for problems involving solely geometric parameterization variables, the
first and second terms in Eq. 14.20 are identically zero, as there is no explicit dependence of or on f
or R and D. In addition, the term is ΛTg [∂X/∂D]T very cheap to compute and only requires an explicit
inner product dimensioned by the size of the surface mesh for each design variable.

14.3.1.3.1 Implementation
The software developed in [28–30] has been extended to include the formulation outlined above. In
the previous implementation, the matrix–vector product Λf [∂R/∂X]T has been stored to enable rapid
computation of each inner product with ∂X/∂D , as these residual linearization are constant for all
shape parameters in . These mechanics are now used to construct the right-hand side of Eq. 14.19
in the current work.
The parameterization schemes employed here are described in [37 and 38], and rely on a free-form
deformation technique to provide a compact set of design variables for a wide range of
configurations. Given the current vector of design variables D, the methods are used to determine the
current location of the surface grid points as well as their analytic derivatives with respect to D,
[∂X/∂D]surface . The schemes are very inexpensive and can be used to consistently parameterize
families of computational meshes suitable for multiple disciplines.
The matrix K is formed using the method of [30], and is merely transposed once all of the
contributions have been included. The system given by Eq. 14.19 is then solved using the
Generalized Minimal Residual (GMRES) algorithm implemented in [30]. Since the eigenvalues of K
remain unchanged by the transpose operation, the solution for converges similarly to that of the
mesh movement scheme. In the current implementation, adjoint solutions for multiple functions f
342

may be computed simultaneously as outlined in [31] by storing multiple right hand sides for Eq.
14.19. Once the solution for has been computed, an explicit inner product with the surface mesh
sensitivities for each design variable yields the final sensitivity vector.

14.3.2 Consistency of Linearization


To verify the accuracy of the implementation, derivatives of the lift and drag coefficient are computed
for fully turbulent flow over the ONERA M6 wing geometry40 shown in Figure 14.5. The grid for
this case contains 16,391 nodes and 90,892 tetrahedra. The freestream Mach number is 0.84, the
angle of attack is 3.06 degrees, and the Reynolds number is 1 M based on the mean aerodynamic
chord. The computations have been
performed in a domain-decomposed
environment on 12 Pentium IV
processors using three different
approaches as outlined in Table
14.2. All equation sets have been
converged to machine accuracy.
The first linearization method is a
direct mode of differentiation using
complex variables. This approach was
originally suggested in [12] and [13],
and was first applied to a Navier-
Stokes solver in [11]. The primary
advantage of this approach is that true
second-order accuracy may be
obtained by selecting step sizes
without concern for subtractive
cancellation error typically present in
real-valued divided differences.
Through the use of an automated Figure 14.5 ONERA M6 grid used for evaluating
scripting procedure as outlined in linearizations.
[41], this capability can be
immediately recovered
at any time for the Method Flow Field Linearization Mesh Linearization
baseline code. For Direct differentiation
Direct differentiation with
computations using this with
1 automated complex
method, the complex automated complex
variables
step size has been variables
chosen to be 10-5. The Hand Coded discrete Hand Coded Discrete
second technique used 2 adjoint Adjoint
to verify the Eq. 14.12 Eq. 14.13 and Eq. 14.16
linearization relies on Hand Coded Discrete Hand Coded Discrete
the hand coded 3 Adjoint Adjoint
implementation [29,31] Eq. 14.12 Eq. 14.19 and Eq. 14.20
of the discrete adjoint
system given by Eq. Table 14.2 Schemes used to obtain sensitivities
14.12 for the flow
equations and the hand
coded direct differentiation of the mesh terms [30] as formulated in Eq. 14.13 and Eq. 14.15. The
third approach is similar to that of Method 2; however, the present adjoint formulation given by Eq.
14.19 and Eq. 14.20 is used to evaluate the mesh terms.
343

Table 14.3 Comparison of sensitivity derivatives for lift and drag coefficients using various approaches

Sensitivity derivatives for the lift and drag


coefficients using several shape parameters
located at the midspan of the wing are shown in
Table 14.3. All three methods are in excellent
agreement, with the only discrepancies apparent
in the twelfth decimal place or better; note that
even at machine precision, the last several digits
are often still fluctuating. A comparison of the
convergence rates for the systems given by Eq.
14.16 and Eq. 14.19 is shown in Figure 14.6.
The systems converge in a similar fashion.
14.3.3 Test Case - Slotted Wing–Body
Configuration
The final example is fully turbulent flow over a
transport wing–body configuration with a wing
incorporating an advanced slotted airfoil concept.
The mesh for this case is shown in Figure 14.7
and contains 1,326,150 nodes and 7,744,304
tetrahedra. The freestream Mach number is 0.87, Figure 14.6 Convergence rates for direct and
adjoint modes.
the angle of attack is 2.7 degrees, and the
Reynolds number is 3 M based on the mean
aerodynamic chord.
Here, the flow solver and its adjoint counterpart have each been run 1000 time steps, using the tightly
coupled implementation of [31] for the turbulence equation. For this reason, the relative expense of
the flow field adjoint solution is less than that of the previous examples, since the complete Jacobian
of the residual operator is required at every time step during the flow solution. The surface grids for
this computation have been parameterized using the method of [37] to create a set of 172 design
variables describing the main wing and flap geometries.
For this case, the analysis problem takes 236 minutes of wall clock time versus 194 minutes for the
sensitivity analysis. The present adjoint formulation for the mesh terms yields a savings of
approximately 23 hours in computing the sensitivities for all 172 variables. This is the equivalent of
six additional flow field solutions.
An unconstrained maximization of is performed for the current configuration, using a subset of 41 of
the shape parameters in addition to the angle of attack. As in the previous examples, the geometry is
constrained to maintain its original thickness. The net result of the optimization procedure is a 32%
increase in L/D as shown in Figure 14.7. For this case, the optimizer required 26 sensitivity
analyses during the course of the computation. The previous formulation for the grid sensitivities
344

would have required an


estimated additional
142 hours of wall clock
time to perform the
same optimization. This
savings is the
equivalent of 37 flow
field solutions.
14.3.4 Summary and
Conclusions
An adjoint formulation
to efficiently account
for mesh sensitivities
has been developed and
implemented. In
combination with an
adjoint procedure for
the aerodynamic flow
field, the new approach
effectively removes the
dependence on the size
of the design space for a
rigorous discrete Figure 14.7 Surface grid for slotted wing–body
sensitivity analysis. configuration
Unlike previous
methods that required explicit computation of
grid sensitivity terms for each design variable,
the current approach accounts for these terms
through the solution of a single adjoint problem,
equivalent in cost to the mesh movement scheme
being used.
The method has been implemented within a
three-dimensional unstructured grid framework,
and the resulting sensitivity derivatives have
been shown to be in excellent agreement with a
direct mode of differentiation using complex
variables, as well as a previous implementation
using hand coded direct differentiation for the
mesh terms. Timings for the major components
have been shown for several large-scale
configurations, with dramatic savings obtained
through the use of the adjoint formulation for the
Figure 14.8 Lift-to-drag ratio during
mesh linearization. Demonstration optimizations unconstrained optimization of wing–body
yield improvements in vehicle performance for configuration
the discrete models used.
345

14.3.5 References
1 Hicks, R.M., and Henne, P.A., "Wing Design by Numerical Optimization," Journal of Aircraft, Vol. 15,
1978, pp. 407-412.
2 Joh, C.-Y., Grossman, B., and Haftka, R.T., "Design Optimization of Transonic Airfoils," Engineering
Optimization, Vol. 21, 1993, pp. 1-20.
3 Vanderplaats, G.N., Hicks, R.N., and Murman, E.M., "Application of Numerical Optimization
Techniques to Airfoil Design," NASA Conference on Aerodynamic Analysis Requiring Advanced
Computers, NASA SP-347, Part II, March 1975.
4 Baysal, O., and Eleshaky, M.E., “Aerodynamic Sensitivity Analysis Methods for the Compressible Euler
Equations,” Journal of Fluids Engineering, Vol. 113, 1991, pp. 681-688.
5 Borggaard, J.T., Burns, J., Cliff, E.M., and Gunzburger, M.D., “Sensitivity Calculations for a 2-D Inviscid
Supersonic Forebody Problem,” Identification and Control Systems Governed by Partial Differential
Equations, SIAM Publications, Philadelphia, 1993, pp. 14-24.
6 Burgreen, G.W., and Baysal, O., “Aerodynamic Shape Optimization Using Preconditioned Conjugate
Gradient Methods,” AIAA Paper 93-3322, 1993.
7 Hou, G. J.-W., Maroju, V., Taylor, A.C., and Korivi, V.M., “Transonic Turbulent Airfoil Design
Optimization with Automatic Differentiation in Incremental Iterative Forms,” AIAA 95-1692, 1995.
8 Newman, J.C., and Taylor, A.C., “Three-Dimensional Aerodynamic Shape Sensitivity Analysis and
Design Optimization Using the Euler Equations on Unstructured Grids,” AIAA 96-2464, 1996.
9 Sherman, L.L., Taylor, A.C., Green, L.L., Newman, P.A., Hou, G.J.-W., and Korivi, V.M., “First- and
Second-Order Aerodynamic Sensitivity Derivatives via Automatic Differentiation with Incremental
Iterative Methods,” AIAA 94-4262, 1994.
10 Young, D.P., Huffman, W.P., Melvin, R.G., Bieterman, M.B., Hilmes, C.L., and Johnson, F.T.,
“Inexactness and Global Convergence in Design Optimization,” AIAA 94-4386, 1994.
11 Anderson, W.K., Newman, J.C., Whitfield, D.L., and Nielsen, E.J., "Sensitivity Analysis for the Navier-
Stokes Equations on Unstructured Meshes Using Complex Variables," AIAA Journal, Vol. 39, No. 1, 2001.
12 Lyness, J.N., “Numerical Algorithms Based on the Theory of Complex Variables,” Proc. ACM 22nd
Nat. Conf., Thomas Book Co., Washington, D.C., 1967, pp. 124-134.
13 Lyness, J.N. and Moler, C.B., “Numerical Differentiation of Analytic Functions,” SIAM Journal of
Numerical Analysis, Vol. 4, 1967, pp. 202-210.
14 Martins, J.R.R.A., Kroo, I.M., and Alonso, J.J., "An Automated Method for Sensitivity Analysis using
Complex Variables," AIAA 2000-0689, 2000.
15 Newman, J.C., Anderson, W.K., and Whitfield, D.L., “Multidisciplinary Sensitivity Derivatives Using
Complex Variables,” Mississippi State University Report No. MSSU-COE-ERC-98-08, 1998.
16 Squire, W. and Trapp, G., “Using Complex Variables to Estimate Derivatives of Real Functions,” SIAM
Review, Vol. 10, No. 1, 1998, pp. 110-112.
17 Anderson, W.K. and Bonhaus, D.L., "Airfoil Design on Unstructured Grids for Turbulent Flows,"
AIAA Journal, Vol. 37, No. 2, 1999, pp. 185–191.
18 Anderson, W.K. and Venkatakrishnan, V., "Aerodynamic Design Optimization on Unstructured
Grids with a Continuous Adjoint Formulation," Computers and Fluids, Vol. 28, No. 4, 1999.
19 Elliott, J., "Discrete Adjoint Analysis and Optimization with Overset Grid Modelling of the
Compressible High-Re Navier-Stokes Equations," 6th Overset Grid and Solution Technology
Symposium, Fort Walton Beach, FL, Oct. 2002.
20 Giles, M.B., Duta, M.C., Muller, J.-D., and Pierce, N.A., "Algorithm Developments for Discrete Adjoint
Methods," AIAA Journal, Vol. 41, No. 2, February 2003, pp. 198-205.
21 Iollo, A., Salas, M.D., and Ta’asan, S., "Shape Optimization Governed by the Euler Equations Using
an Adjoint Method," ICASE Report No. 93-78, November 1993.
22 Jameson, A., Pierce, N.A., and Martinelli, L., "Optimum Aerodynamic Design Using the Navier-Stokes
Equations," AIAA 97-0101, January 1997.
346

23 Kim, C.S., Kim, C., and Rho, O.H., "Sensitivity Analysis for the Navier-Stokes Equations with Two-
Equation Turbulence Models," AIAA Journal, Vol. 39, No. 5, May 2001, pp. 838–845.
24 Kim, H.-J., Sasaki, D., Obayashi, S., and Nakahashi, K., "Aerodynamic Optimization of Supersonic
Transport Wing Using Unstructured Adjoint Method," AIAA Journal, Vol. 39, No. 6, June 2001, pp. 1011–
1020.
25 Mohammadi, B., "Optimal Shape Design, Reverse Mode of Automatic Differentiation and
Turbulence," AIAA 97-0099, January 1997.
26 Nemec, M. and Zingg, D.W., "Towards Efficient Aerodynamic Shape Optimization Based on the
Navier-Stokes Equations," AIAA Paper 2001-2532, 2001.
27 Newman III, J.C., Taylor III, A.C., and Burgreen, G.W., "An Unstructured Grid Approach to Sensitivity
Analysis and Shape Optimization Using the Euler Equations," AIAA 95-1646, 1995.
28 Nielsen, E.J., "Aerodynamic Design Sensitivities on an Unstructured Mesh Using the Navier-Stokes
Equations and a Discrete Adjoint Formulation," Ph.D. Dissertation, Dept. of Aerospace and Ocean
Engineering, Virginia Polytechnic Inst. and State Univ., December 1998.
29 Nielsen, E.J. and Anderson, W.K., "Aerodynamic Design Optimization on Unstructured Meshes Using
the Navier-Stokes Equations," AIAA Journal, Vol. 37, No. 11, 1999, pp. 1411–1419.
30 Nielsen, E.J. and Anderson, W.K., "Recent Improvements in Aerodynamic Design Optimization on
Unstructured Meshes," AIAA Journal, Vol. 40, No. 6, 2002, pp. 1155–1163.
31 Nielsen, E.J., Lu, J., Park, M.A., and Darmofal, D.L., "An Implicit, Exact Dual Adjoint Solution Method
for Turbulent Flows on Unstructured Grids," Computers and Fluids, Vol. 33, No. 9, 2004.
32 Reuther, J.J., Jameson, A., Alonso, J.J., Rimlinger, M.J., and Saunders, D., "Constrained Multipoint
Aerodynamic Shape Optimization Using an Adjoint Formulation and Parallel Computers," Journal of
Aircraft, Vol. 36, No. 1, 1999, pp. 51–60.
33 Soemarwoto, B., "Multipoint Aerodynamic Design by Optimization," Ph.D. Dissertation, Dept. of
Theoretical Aerodynamics, Delft University of Technology, December 1996.
34 Soto, O. and Lohner, R., "A Mixed Adjoint Formulation for Incompressible Turbulent Problems,"
AIAA 2002-0451, 2002.
35 Sung, C. and Kwon, J.H., "Aerodynamic Design Optimization Using the Navier-Stokes and Adjoint
Equations," AIAA 2001-0266, 2001.
36 Sundaram, P., Agrawal, S., and Hager, J.O., "Aerospace Vehicle MDO Shape Optimization Using
ADIFOR 3.0 Gradients," AIAA 2000-4733, 2000.
37 Samareh, J.A., "A Novel Shape Parameterization Approach," NASA TM-1999-209116, May 1999.
38 Samareh, J.A., "Aerodynamic Shape Optimization Based on Free-Form Deformation," AIAA 2004-
4630, 2004.
39 Saad, Y. and Schultz, M.H., "GMRES: A Generalized Minimal Residual Algorithm for Solving
Nonsymmetric Linear Systems," SIAM Journal of Scientific and Statistical Computing, Vol. 7, No. 3, 1986,
pp. 856–869.
40 Schmitt, V. and Charpin, F., "Pressure Distributions on the ONERA M6 Wing at Transonic Mach
Numbers," Experimental Database for Computer Program Assessment, AGARD-AR-138, May 1979,
pp. B1-1-B1-44.
41 Kleb, W.L., Nielsen, E.J., Gnoffo, P.A., Park, M.A., and Wood, W.A., "Collaborative Software
Development in Support of Fast Adaptive AeroSpace Tools (FAAST)," AIAA 2003-3978, 2003.
42 Jones, W.T., "GridEx - An Integrated Grid Generation Package for CFD," AIAA 2003-4129, 2003.
43 Marcum, D.L., and Weatherill, N.P., "Unstructured Grid Generation Using Iterative Point Insertion
and Local Reconnection," AIAA Journal, Vol. 33, No. 9, 1995, pp. 1619-1625.
44 Anderson, W.K., Rausch, R.D., and Bonhaus, D.L., "Implicit/Multigrid Algorithms for Incompressible
Turbulent Flows on Unstructured Grids," Journal of Computational Physics, Vol. 128, 1996.
45 Chorin, A.J., "A Numerical Method for Solving Incompressible Viscous Flow Problems," Journal of
Computational Physics, Vol. 2, 1967, pp. 12-26.
347

46 Love, M.H., Zink, P.S., Stroud, R.L., Bye, D.R., and Chase, C., "Impact of Actuation Concepts on
Morphing Aircraft Structures," AIAA 2004-1724, 2004.
47 Gill, P.E., Murray, W., Saunders, M.A., and Wright, M.H., "User’s Guide for NPSOL 5.0: A FORTRAN
Package for Nonlinear Programming," Technical Report SOL 94, 1995.
48 Kaufman, L. and Gay, D., "PORT Library: Optimization and Mathematical Programming - User’s
Manual," Bell Laboratories, 1997.

14.4 Case Study - Mesh Sensitivity Through An Algorithm to Detect High-Γ Regions
for Unstructured Mesh in Two Dimensions
Author : Hiroaki Nishikawa
Title : An Algorithm to Detect High-Γ Regions for Unstructured Grids in Two Dimensions
Source : https://doi.org/10.13140/RG.2.2.20233.80486/2
We will describe an algorithm to estimate the parameter Γ, which is a measure of how strongly a
mesh is thin and curved, and thereby detect high-Γ (Γ≥ 1) regions in a two-dimensional unstructured
mesh. It is well known that high-Γ mesh present challenges for accurate gradient computations and
stable finite-volume solver convergence as discussed in Refs.[1, 2, 3]. Accurate detection of high-Γ
regions will allow us to locally modify discretization algorithms for accurate and stable simulations.
However, reliable algorithms are not currently available, to the b3best of the author's knowledge, for
estimating Γ in unstructured grids. Therefore, discretization methods cannot be adaptively modified
and are often equipped with some other techniques applied to a whole grid, such as a limiter function
or an inaccurate gradient method, to avoid problems with high-Γ meshes. In order to maintain an
optimal nature of a target discretization with modifications applied only in high-Γ regions, it is
necessary to develop a reliable general algorithm to estimate Γ for arbitrary grids, including
especially fully irregular grids towards adaptive-mesh simulations. This note describes one such
algorithm for unstructured meshes in two dimensions. It generates also a pair of local-coordinate
basis vectors at each node, which can be used to perform a local approximate mapping for accurate
gradient computations and also stable solution reconstructions [1, 2, 3].
14.4.1.1 Algorithm to Compute Γ
Full developments concerning Γ could be obtained from [Nishikawa ]555.

14.4.2 Results
The proposed algorithm was applied to different types of irregular triangular grids.
➢ Isotropic grid in a square domain: The result is shown in Figure 14.9 (a). As desired, the
algorithm gives Γ = 0 for this non-curved grid.

➢ Anisotropic grid in an anisotropic rectangular domain: The result is shown in Figure 14.9
(b). As desired, again, the algorithm gives = 0 for this non-curved grid.

➢ Irregular triangular grid over a half-circular cylinder: This test case was used to show the
effect of boundaries. Again, the nodal coordinates are perturbed randomly in the
circumferential direction (see Figure 14.11 (b)). Despite the irregularity, the proposed
algorithm again estimated Γ as desired. See Figure 14.11 (c). For this case, we plotted the
local coordinate basis vectors. See Figure 14.11 (d) and Figure 14.11 (e).

➢ Irregular grid around a Joukowsky airfoil: The result is shown in Figure 14.10. As
expected, Γ is very large around the airfoil, especially at the trailing edge and then at the

555 Hiroaki Nishikawa, “ An Algorithm to Detect High-Γ Regions for Unstructured Grids in Two Dimensions”, 2019.
348

leading edge. The local coordinate basis vectors are shown in Figure 14.10 (f) and Figure
14.10 (g).

Figure 14.9 Results for irregular but non-curved triangular grids ( Γ = 0 everywhere ).

14.4.3 Concluding Remarks


An algorithm has been developed for estimating the parameter Γ, which is a measure of how strongly
a grid is thin and curved, and thereby detecting curved high-aspect-ratio regions in a 2D unstructured
grid. Results show that it accurately detects high-Γ regions for a given unstructured triangular grid.
Also, the local coordinate basis vectors have been generated at each node, which can be used to
perform a local approximate mapping described in [1, 2, 3] for accurate gradient computations and
also stable solution reconstructions. The resulting Γ distribution and the local-coordinate basis
vectors can be used to suitably modify a finite-volume discretization for accurate and stable
simulations, which will be demonstrated in separate papers. Extensions to three dimensions are also
left as future work.

14.4.4 References
[1] B. Diskin and J. L. Thomas. Accuracy analysis for mixed-element finite-volume discretization
schemes. NIA Report No. 2007-08, 2007.
[2] B. Diskin and J. L. Thomas. Accuracy of gradient reconstruction on grids with high aspect ratio. NIA
Report No. 2008-12, 2008.
[3] B. Diskin, J. L. Thomas, E. J. Nielsen, H. Nishikawa, and J. A. White. Comparison of node-centered
and cell-centered unstructured finite-volume discretization: Viscous fluxes. AIAA J., 48(7):1326{1338,
July 2010.
349

Figure 14.10 Results for an irregular triangular grid over a Joukowsky airfoil. Note that the contours are
plotted in (c) and (d) with a restricted range, [0; 25], to visualize the variation near the airfoil. The
maximum value is 902,788 and the average is 10,505.
350

Figure 14.11 Results for an irregular triangular grid over a half-cylinder domain with straight
boundaries.

14.5 Mesh Independence Study


To perform a Mesh Independent Study, is fairly straight forward as seen in a compressible flow over
a forwarding step size example (see Figure 14.13):

1. Run the initial simulation on your initial mesh and ensure convergence of residual error to
10-4, monitor points are steady, and imbalances below 1%. If not refine the mesh and repeat.
2. Once you have met the convergence criteria above for your first simulation, refine the mesh
globally so that you have finer cells throughout the domain. Generally we would aim for
around 1.5 times the initial mesh size. Run the simulation and ensure that the residual error
drops below 10-4, that the monitor points are steady, and that the imbalances are below 1%.
At this point you need to compare the monitor point values from Step 2 against the values
from Step 1. If they are the same (within your own allowable tolerance), then the mesh at
Step 1 was accurate enough to capture the result. If the value at Step 2 is not within acceptable
values of the Step 1 result, then this means that your solution is changing because of your
351

mesh resolution, and hence the solution is not yet independent of the mesh. In this case you
will need to move to Step 3.

Figure 14.13 Effects of Mesh Density on Solution Domain

3. Because your solution is


changing with the refinement of
mesh, you have not yet achieved
a mesh independent solution.
You need to refine the mesh
more, and repeat the process
until you have a solution that is
independent of the mesh. You
should then always use the
smallest mesh that gives you this
mesh independent solution (to
reduce your simulation run
time).

Briefly, according to [Ssheshan


Pugazhendh], mesh or grid
Figure 14.12 Mesh Independence
independent solution is a solution that
does not vary significantly even when
352

you refine your mesh further. The answer comes through the question that emphasizes the
independence of numerical solution from grid structure, also called mesh. In every computational
analysis, mesh independence studies, also expressed as mesh convergence, ought to be conducted to
sustain credible results. Otherwise, the results that obtained would be considered as skeptical. (see
Figure 14.12)
353

15 Some Common Meshing Attributes


15.1 Some Special Issues in Meshing Envisioned by Commercial Venders
Commercial verdures offer special difficulties and field complexities which may be encounter during
mesh generation session. The aim here is Not to promote the specifics on the common tools, but
rather try to give pointers to the users, whenever possible. For complete information, users can
consult the user guide for each vendors. For front end users (these days almost everybody), some of
the more pronounce meshing tools available are:

15.1.1 Centaur®
➢ Singular points
➢ Small scales
➢ Small angles
➢ Disparate length scales
➢ Different scales orientation / directionality
➢ Mega Geometries - Mega geometries pose additional requirements to the grid generator.
Some common issues are the existence of thousands of panels and "dirty" CAD. Solutions to
these issues include:

• Automatic Setup
• Automatic identification of similar parts (e.g. pipes)
• Auto CAD Cleaning

➢ Mega Meshes - Mega meshes are required in applications such as LES, multi-stage
turbomachinery, aircraft take-off and landing, etc. (see Figure 15.1). Requirements that
have to be met for the generation of "mega" meshes include:

Figure 15.1 Mega Meshing for Aircraft Landing & Takeoff – Courtesy of Centaur©
354

• Optimum meshes (minimum number of elements for given accuracy - hybrid mesh
approach)
• Parallel / Multi-Core mesh generation
• Robustness of mesh generation

15.1.2 Pointwise®
General Guidelines include:

➢ Recommended grids have at least 2 layers of constant cell spacing normal to viscous walls
(Extrusion Layer, will be discussed next).
➢ Smoothing Extrusion Layers (see below).
➢ Achieving consistent cell sizes and spacing across gaps.
➢ Mesh quality quality/characteristics.
➢ Medium grid level ~ 3-4 hours per iteration.

15.1.2.1 Smooth Extrusion of Boundary Layer Meshes556


Accurate simulation of viscous flows requires a mesh that resolves the boundary layer. Resolution in
this context implies a sufficient number of cells to capture the gradients across the boundary layer, a
smooth variation in cell-to-cell size ratio across the boundary layer, a sufficiently small near-wall
spacing, orthogonality of the transverse grid lines to the walls, and well-shaped cells. The manner in
which this resolution is achieved varies with meshing technique. This article describes a new
optimization-based smoother in Pointwise that can be applied to advancing layer techniques on
meshes of mixed cell types (i.e. extruding a mix of prisms and hexahedra).
15.1.2.2 Smoothing in Various Meshing Techniques
For structured hexahedral grids, one of the earliest meshing techniques, transfinite interpolation,
was shortly followed by elliptic PDE smoothing methods. Iterative solution of an elliptic PDE moves
the grid points subject to prescribed forcing functions to achieve smoothness, clustering, and
orthogonality to solid walls. Elliptic PDE smoothing is a boundary value problem requiring all
boundaries of the grid to be predefined.
On the other hand, a hyperbolic PDE meshing technique is an initial value problem that extrudes a
grid from a given, initial starting grid (e.g. a line when extruding a surface grid or a surface when
extruding a volume grid). Hyperbolic PDE techniques require extensive smoothing to ensure that the
extruded mesh does not fold onto itself, especially in the presence of geometric concavities.
When it comes to generating hybrid meshes, Pointwise includes two techniques:

➢ traditional algebraic extrusion,


➢ anisotropic tetrahedral extrusion, also known as T-Rex.

Both techniques start from a tri or quad mesh and march outward, creating layers of cells (prisms
and hexahedra, respectively). T-Rex is an advancing layer technique that marches each grid point on
the extrusion front outward in a direction that is nominally orthogonal to the wall and with step sizes
prescribed to achieve the proper boundary layer resolution. The anisotropic tetrahedra produced by
joining each extruded point back to the extrusion front are combined to form stacks of prisms or
hexahedra. T-Rex includes extensive smoothing methods to control the extrusion trajectory, adjust
cell shapes, and avoid collisions with other extrusion fronts.

556 The Connecter, Pointwise© Newsletter, 2016.


355

Algebraic extrusion in Pointwise consists of defined trajectories for the mesh to follow including
extrusion along a line, rotation around an axis, along a user-prescribed path, and normal to the initial
mesh, the latter useful for extruding layers of prisms from a triangular mesh in a manner that mimics
the behavior of the hyperbolic PDE method for extruding hexahedra from quads. A variety of
smoothing options is necessary to ensure that the algebraic techniques generate a non-folded mesh
simply due to the fact that they lack an elegant mathematical basis like the PDE methods.
The introduction of mixed-cell grids (i.e. surface grids that contain both triangles and quads, volume
grids that contain tetrahedra, hexahedra, pyramids, and prisms) required a new implementation of
smoothing in the extrusion methods to account for cell-to-cell variation in type. In addition to
supporting mixed cell types in the same grid, the goal of the new smoothing was to optimize element
shape and size to ensure good boundary layer resolution.
15.1.2.3 Optimization-Based Smoothing
The new smoothing method is based on optimization of a cost function related to element quality. In
particular, a cost function is defined at each mesh cell's corners as follows, where WCN is the
Weighted Condition Number and J is the Jacobian.

Ex Fx Gx
1
C = J if J ≤ 0.0 , C = if J > 0.0 where J = |Ey Fy Gy |
WCN
Ez Fz Gz
Eq. 15.1
Note that the Jacobian only comes into play for inverted corners and is computed as the determinant
of a 3 x 3 matrix created by columns of the edge vectors E, F, and G shown in Eq. 15.1.
15.1.2.4 Computing Weighted Condition Number (WCN) for Prisms
Consider the prism shown in Figure 15.2 for which computations
are being made at the lower left corner. WCN is computed from
two components: a matrix A created from the cell's actual edges
(Figure 15.2) and matrix W that transforms a right-angled corner
with unit edge lengths into the desired corner shape with the
desired physical edge lengths. The two quantities in the numerator
of the WCN equation below are the Fresenius norms of the matrix
products. Figure 15.2 Vectors used for
computing the weighted
Ex Fx Gx condition number of a prism at
‖AW −1 ‖‖wA−1 ‖ the corner shared by edges E, F,
A = [Ey Fy Gy ] , WCN = and G
3
Ez Fz Gz
Eq. 15.2
The formulation of matrix W is illustrated in Figure 15.3. The parameters U, V, W, and θ are derived
from the desired shape of the extruded cell. The height W is the marching step size and is usually
much smaller than U and V. Therefore; the weight matrix W is computed as

⃗U |V
⃗ |cosθ 0
⃗ |sinθ
W = [ 0 |V 0 ]
0 0 ⃗⃗⃗ |
|W
Eq. 15.3
356

Figure 15.3 Transforming an Ideal Corner (left) to the Desired Shape (right)

For a prism, consider computation of the weight matrix W for its bottom and top faces as illustrated
in Figure 15.4. For the bottom face (left), U, V, and θ are obtained from the extrusion front (layer k).
W is perpendicular to the bottom face with a length equal to the extrusion step size at that location.
For the top face (right), U, V, and θ are computed in a manner that influences the mesh to be optimal.
In particular, U and V for layer k+1 are set to the average of their counterparts on the bottom face
(layer k) and θ is set to π/3.

Figure 15.4 Computing the Weight Vector for the Bottom (left) and top (right) Faces of a Prism

15.1.2.5 WCN for Hexahedra


Computation of the weight matrix W for hexahedra proceeds in a manner similar to the computation
for prism described above. Referring to Figure 15.5, the edge lengths U and V on the top face (layer
k+1) are the average of the edge lengths on the bottom face (layer k). The angle θ is π/2. Together
these tend to influence the extrusion to achieve square faces.
357

Figure 15.5 Computing the Weight Vector for the Bottom (left) and Top (right) Faces of a Hexahedron

15.1.2.6 Smoothing and Limiting the Perturbation


Keeping in mind that a goal of the current work is to smooth extrusions from a front consisting of
both- triangles and quads (i.e. extruding prisms and hexahedra side by side) the perturbation of each
node on the advanced layer has to be smoothed to account for competing effects of different cells
types. This is accomplished by summing the sensitivity vectors (i.e. the coordinate derivatives of the
cost function) and then blending the minimum and average cost vectors to obtain the final
perturbation of the point. As shown below, the multiplying factor MF is an exponential function of
the minimum (worst) cost function where the exponent P typically takes on values of 0, 1, or 2. When
P=0, the worst cost value drives the point's perturbation. When P<1, the minimum perturbations
have the stronger influence, while P>1 gives more weight to the average.

nj
1
⃗ avg =
P ∑(sn )j , MF = Max (0 , 1 − Cmin )P , AF = 1 − MF
nj
j=1
Cnode = MF ∗ Cmin + AF ∗ C avg , ⃗ node = MF ∗ P
P ⃗ min + AF ∗ P
⃗ avg
Eq. 15.4
Smoothing on the advanced layer is also limited by the extrusion step size h which corresponds to
the vector W presented Figure 15.4 and Figure 15.5. This is done because the step size is usually
significantly smaller than the edges U and V of the base cell and prevents possible inversions of the
cell. The factor ω is typically 0.5.


⃗Xnode
i+1
= ⃗Xnode
i
+ ⃗Pnode
⃗ node |)
Max (1 , 0, |P
Eq. 15.5
Smoothing is iterative, and typically 5-200 iterations are used. Enforcement of the normal spacing is
built into the cost function along with the desired shape or quality.
358

15.1.2.7 Extruding and Smoothing the ONERA M6


The ONERA M6 wing is a slightly swept, low aspect ratio wing with rounded tip, and sharp trailing
edge. A surface mesh consisting of zones of quads (for leading and trailing edge resolution) and
triangles is shown in Figure 15.6.
Algebraic extrusion using the normal
method was applied with first step
height of 0.0001 and step size growth
rate of 10 percent per step. Views of
the symmetry plane regions at the
wing root of the same extruded grids
are shown in Figure 15.7. The
wiggles for the P = 0 case (left) are a
result of biasing the smoothing to the
worst cost function which in this case
is enforcement of the symmetry
plane condition. The grid for the P =
2 case (right) is smoother because it
is biased toward the average cost
function. Figure 15.6 Close-Up View of a Hybrid Mesh Near the Tip of
the ONERA M-6 Wing

Figure 15.7 40 Extrusion layers on the Symmetry Plane of the ONERA-M6 Wing at the Leading Edge
for Smoothing Exponent P = 0 (left) and P = 2 (right)

15.1.2.8 Automatic vs. Automated Meshing as Envisioned by Pointwise557


When you look up “automatic” in the dictionary, one definition you will find is “without human
intervention.” This correlates with NASA's CFD Vision 2030 Study in which the authors write
“ultimately the mesh generation process should be invisible to the CFD user.” However, we cannot in
general easily apply the literal definition of “automatic” to technology. Fred Brooks in his classic book
on software engineering writes that “automatic” has always been a euphemism for doing better than

557 John Chawner, Pointwise, Inc.


359

we're doing now. Furthermore, in my experience the implied caveat of automatic mesh generation is
that the desired mesh is generated without human intervention and also with the same result had
the user generated the mesh entirely by hand. We want to have our cake and eat it too. Paradoxically,
even a quantitative assessment such as “1-click” (i.e. automatic) meshing depends on when you start
and stop counting clicks.
Creating an automatic mesh generator; one that supports geometry of any format, type, or quality;
understands diverse configurations ranging from biological to automotive to chemical process to
aerospace; generates topology and cells supported by all available CFD solvers (especially yours);
and exports or shares data with your particular solver is not an easy job. Further, automatic methods
are plagued by the inevitable dead ends where 90 percent of the mesh is generated automatically but
the last 10 percent is either virtually impossible to complete or consumes days or even weeks of time.
But creating an automated mesh generator is a much more tractable task, especially when
automation is coupled with or built upon manual techniques that serve as backups when automation
goes astray.
15.1.3 Ansys®
ANSYS Meshing is a component of ANSYS workbench which incorporates meshing platform and
combines and builds on strengths of preprocessing offerings from ANSYS. It includes the tools like
ICEM CFD, TGRID, Fluent, CFX, Gambit558. The workflow is displayed in Figure 15.8.

15.1.3.1 Global Mesh Controls


Global mesh controls are used to make global adjustment in the meshing strategy, which includes
sizing functions, inflation, smoothing, defeaturing, parameter inputs, assembly meshing inputs, etc.
required inputs are:

➢ Automatically calculates global element sizes based on the smallest geometric entity
➢ Smart defaults are chosen based on physics preference
➢ Makes global adjustments for required level of mesh refinement
➢ Advanced Size Functions for resolving regions with curvatures and proximity of surfaces

15.1.3.2 Local Mesh Controls


Control the mesh locally where it depends on the “Mesh Method” used. Local Mesh Controls are:

➢ Sizing-For Vertex, Edge, Face and Body


➢ Contact Sizing -For Edge and face
➢ Refinement-For Vertex, Edge and Face
➢ Mapped Face Meshing -For Face
➢ Match Control -For Edge and Face
➢ Pinch -For Vertex and Edge nor Edge and Face

558 Metin Ozen, Ph.D., ASME Fellow, Meshing Workshop, Ozen Engineering, Inc., 2014.
360

• Sketches and Planes


• 3D Operations
• Extrude, Revolve, Sweep, etc.
Import • Geometry Import Options
Geometry • Bi-Directional CAD/ Neutral

• 3D Operations
• Booleans, Decompose, etc.
• Geometry Cleanup and Repair
Geomery • Automatic Cleanup
Modification • Simplification, Mid-surface, Fluid Extraction

• Meshing Methods
• Hybrid Mesh: Tet, Prisms, Pyramids
• Hexa Dominant, Sweep meshing
• Assembly Meshing
• Global Mesh Settings
Meshing • Local Mesh Settings
• Sizing, Controls, etc.

• Fluid Flow
• Geometry
• Mesh
• Set Up
Solver • Solution
• Post-Processing

Figure 15.8 Preprocessing Workflow

15.1.4 COMSOL Multiphysics®


Have you ever wondered about the best practices for structuring your meshing sequence? For
instance, is there a difference between meshing domains in separate operation nodes and meshing
them together using a single operation? We will discuss different ways of structuring your meshing
sequence and how they affect the resulting mesh. You will gain insight into how the meshing
361

operations behave when they are applied in a sequence 559. Every meshing operation in COMSOL
Multiphysics creates a mesh that conforms to the respective geometry. But the tetrahedral mesh
generator, which operates under the Free Tetrahedral node in the Model Builder, is the only mesh
generator in 3D that is fully automatic and can be applied to every geometry. And since it creates
an unstructured mesh that is, a mesh with irregular connectivity, it is well suited for complex-shaped
geometries requiring a varying element size. Since tetrahedral meshes in COMSOL Multiphysics are
used for a variety of physics, including multi-physics, the mesh generator needs to be very flexible. It
should be possible to generate very fine meshes, very coarse meshes, meshes with fine resolution on
curved boundaries, meshes with anisotropic elements in narrow regions, etc.

15.1.4.1 Generating a Tetrahedral Mesh in COMSOL Multiphysics®


Most tetrahedral mesh generators fall into one of the following three classes:

• Advancing front-based generators, which pave the domain with tetrahedra, adding them one
by one beginning from a boundary
• Octree-based generators, which first decompose the domain with an octree and then
partition each octree cell into tetrahedra
• Delaunay-based generators, which maintain a geometric structure called the Delaunay
tetrahedralization of the domain and have remarkable mathematical properties

Figure 15.9 A Tetrahedral Mesh of a Gas Turbine

559 COMSOL Blog.


362

The tetrahedral mesh generator in COMSOL Multiphysics is a Delaunay-based mesh generator. As a


Delaunay meshed, the process of generating a tetrahedral mesh can be divided into the five main
steps described below. The third and fifth step of the meshing process have been significantly
improved with upgrades to COMSOL Multiphysics. To illustrate the different steps, we’ll use a very
coarse mesh of the piston geometry, which is available in the meshing tutorials of the Application
Library within COMSOL Multiphysics. Figure 15.9 displays a tetrahedral mesh for a gas turbine.

15.1.4.2 Choosing the Order of Your Meshing Sequence Operations


First, we will illustrate that the meshing sequence is order dependent. Let’s say that we have two
neighboring squares in 2D that we would like to study. In the right square, we would like to have a
finer mesh. This might be because the material demands it or because of the physics we plan to study.
We construct our meshing sequence by creating two Free Triangular nodes. In the first Free
Triangular node, we select the left domain, and in the second node, we select the right domain (as
shown in the image below). Next, we set the global Size node to the predefined value Extra coarse,
because it’s recommended to specify the coarsest mesh size in the first global Size node. To specify
the finer mesh size, we add a local Size node to the second Free Triangular node and specify the
predefined size Extra fine.
When plotting the resulting mesh, Figure 15.10, we can see that the left domain is meshed entirely
by coarse mesh, while there are some coarse elements in the right domain near the shared boundary.
This is because the boundary mesh of the shared boundary is fixed by the first operation, hence
there cannot be any fine elements close to it. Moreover, the coarse elements on the right side of the
shared boundary have a lower quality than the other elements. Resulting mesh when meshing the
left domain first. There are some coarse elements of low quality in the right domain, even though we
specified the mesh of the right domain to be extra fine.

Figure 15.10 Skewness of Element Quality (Before Changing the Order of Meshing)

If we swap the order of the two Free Triangular nodes so that the operations are performed in
reverse order (with the right domain meshed first), we get different results. In the resulting plot,
Figure 15.11, we can see that the shared boundary now consists of finer mesh than before. As a
result, the right domain now consists entirely of fine elements, while the left domain has some fine
elements near the shared boundary. Consequently, the number of elements in the mesh has increased
363

and the Minimum element quality has almost doubled, which means that the overall quality of the
mesh has improved.

Figure 15.11 Skewness of Element Quality (After Changing the Order of Meshing)

15.1.4.3 Using a Single Operation to Mesh Multiple Domains


Say we have the same square setup, but each of the squares have a circular hole near the shared
boundary. In this example, we will assume that we want both domains meshed with the same element
size. Similar to the previous example, we construct our meshing sequence by adding two Free
Triangular nodes to our meshing sequence and applying them to one domain each. This time, we set
the global Size node to the predefined size Normal and we don’t add any additional Size nodes. The
plot of the resulting mesh does not look as satisfactory as we might have hoped. When studying the
plot, we can see that the elements in the narrow region between the shared boundary and the lower
hole have poor quality. Since the left domain is meshed first, the geometry of the right domain is not
taken into account when generating the boundary mesh. Because the region between the lower hole
and the boundary is narrow, it requires smaller elements than those generated on the shared
boundary to avoid low-quality elements. This sequence setup will not be able to generate a mesh that
has high-quality elements in all regions of the geometry. Swapping the order of the operations will
not help in this case, since the problem would just move to the upper narrow region instead. The
solution here is to only use one Free Triangular operation and apply it to both domains, which
allows the meshing algorithm to consider the entire geometry simultaneously and construct a
boundary mesh suitable to both domains.

15.1.4.4 3D Example
We will study a coil inside a box in 3D in order to see how these effects can appear in more advanced
geometries. The coil we are using is the adaptable coil Single Conductor Coil–Rectangular Wire,
Racetrack, Closed Side, available in the AC/DC Module Part Library (see Figure 15.12). In our model,
we add a box around the coil and adapt the coil so that the region between a pair of turns becomes
very narrow, meaning a very fine mesh is required between the turns to avoid low quality elements.
In this example, we would like to generate a mesh that is coarse in the surrounding box, a bit finer in
the coil, and sufficiently fine in the narrow regions between the turns.
364

Figure 15.12 The Coil Geometry - The Zoomed in View shows the Narrow Region Between the Coil
Turns

We start constructing our meshing sequence by setting the global Size node to the predefined
value Coarse. To obtain a mesh with sufficiently small elements in the narrow region, we have to
adjust the parameter Minimum element size so that we can resolve the narrow region, which has a
height of about 1.7e-4m. This is done by selecting Custom in the global Size node and editing
the Minimum element size to be 2e-4m, as in the following image. Next, we add two Free
Tetrahedral operations and select the coil in the first one and the surrounding box in the second.
To the first Free Tetrahedral node, the one acting on the coil, we add a local Size node set to the
predefined value Normal. In the plot below, Figure 15.13-A, we can see results similar to those from
the 2D examples: The narrow regions have elements of very poor quality, even though we specified
a small Minimum element size. Again, this is a result of the ordering of the meshing operations. When
the coil is meshed by the first operation, the narrow regions in the surrounding box do not act as a

Figure 15.13 Resulting Mesh


365

constraint on the element size on the boundary. Therefore, the boundary mesh is generated
according to the specified mesh size on the coil, namely Normal. When the surrounding box is
meshed, the mesh of the shared boundary is fixed, hence the mesh elements in the narrow regions
are forced to have a skewed shape.
Next, we construct a new meshing sequence following our best practices. A single Free
Tetrahedral operation is added and applied to the entire geometry. We add a local Size node to the
operation with the default value Normal and the coil as the domain selection (as seen in Figure
15.13-B). The global Size node is set as in the previous sequence.
In conclusion, we have seen that the order of operations in a meshing sequence has an effect on the
resulting mesh. This is because the generated mesh is fixed, hence any mesh from a preceding
operation node is a starting point for following operations. For this reason, it’s best practice to use as
few operations as possible and either add Size nodes globally or locally. Additionally, if you need to
have multiple operations in your sequence for instance, if you want to have different element types
then it’s very important for you to consider their order.

15.1.5 Mesh Models in STAR-CCM+560


As it is very important to stablish a proper mesh resolution before attempting to solve any CFD
problem, we try to analyze the different mesh models available in STAR-CCM+. Fortunately, most of
this meshing techniques are common to various CAE tools561.
So, according to the User Guide562, a mesh is a discretized representation of the computational
domain, which the physics solvers use to provide a numerical solution. There are different meshing
strategies, and each one has its pros and cons, being more suited for one or other application. The
main meshing engine, which is shared by Star-CD and Star CCM+ is characterized by surface and
volume meshing.

15.1.5.1 Surface Mesh


The starting point for all the mesh models in STAR-CCM+ is a surface mesh imported from a CAD
package or some other third party pre-processing software. The overall quality of the surface mesh
can vary greatly from one package to the next.

➢ Surface wrapper: wraps the initial surface to provide a closed and manifold surface mesh
from a complex geometry. For poor quality or complex CAD, this procedure ensures that the
geometry is closed and of sufficient quality for generating surface and volume meshes. The
surface wrapper comes with a tool for leak detection and is usually used in conjunction with
the surface re-meshes
➢ Surface re-meshes: re-meshes the initial surface to provide a quality discretized mesh that
is suitable for CFD. It is used to retriangulate the surface based on a target edge length
supplied and can also omit specific surfaces or boundaries preserving the original
triangulation from the imported mesh.

15.1.5.2 Volume Mesh


Innovation in Volume Meshing which includes meshing technologies such as:

➢ Trimmer: generates a volume mesh by cutting a hexahedral template mesh with the
geometry surface. It is recommended when an underlying custom mesh needs to be used or
if the surface quality is not good enough for a polyhedral mesh. Besides, it is useful in

560 CD-adapco flag CAD/CFD product.


561 Theansweris27,com, tracking my progress in engineering.
562 User Guide STAR-CCM+ Version 8.06. 2013.
366

modeling external aerodynamic flows due to its ability to refine cell in a wake region unsteady
and turbulent fluid caused by boundary layer separation.
➢ Polyhedral Meshes: generates a volume mesh that is composed of polyhedral-shaped cells.
It is numerically more stable, less diffusive, and more accurate than an equivalent tetrahedral
mesh. Moreover, also contains approximately five times fewer cells that a tetrahedral mesh
for a given starting surface.
➢ Tetrahedral Meshes: generates a volume mesh that is composed of tetrahedral-shaped cells.
According to CD-adapco563, tetrahedral meshes are only recommended when comparisons
have to be made with legacy tetrahedral models.
➢ Advancing Layer Meshes: creates a volume mesh composed of prismatic cell layers next to
wall boundaries and a polyhedral mesh elsewhere. The meshes creates a surface mesh on the
wall and projects it to create the prismatic cell layers. The prismatic cell layers help capture
the boundary layer, turbulence effects, and heat transfer near wall boundaries.
➢ Thin Meshes: generates a prismatic layered volume mesh for thin geometries, where good
quality cells are required to capture the solid material thickness adequately.

Sub-Models

Figure 15.14 Meshing Tools in CD-Adapco

15.1.5.3 Optional Models (Sub-Models)


• Prism Layer Mesher: adds prismatic cell layers next to wall boundaries. The meshes projects
the core mesh back to the wall boundaries to create prismatic cells.
This layer of cells are created next to wall boundaries to improve the accuracy of the flow
solution as prediction of various flow features —e.g., drag or pressure drop— depends on
resolving the velocity and temperature gradients normal to the wall. These gradients are

563 CD-adapco. CFD Basics. Americas Agency Training Document. 2008.


367

much steeper in the viscous sublayer of a turbulent boundary layer that would be implied by
taking gradients from a coarse mesh.
• Extruder: generates an extruded mesh region from a boundary that one of the core volume
meshes has meshed. It is typically used for inlet and outlet boundaries to extend the volume
mesh beyond the original dimensions of the starting surface, so that a more representative
computational domain is obtained.
• Generalized cylinder meshes: generates a volume mesh appropriate for elongated cylindrical
regions. It uses extruded prismatic cells to reduce the overall cell count and improve the rate
of convergence in some cases.
• Shelling meshes: generates a shell mesh region from a boundary that one of the core volume
meshers has meshed. This model is specifically for modelling casting methods.
• Embedded thin meshes: similar to the default thin meshes it is also used to generate a
prismatic type mesh in predominantly thing geometries, it assumes that the thin geometries
are entirely contained within another region.

15.1.6 Some Meshing Tools in CD-Adapco®


There are different methodologies developed for Hybrid meshes. Each has its own merits and of
course who you talking to. One such method developed by [Star-CD©]564 where their automated
meshing is involved. The essence of the method is Inside-Out where most of applications are interior
domain. By creating a sub-surface along actual surface, the interior mesh, composed of Hex and a
transition layer (Tetrahedron), is
filled. Once the interior is done, an
extrusion layer will extrude from
sub-surface to the surface with
prismatic cells as depicted in Figure
15.15. The automated meshing
where sub-surface mesh (orange) is
clearly visible. Same procedure can
be applied using the (Advanced
Layer or Extrusion Layer) on a T-
Section for predominantly
polyhedral cells and boundary
prisms as shown in Figure 15.16.
Other relevant details of automatic
meshing is provided in Figure Figure 15.15 Constructions of Hybrid Mesh
15.17 (a-d).

564 User Guide STAR-CCM+ Version 8.06. 2013.


368

Extrusion Layer

Figure 15.16 Predominantly Polyhedral Meshing with Advanced (Extrusion) Layer in Boundaries

(a) Trimmed cells (surface) (b) All Tetraheadral Cells


with Hexahedral Core

(c) Hybrid Meshing (d) Cell Layer Extusion for


Trimmed Cells

Figure 15.17 Combined Volume and Extrusion Layer Meshes


369

15.2 Mesh Sizing


Mesh generation and mesh enhancement algorithms often require a mesh size function to specify the
desired size of the elements. Here, we present an algorithms for automatic generation of a size
function, discretized on a background grid, by using distance functions and numerical PDE solvers.
The size function is adapted to the geometry, taking into account the local feature size and the
boundary curvature. Following, we attend to couple of important papers which specifically dealing
with this issue.

15.2.1 Case Study 1 - Mesh Size Functions for Implicit Geometries and PDE-Based Gradient
Limiting565
Mesh generation and mesh enhancement algorithms often require a mesh size function to specify the
desired size of the elements. We present algorithms for automatic generation of a size function,
discretized on a background grid, by using distance functions and numerical PDE solvers. The size
function is adapted to the geometry, taking into account the local feature size and the boundary
curvature. It also obeys a grading constraint that limits the size ratio of neighboring elements. We
formulate the feature size in terms of the medial axis transform, and show how to compute it
accurately from a distance function. We propose a new Gradient Limiting Equation for the mesh
grading requirement, and we show how to solve it numerically with Hamilton-Jacobi solvers. We
show examples of the techniques using Cartesian and unstructured background grids in 2D and 3D,
and applications with numerical adaptation and mesh generation for images.

15.2.1.1 Introduction
Unstructured mesh generators use varying element sizes to resolve fine features of the geometry but
have a coarse grid where possible to reduce total mesh size. The element sizes can be described by a
mesh size function h(x) which is determined by many factors. At curved boundaries, h(x) should be
small to resolve the curvature. In region with small local feature size (“narrow regions”), small
elements have to be used to get well-shaped elements. In an adaptive solver, constraints on the mesh
size are derived from an error estimator based on a numerical solution. In addition, h(x) must satisfy
any restrictions given by the user, such as specified sizes close to a point, a boundary, or a subdomain
of the geometry. Finally, the ratio between the sizes of neighboring elements has to be limited, which
corresponds to a constraint on the magnitude of ⊽ h(x).
In many mesh generation algorithms it is advantageous if an appropriate mesh size function h(x) is
known prior to computing the mesh. This includes the advancing front method566, the paving method
for quadrilateral meshes567, and smoothing-based mesh generators such as the one we proposed
in568-569. The popular Delaunay refinement algorithm typically does not need an explicit size function
since good, element sizing is implied from the quality bound, but higher quality meshes can be
obtained with good apriorism size functions. Many techniques have been proposed for automatic

565 Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient Limiting”, Dept. of
Mathematics, Massachusetts Institute of Technology.
566 Peraire J., Vahdati M., Morgan K., Zienkiewicz O.C. “Adaptive Remeshing for Compressible Flow Computations.”

J. Computational Phys., vol. 72, no. 2, 449–466, 1987.


567 Blacker T.D., Stephenson M.B. “Paving: A New Approach to Automated Quadrilateral Mesh Generation.”

International J. Numerical Methods Eng., vol. 32, 811–847, 1991.


568 Persson P.O., Strang G. “A Simple Mesh Generator in MATLAB.” SIAM Review, vol. 46, no. 2, 329–345, 2004.
569 Persson P.O. Mesh Generation for Implicit Geometries. Ph.D. thesis, MIT, 2005.
370

generation of mesh size functions, see 570-571-572. A common solution is to represent the size function
in a discretized form on a background grid and obtain the actual values of h(x) by interpolation, as
described in 15.2.1.2.1.
We present several new approaches for automatic generation of mesh size functions. We represent
the geometry by its signed distance function (distance to the boundary). We compute the curvature
and the medial axis directly from the distance function, and we propose a new skeletonization
algorithm with sub-grid accuracy. The gradient limiting constraint is expressed as the solution of our
gradient limiting equation, a hyperbolic PDE which can be solved efficiently using fast solvers.

15.2.1.2 Discretization and Problem Statement


We represent the mesh size function h(x) approximately on a discretized grid. We store the function
values at a finite set of points xi (node points) and use interpolation to approximate the function for
arbitrary x. These node points and their connectivity are part of the background mesh and below we
discuss different options. We also describe briefly how to compute a discretized signed distance
function for the geometry, which we will use in the calculation of local feature sizes in section
15.2.1.4.

15.2.1.2.1 Background Meshes


The simplest background mesh is a Cartesian grid (Figure 15.18 (a)). The node points are located
on a uniform grid, and the grid elements are rectangles in two dimensions and blocks in three
dimensions. Interpolation is fast for Cartesian grids. For each point x we find the enclosing rectangle
and the local coordinates by a few scalar operations, and use bilinear interpolation within the
rectangle.
This scheme is very simple to implement and the Cartesian grid is particularly good for implementing
level set schemes and fast marching methods (see Section 15.2.1.2.2). However, if any part of the
geometry needs small cells to be accurately resolved, the entire grid has to be refined. This combined
with the fact that the number of node points grows quadratically with the resolution (cubically in
three dimensions) makes the Cartesian background grid memory consuming for complex
geometries. An alternative is to use an adapted background grid, such as an octree structure (Figure
15.18 (b)). The cells are still rectangles or blocks like in the Cartesian grid, but their sizes vary across
the region. Since high resolution is only needed close to the boundary (for the distance function), this
gives an asymptotic memory requirement proportional to the length of the boundary curve (or the
area of the boundary surface in three dimensions).
The grid can also be adapted to the mesh size function to accurately resolve parts of the domain
where h(x) has large variations. The adapted grid is conveniently stored in an octree data structure,
and the cell enclosing an arbitrary point x is found in a time proportional to the logarithm of the
number of cells.
A third possibility is to discretize using an arbitrary unstructured mesh (Figure 15.18 (c) ). This
provides the freedom of using varying resolution over the domain, and the asymptotic storage
requirements are similar to the octree grid. An additional advantage with unstructured meshes is
that they can be aligned with the domain boundaries, making the distance function accurate and the
curvature adaptation easier (see Section 15.2.1.3). An unstructured background mesh can be used
to re-mesh an existing triangulation in order to refine, coarsen, or improve the element qualities
(mesh smoothing). The unstructured background grid is also appropriate for moving meshes and
numerical adaptation, where the mesh from the previous time step (or iteration) is used. Finding the

570 Owen S.J., Saigal S. “Surface mesh sizing control.” Int. J. Num. Methods Eng., vol. 47, no. 1-3, 497–511, 2000.
571 Zhu J., Blacker T., Smith R. “Background Over-lay Grid Size Functions.” Proceedings of the 11th International
Meshing Roundtable, pp. 65–74. Sandia Nat. Lab., September 2002.
572 Zhu J. “A New Type of Size Function Respecting Pre-meshed Entities.” Proceedings of the 11th International

Meshing Roundtable, pp. 403–413. Sandia Nat. Lab., September 2003.


371

triangle (or tetrahedron) enclosing an arbitrary point x can still be done in logarithmic time, but the
algorithm is slower and more complicated.

(a) Cartesian (b) Octree

(c) Unstructured

Figure 15.18 Background Grids for Discretization of the Distance Fnction and the Mesh Size Function

15.2.1.2.2 Initialization of the Distance Function


The signed distance function φ(x) for a geometry gives the shortest distance from x to the boundary,
with a negative sign inside the domain. The geometry boundary is given by φ(x) = 0, and the normal
vector n(x) = ⊽φ(x). This representation is used in the level set method573, where the boundary can
be propagated in time by solving a Hamilton-Jacobi equation.
To initialize φ(x) on our background mesh, we compute the distances to the geometry boundary for
the nodes in a narrow band around the boundary (typically a few node points wide). We then use the
Fast Marching Method ([Sethian]574, see also [Tsitsiklis ]575) to calculate the distances at all the
remaining node points. The computed values are considered “known values”, and their neighbors
can be updated and inserted into a priority queue. The node with smallest unknown value is removed
and its neighbors are updated and inserted into the queue. This is repeated until all node values are
known, and the total computation requires O(n log n) operations for n nodes.
If the geometry is given in a triangulated form, we have to compute signed distances to the triangles.
For each triangle, we find a band of background grid nodes around the triangle (only a few nodes
wide) and compute the distances explicitly. The sign can be computed using the normal vector,

573 Osher S., Sethian J.A. “Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-
Jacobi formulations.” J. Computational Phys., vol. 79, no. 1, 12–49, 1988.
574 Sethian J.A. “Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-Jacobi

formulations.” J. Computer Phys., vol. 79, no. 1, 12–49, 1988.


575 Tsitsiklis J.N. “Efficient algorithms for globally optimal trajectories.” IEEE Trans. Automat. Control, vol. 40,

no. 9, 1528–1538, 1995.


372

assuming the geometry is well resolved. The remaining nodes are again obtained with the fast
marching method. We also mention the closest point transform by [Mauch]576, which gives exact
distance functions in the entire domain in linear time. A general implicit function φ can be
reinitialized to a distance function in several ways. [Sussman et al]577 proposed integrating the
reinitialization equation
φt + sin(φ) (|∇φ| − 1) = 0
Eq. 15.6
for a short period of time. Another option is to explicitly compute the distances to the zero level set
for nodes close to the boundary (e.g. using the approximate projections), and use the fast marching
method for the rest of the domain.

15.2.1.2.3 The Mesh Size Function


For a given geometry, we define our mesh size function h(x) by the following five properties. The
scalar parameters K,R,G may all be functions of space, and in section 15.2.1.7.3 we even allow G to
be a function of the mesh size h(x).

1. Curvature Adaptation - On the boundaries, we require h(x) ≤ 1/K |κ(x)|, where κ is the
boundary curvature. The resolution is controlled by the parameter K which is the number of
elements per radian in 2D (it is related to the maximum spanning angle θ by 1/K = 2
sin(θ/2)).
2. Local Feature Size - Adaptation Everywhere in the domain, h(x) ≤ lfs(x)/R. The local feature
size lfs(x) is, loosely speaking, half the width of the geometry at x. The parameter R gives half
the number of elements across narrow regions of the geometry.
3. Non-geometric - Adaptation An additional external spacing function hext(x) might be given
by an adaptive numerical solver or as a user-specified function (often at isolated points or
boundaries). We then require that h(x) ≤ hext(x).
4. Grading Limiting - The grading requirement means that the size of two neighboring
elements in a mesh should not differ by more than a factor G, or hi ≤ G hj for all neighboring
elements i, j. The continuous analogue of this is that the magnitude of the gradient of the size
function is limited by |⊽ h(x)| ≤ g, where g depends on the interpretation of the element sizes
but is approximately G − 1.
5. Optimality In addition to the above requirements (which are all upper bounds), we require
that h(x) is as large as possible at all points.

We now show how to create a size function h(x) according to these requirements, starting from an
implicit boundary definition by its signed distance function φ(x), with a negative sign inside the
geometry.

15.2.1.3 Curvature Adaptation


To resolve curved boundaries accurately, we want to impose the curvature adaptation h(x) ≤ hcurv(x)
on the boundaries, with
1
hcurv (𝐱) = if φ(x) = 0
{ K|κ(𝐱)|
∞ if φ(x) ≠ 0
Eq. 15.7

576Mauch S.P. Efficient Algorithms for Solving Static Hamilton-Jacobi Equations. Ph.D. thesis, Cal-tech, 2003.
577Sussman M., Smereka P., Osher S. “A level set approach for computing solutions to incompressible two-phase
flow.” J. Com. Phys., vol. 114, no. 1, 146–159, 1994.
373

where κ(x) is the curvature at x. In three dimensions we use the maximum principal curvature in
order to resolve the smallest radius of curvature. For an unstructured background grid, where the
elements are aligned with the boundaries, we simply assign values for h(x) on the boundary nodes
and set the remaining nodal values to infinity. Later on, the gradient limiting will propagate these
values into the rest of the region. The boundary curvature might be available as a closed form
expression (e.g. by a CAD representation), or it can be approximated from the surface triangulation.
For an implicit boundary discretization on a Cartesian background grid we can compute the
curvature from the distance function, for example in 2D:

∇φ φxx φ2y − 2φy φx φxy − φyy φ2x


κ = ∇. =
|∇φ| (φ2x − φ2y )
3/2

Eq. 15.8
In 3D similar expressions give the mean curvature κH and the Gaussian curvature κK, from which the
principal curvatures are obtained as

κ1,2 = κH ± √κ2H − κK
Eq. 15.9
On a Cartesian grid, we use standard 2nd order difference approximations for the derivatives. These
difference approximations give us accurate curvatures at the node points, and we could compute
mesh sizes directly according to Eq. 15.7 on the nodes close to the boundary, and set the remaining
interior and exterior nodes to infinity. However, since in general the nodes are not located on the
boundary, we get a poor approximation of the true, continuous, curvature requirement Eq. 15.7.
Below we show how to modify the calculations to include a correction for node points not aligned
with the boundaries. In 2D, suppose we calculate a curvature κij at the grid point xij . This point is
generally not located on the boundary, but a distance |φij | away. If we set hcurv(xij) = 1/(K |κij| ) we
introduce two sources of errors:

1. We use the curvature at xij instead of at the boundary. We can compensate for this by adding
φij to the radius of curvature:

1 κij
κbound = =
1 1 + κij φij
+ φij
κij
Eq. 15.10
Note that we keep the signs on κ and φ. If, for example, φ > 0 and κ > 0, we should increase
the radius of curvature. This expression is exact for circles, including the limiting case of zero
curvature (a straight line).

2. Even if we use the corrected curvature κ bound, we impose our h curv at the grid point xij instead
of at the boundary. However, the grid point will be affected indirectly by the gradient limiting,
and we can get a better estimate of the correct h by adding g|φij|. Interpolation of the absolute
function is inaccurate, and again we keep the sign of φ and subtract gφij (that is, we add the
distance inside the region and subtract it outside).

Putting this together, we get the following definition of hcurv in terms of the grid spacing Δx:
374

1 + κij φij
| | − gφij , |φij | ≤ 2∆𝐱
hcurv (𝐱 ij ) = { Kκij
∞ , |φij | > 2∆𝐱
Eq. 15.11
This will limit the edge sizes in a narrow band around the boundaries, but it will not have any effect
in the interior of the region. A similar expression can be used in three dimensions, where the
curvature is replaced by maximum principal curvature as before, and the correction makes the
expression exact for spheres and planes.

15.2.1.4 Feature Size Adaptation


For feature size adaptation, we want to impose the condition h(x) ≤ hlfs(x) everywhere inside our
domain, where
h (𝐱) − lfs(𝐱)/R , |φ(𝐱)| ≤ 0
{ lfs
∞ , |φ(𝐱)| > 0
Eq. 15.12
The local feature size lfs(x) is a measure of the distance between nearby boundaries. It is defined by
[Ruppert]578 as “the larger distance from x to the closest two non-adjacent polytopes [of the
boundary]”. For our implicit boundary definitions, there is no clear notion of adjacent polytopes, and
we use instead the similar definition (inspired by the definition for surface meshes) that the local
feature size at a boundary point x is equal to the smallest distance between x and the medial axis.
The medial axis is the set of interior points that have equal distance to two or more points on the
boundary.
For geometries with sharp corners that consist of separate boundary sections, we exclude medial
axis points that have equal distance to two neighboring boundaries. The feature size should not be
larger than an edge or face connecting sharp corners. Our medial axis based method will in some
cases not detect this since it is a result of having sharp corners and not because of the actual
boundary. However, this effect on the feature size is local and it is easily incorporated by explicit
constraints on h(x) along the edge or the face (possibly with a correction , gφ like in the curvature
adaptation). The definition of local feature size can be extended to the entire domain in many ways.
We simply add the distance function for the domain boundary to the distance functions for the medial
axis, to obtain our definition:

lfsMA (𝐱) = |φ(𝐱)| + |φMA (𝐱)|


Eq. 15.13
where φ(x) is the distance function for the domain and φMA(x) is the distance to its medial axis (MA).
The distances φMA(x) are always positive, but we take its absolute value to emphasize that we always
add positive distances. The expression given by Eq. 15.13 obviously reduces to the definition at
boundary points x, since then φ(x) = 0. For a narrow region with parallel boundaries, lfs(x) is exactly
half the width of the region, and a value of R = 1 would resolve the region with two elements. To
compute the local feature size according Eq. 15.13, we have to compute the medial axis transform
φMA(x) in addition to the given distance function φ(x).
If we know the location of the medial axis we can use the techniques described in section 15.2.1.2.2,
for example explicit distance calculations near the medial axis and the fast marching method for the
remaining nodes. The identification of the medial axis is often referred to as skeletonization, and a

578Ruppert J. “A Delaunay refinement algorithm for quality 2-dimensional mesh generation.” J. Algorithms, vol.
18, no. 3, 548–585, 1995.
375

large number of algorithms have been proposed. Many of them, including the original Grassfire
algorithm by [Blum]579, are based on explicit representations of the geometry. [Kimmel et al]580
described an algorithm for finding the medial axis from a distance function in two dimensions, by
segmenting the boundary curve with respect to curvature extrema. [Siddiqi et al]581 used a
divergence based formulation combined with a thinning process to guarantee a correct topology.
[Telea and Wijk]582 showed how to use the fast marching method for skeletonization and centerline
extraction.
Although in principle we could use any existing algorithm for skeletonization using distance
functions, we have developed a new method mainly because our requirements are different than
those in other applications. Maintaining the correct topology is not a high priority for us, since we do
not use the skeleton topology (and if we did, we could combine our algorithm with thinning). This
means that small “holes” in the skeleton will only cause a minor perturbation of the local feature size.
However, an incorrect detection of the skeleton close to the boundary is worse, since our Eq. 14.8
would set the feature size to a very small value close to that point.
We also need a higher accuracy of the computed medial axis location. Applications in image
processing and computer graphics often work on a pixel level, and having a higher level of detail is
referred to as sub-grid accuracy. A final desired requirement is to have a minimum number of user
parameters, since the algorithm should work in an automated way. Other algorithms typically use
fixed parameters to eliminate incorrect skeleton points close to curved regions. We use the curvature
to determine if candidate points should be accepted based on only one parameter specifying the
smallest resolved curvature.
Our method uses a Cartesian grid, but should be easy to extend to other background meshes. For all
edges in the computational grid, we fit polynomials to the distance function at each side of the edge,
and detect if they cross somewhere along the edge (see Figure 2 of [Per-Olof Persson]583). Such a
crossing becomes a candidate for a new skeleton point and we apply several tests, more or less
heuristic, to determine if the point should be accepted.
We scale the domain to have unit spacing, and for each edge we consider the interval s ∈ [−2, 3] where
s ∈ [0, 1] corresponds to the edge. Next we fit quadratic polynomials p1 and p2 to the values of the
distance function at the two sides of the edge, and compute their crossings. Our tests to determine if
a crossing should be considered a skeleton point are summarized below:

• There should be exactly one root s0 along the edge s ∈ [0, 1].
• The derivative of p2 should be strictly greater than the derivative of p1 in s ∈ [−2, 3] (it is
sufficient to check the endpoints, since the derivatives are linear)
• The dot product α between the two propagation directions should be smaller than a
tolerance,
• which depends on the curvatures of the two fronts (see below).
• We reject the point if another crossing is detected within the interval [−2, 3] with a larger
derivative difference dp2/ds − dp1/ds at the crossing s0.

579 Blum H. “Biological Shape and Visual Science (Part I).” Journal of Theoretical Biology, vol. 38, 205–287, 1973.
580 Kimmel R., Shaked D., Kiryati N., Bruckstein A.M. “Skeletonization via Distance Maps and Level Sets.” Computer

Vision and Image Understanding: CVIU, vol. 62, no. 3, 382–391, 1995.
581 Siddiqi K., Bouix S., Tannenbaum A., Zucker S. “The Hamilton-Jacobi Skeleton.” International Conference on

Computer Vision (ICCV), pp. 828–834. 1999.


582 Rumpf M., Telea A. “A continuous skeletonization method based on level sets.” Proceedings of the symposium

on Data Visualisation 2002, pp. 151–ff. Eurographics Association, 2002.


583 Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient Limiting”, Dept. of

Mathematics, Massachusetts Institute of Technology.


376

The dot product α is evaluated from one-sided difference approximations of ⊽φ. This is compared to
the expected dot product between two front from a circle of radius 1/|κ|, where κ is the largest
curvature at the two points. With one unit separation between the points and an angle θ between the
fronts, this dot product is

2
θ 2
|κ| κ2
cos(θ) = 1 − 2sin ( ) = 1 − 2 ( ) = 1 −
2 2 2
Eq. 15.14
We reject the point if the actual dot product α is larger than this for any of the curvatures κ1, κ2 at the
two sides of the edge or the given tolerance κtol. We calculate κ using difference approximations, and
to avoid the shock we evaluate it one grid point away from the edge. To compensate for this we
include a tolerance in the computed curvatures. If the point is accepted as a medial axis point, we
obtain the normal of the medial axis by subtracting the two gradients. The distance from the medial
axis to the two neighboring points are then |nxhs0| and |nxh(1 − s0)|. These are used as boundary
conditions when solving for φMA(x) in the entire domain using the fast marching method. Some
examples of medial axis detections are shown in Figure 3 of [Per-Olof Persson]584.

15.2.1.5 Gradient Limiting


An important requirement on the size function is that the ratio of neighboring element sizes in the
generated mesh is less than a given value G. This corresponds to a limit on the gradient |⊽ h(x)| ≤ g
where g ≈ G − 1. Note that we need a linear increase in the size function to obtain a geometric
progression of the element sizes. To see this, consider a simple one-dimensional problem with mesh
size specified at a boundary point h(x0) = h0. Generate a mesh in an advancing front like manner by
the algorithm xi+1 = xi +h(xi). With a linear size function of the form h(x) = h0+g(x−x0) we get a
constant ratio between neighboring elements:

h(xi+1 ) h(xi + h(xi )) h0 + g(xi + h(xi ) − x0 ) h(xi ) + gh(xi )


= = = =1+g
h(xi ) h(xi ) h(xi ) h(xi )
Eq. 15.15
In some simple cases, this linear increase can be built into the size function explicitly. For example, a
“point-source” size constraint h(y) = h0 in a convex domain can be extended as h(x) = h0 + g |x − y|,
and similarly for other shapes such as edges. For more complex boundary curves, local feature sizes,
user constraints, etc, such an explicit formulation is difficult to create and expensive to evaluate. It is
also harder to extend this method to non-convex domains (such as the example in Figure 15.20), or
to non-constant g (Figure 15.25 and Figure 15.27).
One way to limit the gradients of a discretized size function is to iterate over the edges of the
background mesh and update the size function locally for neighboring nodes. When the iterations
converge, the solution satisfies |⊽ h(x)| ≤ g only approximately, in a way that depends on the mesh.
Another method is to build a balanced octree, and let the size function be related to the size of the
octree cells. This data structure is used in the quadtree meshing algorithm, and the balancing
guarantees a limited variation in element sizes, by a maximum factor of two between neighboring
cells. However, when used as a size function for other meshing algorithms it provides an approximate
discrete solution to the original problem, and it is hard to generalize the method to arbitrary
gradients g or different background meshes.

Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient Limiting”, Dept. of
584

Mathematics, Massachusetts Institute of Technology.


377

We present a new technique to handle the gradient limiting problem, by a continuous formulation of
the process as a Hamilton-Jacobi equation. Since the mesh size function is defined as a continuous
function of x, it is natural to formulate the gradient limiting as a PDE with solution h(x) independently
of the actual background mesh. We can see many benefits in doing this:

➢ The analytical solution is exactly the optimal gradient limited size function h(x) that we want,
as shown by (see [Persson]585). The only errors come from the numerical discretization,
which can be controlled and reduced using known solution techniques for hyperbolic PDEs.

➢ By relying on existing well-developed Hamilton-Jacobi solvers we can generalize the


algorithm in a straightforward way to
• Cartesian grids, octree grids, or fully unstructured meshes
• Higher order discretization
• Space and solution dependent g
• Regions embedded in higher-dimensional spaces, for example surface meshes in 3D.

➢ We can compute the solution in O(n log n) time using a modified fast marching method.

15.2.1.5.1 The Gradient Limiting Equation


We now consider how to limit the magnitude of the gradients of a function h0(x), to obtain a new
gradient limited function h(x) satisfying |⊽ h(x)| ≤ g everywhere. We require that h(x) ≤ h0(x), and at
every x we want h to be as large as possible. We claim that h(x) is the steady-state solution to the
following Gradient Limiting Equation:

∂h
+ |∇h| = Min (|∇h| , g) with I. C. h(𝐱, t = 0) = h0 (𝐱)
∂t
Eq. 15.16
When |⊽ h| ≤ g, Eq. 15.16 gives that ∂h/∂t = 0, and h will not change with time. When |rh| > g, the
equation will enforce |⊽ h| = g (locally), and the positive sign multiplying |⊽ h| ensures that
information propagates in the direction of increasing values. At steady-state we have that |⊽h| =
min(|⊽h|, g), which is the same as |⊽h| ≤ g. For the special case of a convex domain in Rn and constant
g, we can derive an analytical expression for the solution to Eq. 15.16, showing that it is indeed the
optimal solution. For further details and related theorems, please consult the [Per-Olof Persson]586

15.2.1.5.2 Implementation
One advantage with the continuous formulation of the problem is that a large variety of solvers can
be used almost as black-boxes. This includes solvers for structured and unstructured grids, higher-
order methods, and specialized fast solvers. The dashed lines are the initial conditions h0 and the
solid lines are the gradient limited steady-state solutions h for different parameter values g. On a
Cartesian background grid, the Eq. 15.16 can be solved with just a few lines of code using the
following iteration:
hn+1 n + +
ijk = hijk + ∆t (min (∇ijk , g ) , ∇ijk )
Eq. 15.17
Where

See Previous.
585

Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient Limiting”, Dept. of
586

Mathematics, Massachusetts Institute of Technology.


378

2 2
∇+
ijk = max (D
−x n
hijk , 0) + min (D+x hnijk , 0) +
2 2
max(D−y hnijk , 0) + min(D+y hnijk , 0) +
2 2
max (D−z hnijk , 0) + min (D+z hnijk , 0)
Eq. 15.18
Here, D−x is the backward difference operator in the x-direction, D+x the forward difference operator,
etc. The iterations are initialized by h0 = h0, and we iterate until the updates Δh(x) are smaller than a
given tolerance. The Δt parameter is chosen to satisfy the CFL-condition, we use Δt = Δx/2. The
boundaries of the grid do not need any special treatment since all characteristics point outward. The
iteration of Eq. 15.17 converges relatively fast, although the number of iterations grows with the
problem size so the total computational complexity is super linear.
Nevertheless, the simplicity makes this a good choice in many situations. If a good initial guess is
available, this time-stepping technique might even be superior to other methods. This is the case for
problems with moving boundaries, where the size function from the last mesh is likely to be close to
the new size function, or in numerical adaptivity, when the original size function already has
relatively small gradients because of numerical properties of the underlying PDE.
The scheme in Eq. 15.17 is first-order accurate in space, and higher accuracy can be achieved by
using a second-order solver. For faster solution of Eq. 15.16 we use a modified version of the fast
marching method (see Section 15.2.1.2.2). The main idea for solving our PDE (Eq. 15.16) is based
on the fact that the characteristics point in the direction of the gradient, and therefore smaller values
are never affected by larger values. This means we can start by fixing the smallest value of the
solution, since it will never be modified. We then update the neighbors of this node by a discretization
of our PDE, and repeat the procedure. To find the smallest value efficiently we use a min-heap data
structure. During the update, we have to solve for a new hijk in ⊽+ ijk = g, with ⊽+ ijk from (Eq. 15.18).
This expression is simplified by the fact that hijk should be larger than all previously fixed values of h,
and we can solve a quadratic equation for each octant and set hijk to the minimum of these solutions.
Our fast algorithm is summarized as pseudo-code in points, and we do not have any FAR points. The
actual update involves a nonlinear right-hand side, but it always returns increasing values so the
update procedure is valid. The heap is large since all elements are inserted initially, but the access
time is still only O(log n) for each of the n nodes in the background grid. In total, this gives a solver
with computational complexity O(n log n). For higher-order accuracy, the technique described in 587
can be applied.
An unstructured background grid gives a more efficient representation of the size function and
higher flexibility in terms of node placement. A common choice is to use an initial Delaunay mesh,
possibly with a few additional refinements. Several methods have been developed to solve Hamilton-
Jacobi equations on unstructured grids, and we have implemented the positive coefficient scheme by
[Barth and Sethian]588. The solver is slightly more complicated than the Cartesian variants, but the
numerical schemes can essentially be used as black-boxes. A triangulated version of the fast marching
method was given in, and the algorithm was generalized to arbitrary node locations. One particular
unstructured background grid is the octree representation, and the Cartesian methods extend
naturally to this case (both the iteration and the fast solver). The values are interpolated on the
boundaries between cells of different sizes. We mentioned in the introduction that octrees are
commonly used to represent size functions, because of the possibility to balance the tree and thereby
get a limited variation of cell sizes. Here, we propose to use the octree as Sian grids. The

587 Sethian J.A. “A fast marching level set method for monotonically advancing fronts.” Proc. Nat. Acad. Sci. U.S.A.,
vol. 93, no. 4, 1591–1595, 1996.
588 Barth T.J., Sethian J.A. “Numerical schemes for the Hamilton-Jacobi and level set equations on triangulated

domains.” J. Com. Phys., vol. 145, no. 1, 1–40, 1998.


379

computational complexity is O(n log n), where n is the number of nodes in the background grid. a
convenient and efficient representation, but the actual values of the size function are computed using
our PDE. This gives higher flexibility, for example the possibility to use different values of g.

15.2.1.6 Results
We are now ready to put all the pieces together and define the complete algorithm for generation of
a mesh size function. The size functions from curvature and feature size are computed as described
in the previous sections. The external size function hext(x) is provided as input. Our final size function
must be smaller than these at each point in space:

h0 (𝐱) = min (hcurv (𝐱), hlfs (𝐱), hext (𝐱))


Eq. 15.19
Finally, we apply the gradient limiting algorithm from Section 15.2.1.5 on h0 to get the mesh size
function h, by solving:
∂h
+ |∇h| = min (|∇h |, g)
∂t
Eq. 15.20
with initial condition h(x, t = 0) = h0(x). We now show a number of examples, with different
geometries, background grids, and feature size definitions. All triangular and tetrahedral meshes are
generated with the smoothing-based mesh generator for distance functions. For some of the 2D
examples we have also generated meshes using an advancing front generator with similar results.
The size function is given at the curved boundaries and computed by (Eq. 15.16) at the remaining
nodes.

15.2.1.6.1 Mesh Size Functions in 2D and 3D


We begin with a simple example
of gradient limiting in two
dimensions on a triangular mesh.
For the geometry in Figure
15.19, we set h0(x) proportional
to the radius of curvature on the
boundaries, and to 1 in the
interior. We solve our gradient
limiting equation using the
positive coefficient scheme to get
the mesh size function in the
middle plot. A sample mesh using
this result is shown in the right
plot. This example shows that we
can apply size constraints in an
arbitrary manner, for example
only on some of the boundary
nodes. The PDE will propagate
the values in an optimal way to
the remaining nodes, and
possibly also change the given
values if they violate the grading Figure 15.19 Example of gradient limiting with an unstructured
condition. For this very simple background grid
380

geometry, we can indeed write the size function explicitly as

⏟ (hi , gφi (𝐱))


h(𝐱) = min
𝑖
Eq. 15.21
Here, φi and hi are the distance functions and the boundary mesh size for each of the three curved
boundaries. But consider, for example, a curved boundary with a non-constant curvature. The
analytical expression for the size function of this boundary is non-trivial (it involves the curvature
and distance function of the curve). One solution would be to put point-sources at each node of the
background mesh, but the complexity of evaluating (Eq. 15.21) grows quickly with the number of
nodes. By solving our gradient limiting equation, we arrive at the same solution in an efficient and
simple way.
The small sizes at the curved boundary do not affect the region at the right, since there are no
connections across the narrow slit. In Figure 15.20 we show a size function for a geometry with a

Figure 15.21 A mesh Size Function Taking


into account both Feature Size, Curvature, and
Figure 15.20 Another example of gradient Gradient Limiting. The Feature Size is
limiting, showing that non-convex regions are computed as the sum of the distance function
handled correctly and the distance to the medial axis.

narrow slit, again generated using the


381

unstructured gradient limiting solver. The initial size function h0(x) is based on the local feature size
and the curved boundary at the top. Note that although the regions on the two sides of the slit are
close to each other, the small mesh size at the curved boundary does not influence the other region.
This solution is harder to express using source expressions such as (Eq. 15.21), where more
expensive geometric search routines would have to be used.
A more complicated example is shown in Figure 15.21. Here, we have computed the local feature
size everywhere in the interior of the geometry. We compute this using the medial axis based
definition from section 15.2.1.4. The result is stored on a Cartesian grid. In some regions the gradient
of the local feature size is greater than g, and we use the fast gradient limiting solver in (see Algorithm
2 in [Per-Olof Persson]589) to get a well-behaved size function. We also use curvature adaptation as
before. Note that this mesh size function would be very expensive to compute explicitly, since the
feature size is defined everywhere in the domain, not just on the boundaries.

Figure 15.22 Generation of a Mesh Size


Function for a Geometry with Smooth Figure 15.23 Cross-Sections of a 3D Mesh Size
Boundaries. Function and a Sample Tetrahedral Mesh

Per-Olof Persson, “Mesh Size Functions For Implicit Geometries and PDE-Based Gradient Limiting”, Dept. of
589

Mathematics, Massachusetts Institute of Technology.


382

As a final example of 2D mesh generation, we show an object with smooth boundaries in Figure
15.22. We use a Cartesian grid for the background grid and solve the gradient limiting equation using
the fast solver. The feature size is again computed using the medial axis and the distance function,
and the curvature is given by the expression with grid correction (Eq. 15.11) since the grid is not
aligned with the boundaries. The PDE-based formulation generalizes to arbitrary dimensions, and in
Figure 15.23 we show a 3D example. Here, the feature size is computed explicitly from the geometry
description, the curvature adaptation is applied on the boundary nodes, and the size function is
computed by gradient limiting with g = 0.2. This results in a well-shaped tetrahedral mesh, in the
bottom plot.

15.2.1.6.2 Performance and Accuracy


To study the performance and the accuracy of our algorithms, we consider a simple model problem
in = (−50, 50) × (−50, 50) with two point-sources, h(−10, 0) = 1 and h(10, 0) = 5, and g = 0.3. The true
solution is given by (see Persson1), and we solve the problem on a Cartesian grid of varying
resolution. We compare the execution times for three different solvers, edge-based iterations,
Hamilton-Jacobi iterations, and the Hamilton-Jacobi fast gradient limiting solver. The edge-based
iterative solver loops until convergence over all neighboring nodes i, j and updates the size function
locally by hj min(hj , hi + g |xj − xi|) (assuming hj > hi). The iterative Hamilton-Jacobi solver is based
on the iteration (Eq. 15.17) with a tolerance of about two digits.
The table (not shown) displays that the iterative Hamilton-Jacobi solver is about five times slower
than the simple edge based iterations. This is because the update formula for the edge-based
iterations is simpler (all edge lengths are the same) and since the Hamilton-Jacobi solver requires
more iterations for high accuracy (although their asymptotic behavior should be the same). The fast
solver is better than the iterative solvers, and the difference gets bigger with increasing problem size
(since it is asymptotically faster). Note that these background meshes are relatively large and that all
solvers probably are sufficiently fast in many practical situations.
We also mention that simple algorithms based on the explicit expression for convex domains or
geometric searches for non-convex domains might be faster for a small number of point-sources.
However, these methods are not practical for larger problems because of the O(n2) complexity. Next
we compare the accuracy of the edge-based solver and Hamilton-Jacobi discretization of first and
second order accuracy.

15.2.1.7 Other Applications


In this section we show some special applications of mesh size functions and the gradient limiting
equation

• numerical adaptation,
• mesh generation for images,
• non-constant g values.

15.2.1.7.1 Numerical Adaptation


Numerical adaptation is a technique for solving PDEs using mesh size functions that are automatically
generated to reduce the discretization error. From an error estimator in each element, a new mesh
size function is computed. The mesh can then be updated, either by local refinements or remeshing.
The procedure is repeated until the desired accuracy is achieved. One problem when regenerating
the mesh is that the size function h(x) from the adaptive solver might be highly irregular. The error
estimation often varies between neighboring elements, giving high gradients also in the size function.
A simple solution is to smooth the size function, e.g. using Laplacian smoothing. However, this
introduces large deviations from the original size function, even where the gradient is small. A better
383

method is to use gradient limiting


and solve (Eq. 15.16) on the
same unstructured mesh that the
size function is defined.
Figure 15.24 shows an example
of adaptive meshing for a
compressible flow simulation
over a bump at Mach 0.95. We
solve the Euler equations with a
finite volume solver, and use a
simple adaptive scheme based on
second-derivatives of the density
to determine new size functions.
These resolve the shock
accurately but the sizes increase
sharply away from the shock,
giving low-quality triangles (top
figure). After gradient limiting
the mesh size function is well-
behaved and a high-quality mesh
can be generated (bottom figure).
We have also generated meshes
for this problem using the
advancing front method. With the
original size function we were
unable to create a mesh because Figure 15.24 Numerical adaptation for compressible flow
of the large gradients, but after over a bump at Mach 0.95. The second-derivative based
gradient limiting we obtained a error estimator resolves the shock accurately, but gradient
well-shaped mesh. limiting is required to generate a new mesh of high
quality.
15.2.1.7.2 Meshing Images
Images are special cases of
implicit geometry definitions, since the boundaries of objects in the image are not available in an
explicit form. These object boundaries can be detected by edge detection methods [29], but these
typically work on a pixel level and do not produce smooth boundaries. A more natural approach is to
keep the image-based representation, and form an implicit function with a level set representing the
boundary. Before doing this, we have to identify the objects that should be part of the domain, in
other words to segment the image. Many methods have been developed for this, and we use the
standard tools available in image manipulation programs. This will result in a new, binary image,
which represents our domain. We also mention that image segmentation based on the level set
method, for example Chan and Vese’s active contours without edges, might be a good alternative,
since they produce distance functions directly from the segmentation.
Given a binary image A with values 0 for pixels outside the domain and 1 for those inside, we smooth
the image with a low-pass filter and create the signed distance function for the domain using
approximate projections and the fast marching method. The second-derivative based error estimator
resolves the shock accurately, but gradient limiting is required to generate a new mesh of high
quality. Next we create the distance function as described above, and a good mesh size function based
on curvature, feature size from the medial axis and gradient limiting. For the skeletonization we
384

increase κtol to compensate for the slightly noisy distance function close to the boundary. (see)590. All
techniques used for meshing the two dimensional images extend directly to higher dimensions. The
image is then a three-dimensional array of pixels, and the binary mask selects a sub-volume.
Examples of this are the sampled density values produced by computed tomography (CT) scans in
medical imaging, which we created mesh size functions and tetrahedral meshes.

Figure 15.26 Meshing objects in an image Figure 15.25 Gradient limiting with space-
dependent g(x).

590The segmentation is done with an image manipulation program, the distance function is computed by
smoothing and approximate projections, and the size function uses the curvature, the feature size, and gradient
limiting.
385

15.2.1.7.3 Space and Solution Dependent


The solution of the gradient limiting equation remains
well-defined if we make g(x) a function of space. The
numerical schemes in Section 15.2.1.5.2 are still valid,
and we replace for example g in (Eq. 15.17) with gijk. An
application Original Image Size Function Triangular
Mesh of this is when some regions of the geometry
require higher element qualities, and therefore also a
smaller maximum gradient in the size function. Figure
15.25 shows a simple example where the initial mesh
size h0 is based on curvatures and feature sizes. The left
and the right parts of the region have different values of
g, and the gradient limiting generates a new size
function h satisfying |⊽ h| ≤ g(x) everywhere.
Another possible extension is to let g be a function of the
solution h(x) (although it is then not clear if the gradient
limiting equation has one unique solution). This can be
used, for example, to get a fast increase for small element
sizes but smaller variations for large elements. In a
numerical solver this might be compensated by the
smaller truncation error for the small elements. A simple
example is shown in Figure 15.27, where g(h) varies
smoothly between 0.6 (for small elements) and 0.2 (for
large elements). In the iterative solver, we replace g with
g(hijk), and if the iterations converge we have obtained
a solution. In the fast solver, we solve a (scalar) non- Figure 15.27 Gradient limiting with
linear equation ⊽+ijk = g(hijk) at every update. solution-dependent g(h). The distances
between the level sets of h(x) are smaller
15.2.1.8 Conclusions for small h, giving a faster increase in
We have presented new techniques for automatic mesh size.
generation of mesh size functions. The distance function
is used to compute the medial axis transform, from which the local feature size is derived. We
introduced a new, continuous formulation of the gradient limiting procedure, which is an important
part in the generation of good mesh size functions. We showed several examples of high-quality
meshes generated with our mesh size functions, and we gave an example of gradient limiting for an
adaptive finite element solver and mesh generation for regions in images. We give several
suggestions for future development:

➢ Other feature size algorithms. We have experimented with a PDE-based algorithm that
convect the distance function along its characteristics, and a simpler direct algorithm that
finds the largest spheres without first extracting the medial axis.
➢ Other background meshes for the feature size. We have worked exclusively with Cartesian
and octree grids for the medial axis based feature size calculations, and a version for
unstructured meshes would be useful.
➢ Implementing a fast marching based solver for triangular/tetrahedral background meshes.
386

The methods described in591-592 should be applicable in a straightforward way.


➢ Extending the gradient limiting to anisotropic mesh size functions. There might be a PDE
similar to the gradient limiting equation (or a system of PDEs) based on general metrics.
➢ Adaptive generation of background meshes. [Zhu et al]593 discussed an intuitive, iterative
approach for refinement of background meshes. With our PDE-based formulation, we can
achieve this in a strict and systematic way by applying error estimators for numerical
adaptive solvers on the discretized solution h(x).

15.2.2 Case Study 2 - Neighborhood-Based Element Sizing Control for Finite Element Surface
Meshing594
A method is presented for controlling element sizes on the interior of areas during surface meshing.
A Delaunay background mesh is defined over which a neighborhood based interpolation scheme is
used to interpolate element sizes. A brief description of natural neighbor interpolation is included
and compared to linear interpolation. Two specific applications are presented that utilize the sizing
function, namely boundary layer meshing and surface curvature refinement. For these applications,
criteria used for insertion of additional interior vertices into the background mesh to control element
sizing is discussed.

15.2.2.1 Introduction
In recent years CAD software has become a popular means for generating geometry for the finite
element method. The surfaces and volumes described by CAD can come in a variety of forms including
parametric surfaces such as NURBS or tessellated geometry consisting of triangle facets. Because CAD
models will often have regions of high curvature or very tiny features in the same model with larger
or flatter features, automated mesh generation resulting in high quality, well-graded finite elements
can be a difficult task. In order to adequately describe all features of the model without generating
huge numbers of elements, large transitions in element sizes can be required.
To control element sizes during the mesh generation process, an element sizing function can be
defined. When meshing, this function may take into account surface features, proximity to other
surfaces, surface curvature as well as physical properties such as boundary layers, surface loads or
error norms in determining local element sizes.
While a wide variety of geometric and physical properties may be used in determining element sizes,
the question remains as to how these can be combined to define a single smooth sizing function over
the domain of the surface. This paper discusses a neighborhood-based interpolation method that can
take into account any of the above features while maintaining a smoothly varying sizing function. It
will also look at two specific surface meshing problems that can be handled using this approach,
namely surface curvature and boundary layer meshing.
There are a great many aspects that can affect the final quality of a surface mesh. This paper focuses
on only one of these, that of describing the background sizing function. The definition of the sizing
function is defined as a pre-process to the actual surface meshing algorithm. During the meshing
process, the sizing function is periodically evaluated providing information to control local element
sizes. Although relatively insignificant in total CPU time compared to the entire surface meshing

591 Kimmel R., Sethian J.A. “Fast Marching Methods on Triangulated Domains.” Proceedings of the National
Academy of Sciences, vol. 95, pp. 8341–8435. 1998
592 Covello P., Rodrigue G. “A generalized front marching algorithm for the solution of the eikonal equation.” J.

Comput. Appl. Math., vol. 156, no. 2, 371–388, 2003.


593 Zhu J., Blacker T., Smith R. “Background Over-lay Grid Size Functions.” Proceedings of the 11th International

Meshing Roundtable, pp. 65–74. Sandia Nat. Lab., September 2002.


594 Steven J. Owen and Sunil Saigal, “Neighborhood-Based Element Sizing Control for Finite Element Surface

Meshing”, Department of Civil and Environmental Engineering, Carnegie Mellon University And ANSYS Inc. 275
Technology Drive, Cannonsburg, PA, USA.
387

process, the sizing function can ultimately influence the final quality and grading of the elements,
perhaps more than any other phenomenon.

15.2.2.2 Background Mesh


The proposed method involves first, the definition of a Delaunay background mesh. Other current
literature [Canann]595, [Lohner]596 also utilizes a background mesh in defining the sizing function.
The typical case is to perform a Delaunay tessellation of the boundary nodes. The Delaunay
background mesh is defined in the parameter space of the surface. For best results the
parameterization of the surface should be well behaved over the surface. This implies that the
mapping from 3D space to 2D parametric space, can be described with a constant scaling function.
Since, in general, CAD geometry cannot be expected to behave in this manner, a warped parametric
space may be necessary to describe the parametric domain.
Although a detailed description of the warped parametric space is beyond the scope of this paper, it
should be noted that a reasonable mapping from 3D space to 2D parametric space is assumed While
the background mesh is usually defined in the parametric space of the surface, the actual meshing
algorithm may be in either 2D parametric space or in 3D space. The background mesh is also
independent of the actual meshing algorithm used. For this study, the advancing front method is used,
but there is no reason it cannot be applied equally well to a Delaunay method.
The only connection between meshes and sizing function is through a simple inquiry interface: dx =
f(x, y), that is, given a local coordinate, (x, y) in the parameter space of the surface, return the target
element size, dx. Figure 15.28 shows a simple Delaunay tessellation of the boundary nodes of a two
dimensional object. Also included in the tessellation are four bounding corner nodes, included in
order to facilitate the Delaunay algorithm. Element sizes are usually assigned to the vertices of the
background tessellation based on the edge lengths of the boundary segments. Since it is necessary to

Figure 15.28 Delaunay Tessellation of Boundary Vertices used for Background Mesh

595 Canann, Scott A., Yong-Cheng Liu and Anton V. Mobley (1997), “Automatic 3D Surface Meshing to Address
Today’s Industrial Needs”, Finite Elements in Analysis and Design. Elsevier, Vol. 25, pp.185-198
596 Lohner, Rainald (1996), “Extensions and Improvements of the Advancing Front Grid Generation Technique,”

Communications in Numerical Methods in Engineering, John Wiley & Sons, Vol. 12, pp. 683-702.
388

locate a point in the Delaunay background mesh, a process in itself which can be somewhat time
consuming, it is advantageous to maintain a background mesh as sparse as possible, while still
maintaining the important sizing details of the model.
The method used for interpolation can greatly affect the quality of the resulting mesh. Although
simple linear interpolation is frequently used, some weaknesses have been noted with this method.
An improved method, known as natural neighbor interpolation is used to define the sizing function.

15.2.2.3 Linear Interpolation


With linear interpolation, the local element size dx at location Px, is defined as:

dx = ∑ w i di
i=0
Eq. 15.22
where di are the element sizes at each of the three vertices of the triangle in the Delaunay background
mesh containing Px, and wi are the barycentric coordinates of Px within the same triangle; for
example:

𝑥 𝑥1 𝑥2 𝑥0 𝑥 𝑥2 𝑥0 𝑥1 𝑥
|𝑦 𝑦1 𝑦2 | |𝑦0 𝑦 𝑦2 | |𝑦0 𝑦1 𝑦|
w0 = 𝑥1 1𝑥
1 ,
𝑥 w1 = 𝑥1 𝑥1 𝑥1 , w2 = 𝑥1 𝑥1 𝑥1
0 1 2 0 1 2 0 1 2
𝑦
| 0 𝑦1 𝑦2| 𝑦
| 0 𝑦1 𝑦2| 𝑦
| 0 𝑦1
𝑦2|
1 1 1 1 1 1 1 1 1
Eq. 15.23
In some cases, linear interpolation provides an adequate description of the element sizing function.
Poor results can arise when the triangles in the background Delaunay mesh become poorly shaped.
Since in most cases, only the boundary nodes are tessellated, long, skinny triangles are typical similar
to those shown in Figure 15.28. As a result, abrupt changes in element size are common resulting
in less than desirable element quality and transitions.

15.2.2.4 Natural Neighbor Interpolation


Because of the limitations of linear interpolation, an alternate method was sought. Natural Neighbor
interpolation was first introduced by [Sibson]597 and later further developed by [Owen]598 and
[Watson]599. Even though its usage has been commonly for interpolation of scattered data generated
from geotechnical applications [ Jones]600, its advantages are also applicable for element sizing. This
method provides a smooth interpolation even with poorly shaped triangles in the background mesh.
The element size dx is defined in a similar manner to linear interpolation:

597 Sibson, R., (1981), “A Brief Description of Natural Neighbor Interpolation,” Interpreting Multivariate Data,
John Wiley & Sons, New York, pp. 21-36.
598 Owen, Steven J., (1992), An Implementation of Natural Neighbor Interpolation in Three Dimensions, Master’s

Thesis, Brigham Young University, 119p.


599 Watson, David, F. (1994), nngridr: An Implementation of Natural Neighbor Interpolation.
600 Jones, Norman L, Steven J. Owen and Ernest C. Perrie (1995), “Plume Characterization With Natural Neighbor

Interpolation”, Proceedings Geo Environment 2000, ASCE, pp.331-345


389

n−1

dx = ∑ wi di
i=0
Eq. 15.24
where n is now the number of neighbor vertices. The distinguishing features of natural neighbor
interpolation include the manner in which the neighbor vertices are selected and the computation of
the weight, wi at each of the vertices. The n vertices included in the interpolant are defined as all
vertices belonging to triangles whose circumcircle contain Px. This criteria is exactly that used in the
well-known Delaunay triangulation algorithm described by [Watson]601. Since the process of
computing the neighboring triangles is an integral part of the Delaunay triangulation procedure, this
information can not only be used to insert a new vertex into the mesh, but to compute the
interpolated element size at the same vertex.
The weights, wi at each of the neighboring vertices are defined using what [Sibson]602 first described
as local coordinates. Local coordinates are often thought of as generalized barycentric coordinates.
While barycentric coordinates can be defined as describing space with respect to three points in R2,
local coordinates define space with respect to an arbitrary number of points. The local coordinate, wi
is defined as follows:
κ(πi )
wi =
κ(π)
Eq. 15.25
where () is the area of the Voronoi polygon,  defined after Px is inserted into the domain and (i)
is the difference in areas of the Voronoi polygon i at vertex i before and after Px is inserted. The
Voronoi polygon associated with vertex i is that space in R2 closer to vertex i than any other vertex in
the mesh. More precisely, the Voronoi polygon i associated with vertex Pi is defined as:

πi = {x ϵ R2 ∶ |x − Pi | < |x − Pj | , j = 1, , , , , N, j ≠ i}
Eq. 15.26
where N is the total number of vertices in the mesh. Error! Reference source not found. shows a g
raphical representation of local coordinates. In this example, the interpolant is Px. Solid lines
represent the Voronoi polygons for each vertex in the domain after temporarily inserting Px into the
domain. The dashed lines represent the Voronoi polygons before insertion. In this case, vertices 1, 4,
5, 6 and 9 are selected as neighbors, and used to weight the interpolation. The area, () is the
Voronoi polygon defined by Px and (i) are the difference in Voronoi areas of polygons before and
after Px is inserted for each neighbor vertex. From this example it can be seen that the sum of (i) will
be () hence, from Eq. 15.25, the sum of weights, wi, will be one.
A detailed description of the calculation of the local coordinates is provided by the [author]603 and
[Watson]604. The author describes a simple method for computing the areas of Voronoi polygons
based on triangle circumcenters. Watson describes a more efficient method, which avoids the explicit
formulation of the Voronoi polygons.

601 Watson, David, F. (1981), “Computing the Delaunay Tesselation with Application to Voronoi Polytopes”, The
Computer Journal, Vol 24(2) pp. 167-172
602 Sibson, R., (1981), “A Brief Description of Natural Neighbor Interpolation,” Interpreting Multivariate Data,

John Wiley & Sons, New York, pp. 21-36.


603 Owen, Steven J., (1992), An Implementation of Natural Neighbor Interpolation in Three Dimensions, Master’s

Thesis, Brigham Young University, 119p.


604 Watson, David, F. (1994), nngridr: An Implementation of Natural Neighbor Interpolation.
390

15.2.2.5 Applications
In many cases, it is sufficient to use only the boundary nodes of the area as input to describe the sizing
function. If the boundary divisions have been adequately defined and there is very little surface
curvature within the area, the resulting sizing function can produce very high quality elements. The
sizing may not be sufficient when internal surface features, not described by line divisions are
required, or if physical phenomenon requiring smaller element sizes close to boundaries is required.
In these cases, additional internal nodes may be inserted into the background mesh to more precisely
define the element sizing function.

15.2.2.6 Boundary Layers


Boundary layers are frequently required in computational fluid dynamics or electromagnetic
problems. Several layers of small, uniformly sized elements are required immediately adjacent to a
boundary. In order to avoid huge numbers of elements in the simulation, the element sizes should
transition from the boundary layers to a much larger element size on the interior of the mesh. In
order to capture the physics of the simulation, element size transitions from the boundary to the
interior can be as much as 100 or 1000 to 1. Many methods have been proposed for meshing surfaces
with boundary layers [Clements]605, [Pirzadeh]606. Inserting additional sizing vertices into the
background mesh appears to be a promising solution for controlling the element size on meshes
requiring boundary layers. For boundary layer meshing, some user input is required. For each line
defined as a boundary, at least three values must be specified:

1.  = element size at boundary


2.  = thickness of boundary layer
3.  = thickness of transition layer

Alternatively, the user may prefer to


enter an exact number of elements
through the boundary layer, instead of ,
or a growth ratio indicating the
maximum aspect ratio allowable in the
transition layer instead of . In either
case, the user input is first converted into
the required ,  and  distances (see
Figure 15.29). For every node on the
boundary, up to two new vertices can be Figure 15.29 Boundary and Transition Layers Adjacent
inserted into the background mesh. As to Model Boundary
indicated in Figure 15.30, points Pc, and
Pt are generated on a line normal to the boundary at boundary vertex Pb. To avoid geometric
evaluations, the normal vector, Nb to the line is defined as the bisector of the two adjacent edges to
Pb. Therefore Pc and Pt are defined as:

Pc = Pb + ‖Nb ‖. β Pt = Pb + ‖Nb ‖. (β + χ )
,
0 1
where Nb = [ ] . ‖Pb1 − Pb0 ‖
−1 0
Eq. 15.27

605 Clements, Jan, Ted Blacker and Steven Benzley (1997), “Automated Mesh Generation in Boundary Layer
Regions Using Special Elements”, AMD-Vol.220 Trends in Unstructured Mesh Generation, ASME, pp.137-143.
606 Pirzadeh, Shahyar, (1993), “Unstructured Viscous Grid Generation by Advancing-Layers Method,” AIAA-93-

3453-CP, pp.420-434
391

Once Pc and Pt have been located, the element


size at these vertices are defined. The
element size, dc at Pc is simply the user
supplied . dc can also be defined as the
average length of the edges immediately
adjacent to Pb. The element size, dt at Pt is
defined from a user supplied internal
element size, dglobal. In the absence of a user
supplied dglobal, dt can be defined as the
average length of all boundary intervals not
defined as boundary layers. Inserting all
vertices, Pc, and Pt into the background mesh
is in most cases far more than is needed to
adequately describe the element sizing
function. For most cases it is sufficient to
insert new vertices at intervals no closer
than dglobal. For very large transitions where
 is very small with respect to dglobal , it may
be necessary to insert Pc at the boundary
layer at closer intervals.
As an additional measure to limit the number Figure 15.30 Placement of Sizing Vertices at the
of vertices in the background mesh, an Boundary and Transition Layers
interpolation is first done at the proposed
location of the new vertex. In this case the
interpolation has relatively little overhead since the triangles needed for natural neighbor
interpolation are the same as those used for a [Watson]607 type node insertion procedure. The

Figure 15.31 Background Mesh used for Boundary Layer Mesh. Contours Generated From Natural
Neighbor Interpolation are Over-Laid

Watson, David, F. (1981), “Computing the Delaunay Tesselation with Application to Voronoi Polytopes”, The
607

Computer Journal, Vol 24(2) pp. 167-172.


392

proposed vertex is only inserted if the interpolated element size at the new vertex is different by
more than a predefined percentage,  from the new element size, di at the vertex. For this application,
 of 5% was used.
One problem which can arise from this procedure occurs when the boundary layers or transition
layers of opposing boundaries intersect. Vertices with widely varying element size definitions can
end up being placed close together resulting in very poor element quality. To ensure this does not
occur, Pt cannot be within a radius of + from any other boundary edge. A local distance check is
made to ensure this does not occur. In the event Pt is closer to a nearby edge than +, the distance
 is iteratively cut back until this requirement is satisfied. If this occurs, a new equivalent dt must also
be defined. The new dt is linearly interpolated between the old dt and the size dc at Pc.

Figure 15.32 Boundary Layer Mesh With 1:200 Transition

Figure 15.31 shows the background mesh


generated for a contrived model where the
change in element size is 1:200. An equivalent
 thickness was computed from a user input of
five elements through the thickness of the
boundary layer. The  thickness was derived
from user input from the maximum growth
ratio of 2:1. The resulting contours generated
from natural neighbor interpolation of the
element size are also displayed on Figure
15.31. Figure 15.32 shows the resulting
triangles generated using an advancing front
triangle meshing algorithm which utilizes the
background size information. Figure 15.33 is Figure 15.33 Close-Up of Boundary Layers in
a closeup view of the boundary layers of Previous Figure
Figure 15.32. Note the overlapping boundary
393

layers and change in element sizes between layers.

15.2.2.7 Surface Curvature


If areas have internal surface features, inserting additional sizing vertices can drastically improve
element quality. What is typically used to control element sizing on curved surfaces is a user specified
maximum spanning angle, . This angle defines a limit as to how far the element edges may deviate
from the actual geometry. Some applications use the maximum spanning angle or other discretization
criteria during the meshing process [deCougny]608. By incorporating the sizing based on curvature
and maximum spanning angle into the background sizing function, the meshes does not have to
compute additional normal calculations for each triangle. The maximum element size based on φ, is
defined by the following
φ
d φ = 2rc sin ( )
2
Eq. 15.28
where rc is the radius of curvature. The radius of curvature, rc can be approximated from the normal
at the surface. The radius of curvature between two locations on the surface that are a linear distance
of h apart and whose normal are NA and NB is approximated by:

h/2
rc =
√1 − ‖NA ‖. ‖NB ‖
2
Eq. 15.29
Figure 15.34 shows graphically the relationships
from which Eq. 15.29 is derived. The normal, NA and
NB with vector AB form a triangle from which
trigonometric relationships can be developed and
where  is defined as, NA NB. This relationship is
exact for a quadratic surface (ie. sphere, cylinder) but
is only an approximation for arbitrary surfaces. Even
though exact curvature can be easily computed for
some parametric surface types, for faceted geometry, Figure 15.34 Approximation of Radius of
curvature is generally not readily available and can Curvature Between Two Points A,B on a
be time consuming to compute. For this reason, Surface
normal are used to approximate the radius of
curvature. The accuracy of the resulting radius of curvature will in general improve as h gets small.
Depending on whether the meshes works directly in parametric space or in 3D space it may also be
necessary to apply a scaling factor to the resulting maximum element size, d computed. If parametric
space is used, a local scaling factor that maps the size d to an equivalent size, d’ in parametric space
is needed as follows:

h′
d′φ =[ ]d
rc cos −1 ‖NA ‖. ‖NB ‖ 𝜑
Eq. 15.30

608 deCougny, H.L., and M.S. Shephard (1996), “Surface Meshing Using Vertex Insertion”, Proceedings, 5th
International Meshing Roundtable, Sandia National Laboratories, pp. 243-256.
394

where h’ is the distance in parametric space between points A and B on the surface. The denominator
in the above scale factor is simply an expression for the arc length in world space on the surface
between the same two points.
Now that a controlling maximum element size has been defined based on a user defined maximum
spanning angle, the question still remains as to where new sizing vertices should be placed into the
background mesh so that the element sizing function will better describe the surface curvature. It is
clear that a random or a gridded distribution of vertices in the background mesh will be inadequate
R since regions of maximum curvature can very easily be missed. It is typical that only in these
regions of high curvature that additional sizing vertices need to be placed. The approach taken for
this application was to use a quadtree decomposition of the parametric space of the area.
The quadtree is initialized by evaluating the normal over an N by M grid of points on the surface. N
and M should be chosen so that a reasonable initial representation of the surface can be established.
A maximum value for N or M defined as 10, appeared to provide sufficient information for most
surfaces tested. Each set of four points defining a quadrilateral in the N by M grid serve as the root of
a quadtree.
The dot product between the normal at the corners of the quadrilateral are computed. The minimum
dot product between any two corners is used to approximate the radius of curvature, rc and
maximum element size d. The current leaf of the quadtree is subdivided into its four child
quadrilaterals if the angle spanned over the quadrilateral is less than the maximum spanning angle,
φ. The quadtree subdivision is also limited by a minimum allowable element size or maximum
number of subdivisions. This is to ensure the quadtree does not go forever on surfaces with sharp
folds or discontinuities.
A new vertex is considered for insertion into the background mesh only at the local maximum
quadtree level. That is, any quadtree leaf that is not split into four children defines a potential vertex
at the centroid of its
quadrilateral. The size, dx
defined at the vertex will be
the smaller of the element
size, d, defined from the
surface curvature, or dx
defined from an
interpolation at the same
point before any
modifications for curvature.
Similar to boundary layers, a
vertex is only inserted into
the background mesh if the
resulting change to the local
element size is greater than .
Although in many cases, the
background mesh is
sufficient to control the
quality and sizing of the
mesh, some additional
measures can also be taken.
If the advancing front
method is used for meshing,
it is possible that for large Figure 15.35 Background mesh and contours of sizing function for
parametric surface
transitions in element size,
the smaller element regions
395

can be missed. Typically the size of a new element at the front is determined from an interpolation of
the background mesh.
For large element sizes, the location interpolated may miss the smaller regions. This can generally be
avoided by keeping an ordered list of fronts sorted by size while meshing. If the smallest fronts are
always dealt with first, the sizing function can be better captured. A set of bins containing fronts of
approximately the same size is sufficient for maintaining the size ordering. Alternatively, rather than
a single interpolation into the background mesh, multiple interpolations can be performed at the
vertices and/or centroid of the proposed new triangle in the mesh. A weighted average of the
computed sizes can be used. Figure 15.35 shows the background mesh for a simple parametric
surface along with the resulting contours generated using natural neighbor interpolation. Figure
15.36 shows the resulting triangle mesh using both a maximum spanning angle, φ of 15 and 30
degrees.

Figure 15.36 Parametric surface meshed with two different max spanning angles (φ). Left φ=15
degrees, right: φ=30 degrees

15.2.2.8 Conclusion
Natural Neighbor interpolation has been proposed as a new method for providing element size
information to surface meshing algorithms. High quality elements can be generated in situations
requiring very large transitions or discretization of highly curved surfaces. While only two specific
criteria were used for defining element sizing information, many others can be developed and
combined. Future directions will inevitably be application to three dimensions. Three dimensional
boundary layer meshing is also an important topic, particularly for CFD applications. While the
interpolation method presented has been discussed with respect to isotropic sizing, extensions to
incorporate anisotropic criteria will also be considered. For further info, please consult the work by
396

[Owen & Saigal ]609

15.2.3 Case Study 3 - Background Overlay Grid Size Functions610


Here, we describes a new technology of mesh size control using a background overlay grid size
function. A background overlay grid is generated first according to the defined size functions and
then is used as the base grid for determining the mesh size at each point during the meshing process.
The definitions, classifications, implementations and control algorithms of three types of size
functions including a fixed size function, a curvature size function and a proximity size function are
presented in detail. Meshing results with controlled mesh sizes are given, and considerations for
further improvement are listed.

15.2.3.1 Introduction
In the mesh generation field, the mesh size control is very critical to mesh quality and to the
successful field simulations using the generated mesh. The mesh sizes need to catch local details in
areas of the geometry where small features exist. On the other hand, in non-critical areas of the
geometry, the mesh size can be large as long as the mesh transition is smooth enough. However, it is
tedious to manually determine the local features of the geometry and mesh these entities by desired
sizes. Pre-meshing boundaries of the domain with the desired size is a standard way of obtaining size
transition and gradation. However, the user has no direct control over the mesh grading on the
geometry. Local refinement of an existing mesh is another option. Unfortunately, unrefined meshes
will form a fixed constraint to the refined areas and results are not always satisfactory.

(a) Circle pre-meshed (b) Face directly meshed (c) Face meshed with
with size 0.05, face with fixed size function Quads
meshed with size 1.0
Figure 15.37 Comparison of meshing results from: (a) pre-meshed inner circle with no growth control
and (b) from size function with growth controlled

As a simple example of the importance of size functions, consider Figure 15.37. The geometry is a
10 x 10 square with a circular hole of radius 0.5. In Figure 15.37 (a) the inner circle is pre-meshed
with a size of 0.05 and rest of the face is meshed with a size of 1.0 by an advancing front triangle
meshing algorithm. Transitions are handled by the algorithm itself, with no reliance on a size
function. A total of 5,656 elements are generated. In Figure 15.37 (b), the same algorithm is used,
but a size function is prescribed which guides the meshing. The size function used prescribes a size
of 0.05 at the hole boundary and a geometric growth rate of 1.2 based on the distance from the hole.

609 Steven J. Owen and Sunil Saigal, “Neighborhood-Based Element Sizing Control for Finite Element Surface
Meshing”, Department of Civil and Environmental Engineering, Carnegie Mellon University And ANSYS Inc.
275 Technology Drive, Cannonsburg, PA, USA.
610 Jin Zhu, Ted Blacker, Rich Smith, “Background Overlay Grid Size Functions”, 2002.
397

This growth is limited by a maximum size specified as 1.0. There are only 1,950 elements generated
in this case. You can see that the mesh gradation is well controlled by the growth rate in Figure
15.37 (b) compared with the mesh pattern in Figure 15.37 (a). When meshing the same face with
a quadrilateral/paving algorithm611, no mesh could be obtained without a size function because of
the extreme gradation difference and the lack of interior gradation control. With the size function it
can be meshed nicely, as shown in Figure 15.37 (c).
During the meshing process it is highly desirable that some guidance be provided to the mesh tools
to specify the size of elements to be defined and the variation of size from one part of the domain to
another. Sizing and gradation control can be determined during the meshing process or more
commonly as an a priori procedure. As an a priori procedure, a size function is defined over the entire
domain. The sizing function, d = f (x), where d is the target element size and x is the location in the
domain, can be customized for specific geometric or physical prosperities. The sizing function may
take into account surface features as well as physical properties in determining local element sizes.
Such surface features as proximity to other surfaces and/or surface curvature can be used to control
surface mesh density distribution. Physical properties such as boundary layers, surface loads or error
norms from a previous solution may be considered. For instance, in an adaptive finite element
scheme, a size specification in the simulated field is deduced from simulation results, usually via an
error estimate. This may then be combined with face geometric constraints being considered. The
size specification is then normalized by metrics and this metric map that defines a control space is
used to control the mesh gradation612.
Many authors have described the use of some form of element size control in the literature for a
specific meshing algorithm. Based on the spatial decomposition approach for meshing purposes as
pioneered about two decades ago by [Yerry & Shepard]613 and surveyed by [Thacker]614 and
[Shepard]615, a size-governed quadtree triangle mesh generation method was presented by [Frey and
Marechal]616 to deal with planar domains of arbitrary shape. The domain is first decomposed into a
set of cells. The size of the these tree cells are adjusted to match the element sizes at boundaries of
the domain prescribed by a given size map, and the mesh gradation is controlled by the level of
refinement of the cells using the [2:1] rule. Therefore, these cells have a size distribution compatible
with the desired mesh gradation and so can provide a convenient control space which can be used to
determine the element size. Secondly, the quadrants are triangulated accordingly to get full triangle
elements. Finally the triangles are optimized (i.e. smoothed).
Currently, a background mesh appears to be the most commonly used means of defining an
element sizing function. In the background mesh method, collections of vertices containing the
sizing information are first selected. Then Delaunay triangulation is performed with them, inserting
additional interior nodes. Finally the meshing tool retrieves a target size at any location within the
domain by linear interpolating in a certain background triangle (for 2D) or tetrahedra (for 3D).

611 Ted D. Blacker, Michael B. Stepheson, “Paving: A new approach to automated quadrilateral mesh generation”,
Int. J. Num. Methods Eng. Vol 32, pp. 811-847 (1991).
612 Houman Borouchaki, Frederic Hecht and Pascal Frey, Mesh gradation control, Proceedings of 6th

International meshing roundtable. Oct. 13-15, 1997. Park City, Utah, USA.
613 M.A. Yerry and M.S. Shepard, “A modified-quadtree approach to finite element mesh generation”, IEEE

Computer Graphics Appl., Vol 3(1), pp.39-46 (1983).


614 W. C. Tracker, “A brief review of techniques for generating irregular computational grids”, Int. J. Num. Methods

Eng. Vol 15, pp. 1335-1341 (1980).


615 M. S. Shepard, Approaches to the automatic generation and control of finite element meshes, Applied

Mechanics Reviews, Vol 41, pp. 169-185 (1988).


616 Pascla J. Frey and Loic Marechal, “Fast adaptive quadtree mesh generation”, Proceedings of 7th International

meshing roundtable. Oct. 26-28, 1998. Dearborn, MI. USA.


398

[Pirzadeh]617 introduced an approach that adopted uniform Cartesian grid and the elliptic grid point
distribution for generation of 2D unstructured mesh using the advancing front technique. It was
analogous to solving a steady-state heat conduction problem with discrete heat sources. The spacing
parameters of grid points were distributed over the nodes of the Cartesian background grid by
solving a Poisson equation. To increase the control over the grid point distribution, a directional
clustering approach was also implemented. However, there will be some mathematical difficulties
when it is used for general 3D problems and/or with non-nodal and non-linear sources. More
recently, [Owen and Saigai]618 presented the method of controlling element size on parametric
surfaces, taking into account boundary layers, surface curvature and anisotropy, and using natural
neighborhood interpolation. Related works using background mesh can be found in619-620-621.
Although the algorithms discussed above are effective and useful in many aspects, neither gives a
general and versatile way of size control for all kinds of geometry and all types of element. The goal
of this work was to create a general way of defining mesh size for all element types and for different
kinds of geometric features. The size function had to provide very rapid evaluators that would be
general for any meshing algorithm. Also, local geometric effects had to be able to radiate, or influence
size on a more non-local area. For example, tight curvature on one surface should affect other
edges/surfaces in close proximity to ensure a controlled transition rate. This paper describes how
these objectives were met using a background overlay grid. The work will be described by first
defining the size functions provided to the user and the size function initializations. Then details of
the use of a background grid are documented and examples of its use given.

15.2.3.2 Definitions of Size Functions


15.2.3.2.1 Terminology
Our size functions are based on a distance controlled radiation. To understand this definition, the
parameters that are common to all size function must be defined.

➢ Source entities: Source entities are a set of geometric entities on which the mesh sizes are
specified and from which the mesh size is grown into affected areas. Source entities can be
any general geometric type including vertex, edge, face or volume.
➢ Attached entities: the geometric entities on which the size functions will have influence as
the entities are meshed. These include edge, face or volume. The attached entity can be the
same entity as the source.

When a size function is attached to an upper topology, all lower topologies of the attached entity will
be influenced. When a size function is attached to a lower topology, its upper topologies will not be
affected.

➢ Growth rate: This parameter controls the geometric pace with which the mesh size
progresses from the source. It is based on the distance of the point being evaluated from the
source.

617 Shahyar Pirzadeh, “Structured background grids for generation of unstructured grids by advancing-front
method”, AIAA Journal. Vol 31(2), pp. 257-265(1993).
618 Steven Owen and Sunil Saigal, “Surface mesh sizing control”, Int. J. Num. Meth. Eng. Vol 47, (2000).
619 J.Z. Zhu,, O.C. Zienkiewicz,, E. Hinton, J. Wu, “A new approach to the development of automatic quadrilateral

mesh generation”, Int. J. Num. Meth. Eng. Vol 32, pp. 849-866, (1991).
620 S.A. Canann,, Y.C. Liu, A.V. Mobley, “Automatic 3D surface meshing to address today's industrial needs”, Finite

Elements in Analysis and Design. Vol 25. 185-198, (1996).


621 R. Lohner, “Extention and improvements of the advancing front grid generation technique”, Communications

in Num. Method in Eng. Vol 12. pp. 683-702, (1996).


399

In cases where the elements of significantly different sizes are immediately adjacent to each other,
both the meshing tool and the simulation tool cannot perform well. In order to maintain a desired
growth ratio, the target size is adaptively adjusted by applying a geometric growth formula. This
parameter specifies the rate of this geometric progression.

➢ Distance limit: This variable specifies the range in which the size function is valid. It is the
distance for the source mesh size to grow up to the size limit, but it is not user controlled.

➢ Size limit: This is the maximum mesh


size. When the grown size at the given
location exceeds the size limit, this limit
is used instead. Therefore, if the distance
from a given point to a source is larger
than the distance limit, we do not need to
test the grown size and the size limit is
directly used.

Figure 15.38 demonstrates a single radiating


size function. One edge of a cube (upper right
edge) is used as the source entity. The spherically
tipped cylinder, whose axis is the source edge
and whose radius is the distance limit, indicates
an iso-surface of the prescribed size function
within which the size function is valid. In the
remaining areas of the cube that are outside the
cylinder shown, the size radiating growth has no
Figure 15.38 Demonstration of the Effective
effect and size limit is used instead. Domain of Size Function
15.2.3.2.2 Fixed Size Function
For a fixed size function, the mesh size on the source entity is a constant value. To define a fixed size
function, all the parameters introduced in section 15.2.3.2.1 are used, along with a “start size”
specifying the constant size of the mesh on the source entities.

15.2.3.2.3 Curvature Size Function


A curvature based size function specifies the mesh sizes on the source entities relative to the degree
of surface curvature, i.e. finer mesh sizes in highly curved regions and coarser mesh sizes in regions
of low curvature. Curvature based size functions can only use faces as the source entity. This feature
provides a convenient means of controlling the geometric approximation of the mesh elements. This
varying size on the surface can then radiate outward at the specified growth rate.
To define a curvature size function, all the parameters introduced in section 15.2.3.2.1 are used,
along with an angle. This angle specifies the maximum angle between adjacent facets of geometric
faces. Using angle as an input specification makes the curvature size function purely dependent on
the curvature and independent of the size of the model. For example, a big sphere and a small sphere
will have the same number of elements generated if they have the same curvature size function angle.

15.2.3.2.4 Proximity Size Function


A proximity size function controls density based on geometric closeness of entities. The mesh sizes
on source entities are determined by the gap between faces (3D) or edges (2D) of the source entities
and the required number of elements in the gap. The first additional parameter for a proximity size
function is “cells per gap” which specifies the minimum number of elements that should be put in the
400

gap between any two closest opposing faces (volumetric mesh) or two opposing edges (surface
mesh). Source entities for a proximity size function can be faces or volumes. When a volume is used
as the source, all faces of the volume become source faces. The proximity check for all source faces
includes a check of the proximity of edges on the face.

15.2.3.3 Size Function Initialization


In preparation for the generation of the background grids, the three types of size function definitions
must be initialized differently. This initialization establishes the desired sizes everywhere on the
sources.

15.2.3.3.1 Fixed Size Function


All the source entities have a constant mesh size on the entity, and no special initialization is needed.

15.2.3.3.2 Curvature Size Function


Initialization of curvature size functions requires the generation of a faceted representation of the
face that meets the curvature requirements. The facets on the source faces are created according to
the specified maximum normal angle
deviation. This means that the angle of
rotation of the normal vectors of any two
adjacent facets on a common edge does
not exceed the specified maximum angle.
This insures that the curvature of the face
can be accurately captured. The mesh size,
Sn , at a node n of a facet of the source face
can be computed by:

θmax
Sn = 2 ∗ sin ( ) ρmax
2
Eq. 15.31
Here is the larger curvature along two
orthogonal axes. If the computed size is
larger than the size limit, or if a face is flat
(i.e. no curvature), then the specified size
limit is used. ρmax. It is possible for the local
size ,Sn, to be larger than the radiation
from a nearby node would permit. Thus, if
the radiated size of node m at node n, Sm is
less than Sn the radiated size Sm is used.

15.2.3.3.3 Proximity Size Function


For initialization of the proximity size
function, we also need to create facets for Figure 15.39 Refinement of Proximity Facets
the faces. First, a set of coarse facets is
created for each face according to the
maximum normal angle specified for the proximity facet. Next, the distance of each facet center to
another “visible” facet is calculated and stored with the facet. Because these coarse facets are often
long and slender, such facet-based calculations may over-extend the influence of gaps (see Figure
15.39-a). To avoid this undesirable effect, these coarse facets are further refined as follows. Within
some maximum level of facet subdivisions, if the maximum edge length of the current facet is larger
than several times its distance (or gap) to the target facet, then the current facet will be split on the
401

longest edge into two smaller ones. The sub-facets will then be compared with the target facet and
iteratively refined as needed. Finally this gap value is stored in each facet. This process is optimized
by computing the distance between the bounding box of current facet to the bounding boxes of other
target facets and comparing the distance to the stored minimum distance. If the computed distance
is beyond the stored minimum range of current facet, remaining calculations will be skipped. This
significantly reduces the amount of distance calculations needed. demonstrates that the refined
facets localize the gap influence.
Also, since we are often only concerned about the gap within volumes, if two facets are from faces
that belong to the same volume, we can make use of the relation of the facet normal vectors to avoid
unnecessary comparisons. If their normal vectors, whose positive directions are defined as pointing
outward the volume, are pointing toward each other, which means there is void space in-between,
we can omit the proximity check. Even if no volume is provided as the source entity, we have to check
whether the given source faces belong to the same volume. If they do, internally we still establish the
volume pointer and compare the relation of face facets normal in order to speed up the initialization.
If any face that owns the facet in the facet pair being compared is a dangling face of the volume, the
normal of its facets is ambiguous and full calculations are needed.
Beside face proximity check (i.e. 3D proximity), an option of performing edge proximity check (i.e.
2D proximity) is given. During edge checking, all the edges of a face need to be faceted into line
segments. The distance between each pair of opposing edge segments on the same face will be
computed and the shortest distance used to determine the mesh size on each line segment. To speed
up computation, only the segment pairs within a mutually visible range will be checked. To guarantee
accuracy, a minimum number of edge segments are created (50 in our implementation), especially
for very short edge loops. For both the volume and face proximity controls, the mesh size on the
source entity is determined by:
dgap
Sn =
Ncell
Eq. 15.32
Where dgap is the smallest gap distance associated with a facet, Ncell is the number of cells in the gap
area.

15.2.3.4 Background Grid Generation


As a result of the size function initialization, the desired size on all sources is known. The next step is
to establish the complete background grid. The background grid provides the radiation mechanism
for all the size functions. It also allows multiple size functions to be combined into a global function.
The background grid is an axis-aligned octree-based mesh, the size of the bounding box of all attached
entities. The background grid values are derived at all cell corners and refined as needed to capture
the size function gradients.

15.2.3.4.1 Background Grid Initialization


Setting up the background grid starts by generating a bounding box of the domain of the attached
entities. To ensure resolution is not excessive, we find the dominant direction which is the longest
range of the bounding box and divide it by a given number of lines in each grid (e.g. 3) to obtain a unit
length. We ensure all other directions are scaled accordingly by this unit length, but require at least
2 grid lines in each direction. This way, the resulting background grids will be equi-sided cubic cells.
If a group of entities have exactly identical size functions attached, a single united bounding box is
used. This can save time in cases where the bounding boxes of individual attachment entities overlap.
In a few cases where the attachment entities are far apart from each other, it can increase the time
instead. However, an increase in speed is noted for almost all practical geometries.
402

15.2.3.4.2 Establishing Values at The Background Grid Nodes


Because the size on all sources,, is now known, we can use the same approach to handle all size
functions when obtaining the mesh size at the background grid nodes. The only difficulty is to identify
which source mesh size to use when growing to a given background grid node. This can be
determined by projecting the given grid point onto the closest facet. When growing the size from the
closest facet of the source entity to the given corner point of the background cell, the mesh size is
successively progressed from the size on the source entity. It is controlled by the defined growth rate,
g, and the distance of the point of the background cell to the source. The progression is iterative.
During the progress, an incremental distance expands step by step until the desired point is within
the region between two neighboring distances. Suppose R is the distance of the given point to the
source entity, Rn, and Rn+1 are the two said distances, respectively. Then the condition can be
expressed as:
Exit Condition: R n ≤ R ≤ R n+1
Eq. 15.33
Let Sn be the mesh size at the previous distance and Sn+1 be the mesh size at the subsequent distance.
The initial values for these variables are

Sn = Sn+1 = R n+1 = Sexit and Rn = 0


Eq. 15.34
The following loop, once completed, will give the size and radius of the two distances bounding the
given point:
while (!condition-exit) {
Sn = Sn+1 ;
Rn = Rn+1 ;
S n+1= Sn * g ;
R n+1= Rn+Sn+1 ;
}
A linear interpolation between the two bounding distances is accomplished by this equation

R − Rn
γ=
R n+1 − R n
Eq. 15.35
Here (0 ≤ γ ≤ 1). The actual size, S p at the given point, P, is computed as:

P𝑠 = (1 − γ) ∗ S𝑛 + γ ∗ S𝑛+1
Eq. 15.36
However, the final size is the smaller of the computed size and the defined size limit.

ps = Min (Sp , Smax )


Eq. 15.37
If a corner point is affected by several size functions, the smallest mesh size will be taken for it.

15.2.3.4.3 Linear Interpolation


Once the background grids are created, the mesh size at any given point can be found by interpolation
in the background grids for any meshing processes. Since the background grids are axis-aligned and
well-shaped cubes, finding the correct background grid cell is trivial. Simple linear interpolation can
work well to give the mesh size at any point P(x, y, z):
403

Ss = ∑ Ni Si
i=1
Eq. 15.38
Where is the mesh size at 8 corners of the cell which the point falls into and is the tri-linear
interpolation function for each corner point. Suppose the local coordinates (α β γ) of the given point
inside the background cell can be expressed as

x − xmin y − ymin z − zmin


α= , β = , γ=
xmax − xmin ymax − ymin zmax − zmin
Eq. 15.39
Where (xmin, ymin, zmin) and (xmax, ymax, zmax) define the range of the cell. Then the mesh size at point P
can be expanded as

S1 = (1 − α)(1 − β)(1 − γ) . S|xmin, ymin, zmin


S2 = (α)(1 − β)(1 − γ) . S|xmax, ymin, zmin
S3 = (1 − α)(β)(1 − γ) . S|xmin, ymax, zmin
S4 = (α)(β)(1 − γ) . S|xmax, ymax, zmin
S5 = (1 − α)(1 − β)(γ) . S|xmin, ymin, zmin
S6 = (α)(1 − β)(γ) . S|xmax, ymin, zmax
S7 = (1 − α)(β)(γ) . S|xmin, ymax, zmax
S8 = (α)(β)(γ) . S|xmax, ymax, zmax
Eq. 15.40

15.2.3.4.4 Background Grid Refinement


Background grid generation is the most expensive part of the overall process. To speed up this
bottleneck, some steps have been taken. One of the most important considerations is when and how
to stop background grid refinement. A criterion has to be set to ensure that an almost linear relation
of mesh size has been reached within a cell and so there is no need to refine the cell again, no matter
what the actual ratio of mesh sizes within a cell is. This is because the meshing size at a point is
computed by linear interpolation in the background grid using mesh sizes at its eight corner points.
The linear relation can be tested by comparing the deviation of the linearly interpolated mesh size at
the center of a background grid Slinear (i.e. averaged size at 8 corner points of a cell) from the defined
mesh size Sdef (i.e. the actual size computed from size functions), and take the relative percent as the
error estimate. The background grid will be refined if the relative error, δ, is larger than the specified
level of accuracy, Δtol, which can be expressed by the following equation:

|Slinear − Sdef |
δ= × 100 % < ∆tol
Sdef
Eq. 15.41
Where Δtol is a given error tolerance and is controllable by the user. This seems a reasonable way of
stopping the refining process, but potentially non-linear distributions in other areas of the cell cannot
be caught nicely, especially in the earlier stage of the refining process. This will lead to corruption of
grid generation, unless a constraint of one level difference is applied for neighboring cells. As shown
404

in Figure 15.40, if the cell contains source entities whose smallest size, Bmin , is less than the
minimum size at the 8 corner points of the cell, Cmin, then the centric size ,Slinear, computed from the 8
corners is not accurate, so another refinement to the cell is triggered. In any case, if the maximum
range of the bounding box of a background grid cell becomes smaller than the minimum local size in
the cell (at eight corner nodes or inside the cell), stop refining the cell to avoid over-refinement.

Figure 15.40 Refining Criterion for a Background Cell (A - Actual Size Distribution from Defined Size
Functions, B – Size by Linear Interpolation from 8 corner points, C – Source Entities Possibly with
Smaller Size Inside the Cell)

15.2.3.4.5 Speed/Memory issues


Storage of the mesh size information in the background grids can require a lot of memory. To speed
up grid generation, we save the computed mesh size at each corner point of the cell, so that its
neighboring cells can directly use the size at shared corner points. This option improves the speed,
but sacrifices memory. An option is given to let the user decide whether memory or speed is more
important. Thus, they can choose either saving the mesh size at unique grids or re-computing the
mesh sizes for each cell.

15.2.3.5 Examples
A few examples are given below to show the application of a single type size function or a
combination of them in the meshing process. High quality meshes have been generated using the
defined size functions with very little effort.
405

15.2.3.5.1 Meshing the Clown Head


A single curvature size function is defined for meshing the clown head. Normal angle = 20, growth
rate = 1.2, size limit = 2, and all faces are used as source and the size function is attached to the whole
volume. Figure 15.41 (a) is the meshing results of the whole head. Figure 15.41 (b) and (c) shows
the eyeball and hat-tail, respectively. You can see the meshes are nicely transitioned according to the
curvature of the surface. Also, the radiation effect of the tight curvature on neighboring surfaces is
shown.

(a) Whole head (b) Eyeball

(c) Hat-Tail

Figure 15.41 Meshing the Nasty Clown Using a Single Curvature Size Function

15.2.3.5.2 Use of 2D and 3D Proximity Size Functions


Figure 15.42 shows how the 2D and 3D proximity size functions work. In Figure 15.42-(a) the
proximity size function is defined as follows: cells-per-gap =4, growth-rate =1.2, size-limit = 20 which
is big enough so that the mesh size can grow without any restrictions until hitting the boundary. The
source face is face A. The sizes are radiating from the source face into the rest of the volume. Figure
15.42-(b) shows the shape of a volume with two dangling faces (upper) and the meshing results
(lower) of a volume 3D proximity size function. Parameters are specified as follows: cells-per-gap =
406

3, growth-rate = 1.2, size-limit = 2, three faces (one side face A and two interior dangling faces B and
C) are used as source entities. The size function is attached to the whole volume.

(a) 2D Proximity Lower

(b) 3D Proximity including dangling


faces: shape ofthe geometry (upper)
and the meshing results

Figure 15.42 Use of Proximity Size Functions in Volume Meshing

15.2.3.5.3 Use of Combined Size Functions


Figure 15.44 uses a combination of size functions to mesh the volume. A fixed size function (start-
size = 0.05, growth-rate = 1.2, size-limit = 0.5, two flat planes A and B as source), a curvature based
size function (normal-angle = 10, growth-rate = 1.2, size-limit = 0.5, two circular faces C and D as
source) and a proximity size function (cells-per-gap = 3, growth-rate = 1.2, size-limit = 0.5, whole
volume as source) are defined and attached to the same volume. In common areas where three size
functions are effective, the smallest size among the three size functions is chosen to set the local mesh
size. Our last example in Figure 15.43 shows another model meshed using combined size functions.
Two curved faces are used as source for both the curvature size function (normal-angle = 40, growth-
rate = 1.2, size-limit = 1.5) and the proximity size function (cells-per-gap = 2 growth-rate = 1.2, size-
limit = 2). For a void between airfoils, it would be difficult to mesh the areas between them if
proximity size functions were not used to specify the number of element in the tiny gap. Figure
15.43 is the enlarged local mesh patterns between the two airfoils after the volume is meshed. The
407

elements are generated exactly as specified


and grown nicely from the gap toward
neighboring regions. The effect of the
curvature size function can also be seen
around the wing tips.

15.2.3.6 Conclusion
A general method of controlling mesh sizes and
radiation for all element types and for different
kinds of geometric features has been created.
The defined size functions have provided rapid
evaluators that would be general for any
meshing algorithm. Local geometric effects
have been radiated to influence size on a more
non-local area. The basic algorithms of
constructing the background grid and creating
fixed, curvature and proximity size functions Figure 15.43 Use of Proximity and Curvature
have been put forward. The criterion of Size Functions in Meshing a Volume with Airfoil
refining the background grid has been shown. Voids
Local mesh size at any point in the domain can
be interpolated from the pre-determined sizes at corner points of the background cell into which the
given point falls. The proposed sizing method has been implemented in Gambit product, and
successfully tested on a wide variety of models with excellent results.

Figure 15.44 Meshing Results Using Composite Size Functions where Three kinds of Size Functions
are Attached to the Volume
408

In the future, other types of size functions can be added to meet specific user needs. For example, we
can add a size function that catches the exterior proximity of the volume if this is desirable. Also, we
can add a size function that uses pre-meshed entities as sources and uses the size of the existing mesh
on the sources to radiate. For some applications it is also beneficial to have the directional size
functions with anisotropic properties. Speed improvement for background grid refinement is also a
focus in the future work.
409

16 Mesh Quality
16.1 Background
Make no mistake about it, mesh quality can have a large influence upon the accuracy (and efficiency)
of a simulations based on the solution of partial differential equations (PDE)'s. Most argue that your
CFD solution is as good as mesh it has. Many factors go into the influence of mesh on accuracy
including the type of physics being simulated, details of the solution to the particular simulation, the
method of discretization, and geometric mesh properties having to do with spacing, curvature,
angles, smoothness, etc,622. The general consensus is that a good quadrilateral mesh would be
formed by two families of orthogonal, or at least nearly orthogonal, curves with a smooth gradation
between a coarse mesh in the far field and a fine mesh near the boundary. The following provisional
definition is accepted as Mesh Quality concerns the characteristics of a mesh that permit a
particular numerical PDE simulation to be efficiently performed, with fidelity to the underlying
physics, and with the accuracy required for the problem.
This description hints at several issues. First, mesh quality depends on the particular calculation
which is undertaken and thus changes if a different calculation is performed. Second, a mesh should
do no harm, i.e., it should not create difficulties for the simulation. As mesh generation methods
evolved to handle complex three dimensional configurations, and the choice of element type
broadened to include not just hexahedra but also tetrahedral and prisms, visual inspection of a mesh
became much more difficult. The task was aided considerably by the advent of computer work-
stations with a powerful graphics capability and the development of good graphics software to view
CFD solutions. Today, of course, it is often possible to undertake a CFD simulation and view the
results on a laptop computer. Despite these developments in computer graphics and visualization
software it is almost impossible to check a mesh with several million points around a complete
aircraft and decide whether the quality and distribution of the mesh elements is acceptable. Even if
this were a feasible option, visual inspection of large meshes is extremely time consuming and is
clearly unacceptable in a design environment where a rapid turnaround is essential and numerous
design variations must be evaluated in a timely manner.

16.2 Mesh Quality Metric


There is a move towards quantifying the mesh in terms of criteria that can measure the element
quality and the gradation in mesh element size in a precise way. At the very least, analyzing the mesh
in this way allows one to identify the hot spots and thus decide where a careful visual inspection
maybe needed (eye pleasing ?). As this approach develops and gains in sophistication one can
envision a time when visual assessment is replaced by a different aesthetic, one based entirely on
mathematical criteria. The question of whether a mesh is sufficiently fine to achieve a solution that
has a required level of accuracy depends to a large extent on the discretization of the flow equations.
If the discretization has a formal order of accuracy O(h) where h is the local mesh width (i.e. the linear
extent of a mesh element) one would generally expect that the solution error on a good quality mesh
should also scale in the same way. By comparing computed solutions on a sequence of three
progressively larger meshes it is possible to check this assumption by exploiting a generalized form
of Richardson Extrapolation. Deciding whether mesh convergence has been achieved for a flow field
computation over a given configuration and, if not, how fine a mesh one actually needs to achieve
specified accuracy is critically important (i.e., discretization error will be dealt in detail). In general,

622Patrick M. Knupp, “Remarks on Mesh Quality”, 45 th AIAA Aerospace Sciences Meeting and Exhibit, 7-10
January, 2007, Reno, NV.
410

• Rate of convergence
• Solution accuracy
• Grid Independence result
• CPU time required

Now these days most of grid generation routines have sophisticated software of grid quality which
shows the results graphically. Important metrics such as Volume, Orthogonality, Skewness,
Stretching, Centroids, etc., are available on most grids generation software. Figure 16.1 shows the
mesh quality (Volume, AR, and Stretching) for benchmark test case Turk/Hron.

(a) Volume

(b) Aspect Ratio

(c) Stretching

Figure 16.1 Predicted Mesh Quality (Volume, Aspect Ratio, and Stretch)
411

16.2.1 Mesh Quality from User’s Perspective


The importance of a priori indicators of mesh quality is exemplified by NASA’s Stephen Alter623, who
defined and demonstrated the utility of his grid quality (GQ) metric that combines both orthogonality
and stretching into a single number. Driven by the desire to ensure the accuracy of supersonic flow
solutions over blunt bodies computed using a Thin Layer Navier-Stokes (TLNS) solver, he has
established criteria for the GQ metric that give him confidence prior to starting a CFD solution. Two
aspects of GQ are notable. First, this metric’s reliance on orthogonality is closely coupled to the
numerics of the solver where TLNS assumptions break down when the grid lacks orthogonality.
Second, use of a global metric aids decision making, or as Thornburg624 wrote, “A local error estimate
is of little use.” GQ represents domain expertise where the use of specific criteria within a specific
application domain625.

16.2.2 Mesh Quality from Researcher’s Perspective


Dannenhoffer626 reported on an extensive benchmark study that involved parametric variation of a
structured grid’s quality for a 5 degree double-wedge airfoil in Mach 2 inviscid flow at 3 degrees angle
of attack. Variations of the mesh included resolution, aspect ratio, clustering, skew, taper, and wiggle
(using the Verdict definitions). Dannenhoffer’s main conclusion was very interesting: there was little
(if any) correlation between the grid metrics and solution accuracy. This may have been
exacerbated by the fact that he found it difficult to change one metric without influencing another
(e.g. adding wiggle to the mesh also affected skew) or it may have been due to the specific flow
conditions. Dannenhoffer also introduced the concept of grid validity (as opposed to grid quality),
which is intended to measure whether the grid conforms to the configuration being modeled (which
in practice it sometimes does not). He proposed three types of validity checks:

1. Type 1 checks whether cells have positive volumes and faces that do not intersect each other.
2. Type 2 checks whether interior cell faces match uniquely with one other interior face and
whether boundary cell faces lie on the geometry model of the object being meshed.
3. Type 3 checks whether each surface of the geometry model is completely covered by
boundary cell faces, whether each hard edge of the geometry is covered by edges of boundary
cell faces, and whether the sum of the boundary faces areas matches the actual geometry
surface area.

[Christopher Roy]627 from Virginia Tech showed a counter-intuitive example (at least from the
standpoint of a priori metrics) that the solution of 2D Burger’s equation on an adapted mesh (with
cells of widely varying skew, aspect ratio, and other metrics) has much less Discretization Error (DE)
than the solution on a mesh of perfect squares as seen in Figure 16.2628. From this example alone, it
is clear that metrics based solely on cell geometry are not good indicators of mesh quality as it
pertains to solution accuracy.

16.2.3 Mesh Quality from Solver’s Perspective


The common thread among all participating CFD solvers was that convergence and stability are more
directly affected by mesh quality than solution accuracy.

623 Stephen Alter, “A Structured-Grid Quality Measure”, NASA Langley.


624 Thornburg, Hugh J., “Overview of the PETTT Workshop on Mesh Quality/Resolution, Practice, Current
Research, and Future Directions”, AIAA paper no. 2012-0606, Jan. 2012.
625 Another Fine Mesh, Pointwise blog, posted on July 5, 2012 by John Chawner.
626 John Dannehoffer , “On Grid Quality and Validity”, Syracuse University.
627 Christopher Roy, “Discretization Error”, Virginia Tech.
628 A simple demonstration of how a poor mesh from a cell geometry perspective (right) results in lower

discretization error than one with “perfect” cells (left).


412

Figure 16.2 A simple Demonstration of How a Poor Mesh from a Cell Geometry Perspective

16.2.3.1 CFD++
Metacomp Technologies’ Vinit Gupta629 cited cell skewness and cell size variation as two quality
issues to be aware of for structured grids. In particular, grid refinement across block boundaries in
the far field where gradients are low has a strong, negative impact on convergence. For unstructured
and hybrid meshes, anisotropic tets in the boundary layer and the transition from prisms to tets
outside the boundary layer also can be problematic. Gupta also pointed out two problems associated
with metric computations. Cell volume computations that rely on a decomposition of a cell into tets
are not unique and depend on the manner of decomposition. Therefore, volume (or any measure that
relies on volume) reported by one program may differ from that reported by another. Similarly, face
normal computations for anything but a triangle are not unique and also may differ from program to
program. (This is a scenario can be often encountered when there is a disagreement with a solver
vendor over a cell’s volume that turns out to be the result of different computation methods.)

16.2.3.2 Fluent and CFX


ANSYS’ Konstantine Kourbatski630 showed how cell shapes that differ from perfect (dot product of
face normal vector with vector connecting adjacent cell centers) make the system of equations stiffer
slowing convergence. He then introduced metrics, Orthogonal Quality and two skewness definitions,
with rules of thumb for the Fluent solver. It was interesting to note that the orthogonality measure
ranges from 0 (bad) to 1 (good) whereas the skewness metric is directly opposite: 0 is good and 1 is
bad. Another example of a metric criterion was that aspect ratios should be kept to less than 5 in the
bulk flow. Kourbatski also provided guidelines for the CFX solver. He also pointed out that resolution
of critical flow features (e.g. shear layers, shock waves) is vital to an accurate solution and that bad
cells in benign flow regions usually do not have a significant effect on the solution.

16.2.3.3 Kestrel
Kestrel, the CFD solver from the CREATE-AV program, was represented by David McDaniel631 from
the University of Alabama at Birmingham. At the start, he made two important statements. First, their

629 Vinit Gupta, “CFD++ Perspective on Mesh Quality”, Metacomp Technologies.


630 Konstantine Kourbataski, “Assessment of Mesh Quality in ANSYS CFD”, ANSYS.
631 David McDaniel, “Kestrel/CREATE-AV Perspective on Mesh Quality”, University of Alabama at Birmingham.
413

goal is to “do well with the mesh given to us.” (This is similar to Pointwise’s approach to dealing with
CAD geometry – do the absolute best with the geometry provided.) Second, he notes that mixed-
element unstructured meshes (their primary type) are terrible according to traditional mesh metrics,
despite being known to yield accurate results. This same observation is true for adaptive meshes and
meshes distorted by the relative motion of bodies within a mesh (e.g. flaps deflecting, stores
dropping). More significantly, McDaniel notes a “scary” interdependence between solver
discretization and mesh geometry by recalling Mavriplis’ paper on the drag prediction workshop632
in which two extremely similar meshes yielded vastly different results with multiple solvers. To
address mesh quality, Kestrel’s developers have implemented non-dimensional quality metrics that
are both local and global and that are consistent in the sense that 0 always means bad and 1 always
means good. The metrics important to Kestrel are an area-weighted measure of quad face planarity,
an interesting measure of flow alignment with the nearest solid boundary, a least squares gradient
that accounts for the orientation and proximity of neighbor cell centroids, smoothness, spacing and
isotropy. Differing from Dannenhoffer’s result, McDaniel showed a correlation of mesh quality with
solution accuracy with the caution that a well resolved mesh can have poor quality and still produce
a good answer. (In other words, more points always is better; see Figure 16.3).

Figure 16.3 Using Kestrel one can Show a Correlation Between Mesh and Solution Quality

16.2.3.4 STAR-CCM+
Alan Mueller’s633 presentation on CD-adapco’s STAR-CCM+ solver began by pointing out that mesh
quality begins with CAD geometry quality and manifests as either a low quality surface mesh or an
inaccurate representation of the true shape. This echoes Dannenhoffer’s grid validity idea. After
introducing a list of their quality metrics, Mueller makes the following statement, “Results on less
than perfect meshes are essentially the same (drag and lift) as on meshes where considerable
resources were spent to eliminate the poor cells in the mesh.” Here we note that the objective

632 Mavriplis, Dimitri J., “Grid Quality and Resolution Issues from the Drag Prediction Workshop Series”, AIAA
paper 2008-930, Jan. 2008.
633 Alan Mueller, “A CD-Adapco Perspective on Mesh Quality”,CD-Adapco.
414

functions are integrated quantities (drag and lift,) instead of distributed data like pressure profiles.
After all, integrated quantities are the type of engineering data we want to get from CFD. This
insensitivity of accuracy to mesh quality supports Mueller’s position that poor cell quality is a
stability issue. Accordingly, the approach with STAR-CCM+ is to be conservative opt for robustness
over accuracy. Specifically, they are looking for metrics that will result in division by zero in the
solver. Skewness as it effects diffusion flux and linearization is one such example.

16.2.3.5 Deducing Results

1. CFD solver developers believe mesh quality affects convergence much more than accuracy.
Therefore, the solution error due to poor or incomplete convergence cannot be ignored.
2. One researcher was able to show a complete lack of correlation between mesh quality and
solution accuracy. It would be valuable to reproduce this result for other solvers and flow
conditions.
3. Use as many grid points as possible (Dannenhoffer, McDaniel). In many cases, resolution
trumps quality. However, the practical matter of minimizing compute time by using the
minimum number of points (what Thornburg called an optimum mesh) means that quality
still will be important.
4. A priori metrics are valuable to users as an effective confidence check prior to running the
solver. It is important that these metrics account for cell geometry but also the solver’s
numerical algorithm. The implication is that metrics are solver-dependent. A further
implication is that Dannehoffer’s grid validity checks be implemented.
5. There are numerous quality metrics that can be computed, but they are often computed
inconsistently from program to program. Development of a common vocabulary for metrics
would aid portability.
6. Interpreting metrics can be difficult because their actual numerical values are non-intuitive
and stymie development of domain expertise. A metric vocabulary should account for desired
range of result numerical values and the meaning of “bad” and “good.”

16.2.4 Some Geometric Properties


16.2.4.1 Aspect ratio
Prime example would be the Aspect Ratio for a simplified geometry is shown in Figure 16.1 (b)
and defined for tetrahedral cells as the ratio between the maximum edge length l and the minimum
cell height h as

Max (li )
ARi =
Min (h i )
Eq. 16.1
Similiarly, for hex and polyhedral cells.

16.2.4.2 Orthogonality
The concept of mesh orthogonality
relates to how close the angles between
adjacent element faces or adjacent
element edges are to some optimal angle Figure 16.4 Concept of Orthogonality in Cells
(for example, 90º for quadrilateral faced
elements and 60º for triangular faces elements). The most relevant measure of mesh orthogonality,
as defined by the CFX-Solver is illustrated in Figure 16.4. It involves the angle between the vector
that joins two mesh (or control volume) nodes (s) and the normal vector for each integration point
415

surface (n) associated with that edge. Significant orthogonality and non-orthogonality are illustrated
at ip1 and ip2, respectively.
16.2.4.3 Skewness
Skew of triangular elements is calculated by finding the minimum angle between the vector from
each node to the opposing mid-side,
and the vector between the two
adjacent mid-sides at each node of
the element as shown in Figure
16.5 (a). The minimum angle found
is subtracted from ninety degrees
and reported as the element‘s skew.
Skew in quads is calculated by
finding the minimum angle between
two lines joining opposite mid-sides (b) Warpage calculation of
(a) Skewness in Triangle a quadrilateral element
of the element. Ninety degrees
minus the minimum angle found is Figure 16.5 Skewness and Warpage
reported as skew of the element.
Maximum of 60-70 skewed elements are accepted in most of the solver beyond this limit solver can
complain about the skewness of the grid.
16.2.4.4 Warpage
This is the amount by which an element (or in the case of solid elements, an element face) deviates
from being planar. Since three points define a plane, this check only applies to quads. The quad is
divided into two trias along its diagonal, and the angle between the trias normal is measured as
shown in Figure 16.5 (b). The maximum angle found between the planes is the warpage of the
element. Warpage in three-dimensional elements is performed in the same fashion on all faces of the
element. Warpage of up to five degrees is generally acceptable.
16.2.4.5 Jacobian
This measures the deviation of an element from its ideal or "perfect" shape, such as a triangle‘s
deviation from equilateral. The Jacobian value
ranges from -1.0 to 1.0, where 1.0 represents
a perfectly shaped element. As the element
becomes more distorted, the Jacobian value
approaches zero. A Jacobian value of less than
zero represents a concave element, which
most analysis codes do not allow. So it is a
good practice to keep the Jacobian of the grid
greater than zero634.

16.2.4.6 Tetrahedral Volume


Since the tetrahedral is the most elementary
of volumes, we start with that. Calculates the
volumes of a tetrahedron and a parallelepiped
Figure 16.6 Tetrahedral Volume
which encompasses it with 6 volumes, given
four vertices in right hand side order (see
Figure 16.6):

634 HyperMesh9.0 Manual, Altair Inc.


416

VP = AD.(AB  AC) =
(x 4 − x1 )[(y 2 − y1 ) − (z 2 − z1 )(y3 − y1 )] +
(y 4 − y1 )[(z 2 − z1 ) − (x 2 − x1 )(z 3 − z1 )] +
(z 4 − z1 )[(x 2 − x1 ) − (y 2 − y1 )(x 3 − x1 )]
VP
Vtet =
6
Eq. 16.2

16.2.4.7 Polygonal Face Area and Centroid


A polyhedral cell consists of a number of polygonal faces
forming a closed volume. The area vector and the Figure 16.7 Triangulation of a polygon
centroid location of each face needs to be computed. This
can be achieved via triangulation of the polygon around a given point f as shown in Figure 16.7635.
A convenient starting location for the point f is the midpoint (simple average of the nodes of the
polygon).
Nf
1
rf =
Nf
r
i =1
i

Eq. 16.3
where Nf denotes number of face nodes and r is the position vector. The area of each of the triangular
patches are added to get the area of the polygon face

(ri − rf )  (ri +1 − rf ) Nf
A tri = for i = 1, N f A f =  A tri
2 i =1
Eq. 16.4
And rN+1 = r1. Centroid of the face is computed in a similar fashion as:

1 Nf
A tri (rn + rn +1 + rf )
rf =
Af
i =1 3
Eq. 16.5
Note that the face centroid rf was initially taken as simply the midpoint of the nodes but it is updated
at the end of the process. In the case of a planar polygon, this updated location reflects the true
centroid of the polygon. However, while not desirable, polygon nodes may be highly no coplanar in
practice. This introduces ambiguity to the centroid location as no unique definition exists based
solely on the knowledge of the node coordinates. In this case, simply iterating over Eq. 16.4 & Eq.
16.5 until convergence provides a reasonable answer. The triangulated polygonal face, even if non-
coplanar, is still attached to each of the vertices defining it as opposed to an approach where one
might fit a planar surface to the vertices. This ensures that, once all the faces of a cell is processed, a
water-tight control volume is achieved. We note once again that regardless of the aforementioned

635Emre Sozer, Christoph Brehm and Cetin C. Kiris,”Gradient Calculation Methods on Arbitrary Polyhedral
Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
417

ambiguity for non-coplanar polygons, consistency can be retained if the cells sharing a face use the
same face centroid and area for their reconstruction and flux integration636.

16.2.4.8 Polyhedral Volume and Centroid


The volume and the centroid location of a polyhedral cell can be computed via tetrahedralization,
basically by extending the logic presented in the previous section to 3D. Figure 16.8 shows a single
face of a polyhedral cell and the corresponding tetrahedralization around a midpoint m.

Nc
1 1
rm =
Nc
r
i =1
i Vtet = A tri .(rm − rf )
3
Eq. 16.6
Where Atri and rf for a given face f is obtained previously. This usage of face triangulation around the
previously calculated centroid ensures that a consistent volume is obtained. The integrated volume
and the centroid of the polyhedral cell is then calculated via summation of the contributions from

Nf Ni
1 Nf Ni
V =  Vtet , rc =  (rf,i + rf,i+1 + rf + rm )Vtet
f =1 i =1 4V f =1 i =1
Eq. 16.7
Where Nf is the number of faces, Ni is the number
of face nodes637.

16.2.4.9 Case Study – Polyhedral Mesh


Optimization Using The Interpolation
Tensor
A method for improving the quality of general
conformal polygonal and polyhedral meshes is
presented by [Paoletti]638. The method is based on
local optimization of a cell quality function that can
be derived from the inertia tensor of the
arrangement of nodes that belong to the cell. A
definition of global mesh quality is also presented Figure 16.8 Tetrahedralization of a
as a function of the quality of the cells in the mesh. Polyhedral (showing a single face)
The cell quality function is related to the ability of
the arrangement of points to correctly interpolate test fields. Figure 16.11 shows the 2D planner
initial and final mesh.

16.2.4.9.1 Surface Mesh


A mostly quad surface mesh is presented in Figure 16.10 (top), with bad quality cells in the central
part together with several triangles, pentagons and hexagons that have been created splitting and/or
combining existing quads. The resulting surface, presented in Figure 16.10 (bottom) , shows that
the worst cells have been improved as well as the non-quadrilateral cells. The smoother modifies the
position of the surface nodes and then projects them on the original surface mesh. Therefore no
implicit constraint is imposed in the optimization.

636 Emre Sozer, Christoph Brehm and Cetin C. Kiris,”Gradient Calculation Methods on Arbitrary Polyhedral
Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
637 Emre Sozer, Christoph Brehm and Cetin C. Kiris,”Gradient Calculation Methods on Arbitrary Polyhedral

Unstructured Meshes for Cell-Centered CFD Solvers”, American Institute of Aeronautics and Astronautics.
638 Stefano Paoletti, “ Polyhedral Mesh Optimization Using The Interpolation Tensor”, Adapco, U.S.A., 2002.
418

Figure 16.11 Multi-Connected Non-Convex region with a Clearly Invalid Initial 2D Planar Mesh (left),
Smoothed Planar Mesh (right) – Courtesy of Paoletti

Figure 16.10 Initial Surface Mesh (top) and Figure 16.9 Boundary (top) and Interior
Smoothed surface mesh (bottom) of Polyhedral Mesh
419

16.2.4.9.2 Polyhedral Mesh


A polyhedral mesh has been generated by taking the dual of a tetrahedral mesh and modifying it to
fit the boundaries. The small interior faces have been collapsed and the result is a polyhedral mesh
with mostly trivalent polyhedral but many non-trivalent polyhedral. In fact each time a quadrilateral
face is collapsed a tetravalent node is created, each time a pentagonal face is collapsed a pentavalent
node is created and so on. The concave polyhedral at the boundary have been split into two or more
convex polyhedral. This operation too has the potential of creating non-trivalent nodes. The
boundary and the interior of the polyhedral mesh are shown in Figure 16.9 (top) and (bottom).

16.2.4.9.3 Conclusions
Definitions of both cell and mesh quality have been presented. A method for improving the quality of
polygonal and polyhedral mesh based on the optimization of such quality has been described and
tested in numerical experiments. This approach is similar to the one described in639-640 but tries to
address the limitation of trivalent polyhedral. More work is needed to describe the variety of
objective functions that can be built combining the invariants of the interpolation tensor. It would
also be useful, at least from a theoretical viewpoint, to carry the development of the interpolation
tensor with higher order terms in the Taylor expansion. It may be worth noting that the smoothing
technique here presented can also be used to optimize the position of the nodes for a meshless
method.

16.3 Best Practice for Mesh Generation


There is no definite guild lines for meshing per say. It really depends to whom you are talking and
application in hand. Therefore, each disciplines have its guide lines. In general, the mesh should
exhibit some minimal grid quality as defined by measures of orthogonality (specially at boundaries),
relative grid spacing (15% to 20% stretching is considered a maximum value), grid skewness, aspect
ratio etc641. Also the maximum spacing should be according to the desired resolution of the physical
phenomena. Optimum quality measures for the surface as well as volume grid have been described.
To resolve the boundary layer it is required to cluster the grid in the direction normal to the surface
with the spacing of the first grid point off the wall to be well within the laminar sub-layer of the
boundary layer. Hexahedra or prisms elements are employed to discretize boundary layers to
preserve the accuracy in the wall normal direction for highly stretched viscous grid. In case of
turbulent flows, it is recommended that the first point off the wall should exhibit a wall normal
dimensionless distance (y+) value of less than 1.0.

16.3.1 Geometry Modeling and Geometry Cleanup


Object about which flow has to be simulated requires modeling. This generally involves modeling the
object geometry with some CAD software package. For doing this approximations and simplifications
of the geometry are required to allow an analysis with reasonable effort. Unfortunately, CAD models
are developed primarily for manufacturing purposes, and typically include details irrelevant for CFD
simulations or omitting key components, such as boundaries to close a domain. While it appears that
CAD designers are beginning to take better account of the needs of CAE engineers in their work, it is
unlikely that CAD models will be delivered CFD ready for some time yet to come. There can be errors

639 P.Knupp, ”Achieving Finite Element Mesh Quality via Optimization of the Jacobian Matrix Norm and Associated
Quantities, Part I – A Framework for Surface Mesh Optimization & The Condition Number of the Jacobian Matrix”,
SAND 99-0709J.
640 P.Knupp, ”Achieving Finite Element Mesh Quality via Optimization of the Jacobian Matrix Norm and Associated

Quantities, Part II – A Framework for Volume Mesh Optimization & The Condition Number of the Jacobian Matrix”,
SAND 99-0709J.
641 Abhishek Khare, Ashish Singh, and Kishor Nokam, “Best Practices in Grid Generation for CFD Applications

Using HyperMesh”, Member of Technical Staff Computational Research Lab.


420

in CAD data in the form of gaps, overlaps, non-physical protrusions. So we need a lot of cleanup of the
imported CAD geometry. Geometry cleanup is a time consuming step and it requires some
intelligence to decide which feature of geometry has to remove and which feature to retain. Usual
practice is to retain the details that matter for simulation and ensure water tight geometry.

16.3.2 Computational Domain


After importing geometry into grid generator, decisions has to be made about the extent of the finite
flow domain which is called computational domain in which the flow has to be simulated. Shape and
size of flow computational domain is depends on the geometry and the physics of flow. Since this
modeled geometry along with the flow domain are used as an input for the grid generation hence the
modeling should takes into account the structure and topology of the grid generation. For external
flows, decision of computational domain is based on to replicate the actual physics. Many times this
domain is decided by wind tunnel dimensions and the blockage ratio. A ratio of model frontal area to
wind tunnel cross sectional area (Blockage ratio) should be less than 5%. In internal flows the flow
path recognition is one of the major works for internal flows, specifically for conjugate heat transfer
analysis. From the model search the interface between solid and fluid.

16.3.3 Choice of Grid


The choice of whether to use a structured or an unstructured mesh is problem specific which is
discussed in detail before. Some advantages of structured meshes that hold generally over most
applications are simplicity, availability of code, and suitability for multigrid and finite difference
methods. On the other hand, unstructured meshes conform to the domain more easily and allow
element sizes to vary more dramatically. Structured meshes are currently more popular, but
unstructured are catching up642. Here some guidelines are listed based on three parameters for
choosing between structured and unstructured grid:

1. Complex geometry: Unstructured grid generation is usually much faster than structured
one. However, if the geometry is only slightly modified from a previously existing geometry
with a structured grid, then structured grid generation can occur very rapidly. For a
particular problem structured grid can take say a man weeks to one man month. On the other
hand unstructured grid will take a man hour to a few days.
2. Accuracy: For simpler problem such as airfoil (single element) or an isolated wing,
structured grids are generally more accurate per unknown than unstructured. However, for
more complex flows, the adaptively facilitated by an unstructured grid may allow more
accurate solutions.
3. Convergence: Structured grid calculations usually take less time than an unstructured grid
calculation because, to date, the existing algorithms are more efficient.

16.3.4 Surface Meshing


Once the water tight geometry is ready, it is time to create surface mesh on the model surfaces to
ensure good quality surface and volume mesh. Volume mesh largely depends on the quality of surface
mesh e.g. min/max angle, skewness etc. High surface deviation areas should be meshed by dense grid
with smooth transition to low surface deviation areas. According to surface mesh requirement,
surfaces can be subdivided into parts. All sharp edges and turnings should be assured by clustering
for good quality volume mesh generation. For external aerodynamics like aero and auto domains, a
hybrid mesh is fast and cost effective.

642Abhishek Khare, Ashish Singh, and Kishor Nokam, “Best Practices in Grid Generation for CFD Applications
Using HyperMesh”, Member of Technical Staff Computational Research Lab.
421

16.3.5 Volume Meshing


Once the surface grid is ready, to
generate the volume grid, it is good
practice to check whether it is
forming a closed volume or not. If the
surface grid forms a closed volume,
volume grid generation can be
started. For structured grid we need
to do mapping of the corresponding
surfaces as per the topology of the
domain. In case of the unstructured
grid we need to decide some
parameters like boundary layer
thickness, element growth ratio, Y+
values, which are required for
volume grid generation. Most
important parameter is the first
point distance from the wall.
Placement of the first point near to
the wall depends on the grid Figure 16.12 General Estimation of Surface Mesh Element
resolution required. This is Size
discussed in more detail in next section which is boundary layer grid generation. The second crucial
parameter is the stretching ratio (SR). The value of the SR should be taken in such a way, so that the
size of the elements varies smoothly in the domain. The recommended value of the SR is around 1.1
to 1.3. Figure 16.12 shows the general estimation of surface mesh element size based on free stream
velocity and Y+ value643. This estimation works as well for automobile aerodynamics.

16.3.6 Boundary Layer Meshing


Successful computations of turbulent flows require some boundary layer consideration during the
mesh generation. Since turbulence (through the spatially-varying effective viscosity) plays a
dominant role in the transport of mean momentum and other scalars for the majority of complex
turbulent flows, one must ascertain that turbulence quantities are properly resolved, if high accuracy
is required. Due to the strong interaction of the mean flow and turbulence, the numerical results for
turbulent flows tend to be more susceptible to grid dependency than those for laminar flows. To
resolve the boundary layer it is required to cluster the grid in the direction normal to the surface with
the spacing of the first grid point off the wall to be well within the laminar sub-layer of the boundary
layer. Hexahedral or prism elements are employed to discretize boundary layers to preserve the
accuracy in the wall normal direction for highly stretched viscous grid. In case of turbulent flows, it
is recommended that the first point off the wall should exhibit a wall normal dimensionless distance
(y+) value of less than 1.0. This avoids the use of wall functions which generally over predicts the
viscous drag in comparison to solve to wall approach. In complex geometries, particularly at high
Reynolds numbers, the condition y+ < 1 can be rather stringent, requiring an excessive total number
of grid points. In this case, the user should consider the use of wall functions, which allow much larger
values for y+, at the expense of additional modeling assumptions introduced in the wall-fluxes and
wall adjacent centroids. In case of LES simulation there are no computational restrictions on the near-

643Macro Lanfrit, “Best Practices Guidelines for Handling Automotive External Aerodynamics with Fluent“,
Fluent Deutschland GmbH, Birkenweg 14a, 64295 Darmstadt/Germany, 2005.
422

wall mesh spacing. However, for best results, it might be necessary to use very fine near-wall mesh
spacing (on the order of y+)644.

16.3.7 Guidelines for Aerodynamics in General


Accurate Cl and Cd predictions are the major focusing areas, while dealing with aero aerodynamics.
Decision of element size based on local chord length should be the strategy for surface gridding here.
A size of 0.1% of local chord length at leading and trailing edge is good enough to resolve the wing
flow physics. 2% of reference chord length produces good quality surface mesh near fuselage nose
and after body. Approximately 5% of local chord length is fair enough to resolve flow phenomenon
along span wise direction. Since Prediction of viscous drag is crucial here, boundary layer resolution
plays a vital role in the prediction of Cd values. Y+ is the governing factor for boundary layer meshing.
It is preferred that the value of Y+ must be less than 1 to avoid any kind of wall functions in simulation.
Start from a coarse mesh to fine, Y+ can be 1, 0.67, 0.44, and 0.3. This may generate from 5 million to
100 million cells depending on other volume meshing parameters. One should be very careful while
stretching cells from boundary layer to outer far field domain. Within the boundary layer, it is a good
practice to keep first two cells with constant normal spacing. In general the limit of cell volume
growth should be less than 1.25. Outside the viscous layer this can be 3 times for unstructured and
1.5 times for structured mesh.

16.3.8 Guidelines for Automotive Aerodynamics


Surface meshing for ground vehicle aerodynamics should resolve both, boundary layer (less extent)
and flow separation regimes (greater extent). In auto aerodynamics sector, the geometries and are
quite complex and even if it is simpler, then also the flow physics is complex like modeling of under
hood aerodynamics, rotating wheel aerodynamics, rear end aerodynamics etc. If we talk about
Formula 1 race car, then it is complex from geometry as well as aerodynamics point of view. In ground
vehicle aerodynamics (Mach < 0.3), pressure drag dominates over viscous drag (roughly pressure
drag is more than 90% of total drag), so the mesh generation effort should be focused on capturing
highly separated flows. Generally for surface gridding, element size variation less than 3% of vehicle
reference length is acceptable with clustered mesh at corners and geometric turning. More to say, if
it is less than or equal to 1%, the quality of mesh is of high standard. These numbers are independent
of surface grid topology. Near the stagnant point and separation areas, the clustering must insure a
ratio less than 1.5 between maximum and minimum element size.
The user should first decide the degree of resolution needed for the simulation. The standard practice
is to calculate an average surface element size, by means of viscous layer resolution criteria (y+
values) for near wall modeling. It can also be limit by aspect ratio at the wall. Aspect ratio values may
vary from order of 2 to order of 4 depending upon the curvature in the geometry. Based on Ref 645[6]
and our experience, choosing a coarse surface mesh will lead to an initial mesh of approx. 2-5 M cells.
A medium resolution, which currently is part of the standard approach, will lead to meshes that
consist of approx. 5-10 M cells, while a fine resolution will correspond to meshes beyond 10 M cells.
The overall mesh largely depends on the complexity of model and volume mesh parameters.

16.3.8.1 Case Study - Best Practice & Guidelines for Handling Automotive External Mesh Generation
with FLUENT
This document gives a description of a straightforward and reliable way to perform mesh generation
simulations in the field of automotive external using the CFD software package FLUENT ®. Items and
approaches listed below do not claim to be complete nor optimized, they are just recommendations

644HyperMesh9.0 Manual, Altair Inc.


645Macro Lanfrit, 2005, “Best Practices Guidelines for Handling Automotive External Aerodynamics with
Fluent“, Fluent Deutschland GmbH, Birkenweg 14a, 64295 Darmstadt/Germany.
423

based on experience with recent comparable studies. Since here we are concerned mainly with mesh
generation aspect of the problem, for other setting (Solver, B.C. Turbulence etc.), readers are
encouraged to consult the work by [Lanfrit646].

16.3.8.1.1 Meshing Strategies


In general there are 3 different strategies to create the volume mesh for simulation in FLUENT 6.

• Strategy A (Adaption)
• Strategy B (Boxes)
• Strategy C (Controls)

In this section, the advantages and disadvantages of these three approaches are discussed.

16.3.8.1.2 Strategy A (Adaption)


This simulation strategy uses the adaption functionality in the FLUENT solver. A relatively coarse
mesh is used as a starting point, and a first solution is calculated. To complete the simulation, several
static pressure gradient adaptions are necessary. In each adaption cycle about 1-3% of the total
number of cells should be refined using the hanging nodes adaption method in FLUENT 6. Then
further iterations are needed until convergence of drag and lift coefficients is achieved. Overall 3 to
5 adaption cycles may be necessary to reach a state where the force coefficients, or any other
important parameter, will no longer be subject to any significant changes. In order to decrease the
total number of cells, the cells to be adapted (marked) can be limited to a region not too far from the
car. To do so, you must create one register using static pressure gradient and another grouping the
cells inside a hexahedral region near the car. Then you can intersect them by changing the type of the
hexahedral register from adapt to mask and combining the two registers. Strategy A is the quickest
meshing approach, but is not optimal due to several facts:

1 Since the FLUENT solver in Version 6.1 has no access to the grid’s original geometry database,
mesh adaption is not useful for improving the geometry resolution of the surface mesh.
2 By using the hanging nodes adaption functionality, numerical instability and maybe
numerical diffusion is introduced by large size gradients of neighboring cells.
3 Adaption needs several manual interventions by the user.

16.3.8.1.3 Strategy B (Boxes)


This strategy is based on internal boxes created around the vehicle and in the wake region to
explicitly control mesh size. This approach is more time consuming than strategy A, but very
accurate. The boxes are typically created in the Preprocessing tool. A constant size of surface
elements is applied to the box walls. The boxes are used in T-Grid as meshing domains, in which cell
size can be controlled in a very comfortable way. Another advantage of this method is the possibility
to combine different meshing techniques in one model. Hence Hex meshes can be used for the outer
region of the wind tunnel and can be kept for different simulations, while only the inner box is
changed. The connection between those boxes can be either conformal using pyramids or non-
conformal by using the interface definition of FLUENT.

16.3.8.1.4 Strategy C (Controls)


In this strategy the internal boxes are replaced by virtual boxes (local refinement boxes) used for cell
refinement in T-Grid. Therefore the local refinement functionality in T-Grid is used. This approach
can either be used for general Tetrahedral or Hex-core Meshing. These methods will be described in

646 Marco Lanfrit, “Best practice guidelines for handling Automotive External Aerodynamics with FLUENT”, Fluent

Deutschland GmbH, Birkenweg 14a, 64295 Darmstadt/Germany.


424

the Volume Meshing section of this document. This approach is very accurate and avoids the creation
of additional surfaces in prior steps. This strategy is recommended by Fluent.

16.3.8.1.5 Surface Meshing


The first step in the surface meshing procedure is the imposing of the estimated average element size
on the whole vehicle geometry. Depending on the tool used for surface meshing this steps gives the
user the possibility to identify locations where geometry simplifications have to be applied or a
higher degree of mesh resolution is needed to capture the geometric details. To locate problems
caused by geometric details, like narrow gaps, or sharp angles, the user should control the overall
quality (skewness) of the surface mesh This transition should involve a size jump of no more than
20% from one element to the next. Common preprocessing tools provide functionalities to
accomplish this, such as Sizing Functions (e.g., GAMBIT) or Spacing Functions (e.g., ANSA). In the next
step user has to take care that the mesh is able to represent the shape of the parts. This is essential
for parts close to stagnation points (front bumper, wheels, sideview-mirrors) and at the back of the
car (c-pillar, spoiler), to accurately describe separation.

Figure 16.13 Mesh Resolution for Sideview Mirror – Courtesy of Lanfrit

Figure 16.13 shows an example of the a side view-mirror with two different mesh resolutions. The
surface meshing should result in a high quality, non-uniform triangular surface mesh that resolves
all radii and geometrical details well. In summary:

• Radii and sharp edges should be resolved very accurately, while planar faces can be meshed
relatively “coarse”
• Maximum growth rate of surface elements should be 20%, even from radius to planar face
and vice versa
• Skewness of the surface mesh should be as good as possible, ideally < 0.45

16.3.8.1.6 Volume Meshing


Volume Meshing comprises of two main steps. For real industrial car shapes a hybrid meshing
approach using all the available element types in FLUENT 6 is adequate. To ensure low skewness
elements where viscous effects are large, prism elements are extruded from the car surface in a first
step. Following this, the rest of the domain is filled either with hexahedral and/or tetrahedral
elements.
425

16.3.8.1.7 Prismatic Layers


Layered elements provide good alignment with the flow near wall boundaries. This is beneficial for
reducing numerical diffusion. For the creation of prism layers, Fluent’s preprocessing software T-
Grid is used. A basis for a high quality prismatic mesh in the highly affected viscous regions is a
surface mesh using the quality criteria described in the above section. Prism Layers are extruded
from the wind tunnel floor and most of the car surfaces, like roof, side, back, engine-hood, and
windscreen. Using prisms on a complete detailed underbody geometry is not possible, due to prism
layer creation problems caused by undercuts and sharp angles. Nevertheless flat regions, especially
on the front part of the underbody should be resolved using prismatic layers. T-Grid 3 allows prisms
to be extruded for a specified value of cell aspect ratio. Extrusion by aspect ratio is recommended for
all prism layers on a vehicle. This makes each prism’s height proportional to the size of its base
triangle. For good prism characteristics with extrusion by aspect-ratio, the triangle size on each
surface must vary smoothly.
Each succeeding prism layer should increase in height at a constant geometric rate. To ensure a mesh
satisfying the numerical requirements, one must assure a good transition, in terms of cell-size
deviation at the interface between the prismatic layers and the tetrahedral region. To avoid large cell
size gradients that may lead to numerical diffusion, an optimal combination of settings for first aspect
ratio, growth rate and number of layers has to be determined. Figure 16.14 shows two different
prism layers based on the same triangular surface mesh. The prisms on the left side were grown using
a first aspect ratio of 5, a growth rate of 20% extruding 5 layers. The transition to the tetrahedral
elements is smooth. On the right hand side a prism-layer is shown, using an aspect ratio of 10 for the
first layers, maintaining the values given above for growth rate and number of layers. It can be clearly
seen, that there is a huge volumetric size gradient at the interface between prismatic and tetrahedral
elements.

Figure 16.14 Prism Layer Growth – Courtesy of Lanfrit

The recommendation for prism layer growth on the vehicle surfaces is First Aspect Ratio: 5,
Geometric growth rate: 1.2, Number of Layers: 5. Growing prisms on the wind tunnel-floor is done
using a uniform growth method. Therefore a First Height, Growth Rate and Number of Layers has to
be specified. The First Height is determined by the average surface element size of the floor under
the car. To ensure the proper boundary layer resolution in this highly affected region, it is important
426

to have a numerically fitted mesh in this particular region, just as on the car surface. Therefore first
height is calculated using the aspect ratio approach given above. The first height should be a fifth of
the average surface element size.

16.3.8.1.8 Hybrid Mesh Transition


Due to the complexity of some parts of the car, especially the underbody, it is not possible to cover
he car completely with prismatic elements to create a closed O-Type Grid. In this case the prism-
sides, consisting of quadrilateral elements, are present in the domain. There are two different ways
of treating this issue. The first is using the automatic or semi-automatic creation of pyramid elements.
This yields a so called conformal mesh, in which the pyramids’ quadrilateral bases cover the
quadrilateral side faces of the prism elements, and then each pyramid’s four triangular side faces are
connected to tetrahedral elements. This is automatically done while T-Grid creates the tetrahedral
mesh.
Due to the size variation of the quadrilateral elements with respect to the connected surface triangles,
this may result in highly skewed pyramids and/or connecting tetrahedral elements. Therefore it is
recommended to use the FLUENT 6 non-conformal interface feature to connect the prism-layer to
the surrounding tetrahedral mesh. T-Grid offers a comfortable way to create a copy of the prism-side
surface and to automatically re-mesh the copy using triangular elements while maintaining the node
distribution on the bounding edges. Figure 16.15 shows the application of non-conformal interfaces
for the Ford Ka model. On the left hand side, the prism side is shown consisting of quadrilateral
elements. The right hand side shows the re-triangulated copy consisting of high quality triangular
elements, which can be directly connected to the tetrahedral mesh.

Figure 16.15 Handling Prism Sides using Non-conformal Interfaces – Courtesy of Lanfrit

16.3.8.1.9 Tetrahedral Mesh


There are two ways to fill the rest of the domain. In the past, tetrahedral elements were used to
envelop all other cell types. Their completely unstructured nature allows them to grow to unlimited
size, while maintaining conformal connectivity with their neighbors. Hence they efficiently fill the
remaining volume of the domain. This facilitates calculations for domains with a very low level of
solid blockage, as necessary for accurate external-aero predictions. T-Grid offers a way to
automatically create a high quality tetrahedral volume mesh by applying just a few important
parameters. In the Auto Mesh Controls Panel it is important to set the number of Refinement Levels
to 9. This ensures a tetrahedral growth rate of about 20 % in the domain. Under Initialization,
Improve Surface Mesh should be disabled. To ensure a continuous growth of the tetrahedral elements
to the boundaries of the domain, the Max Cell Size should be limited in the Refinement Controls. This
427

value is given in terms of volume units. A recommendation for this value is based on the surface
elements size on the bounding box (l-bound), which should be around 100 - 200 mm.

16.3.8.1.10 Hex-core Mesh


T-Grid 3.6 offers the possibility of Hex-core Meshing. Hex core Meshing is a hybrid meshing scheme
that generates cartesian cells inside the core of the domain and tetrahedral elements close to the
boundaries. Hanging-node refinements on the Cartesian cells allow efficient cell size transition from
boundary to the interior of the domain. This results in fewer cells with full automation and can handle
complex geometries, internal walls and gaps. The Hex-core meshing scheme is useful mainly for
volumes with large internal or external regions. Similar to the tetrahedral meshing, T-Grid offers
several commands to generate the Hex-core Mesh. A general description of how Hex-core works is
given in the T-Grid Users Guide. The main controls for Hex-core Meshing are Maximum Cell Length
and Buffer Layers. Maximum Cell Length. For Hex-core Meshing, the Maximum Cell Length is based
on length units. If no Maximum Cell Length is specified, T-Grid toggles automatic sizing of the domain,
and calculates the maximum length using the domain extent and the surface mesh size. The
recommendation is to either use Auto Size Domain, or limit the Maximum Cell Length to twice the
element size on the bounding box.

16.3.8.1.11 Buffer Layers


When there is disparity in size distribution between the boundary mesh and the initial Cartesian
cells, the transition from fine to coarser calls can be too rapid. To avoid this, T-Grid marks additional
layers of cells adjacent to those marked by the size requirement. Increasing the Buffer Layers will
significantly increase the number of cells. Therefore the default value of 1 is recommended.

16.3.8.1.12 Local Refinement


For both methods, pure tetrahedral and hex core meshing, local refinement boxes can be defined. It
is strongly recommended to define such virtual refinement boxes, using Local Refine for Tets, or
region for Hex-core, prior to the main Meshing Process. This assures that the majority of elements
will be located close to the vehicle and in the wake region. Figure 16.16 shows an example of the
Ford Ka, with and without local refinement boxes.

Figure 16.16 Impact of Local Refinement on Tetrahedral Mesh – Courtesy of Lanfrit

16.3.8.1.13 Checking Quality


To achieve accurate and reliable results, it is important to fulfill the following requirements in terms
of quality:
428

• Make sure that a particle coming from the inlet area and following a path to the front
stagnation point of the car would have to pass through minimum 100 cells. If this region is
under resolved, the pressure coefficient will go far beyond 1 and spoil the overall solution.
• Check that the largest cells within the flow domain are smaller than those attached to the
bounding box (for pure tetrahedral meshes)
• Check that Quality of cells is below 0.9 for the whole domain. It is recommended to have a
quality of below 0.85 for prism elements on the car surface. Use T-Grid’s Mesh Repair
functionalities to fix local quality problems.

16.3.9 Improvement of Grid Quality


Since the quality of the grid strongly influence the accuracy of the solution. It is required that the
resulting grid should have the elements which are as regular as possible. Also the variation of the
elements size should be as smooth as possible. After the grid is generated two procedures can be
applied to improve the quality of the unstructured grid, namely Edge Swapping and Grid Smoothing.
These procedures do not change the total numbers of the elements inside the grid and most of the
commercial grid generators are having these for the grid quality647-648.

647 Blazek, J, “Computational Fluid Dynamics: Principles and Applications”, Elsevier Science Publication, 2005.
648 Sven Perzon, “On blockage effects in wind tunnel - A CFD Study”, SAE - 2001-01-0705, 2001.
429

17 Appendix A
A.1 Computer Code for a Transfinite Interpolation
This subroutine is based on a transfinite interpolation with a Lagrangian blending function. The
following section describes the subroutine arguments.

Nomenclature

F : Grid position (x, y, or z)

IL, JL : Number of grid points in i and j-directions, respectively.

II(i), JJ(j) : This array stores the locations of known grid lines in i- and j-directions,
respectively (1 for known grid lines).

IS, IE, JS, JE : Starting and ending of region (computational) of interest.

IMAX, JMAX : Array dimension

Example: Consider surface IV in Figure 17.1. In this case, five grid lines are known: two lines at GH,
two lines at GJLN, and one line at NO. The size of the grid is 95 in the I-direction and 50 in the J-
direction. Point G is at (70, 15) and point O is at (95, 25).
430
431
432
433

Figure 17.1 Symmetry plane (XY)

You might also like