0% found this document useful (0 votes)
110 views233 pages

Failure Analysis of FEV

This document is a thesis submitted for a Doctor of Philosophy degree. It presents research on improving the accuracy of computational fluid dynamics (CFD) through developing methods for estimating discretization error and reducing it. A new error estimation method called the Face Residual Error Estimator (FREE) is presented. An automatic adaptive mesh refinement procedure is developed that uses FREE and local mesh refinement to control error. Polyhedral mesh generation and adaptation techniques are also explored. The research is aimed at producing accurate CFD solutions with reduced computational resources through error estimation and adaptive meshing.

Uploaded by

Nashrif Karim
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
110 views233 pages

Failure Analysis of FEV

This document is a thesis submitted for a Doctor of Philosophy degree. It presents research on improving the accuracy of computational fluid dynamics (CFD) through developing methods for estimating discretization error and reducing it. A new error estimation method called the Face Residual Error Estimator (FREE) is presented. An automatic adaptive mesh refinement procedure is developed that uses FREE and local mesh refinement to control error. Polyhedral mesh generation and adaptation techniques are also explored. The research is aimed at producing accurate CFD solutions with reduced computational resources through error estimation and adaptive meshing.

Uploaded by

Nashrif Karim
Copyright
© Attribution Non-Commercial (BY-NC)
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/ 233

Error Analysis in Finite Volume

CFD
Franjo Juretic
Thesis submitted for the
Degree of Doctor of Philosophy of the University of London
and
Diploma of Imperial College
Department of Mechanical Engineering
Imperial College London
December, 2004
2
Abstract
This study was aimed towards improving the accuracy of Computational Fluid Dy-
namics (CFD) by developing methods for reliable estimation of the discretisation
error and its reduction.
A new method for error estimation of the discretisation error for the second-
order accurate Finite Volume Method is presented, called the Face Residual Error
Estimator (FREE), which estimates the discretisation error on the cell faces. The es-
timator is tested on a set of cases with analytical solutions, ranging from convection-
dominated to diusion-dominated dominated ones. Testing is also performed on a
set of cases of engineering interest and on polygonal meshes.
In order to automatically produce a solution of pre-determined accuracy an au-
tomatic error-controlled adaptive mesh renement procedure is set up. It uses local
mesh renement to control the local error magnitude by rening hexahedral cells
parallel to the face with large discretisation error. The procedure is tested on four
cases with analytical solutions and on several laminar and turbulent ow cases of
engineering interest. It was found able to produce accurate solutions with savings
in computational resources.
In order to explore the possibilities of dierent mesh structures, a mesh generator
producing polyhedral meshes based on the Delaunay technique is developed. An
adaptive mesh generation technique for polyhedral meshes is also developed and is
based on remeshing parts of the mesh which are selected for renement. The mesh
adaptation technique is tested on a case with an analytical solution. A comparison
of accuracy achieved on quadrilateral, triangular and polygonal meshes is also given,
where quadrilateral meshes perform best followed by polygonal meshes.
3
Acknowledgements
I would like to express my gratitude to my supervisor Prof A. D. Gosman for his
interest and continuous guidance during this study.
I would like to use the opportunity to thank my colleagues from Prof Gosmans
CFD group, especially Dr. Hrvoje Jasak, Mr. Henry Weller and Mr Mattijs Janssens
for developing the FOAM C++ simulation code which made the implementation of
the ideas easier. Their support and suggestions were invaluable.
This study and the text of this thesis has beneted a lot from the numerous
suggestions and comments by Dr. Hrvoje Jasak.
It would be unfair not to thank Mrs Nicky Scott-Knight and Mrs Susan Clegg
for arranging administrative matters.
Finally, the nancial support provided by the Computational Dynamics Ltd. is
gratefully acknowledged.
4
Contents
1 Introduction 25
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.2 Present Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.3 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2 Governing Equations of Continuum Mechanics 31
2.1 Navier-Stokes Equations . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Constitutive Relations for Newtonian Fluids . . . . . . . . . . . . . . 31
2.2.1 Turbulence Modelling . . . . . . . . . . . . . . . . . . . . . . . 32
2.3 General Form of a Transport Equation . . . . . . . . . . . . . . . . . 36
2.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3 Finite Volume Discretisation 39
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2 Measures of Mesh Quality . . . . . . . . . . . . . . . . . . . . . . . . 41
3.3 Discretisation of Spatial Terms . . . . . . . . . . . . . . . . . . . . . 43
3.3.1 Convection Term . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.2 Diusion Term . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.3.3 Source Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.4 Temporal Discretisation . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.5 Boundary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.5.1 Boundary Conditions for the General Transport Equation . . . 56
3.5.2 Boundary Conditions for the Navier-Stokes Equations . . . . . 57
3.6 Discretisation Errors on dierent types of meshes . . . . . . . . . . . 58
3.6.1 Convection Term . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.6.2 Diusion Term . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.7 Solution of Linear Equation Systems . . . . . . . . . . . . . . . . . . 67
5
6 Contents
3.8 Solution Algorithm for the Navier-Stokes System . . . . . . . . . . . 69
3.8.1 Pressure Equation . . . . . . . . . . . . . . . . . . . . . . . . 69
3.8.2 Algorithms for Pressure-Velocity Coupling . . . . . . . . . . . 71
3.9 Summary and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 73
4 Error Estimation 75
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.2 Literature Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.2.1 Methods Used in FEM Analysis . . . . . . . . . . . . . . . . . 76
4.2.2 Methods Used in FV Analysis . . . . . . . . . . . . . . . . . . 78
4.3 Error Transport Through a Face . . . . . . . . . . . . . . . . . . . . . 83
4.4 Face Residual Error Estimator . . . . . . . . . . . . . . . . . . . . . . 87
4.4.1 Analysis of the Normalisation Practice . . . . . . . . . . . . . 88
4.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.5.1 Planar Jet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.5.2 Creeping Stagnation Flow . . . . . . . . . . . . . . . . . . . . 96
4.5.3 Convection Transport of Heat with a Distributed Heat Source 99
4.6 Summary and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 103
5 Mesh Adaptation 105
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2 Literature Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.3 Adaptation Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.3.1 Selection of Cells and Mesh Renement . . . . . . . . . . . . . 109
5.3.2 Solution Mapping Between Meshes . . . . . . . . . . . . . . . 115
5.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5.4.1 Planar Jet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5.4.2 Stokes Stagnation Flow . . . . . . . . . . . . . . . . . . . . . . 120
5.4.3 Convection Transport of Heat with a Distributed Heat Source 127
5.4.4 Convection and diusion of a Temperature Prole without a
Heat Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.5 Summary and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 135
6 Further Case Studies 137
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Contents 7
6.2 Flow Over a Cavity . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.3 S-shaped Pipe Bend . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
6.4 Tube Bundle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.5 Wall-Mounted Cube . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
6.6 Summary and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 177
7 Adaptive Polyhedral Mesh Generation 179
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
7.2 Literature survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
7.3 Voronoi Polygons and Delaunay Triangulation . . . . . . . . . . . . . 185
7.3.1 Algorithm for calculation of the Dirichlet Tessellation . . . . . 187
7.4 Computational mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
7.5 Polyhedral Mesh Generation . . . . . . . . . . . . . . . . . . . . . . . 191
7.5.1 A comparison of accuracy on Quadrilateral, Polygonal and
Triangular Meshes . . . . . . . . . . . . . . . . . . . . . . . . 197
7.6 Mesh adaptation on Polyhedral Meshes . . . . . . . . . . . . . . . . . 205
7.6.1 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7.7 Summary and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 212
8 Conclusions and Future Work 213
8.1 Error Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
8.2 Mesh Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
8.3 Mesh Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
8.4 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
8 Contents
List of Figures
3.1 Computational cell . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Mesh non-orthogonality . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3 Mesh skewness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4 Variation of near the face . . . . . . . . . . . . . . . . . . . . . . . 49
3.5 Non-orthogonality treatment . . . . . . . . . . . . . . . . . . . . . . . 51
3.6 Boundary cell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.7 Square mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.8 Triangular mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.9 Hexagonal mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.10 Split-hexahedron mesh . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.1 Inconsistency of the interpolated values on the face . . . . . . . . . . 84
4.2 Distance between points on non-orthogonal mesh . . . . . . . . . . . 90
4.3 Solution domain and boundary conditions for the jet case . . . . . . 92
4.4 Starting mesh for the jet case (10 x 4 cells) . . . . . . . . . . . . . . 93
4.5 Velocity eld for the jet case [m/s] (80 x 32 mesh) . . . . . . . . . . 94
4.6 Pressure isobars for the jet case [m
2
/s
2
] (80 x 32 mesh) . . . . . . . . 94
4.7 Velocity error eld for the jet case [m/s] (80 x 32 mesh) . . . . . . . 95
4.8 Variation of errors with uniform mesh renement for the jet case
(|U
norm
| = 2.474m/s) . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.9 Solution domain and boundary conditions for the stagnation ow . . 97
4.10 Velocity and pressure for the stagnation ow (40 x 40 mesh) . . . . . 98
4.11 Velocity error elds for the stagnation ow [m/s] (40 x 40 mesh) . . 98
4.12 Variation of errors with uniform mesh renement for the stagnation
ow (|U
norm
| = 1.107m/s) . . . . . . . . . . . . . . . . . . . . . . . . 99
4.13 Solution domain and boundary conditions for the convection trans-
port case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
9
10 List of Figures
4.14 Temperature and source elds for the convection transport case (40
x 40 mesh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.15 Error elds for the convection transport case [
o
C] (40 x 40 mesh) . . 101
4.16 Uniform mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.17 Variation of errors with uniform mesh renement for the convection
transport case (T
norm
= 1
o
C) . . . . . . . . . . . . . . . . . . . . . . 102
5.1 A split-hexahedron cell with left face split in one direction shared
with two cells. The top face is cross-split and shared with four cells . 110
5.2 Directional splitting of cells . . . . . . . . . . . . . . . . . . . . . . . 111
5.3 Renement of split-hexahedron cells . . . . . . . . . . . . . . . . . . . 111
5.4 Node distances at a split face . . . . . . . . . . . . . . . . . . . . . . 112
5.5 Additional splitting of cells . . . . . . . . . . . . . . . . . . . . . . . . 113
5.6 Consistency over a split face in 2D (dotted lines represent the selected
renement) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.7 Consistency over a cross-split face in 3D (dotted lines represent the
selected renement) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.8 Treatment of incompatible cell splitting directions in 3D (dotted lines
represent the selected renement) . . . . . . . . . . . . . . . . . . . . 115
5.9 Mesh after 6 cycles of renement for the jet case (209 cells) . . . . . . 117
5.10 Variation of velocity errors with adaptive renement for the jet case
(|U
norm
| = 2.474m/s) . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.11 Velocity errors after 6 cycles of renement for the jet case [m/s] (209
cells) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.12 Estimated errors on the faces of the nal mesh with 209 cells (given
as percentage of the maximum estimated error on that mesh) . . . . . 119
5.13 Meshes for the creeping stagnation ow . . . . . . . . . . . . . . . . . 121
5.14 Velocity errors after 4 cycles of renement for the creeping stagnation
ow [m/s] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
5.15 Velocity error scaling with adaptive renement for the creeping stag-
nation ow (|U
norm
| = 1.107m/s) . . . . . . . . . . . . . . . . . . . . 123
5.16 Estimated errors on the faces of the nal mesh with 280 cells (given
as percentage of the maximum estimated error on that mesh) . . . . . 124
5.17 Meshes for the creeping stagnation ow (second calculation) . . . . . 125
List of Figures 11
5.18 Variation of velocity errors with adaptive mesh renement for the
stagnation ow (Second calculation) (|U
norm
| = 1.107m/s) . . . . . . 126
5.19 Velocity error elds after 2 cycles of adaptive renement for the stag-
nation ow (Second calculation) [m/s] . . . . . . . . . . . . . . . . . 126
5.20 Mesh after 3 cycles of renement for the convection transport case . . 127
5.21 Fields after 3 cycles of renement . . . . . . . . . . . . . . . . . . . . 128
5.22 Variation of temperature errors with adaptive renement for the con-
vection transport case (T
norm
= 1
o
C) . . . . . . . . . . . . . . . . . . 129
5.23 Temperature eld for the internal layer case [
o
C] . . . . . . . . . . . . 129
5.24 Solution domain and boundary conditions for the convection and dif-
fusion of heat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.25 Variation of temperature errors with adaptive renement for the con-
vection and diusion of heat (T
norm
= 1
o
C) . . . . . . . . . . . . . . . 132
5.26 Temperature errors after 5 cycles of renement for the convection and
diusion of heat [
o
C] (1706 cells) . . . . . . . . . . . . . . . . . . . . 133
5.27 Temperature and its gradient for the convection and diusion of heat 133
5.28 Mesh and errors for the calculation driven by the exact face errors . . 134
6.1 Geometry and boundary conditions for the ow over a cavity . . . . . 138
6.2 Starting mesh for the ow over a cavity (36 cells) . . . . . . . . . . . 138
6.3 Velocity eld for the ow over a cavity on the nal adapted mesh
with 3257 cells (normalised by U
avg
) . . . . . . . . . . . . . . . . . . . 139
6.4 Pressure coecient eld for the ow over a cavity on the nal adapted
mesh with 3257 cells . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.5 Mesh after 8 cycles of renement for the ow over a cavity (3257 cells)140
6.6 Errors for the ow over a cavity on the nal adapted mesh with 3257
cells (given as percentage of U
avg
) . . . . . . . . . . . . . . . . . . . . 141
6.7 Variation of velocity errors with adaptive mesh renement for the
ow over a cavity (errors given as percentage of U
avg
) . . . . . . . . . 141
6.8 Estimated velocity error on the faces of the nal mesh with 3257 cells
(given as percentage of the maximum estimated error on that mesh) . 142
6.9 Case setup for the S-bend case . . . . . . . . . . . . . . . . . . . . . . 144
6.10 Starting mesh for the S-bend case (270 cells) . . . . . . . . . . . . . . 145
12 List of Figures
6.11 Velocity eld in for the S-bend case obtained on the nal adapted
mesh with 390787 cells (normalised by U
avg
) . . . . . . . . . . . . . . 146
6.12 Pressure coecient in the symmetry plane for the S-bend case ob-
tained on the nal adapted mesh with 390787 cells . . . . . . . . . . 147
6.13 Section at X = 2D (390787 cells) . . . . . . . . . . . . . . . . . . . . 148
6.14 Variation of velocity errors with adaptive mesh renement for the
S-bend case (given as percentage of U
max
) . . . . . . . . . . . . . . . 149
6.15 Mesh after 9 cycles of renement for the S-bend case (390787 cells) . 150
6.16 Velocity error in the symmetry plane after 9 cycles of renement for
the S-bend case (390787 cells) (given as percentage of U
max
) . . . . . 151
6.17 Geometry and boundary conditions for the tube bundle case . . . . . 153
6.18 Starting mesh for the tube bundle case (640 cells) . . . . . . . . . . . 154
6.19 Velocity eld for the tube bundle case (17505 cells)(given as
U
U
avg
) . . 155
6.20 Pressure coecient for the tube bundle case (17505 cells) . . . . . . . 156
6.21 q eld for the tube bundle case (17505 cells)(given as
q
U
avg
) . . . . . . 156
6.22 eld for the tube bundle case (17505 cells)(given as
D
Uavg
2
) . . . . . 156
6.23 Mesh after 7 cycles of renement for the tube bundle case (17505 cells)158
6.24 Variation of errors with adaptive mesh renement for the tube bundle
case (errors given as percentage of U
max
, q
max
and
max
respectively) . 159
6.25 Exact and estimated error elds after 7 cycles of renement (17505
cells)(errors are given as percentage of U
max
, q
max
and
max
respec-
tively). Exact errors are calculated as the dierence from the bench-
mark solution. Estimated errors are plotted as a weighted average of
face errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6.26 A comparison of proles for the tube bundle case . . . . . . . . . . . 161
6.27 Geometry and boundary conditions for the wall mounted cube case . 162
6.28 Starting mesh for the wall-mounted cube case (3444 cells) . . . . . . . 163
6.29 Distribution of ow variables in the symmetry plane for the wall-
mounted cube case, obtained on the nal adapted mesh (1.16149e+06
cells) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
6.30 Distribution of ow variables in the plane y/H = 0.5 for the wall-
mounted cube case, obtained on the nal adapted mesh (1.16149e+06
cells) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
List of Figures 13
6.31 Distribution of ow variables in the plane x/H = 0.5 for the wall-
mounted cube case, obtained on the nal adapted mesh (1.16149e+06
cells) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
6.32 Streamlines in the plane x/H = 2 for the wall-mounted cube case,
obtained on the nal adapted mesh (1.16149e+06 cells) . . . . . . . . 168
6.33 Mesh after 7 cycles of renement for the wall-mounted cube case
(1.16149e+06 cells) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
6.34 Variation of estimated errors with adaptive mesh renement for the
wall-mounted cube case (errors are given as percentage of U
avg
, k
max
at inlet and
max
at inlet) . . . . . . . . . . . . . . . . . . . . . . . . 170
6.35 Remaining estimated errors after 7 cycles of renement (errors are
given as percentage of U
avg
, k
max
at inlet and
max
at inlet, respec-
tively) Estimated errors are plotted as a weighted average of face
errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
6.36 Regions of highest gradients after 7 cycles of renement . . . . . . . . 172
6.37 Proles of ow variables taken at
x
H
= 0,
z
H
= 0.5 (above the corner
at which the leading edges meet) . . . . . . . . . . . . . . . . . . . . 173
6.38 C
p
on the bottom wall . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.39 Velocity and turbulent energy k proles . . . . . . . . . . . . . . . . . 176
7.1 Delaunay Triangulation (solid lines) and Voronoi Polygons (dashed
lines) for a set of points P
n
(dots) . . . . . . . . . . . . . . . . . . . 186
7.2 Delaunay vs other triangulations . . . . . . . . . . . . . . . . . . . . 186
7.3 Initial hull for the Delaunay triangulation . . . . . . . . . . . . . . . 188
7.4 Dirichlet Tessellation and polyhedral mesh . . . . . . . . . . . . . . . 191
7.5 Generation of an internal face of the polyhedral mesh (section in the
plane of the face) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
7.6 Tetrahedra sharing a face. The edge of the polyhedral mesh (thick
lines) is perpendicular to the shared triangular face (red). There exist
a polygonal face for every edge of the triangular face. . . . . . . . . . 194
7.7 Generation of an internal face including the intersection of a boundary
edge (section in the plane of the face) . . . . . . . . . . . . . . . . . . 195
7.8 Generation of boundary faces (coloured) including intersections with
boundary edges (thick lines) and a corner point . . . . . . . . . . . . 195
14 List of Figures
7.9 An example of a 3D mesh for a cube with side length l = 1m . . . . . 196
7.10 Meshes used for the jet case . . . . . . . . . . . . . . . . . . . . . . . 198
7.11 Exact velocity errors for the jet case [m/s] . . . . . . . . . . . . . . . 199
7.12 Quadrilateral, polygonal and triangular meshes used for comparison . 202
7.13 Variation of the exact velocity error on dierent types of meshes for
the cavity case. Errors are given as percentage of average inlet velocity
U
avg
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
7.14 Magnitude of the exact velocity error (given as percentage of average
inlet velocity U
avg
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
7.15 The exact pressure error (given as percentage of p
max
=
1.64
2
U
2
avg
) . . 204
7.16 Scaling of the pressure drop for dierent types of meshes . . . . . . . 205
7.17 Adaptation of polyhedral meshes . . . . . . . . . . . . . . . . . . . . 206
7.18 Staring polygonal mesh for the convection and diusion of heat . . . 208
7.19 Mesh after 9 cycles for the convection and diusion of heat (5925 cells)209
7.20 Polygonal mesh from nearly degenerate Delaunay Triangulation . . . 209
7.21 Errors after 9 cycles of renement (5925 cells) . . . . . . . . . . . . . 210
7.22 Uniform mesh and the exact error (6769 cells) . . . . . . . . . . . . . 210
7.23 Variations of errors with adaptive renement for the convection and
diusion of heat (T
norm
= 1
o
C) . . . . . . . . . . . . . . . . . . . . . 211
List of Tables
5.1 Estimated errors on the faces of the nal mesh with 209 cells (given
as percentage of the maximum estimated error on that mesh) . . . . . 119
6.1 Distribution of face errors for the cavity case . . . . . . . . . . . . . . 142
6.2 Pressure drop coecients for the ow over a cavity . . . . . . . . . . 143
6.3 Pressure drop coecients C
p
, force coecients C
F
and average vor-
ticity coecient C

for the S-bend case . . . . . . . . . . . . . . . . . 152


6.4 Maximum of , velocity gradient, k eld gradient and pressure gradi-
ent elds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6.5 Magnitude of the force acting on the cube and the lengths of vortices
downstream and upstream of the cube . . . . . . . . . . . . . . . . . 174
6.6 Distribution of estimated velocity error on the faces . . . . . . . . . . 177
7.1 Data structure for the triangulation . . . . . . . . . . . . . . . . . . . 187
7.2 Relations between objects forming Delaunay Triangulation and Dirich-
let Tessellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
7.3 Number of cells for dierent types of meshes (Jet case) . . . . . . . . 198
7.4 Number of cells for dierent types of meshes . . . . . . . . . . . . . . 201
7.5 A comparison of pressure drop for dierent types of meshes . . . . . . 204
7.6 Measures of mesh quality . . . . . . . . . . . . . . . . . . . . . . . . . 208
15
16 List of Tables
Nomenclature
Latin Characters
a general vector property
a
N
matrix coecient corresponding to the neighbour N
a
P
central coecient
C constant dependent on the scheme for temporal discretisation
C
F
force coecient
C
p
pressure coecient
Co Courant number
d vector between P and N
d
n
vector between the cell centre and the boundary face
E exact error, required error tolerance
e total specic energy, solution error, truncation error
e
f
error on the face
F mass ux through the face
F
conv
convection transport coecient
F
diff
diusion transport coecient
F
norm
normalisation factor for the residual
f face, point in the centre of the face
17
18 List of Tables
f
i
point of interpolation on the face
f
x
interpolation factor
g
b
boundary condition on the xed gradient boundary
g acceleration of the gravity force
G matrix for Least-Squares Fit

H transport part, Hessian matrix


h mesh size
I unit tensor
k non-orthogonal part of the face area vector
k turbulent kinetic energy
L functional, set of edges
m skewness correction vector, second moment
M geometric moment of inertia, momentum
N point in the centre of the neighbouring cell, number of cells
P pressure, point in the centre of the cell, set of points
P atmospheric pressure
x
dist
position dierence vector
p kinematic pressure, order of accuracy
q q in the q turbulence model
Q
P
source for the system of linear equations
Q
V
body forces
Q
S
surface forces
Re Reynolds number
r ratio
List of Tables 19
Res
f
face residual
Res
P
f
face residual from the cell owner
Res
N
F
face residual from the cell neighbour
Res
P
cell residual
S outward-pointing face area vector
S
f
face area vector
s parametric curve
S

source term
S
e
error source term
Sp linear part of the source term
Su constant part of the source term
S
CV
area of a control volume
T temperature, time-scale
t time
U velocity
U
b
velocity of the arbitrary volumes face
V volume
V
M
material volume
V
CV
control volume
V
i
Voronoi Polygon
V
P
volume of the cell
x x component
x position vector
y y component
z z component
20 List of Tables
Greek Characters
under-relaxation factor

N
non-orthogonality angle

diusivity
blending factor
orthogonal part of the face area vector
dissipation rate of turbulent kinetic energy
eectivity index, -eld in the q turbulence model
heat conduction coecient
dynamic viscosity
kinematic viscosity

T
turbulent kinematic viscosity
density
turbulent Prandtl number
stress tensor
exact solution
general scalar property
measure of mesh skewness
Superscripts
q
T
transpose
q mean
q

uctuation around the mean value, shadow points


q
n
new time-level
List of Tables 21
q
new
new value
q
o
old time-level
q
old
old value
q unit vector
q normalised, recovered value
Subscripts
q
f
value on the face
q
b
value on the boundary face
q
P
value in the cell owner
q
N
value in the cell neighbour, value in new point
q
t
turbulent
q
real
real ow
q
govEqn
exact solution of governing equations
q
FV
solution obtained by using the Finite Volume Method
q
iteration
solution obtained by using an iterative procedure
q interpolated value, approximated value
22 List of Tables
Abbreviations
ADT Alternating Digital Tree
AFT Advancing Front Method
Bi-CGSTAB Bi-Conjugate Gradient Stabilised
CAD Computer-Aided Design
CD Central Dierencing
CFD Computational Fluid Dynamics
CG Conjugate Gradient
CV Control Volume
DNS Direct Numerical Simulation
FD Finite Dierence Method
FEM Finite Element Method
FV Finite Volume
FVM Finite Volume Method
FREE Face Residual Error Estimator
ICCG Incomplete Cholesky Conjugate Gradient
LES Large Eddy Simulation
LSF Least Squares Fit
LU Lower-Upper
NVA Normalised Variable Approach
23
24 List of Tables
NS Navier-Stokes equations
PISO Pressure-Implicit with Splitting of Operators
RANS Reynolds Averaged Navier-Stokes
RE Richardson Extrapolation
SIMPLE Semi-Implicit Method for Pressure-Linked Equations
TDMA Thomas algorithm
UD Upwind Dierencing
2D Two-dimensional space
3D Three-dimensional space
Chapter 1
Introduction
1.1 Background
Computational Fluid Dynamics (CFD) provides solutions to uid ow problems by
solving the governing equations on a computer. CFD has undergone rapid develop-
ment in the last two decades and problems which can be solved with it range from
simple laminar ows to very complicated multi-phase ows, including heat exchange.
Many of the existing CFD codes are coupled with the CAD systems to make the
design process easier and less expensive. As CFD is becoming an engineering tool its
accuracy is gaining more and more importance, introducing the need for a reliable
method for assessing and controlling accuracy.
The governing equations are of partial dierential form, coupled in most cases.
Closed form solutions cannot be found except for some simple problems, which are
not of much practical interest. The numerical methods used for CFD provide solu-
tions by dividing the domain into smaller domains and assuming a certain variation
of the dependent elds over each subdomain. This, together with the conditions
specied at the boundary of the original domain, generates a system of N algebraic
equations with N unknowns for each dependent variable, N representing the number
of subdomains, which can be solved using a computer. The process of converting
a dierential equation into a system of algebraic equations is called discretisation.
This process may introduce errors which can have a great inuence on the quality
of the results obtained.
There are many dierent discretisation practices. The most widely used ones
are [47]: Finite Dierence Method (FD), Finite Element Method (FEM) and Finite
25
26 Introduction
Volume Method (FVM). The most popular discretisation practice in the CFD com-
munity is the Finite Volume (FV) Method and it is also adopted in this study. Finite
Volume discretisation is performed using the integral formulation of the conserva-
tion laws which are then discretised in physical space by assuming linear variation
of the dependent variables over each discrete volume, called a control volume (CV).
The nature of the FV discretisation practice allows the use of an arbitrary mesh,
where control volumes can be of arbitrary topology consisting of general polyhedral
volumes. The FV discretisation practice is conservative in its nature and the quan-
tities like momentum, mass, energy, etc. remain conserved during the calculation
process.
CFD solutions may contain errors which can be divided into four main groups
[47]:
Modelling errors are dened as the dierence between the real ow
real
and the exact solution of the governing equations
govEqn
, thus:
E
modelling
=
real

govEqn
. (1.1)
Complex problems like turbulence, combustion and multi-phase ows are very
dicult to describe exactly and require approximations in the process of de-
riving the governing equations. Initial and boundary conditions may also
introduce errors if they are not known exactly. The geometry description can
also introduce errors if it is not exact.
Discretisation errors are dened as the dierence between the exact solu-
tion of the dierential equations
govEqn
and the exact solution of their discrete
FV approximations
FV
:
E
discretisation
=
govEqn

FV
. (1.2)
Discretisation errors originate from the discretisation approximations, the mesh
density and quality, and the size of the time-step in transient calculations. A
discretisation procedure, which can be partly characterised by its approxima-
tion order, can be exact in the parts of the ow where the variable distribution
corresponds exactly to the discretisation assumptions and very inaccurate in
the regions where the variables vary in dierent ways.
1.1 Background 27
Iteration errors are a group of errors which arise if the governing equations
are solved using an iterative procedure. They are dened as the dierence
between the exact solution of the FV equations and the solution obtained by
using an iterative procedure
iteration
, thus:
E
iteration
=
FV

iteration
. (1.3)
These errors can be reduced to the level of computer truncation error for any
given problem at the expense of time needed to complete the calculation.
Programming and User errors are a result of the incorrect implementation
or use of the CFD methodology in a computer code.
Error estimators are tools for estimation of the discretisation error in the nu-
merical solution by using properties of the discretisation practice and the governing
equations. They provide information about the discretisation error distribution and
its magnitude in some norm and therefore measure the quality of the results in this
respect.
The required discretisation accuracy is known before the analysis is performed.
It depends on the objective of the calculations and on the accuracy of the dierential
equations which are used to describe the physics. Error estimators can be used as
indicators of where and how to modify the mesh to achieve solutions of the required
discretisation accuracy. This can be achieved by locally rening the mesh where
the error is large and coarsening the mesh in the regions where the error is small,
in order to maintain the error at the required level and equidistribute it over the
computational domain. An adaptive procedure, used for achieving the required
accuracy, should be composed of a number of cycles, each cycle consisting of solving
equations using a current mesh and the discretisation practice, followed by error
estimation and nally modication of the mesh.
The quality of a computational mesh is an important factor in minimising dis-
cretisation error [47]. The quality is inuenced by spatial resolution, skewness and
non-orthogonality of the mesh and also by the type of cells used.
The aim of the present study is to develop:
1. An accurate method for estimation of the discretisation error in the FV so-
lution which is applicable to dierent types of dierential equations and for
problems ranging from convection to diusion dominated ones.
28 Introduction
2. A method capable of reducing the discretisation error below the required level
without any user intervention and with the smallest computational load by
producing the optimum mesh for the given problem.
1.2 Present Contributions
This study has contributed to the eld of Computational Fluid Dynamics in the
following respects:
A Face Residual Error Estimator (FREE) which estimates the error on the
faces of the computational cells is developed. It is a result of an analysis of
the discretisation error and its transport through cell faces. The estimator
measures the error in the eld under consideration by comparing the values
extrapolated onto the face from the neighbouring nodes.
A fully automatic mesh adaptation procedure is set up and applied to several
steady-state ows, both laminar and turbulent. The mesh is adapted by re-
ning the cells sharing a face with large error by splitting them parallel to the
face.
A mesh generator for polyhedral meshes for the Finite Volume Method based
on the Delaunay method is developed.
A mesh adaptation procedure for polyhedral meshes is developed. It is per-
formed by enriching the Delaunay structure with vertices where more resolu-
tion is needed resulting in local renement.
An analysis of discretisation errors on meshes consisting of squares, trian-
gles, hexagons and split-hexahedra is presented. A comparison of the relative
accuracy on quadrilateral, polygonal and triangular meshes is performed on
laminar ow cases.
1.3 Thesis Outline
In Chapter 2, a summary of the governing equations of continuum mechanics can be
found along with the Newtonian constitutive relations. A transport equation as a
model equation is introduced. A brief description of turbulence modelling is given.
1.3 Thesis Outline 29
Chapter 3 presents the Finite Volume Method used in this study. It is a second-
order accurate method for arbitrary unstructured meshes. Discretisation of spatial
terms in the transport equation is described term by term along with the errors
which may arise. Temporal discretisation and the errors which may results from
temporal discretisation are briey discussed. An analysis of the discretisation error
on dierent shapes of computational cells is performed. A solution algorithm for
Navier-Stokes equations is presented at the end of the chapter.
Developments in the eld of a posteriori error estimation made during this
study are presented in Chapter 4. A literature survey of the existing methods is
given rst. A new method for error estimation is proposed. The performance of
the proposed error estimator is tested on a set of cases with analytical solutions,
including convection and diusion-dominated ones.
In Chapter 5 a mesh renement procedure is proposed. A literature survey of
mesh adaptation methods is presented rst, followed by the proposed mesh rene-
ment procedure based on directional cell-by-cell renement of hexahedral cells. The
performance of the renement procedure is examined on a set of test for which
analytical solutions are available.
In Chapter 6, the mesh renement procedure proposed in Chapter 5 is further
tested on four cases of engineering interest, involving laminar and turbulent ows.
Chapter 7 presents an algorithm for polyhedral mesh generation developed during
this study. A survey of mesh generation methods is given at the beginning of the
chapter. It is followed by an algorithm assembled for calculating polyhedral meshes
from the Delaunay Triangulation and the Voronoi Polygons which is described step
by step. A mesh adaptation technique for polyhedral meshes is also presented. A
comparison of relative accuracy which can be achieved on triangular, quadrilateral
and polygonal meshes is performed on cases introduced in earlier chapters. An
example of the adaptive mesh generation is also given.
Finally, a summary of the Thesis with some conclusions and suggestions for
future work are given in Chapter 8.
30 Introduction
Chapter 2
Governing Equations of
Continuum Mechanics
2.1 Navier-Stokes Equations
Governing equations of Fluid Mechanics so-called Navier-Stokes equations are a set
of partial dierential equations which read [111, 112]:
Continuity equation:

t
+ (U) = 0, (2.1)
Momentum equation:
U
t
+ (UU) = g + , (2.2)
where g is the gravity acceleration and is a surface stress tensor.
Energy equation:
e
t
+ (eU) = g.U+ ( U) q +Q. (2.3)
Here, q is the heat ux through the control volume surface and Q is the heat
source within the CV.
2.2 Constitutive Relations for Newtonian Fluids
The uids treated in this study are assumed to obey the following constitutive
relations [112]:
31
32 Governing Equations of Continuum Mechanics
Newtons law of viscosity
=
_
P +
2
3
U
_
I +
_
U+ (U)
T

(2.4)
where P is the pressure, is dynamic viscosity and I is the unit tensor.
The equation of state for the ideal gas
P = RT, (2.5)
where R is a universal gas constant.
Fourier law of heat conduction
q = T, (2.6)
being a heat conduction coecient.
When the above relations are inserted into Eqs. (2.2) and (2.3) a closed system
of equations is obtained, as follows [112]:
Continuity equation:

t
+ (U) = 0, (2.7)
Momentum equation:
U
t
+ (UU) = g
_
P +
2
3
U
_
+
_

_
U+ (U)
T
_
,
(2.8)
Energy equation:
e
t
+ (eU) = g U (P U)
_
2
3
( U) U
_
+
_

_
U+ (U)
T
_
U

+ (T) +Q,
(2.9)
2.2.1 Turbulence Modelling
Turbulent ows occur in most engineering applications and there are many methods
developed for prediction of such ows which dier in the level of detail the ow is
resolved [123].
Direct Numerical Simulation ( DNS ) is the most detailed approach to turbulence
modelling and it numerically solves the governing equations over the whole range
2.2 Constitutive Relations for Newtonian Fluids 33
of turbulent scales. This approach requires high spatial and temporal resolution,
demanding large computational resources and long simulation times, making DNS
unsuitable for most engineering applications. Some examples can be found in [19,
85, 123, 130].
Large Eddy Simulation ( LES ) ( Smagorinsky [137], Haworth and Jansen [58],
a review by Piomelli [121]) is an approach where the large scale eddies are resolved
and the small eddies are modelled. Therefore, this approach requires a spatial lter
separating the large scales from the small ones. As the small eddies are usually much
weaker and more isotropic than the large ones it makes sense to model them and
to fully resolve the large ones, as they are the main transporters of the conserved
properties. When the mesh size tends to zero such that it can resolve the smallest
eddies LES tends to DNS.
Reynolds-averaged method ( RANS ), originally proposed by Osborne Reynolds,
is a statistical approach to turbulence modelling. The rationale behind this approach
is that the instantaneous quantity (x, t) in a certain point in the domain can be
written as the sum of an averaged value and a uctuation about that value, thus:
(x, t) = (x, t) +

(x, t), (2.10)


where

(x, t) denotes turbulent uctuations and (x, t) is the averaged value. There
are three main techniques for calculating the averaged value namely time averaging,
space averaging and ensemble averaging Hinze [60].
Depending on whether the ow is incompressible or compressible, averaging can
be unweighted namely Reynolds averaging, or density weighted named Favre aver-
aging (eg. Favre [45], Cebeci and Smith [34]).
When the above averaging is applied to the momentum and the continuity equa-
tions for incompressible isothermal ow without body forces Eqs. (2.1) and (2.8)
there results:
U = 0, (2.11)
U
t
+ (UU+U

)
_
U
_
= p. (2.12)
where the term U

, called Reynolds stress tensor, is the only term containing


U

. In order to link the Reynolds stress with the mean ow variables, modelling
approximations have to be introduced and they are usually called turbulence models.
34 Governing Equations of Continuum Mechanics
The turbulence models used in this study are based on the Boussinesq approx-
imation [27] which assumes that turbulent stresses are linked to the averaged ow
variables as follows:
U

=
t
_
U+ (U)
T
_
+
2
3
k I, (2.13)
where k stands for the kinetic energy of turbulence dened as:
k =
1
2
U

. U

. (2.14)
The turbulent eddy viscosity can be calculated in many ways but the most popular
one is a two-equation approach where the
t
is dened as:

t
= C

k
2

, (2.15)
where is the turbulence dissipation rate, dened as:
= U

: U

. (2.16)
The variables k and are calculated as the solution of their own transport equations.
The equation for the turbulent dissipation has the following form [123]:
(U) ((

+)) = C
1
P
k
C
2

2
k
, (2.17)
and the equation for the turbulent energy k reads [123]:
(Uk) ((

k
+)k) = P . (2.18)
The production term P in the above equation has the following form:
P = 2
T
(U+U
T
)
2
:
(U+U
T
)
2
. (2.19)
The values of the coecients are: C

= 0.09, C
1
= 1.44, C
2
= 1.92,
k
= 1.0 and

= 1.3.
In the vicinity of the impermeable no-slip walls physics of the turbulence is
dominated by the presence of the wall. The most general treatment for resolving
the ow near the wall is by solving the transport equations in the near wall region,
eg. Launder and Sharma [83]. However, as the large variations of ow variables exist
in the near-wall region, the computational mesh has to be very ne there. A model
developed to alleviate these problems is q

[53] where q and vary linearly next


to the wall. q and are dened as [53]:
q =

k and (2.20)
=

2q
. (2.21)
2.2 Constitutive Relations for Newtonian Fluids 35
The equation for and q read [53]:
(U) ((

+)) = (2C
1
1) G

q
(2C
2
1) f
2

2
q
+E, (2.22)
(Uq) ((

q
+)q) = G. (2.23)
The f
2
function is dened as follows:
f
2
= 1 0.3e
(Re

)
2
. (2.24)
The source terms E and G in the above equations are calculated from the velocity
eld as follows:
E =

T
q
(U) : (U), (2.25)
G =

T
q
(
U+ (U)
T
2
) : (
U+ (U)
T
2
). (2.26)
The turbulent viscosity
T
is calculated from q and using:

T
= C

q
3
2
, (2.27)
where the f

is a damping function:
f

= e
6
(1+
Re

50
)
2
(1+3e

Re

10 )
, (2.28)
and the turbulence Reynolds number Re

is dened as:
Re

=
q
3
2
. (2.29)
The values of the constants are: C

= 0.09, C
1
= 1.44, C
2
= 1.92,

= 1.3 and

q
= 1.
For most engineering problems it is often too expensive to resolve the boundary
layer next to the wall using low-Re turbulence models. An alternative is to model it
by using wall-functions (eg. Launder and Spalding [84], Ferziger and Peric [46]) which
mimic the behaviour of the turbulent boundary layer near the wall by assuming that
it behaves as the turbulent boundary layer near a at plate. The wall-functions rely
on the existence of a logarithmic region in the velocity prole of a turbulent boundary
layer which has the following form [46]:
U
+
=
U
t
U

=
1

ln Y
+
+B, (2.30)
where U
t
is the mean velocity parallel to the wall, U

dened as U

=
_

w
/ is
the shear velocity,
w
is the shear stress at the wall, is the von Karman constant
36 Governing Equations of Continuum Mechanics
( = 0.41), B is an empirical constant which depends on the thickness of the viscous
sublayer (B 5.2 in a at plate boundary layer) and Y
+
is the dimensional distance
from the wall dened as:
Y
+
=
U

. (2.31)
Here, d is the distance from the wall. The wall-function is valid when the near-wall
node is within the logarithmic region, i.e. Y
+
> 15. This imposes a limitation
on mesh resolution in the near-wall region characterised by high gradients of all
elds which need ne mesh resolution to achieve accurate solutions of the governing
equations. On the other hand, if the mesh becomes too ne (Y
+
< 15) the wall-
function becomes invalid. It this is present over a large portion of wall boundaries
it may result in serious modelling errors.
2.3 General Form of a Transport Equation
All equations described above can be written in the form of a general transport equa-
tion, given below and used throughout this study to present the FV discretisation
practices and error analysis.
_
V
CV

t
dV
. .
temporal derivative
+
_
V
CV
(U) dV
. .
convection term

_
V
CV
(

) dV
. .
diusion term
=
_
V
CV
S

() dV.
. .
source term
(2.32)
Here is a tensorial property considered continuous in space,

is the diusion
coecient and S

() is the source term.


2.4 Summary
In this chapter the laws of the continuum mechanics have been presented. An intro-
duction into turbulence modelling is also given. Low-Re turbulence models solve the
turbulence equations in the near-wall region where they require ne mesh resolution
to resolve sharp gradients of solution variables, but they do not impose a limit on
mesh resolution there. High-Re turbulence models model the ow near wall bound-
aries by using wall-functions which reduce the number of cells required, but they
impose a limit on mesh resolution there which may prevent the user from getting a
mesh-independent solution of the problem under consideration. The general trans-
2.4 Summary 37
port equation which will be used for explaining FV discretisation and error analysis
is presented at the end of the chapter.
38 Governing Equations of Continuum Mechanics
Chapter 3
Finite Volume Discretisation
3.1 Introduction
The Finite Volume discretisation used in this study will be described in this chapter
by using the general transport equation Eqn. (2.32), introduced in the previous
chapter, as the model. The FV discretisation of this equation will be performed term
by term and the resulting discretisation errors which can arise will be identied. The
boundary conditions and their inuence on the accuracy will also be discussed. A
solution algorithm for solving the Navier-Stokes equations will be presented at the
end of the chapter.
An important property required of a FV discretisation practice is that the ow
solution is sought at a certain number of nodes in space and time; and if the number
of nodes tends to innity then the solution should tend to the exact solution of
the governing equations. This will happen if the FV method satises the following
requirements [47]:
Consistency. The discretisation error in the numerical solutions must tend
to zero as the grid spacing tends to zero. The discretisation can produce the
exact solution if the truncation error, dened as the dierence between the
governing equation and its discrete approximation tends to zero when the grid
spacing tends to zero. The truncation error can be expressed as a power of
the grid size and/or time step where the power of the most important term
represents the order of the approximation. The order must be positive and if
possible equal or higher than the order of the dierential equation [47].
Stability. The discretisation is considered stable if it does not magnify nu-
39
40 Finite Volume Discretisation
merical errors during the calculation process. Stability is dependent on the
discretisation practice but it is also dependent on the employed solution algo-
rithm.
Conservation. The FV equations are obtained from the integral form of the
governing equations and therefore for conserved properties they should obey
the same conservation laws as their parent dierential equations. This must
apply for every CV.
Boundedness. Some physical properties (eg. density, turbulence energy, mass
fraction) lie between certain bounds. For example, none of these quantities
can be negative; and mass fraction is bounded by one from above. All con-
vection schemes of order higher than one can produce unphysical values if
the computational mesh is too coarse. Only some rst-order schemes guaran-
tee boundedness [47]. Unphysical values of the bounded properties may also
cause failure of the solution algorithms (i.e. negative values of give negative
turbulent viscosity which causes instability in the momentum equation).
P
N
f
Y
Z
X
S
Figure 3.1: Computational cell
The Finite Volume discretisation process consists of two consecutive steps. The
rst step is the discretisation of the physical domain into contiguous computational
cells, which can in general move in space with time and are convex polyhedra which
do not overlap. All cells together form a computational mesh which is a discrete
3.2 Measures of Mesh Quality 41
representation of the computational domain. For each cell the values of the elds
are stored at a node P, Fig. 3.1, located in the centroid of the cell x
P
, dened as:
_
V
P
(x x
P
)dV = 0. (3.1)
Every cell shares an internal face with a neighbouring cell, whose centroid is denoted
with N in Fig. 3.1. Faces which are not shared by two cells are boundary faces.
The values of the elds dened on the faces (i.e. face ux, surface normal gra-
dients) are stored in the node located in the centroid of the face x
f
, whose position
is given by:
_
f
dS(x x
f
) = 0 (3.2)
The second step of the FV discretisation process is the approximation of the
governing equations over the typical cell here done in a second-order fashion by
assuming a linear variation of the property within each CV and during each time-
step. This can be expressed via the Taylor Series expansion:
(x) =
P
+ (x x
P
) ()
P
+O(|(x x
P
)|
2
), (3.3)
(t + t) =
t
+ t
_

t
_
t
+O(t
2
), (3.4)
where the subscript P relates to the node in which the solution is sought and the
superscript t denotes the current time step. O(|(x x
P
)|
2
) and O(T
2
) are the
truncated terms in the full series, having the following form:
O(|(x x
P
)|
2
) =

i=2
1
i!
(x x
P
)
i
:::
..
i
(..
. .
i
)
P
, (3.5)
O(t
2
) =

i=2
1
i!
t
n

t
i
(3.6)
where :::
..
i
is a scalar product of ith rank tensors. (x x
P
)
i
is a ith tensor product
of a vector with itself resulting in an ith rank tensor. The leading terms of the
truncation errors are proportional to (x x
P
)
2
and t
2
, so the approximations are
second-order accurate.
3.2 Measures of Mesh Quality
The distribution of the nodes and the quality of the mesh inuence the accuracy
of results. The properties which determine mesh quality and their measures are
42 Finite Volume Discretisation
presented here and they will be used when discussing dierent discretisation errors
later in this chapter. These properties are dened for mesh faces and their denition
is the same irrespective of the mesh type. Finally, the properties are:
Non-orthogonality is measured by the angle
N
between the vector d con-
necting nodes adjacent to a face and the face area vector S, as can be seen in
Fig. 3.2. The angle should be as small as possible. The reasons for this will
be given later in this chapter.
f

N
N P
d
S
Figure 3.2: Mesh non-orthogonality
Mesh skewness. When the vector d does not intersect a face in its centre the
mesh is dened as skewed, Fig. 3.3. The degree of skewness can be measured
N
P
S
f
f
i
m
d
Figure 3.3: Mesh skewness
by:
=
|m|
|d|
. (3.7)
Here m and d are vectors dened in Fig. 3.7. Skewness aects the accuracy
of the interpolation from the nodes onto the faces as will be shown in the
remainder of the chapter.
3.3 Discretisation of Spatial Terms 43
Uniformity. A mesh is uniform when d intersects the face midway between
the nodes P and N, Fig. 3.3. Uniformity can be measured by:
f
x
=
|x
f
i
x
N
|
|d|
, (3.8)
thus f
x
= 0.5 on uniform meshes. The inuence of uniformity on accuracy will
be discussed later in the chapter.
3.3 Discretisation of Spatial Terms
The FV approximation of the spatial terms in Eqn. (2.32) will be given in this sec-
tion. Approximations of volume and surface integrals and interpolation techniques
which are needed for the FV discretisation of the spatial terms in Eqn. (2.32) will
be given rst.
Volume integrals of can be approximated by integrating Eqn. (3.3) over the
cell and using Eqn. (3.1) [68]:
_
V
P
(x) dV =
P
V
P
+O(|(x x
P
)|
2
) (3.9)
where V
P
stands for the volume of the cell and
P
is the value of at the centroid.
Surface integrals can be evaluated in the similar fashion, thus [68]:
_
S
f
(x) dS =
f
S
f
+O(|(x x
f
)|
2
) (3.10)
_
S
f
dS a(x) = S
f
a
f
+O(|(x x
f
)|
2
) (3.11)
where
f
and a
f
are the values of tensorial property and a vector property a in
the centroid of the face dened in Eqn. (3.2). Values in the face centroids can be
interpolated or extrapolated from nodal values and are denoted by
f
and a
f
.
A second-order interpolation practice from the nodes onto internal faces can be
written as follows [20, 90]:

f
=
f
i
+m ()
f
i
, (3.12)
where
f
i
and ()
f
i
are the interpolated values of and at the point where the
vector d intersects the face, as shown in Fig. 3.3.
f
i
and ()
f
i
can be evaluated
by using linear interpolation:

f
i
= f
x

P
+ (1 f
x
)
N
, (3.13)
()
f
i
= f
x
()
P
+ (1 f
x
)()
N
. (3.14)
44 Finite Volume Discretisation
The linear interpolation factor f
x
is dened as follows, Fig. 3.3:
f
x
=
|x
f
i
x
N
|
|d|
. (3.15)
The truncation error for the interpolation practice dened in Eqn. (3.12) can be
estimated by using the following Taylor expansions:

P
=
f
i
+ (x
P
x
f
i
) ()
f
i
+
1
2
(x
P
x
f
i
)
2
: ()
f
i
(3.16)

N
=
f
i
+ (x
N
x
f
i
) ()
f
i
+
1
2
(x
N
x
f
i
)
2
: ()
f
i
(3.17)

f
=
f
i
+m ()
f
i
+
1
2
m
2
: ()
f
i
(3.18)
By substituting
P
and
N
in Eqn. (3.13) with Eqn. (3.16) and Eqn. (3.17), respec-
tively, the truncation error for linear interpolation from Eqn. (3.13) can be obtained
as [47]:
e
l
=
f
i

f
i
=
1
2
|x
P
x
f
i
||x
N
x
f
i
| (

d
2
: ()
f
i
)
=
1
2
f
x
(1 f
x
)|d|
2
(

d
2
: ()
f
i
) (3.19)

d being an unit vector in the direction of d, Fig. 3.3.


From Eqn. (3.19) it follows that the truncation error for the gradient interpolated
using Eqn. (3.14) has the form:
(e)
l
= ()
f
i
()
f
i
=
1
2
f
x
(1 f
x
)|d|
2
(

d
2
: ()
f
i
) (3.20)
Taking the dierence between the Eqn. (3.18) and Eqn. (3.12), the truncation error
for the linear interpolation scheme which is second-order accurate on every mesh
can be obtained in the following form:
e
interpolation
=
1
2
|x
P
x
f
i
||x
N
x
f
i
|
_
(

d
2
: ()
f
i
) +m (

d
2
: ()
f
i
)
_
+
1
2
|m|
2
m
2
: ()
f
i
=
1
2
f
x
(1 f
x
)|d|
2
_
(

d
2
: ()
f
i
) +m (

d
2
: ()
f
i
)
_
+
1
2
|m|
2
m
2
: ()
f
i
=
1
2
|d|
2
_
f
x
(1 f
x
)(

d
2
: ()
f
i
) +|d| m (

d
2
: ()
f
i
)
_
+

2
2
|d|
2
( m
2
: ()
f
i
). (3.21)
3.3 Discretisation of Spatial Terms 45
Here,

d and m are unit vectors in the directions of d and m, respectively. This
error reduces with the square of the distance between the neighbouring nodes and
is minimal when the mesh is not skewed ( = 0).
The gradient and divergence terms can be approximated by using the Gauss
theorem [68]:
Divergence of the vector property a can be approximated as follows:
_
V
a dV =
_
S
CV
dS a
=

f
_
S
f
dS a
=

f
S
f
a
f
. (3.22)
Here, V represents the volume of the CV and S
CV
its surface area. dS is the
surface area vector pointing outwards and a
f
is evaluated using the interpola-
tion practice dened in Eqn. (3.12) for the vector property a.
The truncation error for the divergence term consists of the error in the inter-
polation of a
f
, thus:
e
div
=

f
S
f
(a
f
a
f
)
=

f
S
f
e
interpolation
=

1
2
|d|
2
S
f

_
f
x
(1 f
x
)(

d
2
: (a)
f
i
) +|d| m (

d
2
: (a)
f
i
)
_
+

2
2
|d|
2
S
f
( m
2
: (a)
f
i
). (3.23)
This error reduces with the square of d and is smallest in case when = 0.
The error is also dependent on the shape of the CV. This will be discussed in
Section 3.6.
Gradient term. Discretisation of the gradient term can be performed either
using the Gauss Theorem or the Least Squares Fit (LSF). Discretisation using
46 Finite Volume Discretisation
the Gauss Theorem can be written as follows [68]:
_
V
P
dV =
_
S
C
V
dS
=

f
_
S
f
dS
=

f
dS
f

f
, (3.24)
where
f
is evaluated using the interpolation practice dened in Eqn. (3.12).
The truncation error for this term is:
e
grad
=

f
S
f
(
f

f
)
=

f
S
f
e
interpolation
=

1
2
|d|
2
S
f
_
f
x
(1 f
x
)(

d
2
: ()
f
i
) +|d| m (

d
2
: ()
f
i
)
_
+

2
2
|d|
2
S
f
( m
2
: ()
f
i
). (3.25)
Everything said about errors for the divergence term can be applied here.
The LSF is based on minimising the following functional [93]:
L =

f
1
|d|
2
(
N
(
P
+d ()
P
))
2
, (3.26)
with respect to the gradient ()
P
. When
dL
d()
P
= 0 (3.27)
it results in a system of equations from which the cell gradient can be calcu-
lated, such as:
G
P
=

f
d(
N

P
)
|d|
2
, (3.28)
where matrix G is dened as:
G =

f
dd
|d|
2
. (3.29)
The foregoing results will now be used to obtain the FV form of the individual
terms in Eqn. (2.32).
3.3 Discretisation of Spatial Terms 47
3.3.1 Convection Term
The discretisation of the convection term is performed using Eqn. (3.22) in the
following fashion:
_
V
P
(U) dV =

f
S (U)
f
=

f
S (U)
f

f
=

f
F
f
, (3.30)
where the volume integral is rst transformed into a sum over the faces and then
approximated. Here F represents the mass ux through the face:
F = S (U)
f
. (3.31)
These uxes have to satisfy continuity for every CV. They can be estimated using
the interpolated values of U and onto the face. This interpolation may introduce
an error into the mass ux which can then be written:
F = (S (U)
f
) +e
flux
. (3.32)
The procedure for obtaining conservative uxes and errors which can arise will be
described in Section 3.8.
The next issue is how to obtain the value of on the face. Many dierent inter-
polation techniques can be used to obtain
f
but some do not ensure boundedness.
Linear Interpolation (Central Dierencing) (CD) is a natural second-
order interpolation practice for obtaining the value of on the face. This
practice has already been described in Eqn. (3.12) and is:

f
= (f
x

P
+ (1 f
x
)
N
+m ()
f
i
) +e
conv
. (3.33)
The truncation error, dened in Eqn. (3.21), is:
e
CD
=
1
2
|d|
2
_
f
x
(1 f
x
)(

d
2
: ()
f
i
) +|d| m (

d
2
: ()
f
i
)
_
+

2
2
|d|
2
( m
2
: ()
f
i
). (3.34)
In [61, 114, 119, 148] it is shown that with CD the convective contribution to
the coecients of downstream nodes is always negative, which may give rise to
48 Finite Volume Discretisation
non-physical oscillations which violate boundedness and degrade the quality
of the results. On convection-diusion problems this undesired behaviour may
occur if the value of face Peclet Number is greater than two. This undesirable
property may not become apparent if the gradients in the solution are not
large, but if boundedness of the solution is essential (as in solutions of the eg.
k and in turbulence equations) some other scheme may have to be used.
Upwind Dierencing (UD) was introduced to overcome the problem of
oscillatory solutions and make the convection term unconditionally positive.
Boundedness of the convection term is achieved by assuming that the value
on the face is determined by the upstream node, thus:

f
i
=
_

f
i
=
P
for F > 0.

f
i
=
N
for F < 0.
(3.35)
This discretisation practice ensures the boundedness of the solution by making
the matrix coecients unconditionally positive.
The truncation error for the UD scheme can be obtained by using the following
Taylor series expansions:

f
=
_

P
+ (x
f
x
P
) ()
P
+
1
2
(x
f
x
P
)
2
: ()
P
for F > 0.

N
+ (x
f
x
N
) ()
N
+
1
2
(x
f
x
N
)
2
: ()
N
for F < 0.
(3.36)
The truncation error can be found as a dierence between Eqn. (3.36) and
Eqn. (3.35), thus:
e
UD
=
_

_
(x
f
x
P
) ()
P
+
1
2
(x
f
x
P
)
2
: ()
P
for F > 0.
(x
f
x
N
) ()
N
+
1
2
(x
f
x
N
)
2
: ()
N
for F < 0.
(3.37)
The leading error term in the above equation is a function of (x
f
x
P
) ()
P
,
resembling a form of the diusion term, and is therefore called numerical dif-
fusion [114]. This discretisation practice is rst-order accurate and it requires
high spatial resolution to achieve accurate solutions [114].
Gamma dierencing scheme (Gamma) described in [68, 75] is a bounded
scheme formed by blending CD with UD in the regions where CD would not
produce a bounded solution, thus:

f
= () (
f
)
CD
+ (1 ()) (
f
)
UD
+e
Gamma
. (3.38)
3.3 Discretisation of Spatial Terms 49
Here () is a blending factor, 0 () 1, dependent on the nature of the
distribution around the face. The procedure used for evaluating () is based
on Normalised Variable Approach (NVA) of Leonard [87] and Gaskell et al.
[49]. A normalised variable is dened as [87]:

P
=

P

U

U
, (3.39)
where
P
,
U
and
D
are the values in the node P, upwind node U and
downstream node D, as depicted in Fig. 3.4. The solution is bounded if the
P D U
Flow direction

U
D
P
f
Figure 3.4: Variation of near the face
following conditions are satised:

U

P

D
, (3.40)
or

U

P

D
, (3.41)
from where it follows that

P
should obey:
0

P
1. (3.42)
Jasak [68] has modied Eqn. (3.39) to be applicable to arbitrary meshes, thus:

P
= 1
()
f
d
2()
P
d
(3.43)
where the node P must be an upwind node to the face f and d = x
D
x
P
connects the D and P nodes, Fig. 3.4. Depending on

P
, the blending factor
50 Finite Volume Discretisation
() is determined as follows [68]:

P
> 1 () = 0,

P
1 () = 1,
0

P
<
m
() =

m
,

P
< 0 () = 0,
where
m
is a constant of the scheme which was introduced to ensure linear
transition between CD and UD when 0

P
<
m
to improve convergence
for steady-state problems. The range of
m
recommended by Jasak [68] is
0.1
m
0.5.
The truncation error for this interpolation practice can be written as follows:
e
Gamma
= ()e
CD
+ (1 ())e
UD
, (3.44)
where e
CD
and e
UD
are dened in Eqs. (3.34) and (3.37). The scheme is
second-order accurate when () = 1 but it reduces down to rst order when
() < 1.
The total error resulting from the discretisation of the convection term has con-
tributions from the interpolation of mass ux and the interpolation of , so:
_
V
P
(U) dV =

f
(F +e
flux
)(
f
+e
int
)
=

f
F
f
+e
conv
(3.45)
where e
conv
has the following form:
e
conv
=

f
(F e
int
+e
flux

f
+e
int
e
flux
)
C
flux
e
int
+C

f
e
flux
+e
int
e
flux
. (3.46)
The order of the approximation is therefore equal to the lowest order approximation
used in the process. If the procedures for interpolation of and F are second-
order accurate then the approximation of the convection term is also second-order
accurate.
3.3 Discretisation of Spatial Terms 51
3.3.2 Diusion Term
The discrete approximation of the diusion term is obtained by using Eqn. (3.22)
and taking the gradients on the faces to be constant due to the assumed linear
variation of the property . The result is:
_
V
P
(

) dV =

f
S (

)
f
=

f
(

)
f
(S )
f
, (3.47)
where the terms (S )
f
and (

)
f
need further treatment. The latter is interpo-
lated onto the faces using Eqn. (3.12), where is substituted by

. Approximation
k
P N
f
d
S

N
Figure 3.5: Non-orthogonality treatment
of (S )
f
on a non-orthogonal mesh, Fig. 3.5, when vectors d and S are not par-
allel, is performed using the following expression [68]:
(S )
f
= ||

N

P
|d|
+k ()
f
(3.48)
where ()
f
can be evaluated using Eqn. (3.14). Here, is parallel with d where
and k have the property:
S = +k. (3.49)
In [68] Jasak has tested dierent treatments of and k. The one for which k is
orthogonal to S, Fig. 3.5, performed best in terms of accuracy and convergence and
is adopted here. The length of can be expressed as follows:
|| =
|S|
cos
N
, (3.50)
52 Finite Volume Discretisation
and the length of k can be calculated from:
|k| = |S| tan
N
. (3.51)
The truncation error for the approximation of the (S )
f
term can be obtained
using the following Taylor expansions:

P
=
f
+ (x
P
x
f
) ()
f
+
1
2
(x
P
x
f
)
2
: ()
f
+
1
6
(x
P
x
f
)
3
:: ()
f
(3.52)

N
=
f
+ (x
N
x
f
) ()
f
+
1
2
(x
N
x
f
)
2
: ()
f
+
1
6
(x
N
x
f
)
3
:: ()
f
(3.53)
By substituting Eqn. (3.52) and Eqn. (3.53) into Eqn. (3.48) and by adding the error
from the interpolation of ()
f
, the truncation error for (S )
f
is obtained, thus:
e
snGrad
= (S )
f
(S )
f
=
1
2
||
|d|
(|x
N
x
f
|
2
|x
P
x
f
|
2
)

d
2
: ()
f

1
6
||
|d|
(|x
N
x
f
|
3
+|x
P
x
f
|
3
)

d
3
:: ()
f

1
2
|x
N
x
f
||x
P
x
f
|k (

d
2
: ()
f
)
=
|S|
cos
N
|d|
2
(2f
x
1)

d
2
: ()
f

|S|
6 cos
N
|d|
2
_
(1 f
x
)
3
+f
x
3
_

d
3
:: ()
f
|S| tan
N
|d|
2
2
f
x
(1 f
x
)

k (

d
2
: ()
f
), (3.54)
where

d and

k are unit vectors in directions of d and k, respectively, and f
x
is the lin-
ear interpolation factor dened in Eqn. (3.15). From the dependence of Eqn. (3.54)
on the f
x
, it follows that the approximation is rst-order accurate except for f
x
= 0.5,
i.e. present when the mesh is uniform. It is therefore advisable to keep the mesh
as uniform as possible to obtain best accuracy. If the mesh is uniform, the approxi-
mation becomes second-order accurate. The error is also dependent on the angle of
non-orthogonality and is minimal when
N
= 0.
Finally, the discrete form of the diusion term can be written:
_
V
P
(

) dV =

f
((

)
f
+e
interpolation
)(||

N

P
|d|
+k ()
f
+e
snGrad
)
=

f
(

)
f
(||

N

P
|d|
+k ()
f
) +e
diff
(3.55)
3.3 Discretisation of Spatial Terms 53
where the truncation error for the diusion term e
diff
has the form:
e
diff
=

f
(

)
f
e
snGrad
+

f
(||

N

P
|d|
+k ()
f
) e
interpolation
+

f
e
interpolation
e
snGrad

f
(C
int
e
snGrad
+C
snGrad
e
int
+e
snGrad
e
int
). (3.56)
from which it follows that the order of the approximation is equal to the lowest order
found in Eqs. (3.54) and (3.21). Thus, the discretisation is second-order accurate on
uniform meshes and reduces to rst-order on the non-uniform ones. The behaviour
of the truncation error and the achievable accuracy on CVs of dierent shapes will
be compared in Section 3.6.
3.3.3 Source Terms
As it was previously mentioned, all the terms in the equations which cannot be
expressed as convection, diusion or temporal terms are grouped into the so-called
source term. If the source term is dependent on , linearisation should be performed
[114], such as:
S(, x) = Su(x, ) +Sp(x, ) (x). (3.57)
When the Eqn. (3.57) is integrated over the control volume using Eqn. (3.9) the
discretised form of the source term is obtained, thus:
_
V
P
S

() dV = SuV
P
+Sp V
P

P
+e
source
. (3.58)
The truncation error for the source term can be estimated by using the following
Taylor expansion:
_
V
P
S(x, ) dV =
_
V
P
_
S(x
P
,
P
) + (x x
P
) (S(x, ))
P
+
S(x, )

_
dV
+
_
V
P
_
1
2
(x x
P
)
2
:: (S(x, ))
P
_
dV
+
_
V
P
_
1
2
(x x
P
) (S(x, ))
P

_
dV
+
_
V
P
_
1
2
()
2

2
S(x, )

2
_
dV, (3.59)
54 Finite Volume Discretisation
where can be substituted by:
= (x x
P
) ()
P
. (3.60)
After substituting and S(x
P
,
P
)+
S(x,)

in Eqn. (3.59) using Eqn. (3.60)


and Eqn. (3.57), respectively, the truncation error can be found as the dierence
between Eqn. (3.59) and Eqn. (3.58), thus:
e
source
=
1
2
(x x
P
)
2
: (S)
P
V
P
+
1
2
(x x
P
)
2
: (()
P
(S)
P
)
S

V
P
+
1
2
(x x
P
)
2
: (()
P
)
2

2
S(x, )

2
V
P
. (3.61)
The error is a function of (xx
P
)
2
but it also depends on the linearisation practice
used.
3.4 Temporal Discretisation
Temporal discretisation is performed on a semi-discretised form of the transport
equation, where the spatial terms have already been approximated using the prac-
tices described in the previous section. This form reads [61]:
_
t+t
t
_
_

t
_
P
V
P
+

f
F
f

f
(

)
f
S ()
f
_
dt
=
_
t+t
t
(SuV
P
+Sp V
P

P
) dt.
(3.62)
and can be written in a shorter form [47]:
V
P
_
t+t
t

t
dt =
_
t+t
t
f(t, (x, t)) dt, (3.63)
where f(t, (x, t)) contains all spatial terms from Eqn. (3.62). After performing
integration of Eqn. (3.63) there results:
V
P
_
t+t
t

t
dt = V
P
(
n

o
) =
_
t+t
t
f(t, (x, t)) dt, (3.64)
where the subscripts o and n represent old and new time levels, respectively. The
second important part of the temporal discretisation process is to choose an approx-
imation for
_
t+t
t
f(t, (x, t)) dt, which cannot be evaluated exactly. Taylor series
expansion gives:
f(t +t, (x, t +t)) = f(t
o
, (x, t
o
)) +t
df(t
o
, (x, t
o
))
dt
+
1
2
(t)
2
d
2
f(t
o
, (x, t
o
))
dt
2
,
(3.65)
3.4 Temporal Discretisation 55
which will be used later to establish the order of temporal discretisation. Some of
the most common temporal discretisation practices are:
Euler Explicit method. This method approximates Eqn. (3.64) by assuming
[47]:
_
t+t
t
f(t, (x, t)) dt = f(t, (x, t
o
))t (3.66)
i.e. it integrates the spatial terms by using the values at the beginning of the
time interval. These spatial terms can be calculated because
o
is known and
the value at the end of the interval can be obtained directly for every node
without having to solve a system of equations. It is shown in [47, 61] that
this scheme is stable for Courant numbers Co =
|U|t
h
< 0.5. Here, U is the
transport velocity and h is the cell size.
The truncation error for this practice can be found as a dierence between
Eqn. (3.65) and Eqn. (3.66) which yields:
e
expEuler
= t
df(t
o
, (x, t
o
))
dt
+
1
2
(t)
2
d
2
f(t
o
, (x, t
o
))
dt
2
(3.67)
This error is proportional to t, i.e. this method is rst-order accurate in
time.
The Crank-Nicholson discretisation practice assumes linear variation of
f(t, (x, t)) in time [47, 61], giving:
_
t+t
t
f(t, (x, t)) dt =
1
2
[f(t, (x, t
o
)) +f(t, (x, t
n
))] t (3.68)
Eqn. (3.68) requires evaluation of spatial terms for old and new time steps.
Because the values of
n
are not known at the new time level this method
requires a solution of a system of algebraic equations for each time step [61, 68].
The truncation error for this practice is:
e
CN
=
1
2
(t)
2
d
2
f(t
o
, (x, t
o
))
dt
2
(3.69)
Thus, it is second-order accurate in time.
Euler Implicit method. This method approximates Eqn. (3.64) by assuming
[47]:
_
t+t
t
f(t, (x, t)) dt = f(t, (x, t
n
))t (3.70)
56 Finite Volume Discretisation
Here the spatial terms in f(t, (x, t)) are evaluated using the
n
which are
obtained by solving a system of algebraic equations [61, 68]. This method is
unconditionally stable for even for large time steps [47, 61].
The truncation error is:
e
impEuler
= t
df(t
o
, (x, t
o
))
dt
+
1
2
(t)
2
d
2
f(t
o
, (x, t
o
))
dt
2
(3.71)
Thus, as in the case of explicit method, the error is proportional to t and is
therefore rst-order accurate.
3.5 Boundary Conditions
3.5.1 Boundary Conditions for the General Transport Equa-
tion
The solution of the general transport equation, Eqn. (2.32), is not complete without
boundary and initial conditions. The latter are necessary for transient calculations
in order to determine the initial state of the problem under consideration. Some
terms in the equation (eg. convection and diusion terms) require uxes through
CV faces which have to be specied at the boundary or evaluated from internal and
boundary data. Most commonly, boundary conditions are given by prescribing the
value of at the boundary ( Dirichlet boundary condition) or its gradient ( Von
Neumann boundary condition).
Convective uxes require a value of at a face, which is known exactly in case
of Dirichlet boundary condition but in case of Von Neumann boundary condition.
it can be extrapolated from the neighbouring nodes onto the face by using:

b
=
P
+|d
n
| (
S
|S|
)
b
+m ()
b
, (3.72)
where d
n
is a vector normal to the face, m is a skewness vector, Fig. 3.6, and ()
b
is the prescribed boundary gradient. The truncation error for this extrapolation
practice can be found using the following Taylor series expansion:

P
=
b
d ()
b
+
1
2
d
2
: ()
b
. (3.73)
When
P
in Eqn. (3.72) is substituted with Eqn. (3.73), the following truncation
error is obtained:
e
extrapolation
=
b

b
=
|d|
2
2

d
2
: ()
b
, (3.74)
3.5 Boundary Conditions 57
P
b
d
d
S
n
m = k
Figure 3.6: Boundary cell
which shows that the approximation Eqn. (3.72) is second-order accurate.
Diusive uxes require the gradient of normal to the boundary face which is
known exactly in case of Von Neumann boundary condition. In case of Dirichlet
boundary condition it can be evaluated as follows:
(S )
b
=
|S|
|d
n
|
(
b

P
k ()
P
), (3.75)
where k is a non-orthogonality vector, Fig. 3.6. The truncation error for (S )
b
approximated using Eqn. (3.75) can be derived by using the following Taylor series
expansion:

b
=
P
+d ()
P
+
1
2
d
2
: ()
P
. (3.76)
Substituting
b
in Eqn. (3.75) with Eqn. (3.76), after some algebra it gives:
e
bouSnGrad
= |S|
|d|
cos
N
(

d
2
: ()
P
). (3.77)

d is a unit vector in the direction of d. The error is a function of |d| and is therefore
rst-order accurate. This method corresponds to backward and forward dierences
in Finite Dierence Method which are rst-order accurate [47]. The error is minimal
when the mesh is orthogonal (
N
= 0).
3.5.2 Boundary Conditions for the Navier-Stokes Equations
The most common boundary conditions which occur when solving the laminar and
turbulent ows are:
58 Finite Volume Discretisation
Inlet. The velocity distribution is prescribed and the surface normal gradient
is set to zero for the pressure. Values of turbulent properties (eg. k, , q and
) are prescribed.
Outlet. The pressure distribution is prescribed there. Surface normal gradi-
ents of the velocity eld and turbulent properties are set to zero.
Symmetry plane. The surface normal gradients of all scalar elds are zero
at the symmetry plane. The convection ux through the symmetry plane is
zero. Viscous stress of the velocity component parallel to the boundary is zero
and it must be imposed directly [47] while the viscous stress of the velocity
component normal to the wall is evaluated using Eqn. (3.75).
Impermeable no-slip walls. The velocity eld is xed to the velocity of the
wall and the normal gradient of the pressure is set to zero there. The convection
ux through the wall is zero. Viscous stress of the velocity component normal
to the wall is zero at the wall and it must be imposed as an additional condition
[47]. Viscous stress of the velocity component parallel to the wall is not zero
and its evaluation is dependent on the near-wall modelling employed [47].
Conditions imposed on the turbulence properties depend on the turbulence
model and the type of near-wall treatment. The values of q and elds,
dened in Chapter 2, are xed at the wall boundary while the zero normal
gradient is imposed on k and elds.
3.6 Discretisation Errors on dierent types of meshes
Discretisation errors are dependent both on the type of computational mesh (i.e.
tetrahedral, hexahedral, polyhedral) and the approximations for dierent terms in
the governing equations. This section will present a comparison of accuracy achiev-
able on dierent mesh types. This is done by using the expressions for the truncation
errors presented in the preceeding sections of this chapter. The comparison will be
presented for convection and diusion terms. Discretisation procedures for diver-
gence and gradient terms are very similar to the discretisation procedure for the
convection term and everything that will be said about error for the convection
term can be applied to them.
Four types of mesh will be considered for the analysis:
3.6 Discretisation Errors on dierent types of meshes 59
Square mesh. A representative cell with its neighbours which inuence it
are shown in Fig. 3.7.
U
=
c
o
n
s
t.
X
Y
P E
N
W
S
l
Figure 3.7: Square mesh
This mesh is orthogonal, it is not skewed and f
x
= 0.5 because the centre of
each internal face lies midway between the neighbouring nodes.
Triangular mesh. A mesh consisting of equilateral triangles is uniform, or-
thogonal and not skewed, see Fig. 3.8.
X
Y
U
=
c
o
n
s
t.
P
E W
S
l
Figure 3.8: Triangular mesh
Regular hexagonal mesh. This type of mesh can be generated using a
Delaunay algorithm, see Chapter 7. It consists of hexagons and is uniform,
orthogonal and not skewed, Fig. 3.9.
X
Y
U
=
c
o
n
s
t.
P
N
NE
SE
NW
SW
S
l
Figure 3.9: Hexagonal mesh
Split-hexahedron mesh. This type of mesh is produced when local rene-
60 Finite Volume Discretisation
ment of hexahedral cells is done by splitting cells, such that a cell face gets
divided into two or four faces. An example is shown in Fig. 3.10.
X
Y
d
s

U

=

c
o
n
s
t
.
P E
N
S
l
SW
NW
S
N
m
k
Figure 3.10: Split-hexahedron mesh
Unlike the previous examples, a split-hexahedron mesh is skewed and not or-
thogonal but f
x
= 0.5. The distances between nodes at the split face are also
larger than on other faces. Thus, for the example above:
d
s
= l
s

d =
l
cos
N

d, (3.78)
where
N
can be calculated from:
tan
N
=
0.25 l
l
=
1
4
. (3.79)
3.6.1 Convection Term
The analysis of errors in the convection term will be performed by using the Central
Dierencing scheme and taking the uid velocity and density to be constant:
U = const.
= const.
in order not to include errors coming from evaluation of mass uxes, Eqn. (3.31).
The truncation error for the CD scheme was given in Section 3.3.1 and it is:
e
conv
=
1
2

f
F|d|
2
_
f
x
(1 f
x
)(

d
2
: ()
f
i
) +|d| m (

d
2
: ()
f
i
)
_
+

f
F

2
2
|d|
2
( m
2
: ()
f
i
). (3.80)
Here, f
x
is a linear interpolation factor dened in Eqn. (3.15). The second and the
third terms in Eqn. (3.80) are zero on meshes which are not skewed.
3.6 Discretisation Errors on dierent types of meshes 61
Error on square mesh. The distance between the two nodes is equal to the
length of a side. Hence, the mass ux is:
F = |U| l (3.81)
because |S| = l; and f
x
= 0.5. Replacing |d| in Eqn. (3.80) with l yields:
e
convSquare
=
1
8
F cos l
2
(n
2
e
: ()
e
)

1
8
F sin l
2
(n
2
n
: ()
n
)
+
1
8
F cos l
2
(n
2
w
: ()
w
)
+
1
8
F sin l
2
(n
2
s
: ()
s
)
=
1
8
l
2
F cos (n
2
e
: (()
e
()
w
))

1
8
l
2
F sin (n
2
n
: (()
n
()
s
)), (3.82)
where

d
2
from Eqn. (3.80) is replaced by n which represents a unit face normal
vector pointing outwards from the cell P. The subscript n
e
denotes that the
face is shared with a neighbour E. is the angle between the velocity vector
and the x axis.
Equilateral Triangular Mesh. For this the mass ux is:
F =

3 |U| l. (3.83)
The truncation error can be found using Eqn. (3.80), yielding:
e
convTri
=

3
16
l
2
F cos ((n
2
e
: ()
e
) (n
2
w
: ()
w
))

1
8
l
2
F sin (
1
2
(n
2
e
: ()
e
) (n
2
s
: ()
s
)
1
2
(n
2
w
: ()
w
)).
(3.84)
Hexagonal Mesh. Here the expression for the mass ux is:
F =

3
3
|U| l, (3.85)
62 Finite Volume Discretisation
and Eqn. (3.80) gives the truncation error as:
e
convHexagon
=

3
16
l
2
F cos
_
n
2
ne
: (()
ne
()
sw
)

3
16
l
2
F cos
_
n
2
se
: (()
se
()
nw
)

1
8
l
2
F sin
_
n
2
n
: (()
s
()
s
)

1
16
l
2
F sin
_
n
2
ne
: (()
ne
()
sw
)

1
16
l
2
F sin
_
n
2
se
: (()
se
()
nw
)

. (3.86)
Split-hexahedron Mesh. The truncation error for the conguration shown
in Fig. 3.10 is:
e
convSplitHex
=
1
8
l
2
F sin
_
n
2
n,s
: (()
n
()
s
)

1
8
F cos
_
l
2
n
2
e
: ()
e

1
2
l
2
s

d
2
nw
: ()
nw
_

1
8
F cos
_
1
2
l
2
s

d
2
sw
: ()
sw
_
+
1
2
F cos l
3
s
_
m
nw
(

d
2
nw
:: ()
nw
)
_
+
1
2
F cos l
3
s
_
m
sw
(

d
2
sw
:: ()
sw
)
_
F cos

2
2
l
2
s
_
m
2
nw
: (()
nw
+ ()
sw
)

(3.87)
where F is dened in Eqn. (3.81), l
s
can be calculated from Eqn. (3.78) and
can be obtained from Eqn. (3.7), thus:
=
|m|
l
s
=
l
4 l
s
. (3.88)
Evidently, the error in Eqs. (3.82), (3.84), (3.86) and (3.87) is dependent both
on the spatial resolution and the form of the solution itself as expressed through its
gradients. A comparison of accuracy can therefore only be performed by examining
dierent forms of solutions, as follows:
1. = constant. When the solution eld has a uniform and xed gradient the
error is zero on all types of meshes. This is consistent with the assumption
expressed in Eqn. (3.3).
2. = constant. This class of solutions with uniform curvature reveals dier-
ences in accuracy between dierent mesh types. The discretisation on square
3.6 Discretisation Errors on dierent types of meshes 63
and hexagonal meshes still produces exact solutions Eqs. (3.82) and (3.86),
while triangular meshes and meshes with split-hexahedra produce errors. The
truncation error for triangular meshes, Eqn. (3.84), can be simplied to:
e
convTri
=

3
16
l
2
F cos ((n
2
e
n
2
w
) : )

1
8
l
2
F sin ((
1
2
n
2
e
n
2
s

1
2
n
2
w
) : ) (3.89)
while the truncation error for a split-hexahedron mesh, Eqn. (3.87), can be
reduced to:
e
convSplitHex
=
1
8
F cos
_
(l
2
n
2
e

1
2
l
2
s

d
2
nw

1
2
l
2
s

d
2
sw
) :
_
F cos

2
2
l
2
s
_
( m
2
nw
+ m
2
sw
) :

. (3.90)
The above equations show that the errors exist because these mesh types have
not got face pairs such that the error on each pair cancel. Two cell faces form
a face pair if the sum of their outward-pointing normal vectors is a zero vector.
From there it follows that the dierence between the second tensors of the face
normals, i.e. (n
2
e
n
2
w
) = 0, is a zero tensor for every face pair; which results
in zero discretisation error. Triangular meshes have not got any face pairs
because (n
2
e
n
2
w
) and (
1
2
n
2
e
n
2
s

1
2
n
2
w
) in Eqn. (3.89) are not zero tensors.
Skewness contributes to the error in Eqn. (3.90) because ( m
2
nw
+ m
2
sw
) is not
a zero tensor.
3. = constant. This type of problem cannot be resolved exactly on any
type of mesh. Hence, it should show which of the square or hexagon shapes
should be the most accurate. The variation of (x) within the cell is:
(x) = ()
P
+ (x x
P
) (3.91)
When in Eqn. (3.80) is substituted with Eqn. (3.91), the following ex-
pressions for the truncation errors result.
e
convSquare
=
1
8
l
3
F cos n
3
e
::
1
8
l
3
F sin n
3
n
:: . (3.92)
e
convHexagon
=
1
8
l
3
F cos

3
2
(n
3
ne
+n
3
nw
) ::

1
8
l
3
F sin (n
3
n
+
1
2
n
3
ne

1
2
n
3
nw
) :: . (3.93)
64 Finite Volume Discretisation
In order to determine which type of mesh is the most accurate the problem
is simplied such that

3

x
3
= constant while all other components of
are zero. The velocity U is at angle = 0. When the above is inserted in
Eqs. (3.92) and (3.93) there results:
e
convSquare
=
1
8
l
3
F

3

x
3
, (3.94)
e
convHexagon
=
9
64
l
3

x
3
. (3.95)
For the same number of cells in the domain the area of the square cell is equal
to the area of the hexagon. From there it follows that:
l
hexagon
=
2

3
3
l
square
. (3.96)
By knowing the ratio between l
hexagon
and l
square
, Eqn. (3.96) the ratio between
the errors is:
e
convHexagon
e
convSquare
= 1.155. (3.97)
Eqn. (3.97) shows that the error on the hexagonal mesh is expected to be
higher than for the square mesh. The reason for this lies in a fact that hexagons
always have more faces with non-zero mass uxes than the square such that
the sum of errors committed on those faces is larger than for the square.
3.6.2 Diusion Term
The accuracy of the diusion term discretisation on dierent types of meshes can
be performed by comparing the truncation errors dened by Eqn. (3.56). In order
to simplify the analysis, the uid density and the diusion coecient are assumed
to be constant, i.e. :
= constant.
= constant.
This makes the error arising from interpolation of onto the cell faces equal to
zero; and the only remaining error comes from the approximation of surface normal
3.6 Discretisation Errors on dierent types of meshes 65
gradients, Eqn. (3.48):
e
diff
=

f
()
|S|
cos
N
|d|
2
(2f
x
1)

d
2
: ()
f

f
()
|S|
6 cos
N
|d|
2
_
(1 f
x
)
3
+f
x
3
_

d
3
:: ()
f

f
()|S| tan
N
|d|
2
2
f
x
(1 f
x
)

k (

d
2
: ()
f
), (3.98)
This will now be evaluated for the dierent mesh types.
Square Mesh. For the conguration depicted in, Fig. 3.7, the magnitude of
the surface vector is:
|S| = l. (3.99)
Noting that |d| = l,
N
= 0 and f
x
= 0.5, the truncation error can be written:
e
diffHex
=
1
24
()|S|l
2
(n
3
e
:: ()
e
)

1
24
()|S|l
2
(n
3
w
:: ()
w
)

1
24
()|S|l
2
(n
3
n
:: ()
n
)

1
24
()|S|l
2
(n
3
s
:: ()
s
)
=
1
24
()|S|l
2
_
n
3
e
:: (()
e
()
w
)

1
24
()|S|l
2
_
n
3
n
:: (()
n
()
s
)

(3.100)
Equilateral Triangular Mesh. The truncation error for this cell type is:
e
diffTri
=
1
24
|S|l
2
_
n
3
e
:: ()
e
+n
3
w
:: ()
w
+n
3
s
:: ()
s

,
(3.101)
where |S| =

3l.
Equilateral Hexagonal Mesh.
e
diffHexagon
=
1
24
()|S|l
2
_
n
3
n
:: (()
n
()
s
)

1
24
()|S|l
2
_
n
3
ne
:: (()
ne
()
sw
)

1
24
()|S|l
2
_
n
3
nw
:: (()
nw
()
se
)

(3.102)
where |S| =

3
3
l.
66 Finite Volume Discretisation
Split-Hexahedron Mesh.
e
diffSplitHex
=
1
24
|S|l
2
_
n
3
n
:: (()
n
()
s
)

1
24
|S|l
2
n
3
e
:: ()
e

1
48
|S|
l
2
cos
3

N
_

d
3
nw
:: ()
nw
+

d
3
sw
:: ()
sw
)
_

1
16
|S|
l
2
sin
N
cos
3

N
_

k
nw
(

d
2
nw
: ()
nw
)
_

1
16
|S|
l
2
sin
N
cos
3

N
_

k
sw
(

d
2
sw
: ()
sw
)
_
. (3.103)
Again, the comparison will be made for dierent forms of solution elds:
1. = constant. Eqs. (3.100), (3.101), (3.102) and (3.103) show that the
error is zero for all mesh types.
2. = constant. For such elds, exact solutions are produced on meshes
consisting of squares Eqn. (3.100) and hexagons Eqn. (3.102). The truncation
errors for the triangular and split-hexahedral meshes are, respectively:
e
diffTri
=
1
24
|S|l
2
_
(n
3
e
+n
3
w
+n
3
s
) :: ()

, (3.104)
e
diffSplitHex
=
1
24
|S|l
2
_
(n
3
e
+

d
3
nw
+

d
3
sw
2 cos
3

N
) :: ()
_

1
16
|S|
l
2
sin
N
cos
3

N
_

k
nw
(

d
2
nw

d
2
sw
) : ()
_
. (3.105)
The above errors are a consequence of the fact that these types of cells have an
odd number of faces, some of which are not paired; thus the error committed
on them cannot cancel out. For example, third rank tensor (n
3
e
+n
3
w
+n
3
s
) in
Eqn. (3.104) is not a zero tensor. On the contrary, cell face pairs make the sum
of those tensors equal to zero, i.e. (n
3
n
+ n
3
s
) = 0 in Eqs. (3.100) and (3.102).
Non-orthogonality increases the error because (

d
2
nw

d
2
sw
) in Eqn. (3.105) is
not a zero tensor because

d
nw
and

d
sw
are not parallel.
3. = constant. Exact solutions for this type of problem cannot be
obtained on any mesh type. The variation of (x) within the domain is:
(x) = ()
P
+ (x x
P
) . (3.106)
3.7 Solution of Linear Equation Systems 67
The error for the square cell reads:
e
diffSquare
=
1
24
|S|l
3
(n
4
e
+n
4
n
) ::: , (3.107)
and the error for hexagon can be written:
e
diffHexagon
=
1
24
|S|l
3
(n
4
ne
+n
4
n
+n
4
nw
) ::: . (3.108)
In order to get an insight into the error behaviour on such problems, the
problem is simplied to

4

x
4
= constant while all other components of
are zero. By inserting this into Eqs. (3.107) and (3.108), there results:
e
diffSquare
=
1
24
()|S|l
3

x
4
, (3.109)
e
diffHexagon
=
1
24
()l
3
9
8

x
4
. (3.110)
By comparing Eqs. (3.109) and (3.110) on meshes with the same number of
cells there results:
e
diffHexagon
e
diffSquare
= 1.155. (3.111)
This is the same result as the one obtained for the convection term.
The results of the analysis lead to conclusion that cell shapes with paired faces
should be used whenever possible. Such cells have the number of symmetry planes
equal to the number of face pairs which cancel the error. Taking all of the above into
account suggests that square is the best possible shape from the aspect of accuracy
followed by a hexagon, a triangle and a split-hexahedron.
3.7 Solution of Linear Equation Systems
Discretisation produces systems of algebraic equations equal in number to the prod-
uct of the numbers of cells and dependent variables. The equations may be linear
or non-linear, according to the nature of the parent dierential equations. When
the equations are non-linear they can be linearised in some manner and then solved
as for linear problems, but in an iterative or time-marching fashion. Solution of the
algebraic systems is the most time consuming part of the CFD analysis [48, 79].
The system of linear algebraic equations can be written [47]:
a
P

P
+

N
a
N

N
= Q
P
. (3.112)
68 Finite Volume Discretisation
There are two main classes of solution algorithms.
Direct methods provide a solution of the system in a xed number of oper-
ations. The most popular methods of this type are: Thomas algorithm (TDMA),
Gauss Elimination, LU decomposition [47]. They are appropriate for small systems
as the number of required operations increases rapidly with the number of equa-
tions, except in case of TDMA for which it increases linearly. Memory requirement
for direct methods also increases with the number of equations squared making this
approach even less attractive for large systems.
Iterative methods start from an initial solution and improve the solution until
the error tolerance imposed by the user is met. In CFD applications, discretisation
and modelling errors are generally larger than the machine accuracy and it is not
necessary to solve the system exactly, making iterative methods very attractive.
However, these solvers impose some conditions on the structure and characteristics
of the matrix. Matrices resulting from the FV discretisation process are sparse,
with most coecients equal to zero. The memory requirement for such matrices can
be reduced if the solver can preserve the sparseness of the matrix. Some iterative
methods preserve sparseness, making their use even more attractive.
Some iterative solvers require the matrix to be diagonally dominant in order
to guarantee convergence. Diagonal dominance occurs if the diagonal coecient is
equal to the sum of magnitudes of the o-diagonal coecients for every equation,
with at least one diagonal coecient greater than the sum of magnitudes of non-
diagonal terms [133]. Diagonal dominance can be increased by under-relaxation.
The dominant diagonal coecient can be calculated as follows [69]:
a
P
= max(a
P
,

N
|a
N
|). (3.113)
After some algebra the under-relaxed system can be written as:
a
P


n
P
+

N
a
N

n
N
= Q
P
+ (
a
P

a
P
)
o
P
, (3.114)
where 0 < < 1 is the under-relaxation factor,
o
P
represents the value from the
previous iteration and
n
P
is the new value of the eld. When the system has
converged to its solution the additional terms cancel out as (
n
P
=
o
P
). Under-
relaxation is not used for transient calculations as the transient term enhances the
diagonal dominance of the matrix and has the same eect as under-relaxation.
3.8 Solution Algorithm for the Navier-Stokes System 69
In this study the Conjugate Gradient (CG) based methods are used to solve the
system of algebraic equations. This method was proposed by Hestens and Steifel
[59]. For symmetric matrices the Incomplete Cholesky preconditioned Conjugate
Gradient (ICCG) is used, described in detail in [67]. Bi-CGSTAB by van der Vorst
[147] is the solver used for asymmetric matrices.
3.8 Solution Algorithm for the Navier-Stokes Sys-
tem
The discretisation of all terms in the general transport equation, Eqn. (2.32), have
been described in the preceeding sections. The same principles apply to the terms
of the Navier-Stokes equations with some additional problems which require further
treatment.
The system of N-S equations is dependent on the pressure through the pressure
gradient term in the momentum equation but the pressure lacks its own equation.
If the ow is compressible the continuity equation can be used to obtain the density
eld which can be used to calculate the pressure from an equation of state. On the
contrary, for incompressible ows the continuity equation becomes an additional
constraint on the velocity eld. A way to overcome this diculty is to construct the
pressure eld such that velocity satises the continuity equation. This is done by
modifying the continuity equation into an equation for pressure [47].
3.8.1 Pressure Equation
Derivation of the pressure equation for the collocated variable arrangement [47, 119]
will be presented in this section.
The pressure equation will be derived by using the incompressible isothermal
N-S equations as the model, which read:
U
t
+ UU U = p, (3.115)
U = 0, (3.116)
where and p are the kinematic viscosity and the kinematic pressure, respectively.
Temporal discretisation is performed using some implicit temporal scheme, such as:
_
t+t
t
f(t, U(x, t)) dt = (1 C)tf(t, U(x, t
o
)) +Ctf(t, U(x, t
n
)), (3.117)
70 Finite Volume Discretisation
where dierent values of C can recover temporal schemes dened in Section 3.4.
When the momentum equation is approximated by using Eqn. (3.117) and the dis-
cretisation procedures for spatial terms described in the preceeding sections are
applied, there results:
(U
n
P
U
o
P
)V
P
+Ct
_

f
F
n
U
n
f

f
(S U)
n
f
+p
n
V
P
_
+ (1 C)t
_

f
F
o
U
o
f

f
(S U)
o
f
+p
o
V
P
_
.
The above equation can be written [68]:
a
n
P
U
n
P
= H(U) p
n
, (3.118)
where H(U) includes all terms apart from the pressure gradient at the new time
step and the diagonal term a
n
P
U
n
P
where the subscript n represents the new time
level.
The continuity equation is discretised as follows:

f
S U
f
= 0, (3.119)
and is enforced for every time step. By interpolating U
P
obtained from Eqn. (3.118)
onto the cell faces and inserting it into Eqn. (3.119) there results:

f
S
_
H(U)
a
n
P
_
f

f
_
1
a
n
P
_
f
(S p
n
)
f
= 0. (3.120)
The term (Sp
n
)
f
is evaluated using Eqn. (3.48) to ensure strong coupling between
the velocity and pressure as originally proposed by Rhie and Chow procedure [129].
The terms
_
H(U)
a
n
P
_
f
and (
1
a
n
P
)
f
are interpolated onto the face by using Eqn. (3.12),
which is second-order accurate. If the interpolation is not second-order accurate, it
may result in unboundedness of the pressure eld [86, 119]. The pressure equation
can be written in a dierential form, thus [68]:

_
1
a
P
p
_
=
_
H(U)
a
P
_
. (3.121)
The mass ux through a cell face can be obtained by using Eqn. (3.120) as follows
[68]:
F = S
_
_
H(U)
a
P
_
f

_
1
a
P
_
f
(p)
f
_
. (3.122)
3.8 Solution Algorithm for the Navier-Stokes System 71
Eqn. (3.122) ensures that the face uxes satisfy the continuity equation if the pres-
sure equation is satised. Even though the continuity is satised, face uxes may be
under or over predicted as a consequence of approximations used for dierent terms
in Eqn. (3.122). Therefore, the mass ux error comes from interpolation of
H(U)
a
P
,
1
a
P
and from the evaluation of (S p)
f
. This can be written in the following form:
F = S
_
H(U)
a
P
+e
interpolation
(
H(U)
a
P
)
_
f

_
1
a
P
+e
interpolation
(
1
a
P
)
_
f
(S p +e
snGrad
(S p))
f
= S
_
H(U)
a
P
_

_
1
a
P
_
f
(S p)
f
+e
flux
(3.123)
where e
flux
from Eqn. (3.123) has the following form:
e
flux
= S e
interpolation
(
H(U)
a
P
)
_
1
a
P
_
f
e
snGrad
(S p) e
interpolation
(
1
a
P
)(S p)
f
e
interpolation
(
1
a
P
)e
snGrad
(S p). (3.124)
Here
e
interpolation
(
H(U)
a
P
) is the error originating from the interpolation of
H(U)
a
P
.
e
interpolation
(
1
a
P
) is the error in the interpolation of
1
a
P
.
e
snGrad
(S p) is the error in the pressure surface normal gradient approxi-
mated by Eqn. (3.48).
The truncation errors for interpolated terms and the surface normal gradient are
given by Eqn. (3.21) and Eqn. (3.54), respectively. e
flux
is dependent on the error in
the pressure surface normal gradient e
snGrad
(S p), thus the inuence of pressure
on mass uxes may be large in the regions where the approximation of (S p)
f
is
not accurate. This error reduces with mesh renement and is second-order accurate
on uniform meshes, for which f
x
= 0.5 in Eqs. (3.54) and (3.21), but it becomes
rst-order accurate when the mesh is not uniform due to the pressure surface normal
gradient which becomes rst-order accurate on non-uniform meshes.
3.8.2 Algorithms for Pressure-Velocity Coupling
The pressure and momentum equations dened in Eqs. (3.118) and (3.120) are non-
linear, because the a
P
and H(U) depend on the velocity eld. This non-linearity can
72 Finite Volume Discretisation
be resolved using an iterative procedure. When high temporal accuracy is required
the equations must be solved iteratively within each time step until the solution
is satised to the desired tolerance. Steady ows can be solved by iterating the
steady-state equations until the tolerance is met.
The most widely used approach for solving coupled equations is the segregated
approach where equations are linearised and solved in sequence one after another
[66, 113, 114]. These algorithms have gained popularity within the CFD community
and are regarded as the best compromise between accuracy and computational cost
[47]. One of the most widely used algorithms based on this approach is SIMPLE
[113, 114] which will be presented next.
The SIMPLE Algorithm
The SIMPLE algorithm is widely used for steady-state calculations. SIMPLE stands
for Semi-Implicit Method for Pressure-Linked Equations. It consists of the following
steps:
1. Momentum predictor. The velocity eld is calculated from the momentum
equation by using the pressure and velocity from the previous iteration or an
initial guess [114]. The equation is under-relaxed, using an under-relaxation
factor
U
, (0 <
U
< 1), to reduce the inuence of non-linearity and to
increase the diagonal dominance of the matrix. The resulting velocity eld
does not necessarily satisfy the continuity equation.
2. Pressure solution. The pressure equation is formulated using the predicted
velocities and then solved to obtain the new pressure eld.
3. Velocity correction. Using the new pressure eld, a new eld of conserved
uxes is calculated using Eqn. (3.122). The associated velocity eld which
satises continuity is calculated from Eqn. (3.118), but it will not satisfy the
momentum equation until the overall process has converged. The solution of
the pressure eld is under-relaxed to minimise the eect of non-linearity [68]:
p
new
= p
old
+
p
(p
p
p
old
). (3.125)
Here p
p
is the solution of the pressure equation, p
old
is the solution from the
previous iteration or an initial guess. p
new
stands for the pressure eld which
3.9 Summary and Conclusions 73
will be used in the next iteration and
p
is the pressure under-relaxation
factor with limits 0 <
p
< 1.
4. The procedure is stopped if the solution has converged; otherwise it is repeated
from Step 1.
The energy and turbulence equations described in Chapter 2 are solved after
step 3, using the corrected uxes and velocities.
3.9 Summary and Conclusions
This chapter has presented a second-order accurate FV discretisation practice to-
gether with the errors which may arise during the discretisation process. It has been
shown that the accuracy is dependent on the mesh quality and it reduces with the
increase of skewness and/or non-orthogonality. Analysis of errors on dierent type
of cells has shown that cell shapes which have face pairs are expected to give better
accuracy because the errors committed on the faces of the face pair cancel them-
selves out. It was also shown that the discretisation of the surface normal gradient
becomes rst-order accurate when the mesh is not uniform and it is therefore ad-
visable to keep the mesh as uniform as possible, especially for diusion-dominated
problems. The mass ux, Eqn. (3.122), is dependent on pressure and the inuence
of pressure reduces as a second-order accurate error on uniform meshes while it
becomes a rst-order error on non-uniform ones.
74 Finite Volume Discretisation
Chapter 4
Error Estimation
4.1 Introduction
In the previous chapter the Finite Volume Discretisation has been described. A new
estimator of the discretisation error in the FV solution, developed during this study,
will be presented in this chapter.
Before any judgement on the quality of error estimators can be given, it is neces-
sary to dene their desired properties. The properties required for an error estimator
are described by Jasak [68]:
1. It should provide a reliable information about the error distribution and its
magnitude.
2. The absolute value of the estimated error should have the dimensions of the
eld it is applied to, so that it is easily understood.
3. It has to work well on meshes which may be too coarse for adequate resolution.
4. It should be applicable to the various kinds of transport equations encountered
in CFD.
5. The estimated error should tend asymptotically to the exact error with mesh
renement.
6. The error estimator should modestly overestimate the error.
7. The cost of error estimation should not be too large.
75
76 Error Estimation
The Eectivity index is a measure of the quality of error estimation and is
dened as:
=
|e|
|E|
(4.1)
where e is the estimated disretisation error and E is the exact discretisation error in
the solution. From Eqn. (4.1) it is clear that it is desirable to have eectivity indices
close to unity from above. Eectivity indices can be assembled on a cell-by-cell basis
or evaluated globally for the whole domain.
The remainder of this chapter is organised as follows. A literature survey of pre-
vious studies is given in Section 4.2. An analysis of errors on mesh faces, performed
in this study, will be presented in Section 4.3. The result is a new error estimator
called the Face Residual Error Estimator (FREE) described in Section 4.4.
The performance of FREE is tested in Section 4.5 on a set of cases for which
analytical solutions are available.
Some closing remarks are given in Section 4.6.
4.2 Literature Survey
Error detection can be performed by using error indicators which can pinpoint the
regions where better resolution is needed, but they do not provide information about
the error magnitude. Error indicators which monitor pressure and/or density gra-
dients give useful information for problems with discontinuous features (i.e. shocks)
where ne resolution is needed around them [2, 122, 151], but they may fail to pro-
vide useful information when the solution varies smoothly [151]. The Cell Reynolds
number can also be used to provide information about where better resolution is
needed to suppress spurious oscillations from the CD convection scheme [41].
Error estimators provide additional information, namely the error magnitude,
which is important when judging the quality of the solution. A review of error
estimation methods used in the FEM will be given rst, followed by the methods
used in the FVM.
4.2.1 Methods Used in FEM Analysis
A summary of the error estimation methods used in FEM is given by Ainsworth
and Oden in [6]. They can be divided into three major groups:
4.2 Literature Survey 77
1. Gradient recovery estimators are based on an approach of obtaining a
continuous approximation of the solution gradient from the solution obtained
by the FEM calculation. The dierence between the continuous solution gra-
dient, evaluated using a higher-order technique, and the discontinuous FEM
solution gradient is then used as an error estimator.
Error estimates of this kind were proposed and introduced by Zienkiewicz and
Zhu. In [162] they presented a technique for calculating the continuous approx-
imation of stresses in an elastic body by using the linear variation operator
for the stresses. After the improved solution is known it is compared with
the stresses calculated from the FEM solution to compute the errors. Further
research of the above error estimation technique was described in [163, 164]
where Zienkiewicz and Zhu have shown that the higher order variation of the
solution should be computed in the Gauss points, where the convergence of
the solution is one order higher than the discretisation.
2. Explicit residual error estimates. Early work on estimates of this type
was presented in [15] by Babuska and Rheinboldt, who proposed an estimator
where the residual is weighted by a normalisation factor to give the error
bound. Sandri in [132] derived explicit error estimates for the non-Newtonian
uids governed by the power law stress model.
The accuracy of Explicit Residual Estimators is unsatisfactory as they tend
to substantially over-estimate the error [6]. This approach has been improved
and extended to the FVM by Jasak [68] by making the normalisation factor
dependent on FV uxes, which improved the eciency of the estimate.
3. Implicit residual error estimates require the solution of a local problem
posed on each element or a patch of elements. The solution of the local
problem provides the approximation of the discretisation error in some norm.
Examples of this approach can be found in [1, 17, 18, 76, 105, 126, 127] and
many more.
Equilibrated residual error estimates are a group of implicit methods which
require that the internal error uxes and the boundary error uxes are con-
served. Equilibrated error estimators have been studied in [35, 7, 8, 107, 108]
and shown to produce good estimates of the discretisation error. In [80] Kelly
78 Error Estimation
has discussed the issue of ux equilibration for the implicit error estimates.
He has also shown that non-equilibrated uxes result in over-estimation of
the error. This approach has been extended to the FVM by Jasak [68] where
it tends to under-estimate the error because of the limited accuracy of the
method used to solve the local error problem.
4.2.2 Methods Used in FV Analysis
Error estimation techniques used in the FV framework can be divided into four main
groups:
1. Truncation analysis. Every smooth solution can be written in a form of a
Taylor series expansion about a given point in space. The series is potentially
innite depending on the number of non-zero gradients, thus:
(x) =
P
+

n=1
1
n!
(x x
P
)
n
::
..
n
(..
. .
n
)
P
. (4.2)
The FVM approximates the solution by using a truncated form of the Taylor
series. The error in the solution is then equal to the sum of truncated terms:
e(x) = (x) (x) =

n=p
1
n!
(x x
P
)
n
::
..
n
(..
. .
n
)
P
, (4.3)
where p is the order of discretisation. The error can be estimated by approxi-
mating higher gradients from the existing FV solution and inserting them into
Eqn. (4.3).
One of the rst error estimation techniques used in the framework of the FVM
is Richardson Extrapolation (RE). Examples can be found in [23, 46, 68, 101]
etc. The RE method requires the existence of solutions of the problem on two
or more meshes with dierent cell sizes to estimate the leading term of the
truncation error by solving the system:
(x)
1
(x) = C h
p
1
,
(x)
2
(x) = C h
p
2
, (4.4)
where C h
p
i
is the leading term of the truncation error, (x) is the unknown
exact solution and
i
(x) is the FV solution on a mesh with density h
i
. h
i
is
dened as a ratio between the volume and area of the cell [68]:
h
i
=
V

f
|S|
. (4.5)
4.2 Literature Survey 79
By solving the system in Eqn. (4.4), C and (x) can be obtained and the error
can be expressed as follows:
e = |(x)
2
(x)| =
|
2
(x)
1
(x)|
_
h
1
h
2
_
p
1
. (4.6)
This is not a reliable method because it generally under-estimates the error,
especially if the ner mesh is still coarse [68, 95]. Another drawback is the
fact that it requires two solutions which make it time consuming.
Methods which can estimate the error by using a single solution obtained on
a single mesh started appearing relatively recently [10, 39, 55, 63, 68, 70,
138, 159], etc.. A method for the rst-order accurate FVM discretisation
presented by Ilinca et al. in [63] estimates the error as the dierence between
the computed solution, assumed to be of constant value within the CV, and a
reconstructed linearly-varying solution, thus:
e =

_
V
P
[(
P
+ (x x
P
) ()
P
)
P
]
2
dV
=

_
V
P
(x x
P
)
2
dV : ()
2
P
=
_
M : ()
2
P
, (4.7)
where M is the moment of inertia of the CV and ()
P
is the reconstructed
gradient at the node P. The estimator accounts for the ow physics through
the gradient of and it also accounts for the size and shape of the control
volumes through the moments of inertia. The same approach was followed by
Jasak in [68, 70] where the error is estimated using the second-order term in
the Taylor Series and applied to second-order accurate FVM:
e =
1
2
_
V
P
[(x x
P
)
2
: ()
P
] dV
=
1
2
M : ()
P
, (4.8)
where ()
P
is calculated from the available solution. This estimator tends
to under-estimate the error when the computational mesh is coarse because
the higher-order terms neglected by the estimator are still of considerable
importance.
80 Error Estimation
An interesting method for error estimation based on truncation analysis can
be found in [10, 39, 55, 138]. The error is computed on mesh edges as follows:
e =
_
l
0
_
s(l)
T
H(l)s(l) dl (4.9)
where s(l) is parametric representation of the edge and

H(l) is a modied
Hessian obtained from the second gradient. The estimator is used to drive a
mesh adaptive algorithm aimed at equidistributing the error over every edge
in the domain.
An approach to error estimation where the convection and diusion uxes
are calculated using a fourth-order scheme and compared with the ones from
the second-order accurate FV solution was presented by Muzaferija et al. in
[101, 102]. The source of the truncation error
P
is dened as:

P
=

f
[(U S)
f
(
h
f

f
) ()
f
((S )
h
f
(S )
f
)] (4.10)
where
h
f
and (S )
h
f
are evaluated from the FV solution using a fourth-
order scheme while
f
and (S )
f
are known from the FV discretisation
process. The authors assumed that
P
serves as a source which can be added
to the discretised form of the governing dierential equation in order to obtain
the exact solution. This method under-estimates the error and is even less
accurate than Richardson Extrapolation because it cannot detect non-local
phenomena. A similar approach to error estimation developed for hyperbolic
equations, for which the error may manifest itself away from its source, was
presented by Zhang et al. in [159]. The source term of the error equation
consists of the higher order truncated terms which are evaluated from the
existing solution. The estimated errors are in good agreement with the exact
errors in terms of their locations but the magnitudes are under-estimated. It
has also been shown that an ecient grid adaptation can be achieved using
the estimated error source to drive the adaptive algorithm instead of the error
distribution itself, especially on cases where the error is convected away from
its source.
2. Methods based on derived quantities of the solution variable. The
second group of estimators used in the FVM framework was derived upon a fact
that the discretisation schemes enforce conservation of the primary quantities
4.2 Literature Survey 81
for which the equations are being solved, regardless of the mesh resolution, but
none of them conserve their derived properties (i.e. kinetic energy (
1
2
UU) and
angular momentum (x U) are derived from velocity) except when the mesh
is suciently ne. Haworth et al. [57] presented a method which measures
cell-to-cell imbalances of the angular momentum and kinetic energy in order
to characterise the solution error. The imbalance of kinetic energy can be
written:
Res(
1
2
U U) = ((
1
2
U U)U) + (P U) P U
+
_
2
3
( U) U
_

_
U+ (U)
T
_
U

+U :
_

_
U+ (U)
T
_
+
_
2
3
U
_
I
_
, (4.11)
and the imbalance of angular momentum can be written as follows:
Res(x U) = [(x U)U] x ( ) (x g), (4.12)
where all elds are known from the FV solution and the terms are evaluated
using the same approximation as the ones used for the FV solution. The
drawback of the method is that it is not capable of estimating the absolute
error levels in the velocity eld. Jasak [68] generalised the same approach and
made it capable of estimating absolute error levels. The error is estimated by
calculating the imbalance in the transport equation for the second moment of
dened as m

=
1
2

2
. The equation for the second moment can be obtained
by multiplying the general transport equation Eqn. (2.32) with , thus [68]:
Res(m

) =
_

P
[ (Um

) (

) S

() +

(.)] dV.
(4.13)
The values of all elds in the above equation are known and the imbalance is
calculated using the same approximation as the ones used for FV equations.
Multiplying Eqn. (4.13) with a normalisation factor enables recovery of the
error magnitude, thus:
e = 2

|Res(m

)| T
trans
V
P
. (4.14)
V
P
is the cell volume and T
trans
is the characteristic time scale of m

dened
as:
T
trans
=
h
2
|U| h +

, (4.15)
82 Error Estimation
where h is a cell size dened in Eqn. (4.5), |U| is a transport cell velocity and
is the diusion factor. A problem with this error estimator is its inaccuracy
on ne meshes. This is due to the higher order of variation of the second
moment. The transport equation for the higher moment has to be discretised
in a higher-order manner than the transport equation for the property to scale
the errors correctly. It may happen the error estimate indicates the error exists
even if it is zero. This undesired behaviour is the most severe in the regions
where the variation of the variable is modest while in the regions of steep
gradients it does not have a signicant inuence on the estimated error.
3. Residual methods for error estimation in the FV analysis have their origin
in similar work in the Finite Element eld. In the FVM the concept of residual
error estimation has been introduced by Jasak [68] and Angermann [12, 13].
The residual is a function measuring how well are the governing dierential
equations approximated over the computational cell and is dened as [68]:
Res() = SuV
P
+Sp
P
V
P

f
F
f
(
P
+ (x
f
x
P
) ()
P
) +

f
()
f
(S
f
()
P
), (4.16)
where all elds are known from the available FV solution. The residual is
consistent with the discretisation practice and is zero when the solution varia-
tion is linear. It does not give information about the error magnitude directly
because of its dierent dimension from . Jasak [68] has proposed a normali-
sation practice to extract the magnitude of the error from the residual which
consists of the convection and diusion transport coecients and the linearised
part of the source term Sp, thus:
F
norm
=

f
max(F, 0) +

f
_
|S|
(

)
f
|d|
_
+SpV
P
. (4.17)
and the error is calculated from:
e =
Res()
F
norm
(4.18)
The normalisation practice assumes rst-order accurate UD discretisation of
the convection term, the rst term on the r.h.s. in Eqn. (4.17), which en-
sures that the convection contribution to the normalisation factor is always
positive. This has an adverse eect on the accuracy of error estimation espe-
cially on meshes with insucient resolution where it may result in an incorrect
4.3 Error Transport Through a Face 83
distribution of the discretisation error. In [12] Angermann described a local
a posteriori error estimates for convection-dominated problems. In [13]
Angermann et al. the method was modied for density-driven time dependent
problems. The proposed estimate is assembled from four parts which repre-
sent the local indicators. The full error estimate is dened as a sum of local
error indicators. The rst indicator is the residual and the other indicators
account for the imbalance of convection uxes over the computational cell.
This method is not easy to understand and it does not measure the absolute
value of the error. It is also not accurate enough for engineering application
because of severe over-estimation of the error.
4. The Equilibrated residual method is a technique which was used rst
in the framework of FEM. Its extension to FVM was presented by Jasak in
[68, 74]. The method is not as successful as its FEM counterpart because the
procedure used for solving local problems is not accurate enough, especially
on coarse meshes.
Even though the FV error estimation has undergone a rapid development during
the last decade there is still some room for improvement. Truncation methods which
can estimate the error from a single solution have been developed, but they remain
prone to under-estimation of the error. Residual based methods are considered to
be the most promising group of methods and will be utilised in this study. In order
to be accurate, residual methods require conserved error uxes through the cell
faces and a reliable procedure for extracting the error magnitude from the residual.
The approach taken during this study is aimed towards developing an estimator on
mesh faces where balanced error uxes and the data needed for extraction of error
magnitude are available.
4.3 Error Transport Through a Face
The FV discretisation practice is conservative for each CV and is performed by
approximating uxes through the CV faces such that they are in balance with the
sources/sinks acting within the CV. The approximated uxes may contain errors
which are transported through cell faces and these errors inuence the accuracy in
the neighbouring cells.
84 Error Estimation
Due to the property of the FV discretisation, the general transport equation,
Eqn. (2.32), can have three equally valid solutions on every internal face: two ex-
trapolated from both sides of the face (
f
)
P
, (
f
)
N
, Fig. 4.1, and the interpolated
value onto the face
f
[68].
P N

( )
f
N
f
N
(
f
)
P

P
f
Figure 4.1: Inconsistency of the interpolated values on the face
The value on the face extrapolated from the cell P can be calculated using a
second-order accurate variation of in the cell, Eqn. (3.3), such as [68]:
(
f
)
P
=
P
+ (x
f
x
P
) ()
P
, (4.19)
while the value from the cell N can be obtained in the same manner as for the cell
P, thus:
(
f
)
N
=
N
+ (x
f
x
N
) ()
N
. (4.20)
The interpolated value on the face can be calculated using Eqn. (3.12) and the
gradients in the cells P and N can be evaluated using the second-order accurate
methods, Eqs. (3.24) and (3.28). When the variation of the solution is linear, the
gradients in the cells and on the face are equal and the extrapolated values (
f
)
P
and (
f
)
N
become equal to the interpolated value
f
resulting in the discretisation
error equal to zero [68].
A transport equation for error can be derived by substituting Eqn. (1.2) into the
transport equation Eqn. (2.32). For steady state conditions it reads:
_
V
P
(U(E(x) +(x))) dV
_
V
P
((E(x) +(x))) dV =
_
V
P
S

() dV.
(4.21)
4.3 Error Transport Through a Face 85
The transient term is omitted as the focus here is on the discretisation error arising
from the spatial terms. The terms can be reordered such that the terms known
from the FV solution are put on the right-hand side and denoted by Res(), and
the terms governing the error transport are put on the left-hand side. The transport
equation for error then has the form [6]:
_
V
P
(UE(x)) dV
_
V
P
((E(x))) dV = Res() (4.22)
where the residual term Res() on the right-hand side has the following form:
Res() =
_
V
P
[S

() (U(x)) + (((x)))] dV. (4.23)


The residual acts as a source for the error, Eqn. (4.22), and has the same form as
the transport equation Eqn. (2.32). Its approximated form reads [68]:
Res() = S

()V
P

f
F
f

f
+

f
()
f
(S )
f
. (4.24)
If the evaluation of
f
and (S )
f
terms in the residual is performed using same
procedures as for the convection Section 3.3.1 and the diusion term Section 3.3.2,
respectively, the residual is zero even though the error exists. This is a consequence
of conservation which is then satised. But
f
can also be approximated by us-
ing Eqn. (4.19) which is valid within the computational cell and (S )
f
can be
approximated by:
(S )
f
= (S
f
()
P
). (4.25)
When the variation of the solution is of higher-order than linear the residual evalu-
ated by using Eqn. (4.19) and Eqn. (4.25) [68]:
Res
P
() = S

()V
P

f
F
f
(
P
+(x
f
x
P
)()
P
)+

f
()
f
(S
f
()
P
), (4.26)
may not be equal to zero if the mesh is not suciently ne. Thus, it provides an
estimate of the magnitude of the error source in the computational cell. Regarding
the source term, the discretised source term Section 3.3 cannot be written as sum
over cell faces and its inuence on the discretisation error is neglected. The residual
is consistent with the discretisation practice and it is zero when the variation of
is linear. It is sensitive to the shape of the cells and should therefore capture the
mesh induced errors because the extrapolated values onto the faces are dependent
on (x
f
x
P
).
86 Error Estimation
As was shown by Ainsworth et al. [3, 8] and Jasak [68] the residual can be split
into a sum of partial face residuals from all the faces bounding the computational
cell, thus:
Res
P
() =

f
Res
P
f
(), (4.27)
where the partial face residual Res
P
f
() is dened as [68]:
Res
P
f
() = F
f
(
f
(
P
+(x
f
x
P
)()
P
))+()
f
((S()
P
)(S )
f
). (4.28)
Here,
f
represents the interpolated value on the face shown in Fig. 4.1 and (S )
f
is the surface normal gradient on the face calculated using Eqn. (3.48). The partial
face residual represents the imbalance in values and gradients on the face originating
from cell P Fig. 4.1, only. The partial face residual can detect how well is the
governing equation satised on the faces comprising the cell and can therefore give
information about the direction in which the error is transported.
When the left-hand side of Eqn. (4.22) is discretised in a second-order manner
for a representative cell, we get:

f
F
f
e
P
f

f
()
f
(S
f
(e)
P
f
) =

f
F
f
(
f
(
P
+ (x
f
x
P
) ()
P
)) +

f
()
f
((S ()
P
) (S )
f
)
(4.29)
from which it follows that:
e
P
f
=
f
(
P
+ (x
f
x
P
) ()
P
),
(S e)
P
f
= (S )
f
(S ()
P
). (4.30)
After some algebra a link between the error and the error in gradient on the face
can be found, thus:
e
P
f
= (x
f
x
P
) (e)
P
f
. (4.31)
From Eqn. (4.30) an interesting property of the error eld can be found. The error
can be transported in the opposite direction to the solution uxes, because from
Eqn. (4.30) it is clear that the convection F
f
e
P
f
and diusion (S
f
(e)
P
f
) error
uxes may have dierent signs from the uxes F
f

f
and ()
f
(S )
f
used to
approximate convection and diusion terms. The following section will show how
this can be used to develop an error estimate.
4.4 Face Residual Error Estimator 87
4.4 Face Residual Error Estimator
The estimator developed during this study follows the approach of Jasak [68, 73]
but is dened on the faces because the uxes used for normalisation of the residual
are available. Additionally, the estimator dened on the faces provides information
which faces largely contribute to the error. This can be used for anisotropic mesh
renement, see Chapter 5.
The partial face residuals, dened in the previous section Eqn. (4.28), provide
the information about the error ux through a face. But, for every internal face
there exist two partial face residuals from both sides of that face. The partial face
residual from the cell P has the form, Fig. 4.1:
Res
P
f
() = F
f
(
f
(
P
+ (x
f
x
P
) ()
P
)) + ()
f
_
(S
f
()
P
) (S )
f
_
(4.32)
and from the cell N:
Res
N
f
() = F
f
(
f
(
N
+(x
f
x
N
) ()
N
)) +()
f
_
(S
f
()
N
) (S )
f
_
.
(4.33)
When these partial face residuals from both sides of the face are summed, the full
face residual is obtained:
Res
f
() =Res
P
f
() +Res
N
f
()
=F
f
((
N
+ (x
f
x
N
) ()
N
) (
P
+ (x
f
x
P
) ()
P
))
+()
f
S
f
(()
P
()
N
).
(4.34)
Because Res
f
() is assembled from information in the adjoining cells, only, its cal-
culation is inexpensive and is unique for each face. On boundary faces the residual
is calculated using Eqn. (4.32) and is equal to the partial face residual for that face.
The face residual is dependent both on the mesh and the solution itself. De-
pendence on (x
f
x
N
) and (x
f
x
P
) make the residual sensitive to mesh density
and skewness. It becomes larger with the increase of mesh skewness. The solution
variables, (eg. S
f
(()
P
()
N
)) are also sensitive to mesh size because the
closer P and N the smaller is the dierence between the gradients at those nodes
but only if the solution is non-singular.
The face residual does not have the same dimension as the eld, so it is
necessary to introduce a normalisation procedure which enables extraction of the
error magnitude from the residual. The normalisation factor can be assembled using
88 Error Estimation
the information available at the face, namely the magnitude of the convection and
diusion transport coecients, thus:
F
conv
= |F
f
|,
F
diff
()
f
|S|
1
2
|x
N
x
P
|
,
F
norm
= F
conv
+F
diff
,
(4.35)
where F
f
and ()
f
are the same as in Eqs. (3.30) and (3.47), respectively. The
factor
1
2
in F
diff
is included to approximate the distances from the cell centre to
the face centre on both sides of the face as in Eqn. (4.31). The analysis of the
normalisation practice will be presented in the next section.
Finally, on the internal faces the Face Residual Error Estimator (FREE) is de-
ned as:
e
f
=
Res
f
()
F
norm
(4.36)
while on boundary faces it is calculated according to the type of boundary condition
imposed. Thus, for example:
e
f
=
_

_
0 on xed value boundaries
Res
P
()
F
norm
b
on other boundaries
(4.37)
where F
norm
b
is dened as:
F
conv
b
= |U S|
f
F
diff
b
= ()
f
|S|
|x
f
x
P
|
F
norm
b
= F
conv
b
+F
diff
b
(4.38)
4.4.1 Analysis of the Normalisation Practice
An analysis of the normalisation practice will now be presented term by term in
order to establish a link between the estimated face error and Eqn. (4.30). The
estimated face error will also be expressed in a form of truncation error, which
provides information about the scaling of the estimated error with mesh renement.
Convection Term
The face residual for the convection-dominated problems with no diusion can be
written:
Res
f
() = (U S)
f
((
N
+(x
f
x
N
) ()
N
) (
P
+(x
f
x
P
) ()
P
)). (4.39)
4.4 Face Residual Error Estimator 89
The estimated error is obtained by normalising the above residual, Eqn. (4.39), with
the convection part of the normalisation factor, Eqn. (4.35). The result is:
e
f
= sgn(U S)
f
[(
N
+ (x
f
x
N
) ()
N
) (
P
+ (x
f
x
P
) ()
P
)]
= sgn(F)
f
[(
N

f
+ (x
f
x
N
) ()
N
) (
P

f
+ (x
f
x
P
) ()
P
)]
= sqn(F)
f
[e
P
f
e
N
f
]
(4.40)
where sgn(F) is dened as follows:
sgn(F) =
_

_
1 F 0
1 F < 0.
(4.41)
e
P
f
and e
N
f
can be calculated from Eqn. (4.30). Eqn. (4.40) can be rewritten in a
form of truncation error by using the Taylor expansions in Eqs. (3.16) and (3.17),
thus:
e
f
=
P
+ (x
P
x
f
) ()
f
+
1
2
(x
P
x
f
)
2
: ()
f
+ (x
f
x
P
) (()
f
+ (x
P
x
f
) ()
f
)

N
+ (x
N
x
f
) ()
f
+
1
2
(x
N
x
f
)
2
: ()
f
(x
f
x
N
) (()
f
+ (x
N
x
f
) ()
f
)
=
1
2
[(x
N
x
f
)
2
(x
f
x
P
)
2
] : ()
f
=
1
2
[(2f
x
1) 2]|d|
2
(

d
2
: ()
f
), (4.42)
where f
x
is a linear interpolation factor dened in Eqn. (3.15), is a measure of
skewness, Eqn. (3.7) and d is a distance vector, Fig. 3.3. The estimator is consistent
with the second-order accurate discretisation practice and it is also sensitive to mesh
skewness. Eqn. (4.42) is the most similar to the truncation error for the CD scheme
and is expected to provide best results in that case. The truncation error for the
UD scheme, Eqn. (3.37), is rst-order accurate and it should not be used because it
may result in under-estimation of the error on ne meshes. Examples of such error
behaviour is shown by Jasak [68].
Diusion Term
The residual when convection is not present is:
Res
f
() = ()
f
S (()
P
()
N
). (4.43)
90 Error Estimation
The expression can be recast using F
diff
from Eqn. (4.35) and Eqn. (4.43) into
Eqn. (4.36) to give:
e
f
=
1
2
|x
N
x
P
|

d (()
P
()
N
)
=
1
2
|x
N
x
P
|

d [(()
P
()
f
) (()
N
()
f
)].
(4.44)
As in case of convection term, Eqn. (4.44) can be recast in a form of truncation
error, thus:
e
f

1
2
|x
N
x
P
|

d [
(()
f
+ (x
P
x
f
) ()
f
)
(()
f
+ (x
N
x
f
) ()
f
)]

1
2
|d|
2
(

d
2
: ()
f
)

1
2
|d
n
|
2
cos
2

N
(

d
2
: ()
f
) (4.45)
Eqn. (4.45) is consistent with the second-order discretisation practice as it is a
N P
d
n
d

N
f
Figure 4.2: Distance between points on non-orthogonal mesh
function of |d
n
|
2
which is the distance between the grid nodes in the direction of
normal vector Fig. 4.2. According to the discretisation practice for diusion term,
Eqn. (3.48), the relation between |d
n
| and |d| is:
|d| =
|d
n
|
cos
N
.
Eqn. (4.45) is not similar to the truncation error for the surface normal gradient,
Eqn. (3.54). The estimated error is proportional to the second gradient of while
Eqn. (3.54) shows that the error is proportional to the second gradient of and rst-
order accurate on non-uniform meshes while on uniform meshes it is second-order
4.5 Examples 91
accurate and dependent on the third gradient of . From there it follows that high
accuracy of error estimation cannot be expected for diusion-dominated problems
because the truncation errors are not consistent.
4.5 Examples
Tests of the face residual error estimator were performed on three cases where analyt-
ical solutions of the governing equations are available. The cases included diusion
and convection-dominated ones.
In order to test the order of the discretisation procedure and the error estimator,
the exact and the estimated errors are monitored with uniform mesh renement.
The quality of the error estimation is assessed in terms of the absolute magnitudes
of both the maximum and mean errors. The mean error can be monitored for
cell-based and face-based variables. For the cell-based variables the mean error is
calculated using:
e
meanCell
=

n
i=0
|e
i
|V
i

n
i=0
V
i
(4.46)
and for the face-based variables:
e
meanFace
=

n
i=0
|e
i
||S
i
|

n
i=0
|S
i
|
(4.47)
where |e
i
| represents the magnitude of the error for the i th face or cell and n is
a number of cells or faces in the mesh.
The values of the exact error magnitudes are calculated at the grid nodes and
plotted as cell values, where the cell colour corresponds to the error magnitude for
that cell. Estimated errors are also plotted as cell values, where the value in the cell
is the weighted average of the error on the faces forming the cell, thus:
e
cell
=

f
|e
f
||S
f
|

f
|S
f
|
. (4.48)
4.5.1 Planar Jet
In this test case, a uid enters a planar two-dimensional domain via a slot, forming a
jet, see Fig. 4.5. The solution of the Navier-Stokes equations, which can be found in
[111, 134], was derived by assuming the ow is incompressible with uniform pressure
and a small cross-stream velocity. The analytical solution for the axial velocity U
x
92 Error Estimation
has the form [111]:
U
x
=
A
B
x

1
3
sech
2
(
y
B
x

2
3
), (4.49)
and the cross-stream velocity component U
y
is given by:
U
y
=
1
3
Ax

2
3
tanh(
y
B
x

2
3
) +
2
3
A
B
yx

4
3
sech
2
(
y
B
x

2
3
) (4.50)
where
A = (
9
2
M
j
)
1
3
, (4.51)
B = (
48
2
M
j
)
1
3
, (4.52)
and M
j
= U
2
0
h is the jet momentum. The value of M
j
used for calculations is:
M
j
= 0.1 [m
3
/s
2
], (4.53)
and the kinematic viscosity is set to:
= 0.0012 [m
2
/s]. (4.54)
outlet B. C.
Point jet
U = infinity
U = 0
0.25m
0
.
1
m
inlet B. C.
X
Y
0.05m
Figure 4.3: Solution domain and boundary conditions for the jet
case
The computational domain and the boundary conditions used for this case are
shown in Fig. 4.3, where the left, top and bottom boundary were treated as inlet.
The velocities at those boundaries are set to values of the analytical solution. An
outlet was prescribed at the right boundary and the dynamic pressure is set to zero
there. The convection scheme is Central Dierencing (CD). Gradients of all variables
are evaluated by the Gauss Theorem. Eqn. (4.49) has a singularity at the origin of
the coordinate system, hence the domain was moved downstream in order not to
4.5 Examples 93
have the singularity within the domain. The coordinates of the bottom-left corner
of the domain were located at (0.05m, 0m) and the top-right corner was positioned
at (0.3m, 0.1m).
Figure 4.4: Starting mesh for the jet case (10 x 4 cells)
Figs. 4.5 and 4.6 show the velocity and pressure elds. The velocity and its gra-
dient are high in the region where the jet enters the domain and reduce downstream
due to the inuence of diusion. Fig. 4.6 shows that the pressure eld is not uniform
within the domain as was assumed during the derivation of analytical solution.
To examine the quality of error estimation on meshes with dierent cell size,
solutions were obtained on ve meshes. The starting uniform mesh had ten cells in
the streamwise direction and only four cells in the cross-stream direction, Fig. 4.4.
Subsequent meshes were constructed by halving the cell size in both directions.
Fig. 4.7(a) presents the exact velocity error magnitude eld on the 80 x 32 cells
mesh. The error is largest in the vicinity of the region where the jet enters the
domain, where the gradients of pressure and velocity are high. The estimated error
distribution obtained by using FREE is shown in Fig. 4.7(b). The locations of large
and small errors are in moderate agreement because the error is over-estimated.
The dierences are also caused by averaging of face errors, Eqn. (4.48) and by the
modelling error in the analytical solution. The latter originates from the neglect
of pressure gradients and other approximations introduced when developing the an-
alytical solution. Figs. 4.7(a) and 4.7(b) show that the maximum exact error is
downstream of the maximum estimated error. This is due to the pressure gradient,
Fig. 4.6, which is assumed zero in the analytical solution. The errors are large in the
region where the shear is dominant and are a result of diusion term discretisation.
94 Error Estimation
Figure 4.5: Velocity eld for the jet case [m/s] (80 x 32 mesh)
Figure 4.6: Pressure isobars for the jet case [m
2
/s
2
] (80 x 32 mesh)
4.5 Examples 95
(a) Exact error
(b) Estimated error
Figure 4.7: Velocity error eld for the jet case [m/s] (80 x 32
mesh)
96 Error Estimation
The behaviour of both maximum and mean error with uniform mesh renement
Planar Jet - Velocity Error
10
1
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Planar Jet - Velocity Error
10
1
10
2
10
3
10
4
10
5
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 4.8: Variation of errors with uniform mesh renement for
the jet case (|U
norm
| = 2.474m/s)
is shown in Figs. 4.8(a) and 4.8(b), respectively. The errors are normalised by the
maximum value of the velocity magnitude |U| = 2.474m/s and given as percentages.
Estimation of the mean velocity error is considered accurate on the rst four meshes
and becomes under-estimated on the nest mesh due to the modelling error in the
analytical solution. The maximum error, Fig. 4.8(a), is over-estimated. This can be
explained by looking into the truncation error for the diusion term, Eqn. (3.100),
which is dependent on the third velocity gradient on uniform meshes while the esti-
mator is dependent on the second gradient, Fig. 4.45. Unfortunately, the estimator
may therefore predict larger errors in the regions where the discretisation practice
can produce a more accurate solution.
4.5.2 Creeping Stagnation Flow
This test case was chosen for the purpose of testing the error estimator on a problem
where diusion is the main transport mechanism, i.e. for Re << 1 and is modelled
with the Stokes equations for creeping ows. It is a 2D problem where the uid
impinges vertically into a at wall forming a stagnation point, Figs. 4.9 and 4.10(a).
The analytical solution of the Stokes equations for this problem is [111]:
U
x
= x
1

p
y
y, (4.55)
U
y
=
1

p
y
y
2
2
, (4.56)
4.5 Examples 97
where
p
y
is uniform and here set to:
p
y
= 1 [m/s
2
] (4.57)
and its choice determines the velocities. The pressure gradient in the x-direction is
zero. The kinematic viscosity used in the calculations is:
= 1 [m
2
/s]. (4.58)
X
Y
1
m
1m
symmetry plane B. C.
noslip wall B. C.
Stagnation point
inlet B. C.
Figure 4.9: Solution domain and boundary conditions for the
stagnation ow
Calculations were performed on a square-shaped domain with a lower-left corner
located at the origin of the coordinate system and the upper-right corner positioned
at (1m, 1m), as shown in Fig. 4.9. The initial mesh consisted of twenty-ve cells,
ve in each direction, while the three subsequent ones were obtained by halving the
cell size in both directions.
The boundary conditions used for calculations are shown in Fig. 4.9. The values
of velocity on top and right boundaries are set to the match the analytical solution.
The exact velocity error is small and second-order accurate with mesh renement,
Figs. 4.11(a) and 4.12(a). The small error is a consequence of the fact that the second
velocity gradient is constant which can be resolved exactly by the discretisation
98 Error Estimation
(a) Velocity eld (m/s) (b) Pressure isobars (m
2
/s
2
)
Figure 4.10: Velocity and pressure for the stagnation ow (40 x 40
mesh)
(a) Exact error (b) Estimated error
Figure 4.11: Velocity error elds for the stagnation ow [m/s] (40
x 40 mesh)
4.5 Examples 99
practice, Section 3.6.2, so the main source of error in the solution is the evaluation
of the velocity surface normal gradients at the xed value boundaries (S U)
b
,
Eqn. (3.77). On the contrary, the FREE is sensitive to the second gradient of
velocity, Eqn. (4.45), which results in over-estimation of the error. This is the
reason why the estimated velocity error distribution, shown in Fig. 4.11, is in poor
agreement with the exact one, Fig. 4.11(a).
Stagnation - Velocity Error
10
1
10
2
10
3
10
4
10
-3
10
-2
10
-1
10
0
10
1
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Stagnation - Velocity Error
10
1
10
2
10
3
10
4
10
-3
10
-2
10
-1
10
0
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 4.12: Variation of errors with uniform mesh renement for
the stagnation ow (|U
norm
| = 1.107m/s)
The behaviour of the estimator is second-order accurate, as shown in Figs. 4.12(a)
and 4.12(b) where the maximum velocity magnitude used for normalisation is |U| =
1.107m/s. The estimator over-predicts both maximum and mean velocity error
because of the reasons given above.
4.5.3 Convection Transport of Heat with a Distributed Heat
Source
This case was designed for the purpose of testing the FREE on a convection-
dominated problem. It involves a temperature eld which changes due to convection
and heat source/sink, see Fig. 4.14(a). The problem is governed by the equation:
(UT) = Su(x, y).
where Su(x, y) is given below. The uid density is constant and equal to =
1kg/m
3
. The velocity eld U is uniform and at 45
o
to the mesh, Fig. 4.13.
The solution is a parabolic temperature prole:
T(x, y) = Ax(1 x)y(1 y) (4.59)
100 Error Estimation
Y
X
U
=
1
.4
1
4
m
/
s
1m
1
m
T fixed to analytical solution
gradient of analytical solution
gradient of T fixed to
Figure 4.13: Solution domain and boundary conditions for the
convection transport case
and the source term which generates the above prole is:
Su(x, y) = A
_
U
x
(y(1 y)(1 2x)) +U
y
(x(1 x)(1 2y))
_
, (4.60)
where U
x
and U
y
are the x and y velocity components, respectively, both 1 m/s.
The constant A is set to:
A = 16 [K/m
4
]. (4.61)
The exact solution and the corresponding source can be seen in Figs. 4.14(a) and
4.14(b), respectively.
Fig. 4.13 shows the numerical setup with the boundary conditions imposed on
the temperature eld. The convection dierencing scheme used for the calculations
is Gamma [68] with the factor
m
= 0.5.
Four meshes were considered for the analysis. The initial mesh had ve cells in
both x and y directions and the subsequent ones were generated by doubling the
resolution in both directions.
The exact error distribution, Fig. 4.15(a), is a consequence of the fact that the
Gamma interpolation scheme becomes Central Dierencing when the boundedness
criterion is satised, Section 3.3.1. For the CD scheme a central coecient in the
computational molecule is equal to zero on uniform meshes shown in Fig. 4.16, thus:
T
N
T
S
+T
E
T
W
= Su
2V
P
F
4.5 Examples 101
(a) Temperature eld (
o
C) (b) Source eld (
o
C/s)
Figure 4.14: Temperature and source elds for the convection
transport case (40 x 40 mesh)
(a) Exact error (b) Estimated error
Figure 4.15: Error elds for the convection transport case [
o
C] (40
x 40 mesh)
102 Error Estimation
where N, S, E and W are the neighbouring cells to the cell of interest whose
temperature is not present in the equation above.
X
Y
P E
N
W
S
Figure 4.16: Uniform mesh
Because of this, the cells with no boundary faces exchange information with their
second neighbours which results in a chequerboard error eld. Rows and columns
with small errors, Fig. 4.15(a), are initiated at the boundary due to the known
boundary information and they inuence the second neighbours while their rst
neighbours are inuenced by the opposite boundary.
A comparison of the exact and estimated error elds, Figs. 4.15(a) and 4.15(b),
shows moderate agreement. The error in the lower-left quadrant is not detected by
the estimator because it is generated by the source term discretisation which cannot
be detected by the estimator. This has caused under-estimation of the maximum
error, Fig. 4.17(a). The estimated mean error, Fig. 4.17(b), is in very good agreement
with the exact mean error curve. It is noteworthy that the rate of reduction of mean
and maximum errors is second-order accurate on ne meshes when the Gamma
interpolation scheme becomes CD.
Convection Transport - Temperature Error
10
1
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Convection Transport - Temperature Error
10
1
10
2
10
3
10
4
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 4.17: Variation of errors with uniform mesh renement for
the convection transport case (T
norm
= 1
o
C)
4.6 Summary and Conclusions 103
4.6 Summary and Conclusions
This chapter has presented a new method for error estimation on mesh faces, namely
the FREE, which has resulted from an analysis of discretisation errors on the mesh
faces. The FREE is of better accuracy on convection-dominated cases than on
diusion-dominated ones for which it over-estimates the error. The over-estimation
is caused by the fact that the FV approximation of the diusion term may be capable
of producing exact solutions even when the variation of the solution is of higher order
than linear, as shown in Section 3.6.2, while the estimated error is not zero when
the above is present. This undesirable behaviour could be avoided by modifying the
face residual for the diusion term such that its truncation error becomes consistent
with the truncation error for the diusion term.
The estimator will be further tested in Chapters 5 and 6 in conjunction with an
adaptive renement technique. In addition, the estimator will be tested in conjunc-
tion with an adaptive mesh generation scheme presented in Chapter 7.
104 Error Estimation
Chapter 5
Mesh Adaptation
5.1 Introduction
Problems of uid dynamics are rich in phenomena characterised by dierent length
scales which have an impact on the discretisation error. These scales require appro-
priate mesh resolution to achieve a solution of the desired accuracy. The estimated
error distribution can be used to control the distribution of cells in the mesh in order
to achieve the requested accuracy with the smallest cost. This chapter will present
a mesh adaptation technique developed during this study which uses the FREE.
The remainder of this chapter is organised as follows. A survey of existing
methods is given in Section 5.2. The method developed during this study will be
presented in Section 5.3. Examples can be found in Section 5.4. Concluding remarks
are given in Section 5.5.
5.2 Literature Survey
The mesh adaptation strategies can be grouped into four main groups, depending
on the type of changes imposed on the mesh and/or the discretisation practice, thus:
h-renement is a strategy where additional computational cells are inserted
in the regions of high error. Cells can also be removed from the regions of
small error using a coarsening procedure. The number of cells may increase
or decrease during the calculation process as a consequence of additions and
removals. The topology of the mesh changes during the adaptation process
to achieve a mesh with optimum cell distribution. Examples can be found
105
106 Mesh Adaptation
in Vilsmeier and H anel [150], Becker et al. [21], Ramakrishnan et al. [128],
Vijayan et al. [149], Erlebacher et al. [44], Chang et al. [35], Peraire et al.
[118], Mavriplis [97], Almeida et al. [11], Apel et al. [14] and many more.
r-renement keeps the number of cells and their topology constant but
changes their distribution in order to minimise the error. The fact that the
topology remains constant during the process makes this approach attractive
for block-structured meshes. However with this approach there is no guarantee
that the required accuracy can be achieved with the specied number of cells.
The approach may also cause severe distortion of the mesh and convergence
problems. Examples of this approach can be found in Ait-Ali-Yahia et al.
[10], Gnoo [54], Nakahashi et al. [103], Oden et al. [106], Dwyer et al. [42],
Tattersall et al. [141] and others.
p-renement refers to the group of methods which change the order of the
discretisation practice according to the error distribution. This approach is
particularly suitable for Finite Element calculations as the nature of the dis-
cretisation practice allows easy implementation of higher-order shape func-
tions. The p-renement method is not suitable for non-smooth solutions as
higher-order schemes are more prone to spurious oscillations in regions of steep
gradients than their lower order counterparts. Calculations using p-renement
have been presented by Zienkiewicz et al. [161], Demkowicz et al. [37], etc.
Composite methods. These methods combine two or more of the previously
mentioned methods. The most popular ones are hr methods Tam et al. [138]
and h p methods [162].
Reviews of mesh adaptation techniques can be found in [16, 56].
In the framework of h-renement methods, dierent ways of inserting and re-
moving cells have been suggested. They mainly dier regarding the type of mesh
and problems they are designed to work on. Early mesh renement techniques in
the FVM were used in conjuction with multigrid technique for solving systems of
algebraic equation i.e. [29, 145]. In [29] Brandt presented a technique to optimise
accuracy and minimise the computational work by changing the spatial discretisa-
tion and the order of approximation locally in the domain. Berger et al. [2224]
presented a technique based on inserting patches of ne mesh covering the regions
5.2 Literature Survey 107
of the domain where ner resolution is needed. Error estimation was performed by
using Richardson Extrapolation. In order to simplify implementation and apply a
safety margin, at the expense of error equidistribution, patches of rened mesh
were uniform, orthogonal and structured. Transfer of data between the overlapping
rened grids is facilitated through boundary conditions. Thompson et al. in [145]
used a similar methodology where renement was performed by using overlapping
meshes of increasing neness. The adaptation criterion is based on the truncation
error and systems of algebraic equations are solved using a multigrid technique.
Muzaferija [101, 102] has presented a renement method which works on poly-
hedral elements. The method is based on splitting of hexahedral cells into eight new
cells and updating a list holding information about the cells added into the domain.
Coarsening is performed by merging cells which were previously rened. The inter-
action between the rened parts of the mesh and its surroundings is facilitated by
using split-hexahedron cells. A split-hexahedron has a shape of a hexahedron but
has more than six faces. The method does not require any special treatment at the
boundary of the rened regions but requires appropriate mesh addressing.
Jasak and Gosman [68, 71, 72] have presented a method which enables directional
renement and coarsening by splitting and merging hexahedral and split-hexahedral
cells. The split-hexahedron cell used in this work can have only one face shared by
two neighbouring cells thus making the procedure inecient for cases where highly
localised renement is needed, because the procedure renes more cells than needed
in order to satisfy the criterion that every cell in the mesh is either a hexahedron
or a split-hexahedron. Coarsening is performed by merging two cells together and
taking into account that the shape of the newly created cell is either a hexahedron
or a split-hexahedron. The decision about directions of renement is based on the
solution gradient and directional stretching of the cell. This has a drawback that the
directional splitting is dependent on the mesh stretching which in some cases may
cause renement and coarsening being performed in an inappropriate direction. This
may result in the increase of the disretisation error causing local over-renements in
such regions.
An hr method using directional renement and coarsening has been presented
by Habashi et al. [9, 10, 38, 39, 55]. Directional renement is achieved by driving the
adaptation by estimating the errors on the computational mesh edges. In [10, 55]
the authors discuss the principles of error equidistribution based on the concept
108 Mesh Adaptation
that a mesh adapted to resolve the ow features can be viewed as a uniform mesh
in the error space. The r-renement procedure aimed at equidistributing the error
on edges has been discussed in [9]. In [38] this method was applied to several cases,
including turbulent ones, and was tested with two dierent solvers, a Finite Element
one and a Finite Volume one, which showed that it yields similar meshes and results
for both solvers. The method is capable of producing accurate solutions with saving
on the number of cells but requires many adaptation loops, which is not desired in
the engineering environment.
There has been a substantial eort recently to apply mesh adaptation methodol-
ogy to turbulent ows. Jasak and Gosman [72] have applied the methodology from
[68, 71] to a ow over a 2D hill and to a ow over a 3D swept step. The method
did not reduce the error monotonically because the quality of the mesh was not
preserved in the important regions. Muzaferija and Gosman [101, 102] have tested
their methodology on turbulent cases of engineering interest. As the method renes
each hexahedral cell into eight new cells, it produces over-rened meshes for features
such as boundary layers and shear layers which are highly directional.
In [38] Habashi et al. have applied their methodology to a turbulent ow around
a 2D car and to a turbulent ow around NACA 0012 prole. The methodology im-
proved predictions of pressure coecients and clustered most of cells in the boundary
layer region where the high gradients reside.
Pelletier et al. [62, 64, 65, 115117, 146] developed a mesh renement technique
for turbulent ows simulated with two-equation turbulence models. The estimation
of error is performed using the method developed by Zienkiewicz and Zhu [162] while
the mesh renement is based on methodology developed by Peraire et al. [118]. The
method does not produce anisotropic meshes aligned with important ow features,
which increases the number of cells required to achieve accurate solutions. In order
to reduce errors for turbulence quantities they are solved in logarithmic form which
makes their variation smooth and less computationally demanding.
Even though the adaptive methods have evolved during the last decades none
of them can generate high quality anisotropic meshes which is required to achieve
high accuracy with the smallest possible number of cells and achieve it in a small
number of adaptation cycles. The renement technique developed during this study
is a h-renement method which provides best control of the mesh resolution and
mesh quality. h-renement is also considered to be the most suitable for problems
5.3 Adaptation Procedure 109
of engineering interest where the geometries are complex.
5.3 Adaptation Procedure
The procedure operates on hexahedral meshes and it consists of the following steps:
1. Solve the problem on the initial mesh.
2. Estimate the discretisation error distribution. If the error on every face is
below the required level the calculation is terminated.
3. Determine faces for which the estimated error is above the limit and mark
them. Cells sharing marked faces are marked for renement parallel to those
faces to reduce distances between the nodes which mainly contribute to the
error. This rule has some exceptions and will be treated in more detail in Sec-
tion 5.3.1. The coarsening procedure is not implemented because the author is
not certain how to perform coarsening based on information provided by the
FREE such that it does not have an adverse eect on mesh quality and error
reduction.
4. In order to ensure the correct boundary description, newly created boundary
vertices may have to be moved from the position where they were located by
the renement procedure to the closest point at the boundary surface.
5. Map the solution from the previous mesh and use it as an initial guess.
6. Repeat from step 1 until the error is reduced below the required upper limit.
5.3.1 Selection of Cells and Mesh Renement
Selection of cells is performed by using the information about the error on the faces
provided by the FREE. A hexahedral cell can be split parallel to a face without
making any changes in other directions. This directional renement results in re-
duced computational cost as the number of the cells in the adapted mesh is smaller
than in the case when the cells are split in all three directions.
Selection of cells for renement also has an impact on the quality of the adapted
mesh and it has to be performed in such a way that it does not have an adverse eect
on accuracy. The accuracy may be reduced at the interface between the rened cells
110 Mesh Adaptation
and the rest of the mesh where split-hexahedron cells appear, Fig. 5.1. A split-
hexahedron can have one or more split faces which obey the property that each split
face can be shared with two or four neighbouring cells, Fig. 5.1. In Section 3.6 it was
1
2
3
4
6
0
5
7
Figure 5.1: A split-hexahedron cell with left face split in one
direction shared with two cells. The top face is
cross-split and shared with four cells
shown that split-hexahedra produce higher errors than the hexahedra for the same
cell size when higher solution gradients are non-zero. This happens due to increased
distance between the neighbouring nodes of the split face, Eqn. (3.78), skewness and
non-orthogonality which reduce the quality of the mesh. It may therefore happen
that the solution on the rened mesh has higher errors than on its parent mesh
in the regions where split-hexahedra are present. To prevent this from happening,
selection of cells for renement is performed in two steps:
1. Compare the estimated error on the face e
f
with the specied upper limit E.
If:
e
f
> E, (5.1)
the face is marked and the adjacent cells are marked for renement in the
direction parallel to that face, Fig. 5.2. This reduces the distance between the
neighbouring nodes which are the main contributors to the error on that face.
Therefore, the directional information about the error is directly used to drive
the adaptation.
This rule has exceptions. If the marked face is a split face of a split-hexahedron,
only the split-hexahedron cell is split such that the face is not a split face
any more, in order to minimise skewness, non-orthogonality and the distance
between the neighbouring nodes, as shown in Fig. 5.3.
5.3 Adaptation Procedure 111
marked face
Marked face Rened mesh
Figure 5.2: Directional splitting of cells
l
h
h
"splithexahedron"
|d
|
0.25l
h
marked face
h
h
0.5l 0.5l
|d| = h
Before renement After renement
Figure 5.3: Renement of split-hexahedron cells
112 Mesh Adaptation
If the ow under consideration is turbulent and a high-Re model with wall-
functions is used, it is necessary to ensure that the wall-functions is still valid
on the rened mesh by not allowing renement of the near-wall cells parallel
to the wall if Y
+
< 50.
2. The second step is aimed to make the estimated error reduce monotonically
with mesh renement and to minimise the number of cycles required to achieve
the desired accuracy. Fig. 5.4 shows that the distance between neighbouring
h
h
|d| = h
l
marked face
l
h
h
"splithexahedron"
|d
|
0.25l
h
Before renement After renement
Figure 5.4: Node distances at a split face
nodes increases at the boundary between the rened regions and the rest of
the mesh. The ratio r between node distances before and after the face is split
is:
r =

h
2
+
l
2
16
h
2
, (5.2)
where h and l are the cell height and the cell length, respectively, see Fig. 5.4.
This ratio may become large for high aspect ratio cells where l >> h. Eqs. (4.42)
and (4.45) show that the FREE is dependent on the square of the distance
between neighbouring nodes. Taking that into account, it is possible to ap-
proximate the estimated solution error on the rened mesh before the rened
mesh and the solution on that mesh are known and before the error estimation
on the rened mesh is performed. The approximated estimated error on the
faces of the rened mesh created from a face of the parent mesh which should
become a split face of a split-hexahedron is:
e
afterRef
r
2
e
f
. (5.3)
where e
f
is the estimated error in the solution on the parent mesh and r is
dened in Eqn. (5.2). e
afterRef
is the approximated error on the rened mesh;
5.3 Adaptation Procedure 113
which is not a true estimated error because the rened mesh is not known at
this stage. It is an approximation of the estimated error which is used to detect
regions where split-hexahedra may have a large inuence on the accuracy. If:
e
afterRef
< E, (5.4)
then this is not considered a problematic region because it is unlikely to have
the estimated error in the solution on the rened mesh above the upper limit
E. If Eqn. (5.4) is not true, it is very likely to have the estimated error above
the required upper limit once the rened mesh and the solution on that mesh
are known. To prevent this from happening, the cell which would become
a split-hexahedron is marked for renement such that it does not become a
split-hexahedron. This process is shown in Fig. 5.5 and it is repeated until
marked face
(a) Faces selected after step 1.
afterRef
e
afterRef
e
afterRef
e afterRef
e
< E
< E
< E
> E
Marked face
(b) Checking of errors on faces
which will become split faces of
split-hexahedra
Marked face
(c) Final selection of cells for re-
nement
Figure 5.5: Additional splitting of cells
Eqn. (5.4) is satised for every face which may become a split face of the
split-hexahedron. By doing this it is possible to reduce the number of cycles
required to reach the required error level because the regions where split-
114 Mesh Adaptation
hexahedra may cause problems are treated in the current cycle instead of one
cycle after another.
The equations of continuum mechanics are coupled and non-linear, so the errors
in a given variable eld can have an impact on the accuracy of the solutions of the
other equations. The errors are therefore estimated for every eld and the selection
of cells for renement is performed for all error elds except the pressure. The error
is the pressure eld is closely related to the error in the velocity eld.
Mesh Renement Procedure
So far cells have been marked for renement in the directions required by the error
estimator. Before the rened mesh is generated it is necessary to check if it will
consist of cells types which are either a hexahedron or a split-hexahedron dened
above and shown in Fig. 5.1. In order to satisfy this requirement it is sometimes
necessary to split some additional cells or add some additional directions to cells
already marked for renement.
The combinations which are not allowed and their remedies are:
If the two neighbours which share a split face of a split-hexahedron need to
be split such that the split face changes, the split-hexahedron is split into two
new cells to ensure that the rened mesh consists only of hexahedra and split-
hexahedra, Fig. 5.6.
Selected cells Rened mesh
Figure 5.6: Consistency over a split face in 2D (dotted lines
represent the selected renement)
In any of the four neighbouring cells of a cross-split face of a split-hexahedron
should be split such that the cross-split face changes, the split-hexahedron
should be split into four cells as in Fig. 5.7.
5.3 Adaptation Procedure 115
Selected cells Rened mesh
Figure 5.7: Consistency over a cross-split face in 3D (dotted lines
represent the selected renement)
It may also happen that two neighbouring cells should be split such that their
shared face is cross-split. In such case both cells are split in two directions,
Fig. 5.8.
Selected cells Rened mesh
Figure 5.8: Treatment of incompatible cell splitting directions in
3D (dotted lines represent the selected renement)
This nal step is needed to ensure that the rened mesh can be rened again
by using the same rules. Otherwise the mesh after every cycle of renement might
require additional rules to treat new combinations and new cell types. It also serves
the purpose of preserving mesh quality by not allowing abrupt changes between the
rened and coarse regions.
5.3.2 Solution Mapping Between Meshes
In order to speed up the solution process it is advisable to re-use the solution on the
previous mesh by mapping it to the new mesh to minimise the computational time
during each cycle.
For properties calculated in the centre of the computational cell i.e. velocity,
pressure, mapping is performed using the method developed by Jasak [68] which
consists of the following steps:
1. For every node N in the rened mesh nd a cell P in the old mesh which
116 Mesh Adaptation
encloses it.
2. Find the distance vector between the node N and the centre of cell P using:
x
dist
= x
N
x
P
(5.5)
3. Calculate the on the rened mesh, thus:

N
=
P
+x
dist
()
P
(5.6)
where
P
is a nodal value on the old mesh and
N
is a nodal value on the
rened mesh.
Boundary conditions and their data are known before the analysis and are used
to set values and/or gradients at the boundaries for every cycle.
5.4 Examples
The procedure presented above has been tested on the set of cases described in Sec-
tion 4.5 with an additional case involving convection and diusion of a rectangular
temperature prole [151].
The performance of the adaptive renement algorithm is examined by monitoring
the maximum and average error reduction with mesh renement. It is also compared
with the error obtained by uniform renement.
5.4.1 Planar Jet
This test case was described in Section 4.5.1. The calculation was started on a (10
x 4) initial mesh, Fig. 4.4. The maximum allowed velocity error was set to:
E = 1 % (5.7)
of the maximum velocity magnitude |U
norm
| = 2.474m/s.
A solution of the desired accuracy was achieved after six cycles of adaptive
renement. Fig. 5.9 shows the resulting mesh after six cycles of renement. The
renement is concentrated in the region of high gradients where the jet enters the
domain, Fig. 4.5. Most of renement is in the cross-stream direction which is the
direction of high velocity variation due to diusion.
5.4 Examples 117
Figure 5.9: Mesh after 6 cycles of renement for the jet case (209
cells)
Planar Jet - Velocity Error
10
1
10
2
10
3
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Planar Jet - Velocity Error
10
1
10
2
10
3
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Planar Jet - Velocity Error
10
1
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Adaptive refinement
Uniform refinement
(c) A comparison of the maximum ve-
locity error for uniform and adaptive re-
nement
Figure 5.10: Variation of velocity errors with adaptive renement
for the jet case (|U
norm
| = 2.474m/s)
118 Mesh Adaptation
The reduction of error is monotonic for maximum and mean error, as can be seen
in Figs. 5.10(a) and 5.10(b). A drawback is the over-estimated error which produces
an over-rened mesh. Even though the error is over-estimated, the procedure is
still capable of producing an accurate solution with signicant saving in the number
cells. Fig. 5.10(c) shows the exact maximum velocity error for uniform and adaptive
renement, where the solution on the adapted mesh (209 cells) has a comparable
maximum error with the one on the uniform mesh (10240 cells), but the adapted
mesh has 45 times less cells than the uniform one.
(a) Exact error
(b) Estimated error (given as average of face errors)
Figure 5.11: Velocity errors after 6 cycles of renement for the jet
case [m/s] (209 cells)
5.4 Examples 119
Figs. 5.11(a) and 5.11(b) show the exact and the estimated error elds after 6
cycles of renement. The error is over-estimated in the bulk of the domain.
The distribution of estimated errors on faces is shown in Table 5.1. The distri-
% of maximum estimated error on a given mesh
Mesh 0-10 10-20 20-30 30-40 40-50 50-60 60-70 70-80 80-90 90-100
Starting 73.4 8.5 6.4 6.38 2.12 0 1.06 1.06 0 1.06
Final 25.5 17.3 15.4 14.9 11.5 6.06 4.11 1.73 1.94 1.51
Table 5.1: Estimated errors on the faces of the nal mesh with 209
cells (given as percentage of the maximum estimated
error on that mesh)
Figure 5.12: Estimated errors on the faces of the nal mesh with
209 cells (given as percentage of the maximum
estimated error on that mesh)
bution of error improves with mesh renement but most faces in the nal mesh still
have low error, Fig. 5.12. These are:
Faces located in the region of low velocity near the top left corner. The low
error there suggests that the starting mesh is too ne there.
Boundary faces. This happens because most boundaries are xed value bound-
aries on which the error is zero.
Faces perpendicular to the ow. The error is low there because the velocity
eld does not exhibit high gradients in the ow direction. The number of
120 Mesh Adaptation
these faces does not reduce relative to the total number of faces because their
number increases even with directional renement. These faces can only be
eliminated by using some coarsening procedure.
5.4.2 Stokes Stagnation Flow
The starting mesh for this case was a uniform (5 x 5) cells mesh, Fig. 5.13(a). The
description of the problem and its numerical setup is given in Section 4.5.2. The
target maximum velocity error in the solution was set to:
E = 0.1 % (5.8)
of the maximum velocity magnitude |U
norm
| = 1.107m/s. Two calculations were
performed in order to determine if the second step of the procedure for selecting cells,
described in Section 5.3.1, makes the error reduce monotonically with minimised
number of adaptation cycles. The calculation using the complete methodology is
presented rst, followed by the results of the calculation for the adaptation procedure
which does not use that step.
The maximum error was reduced below the desired level after four adaptation
cycles when the complete methodology was used. Meshes after every cycle are
presented in Figs. 5.13(a), 5.13(b), 5.13(c) and 5.13(d) where the main direction of
renement is in the vertical direction in which the estimated velocity error is high
because the second derivative of the y velocity component in the y direction is not
zero. The exact error, shown in Fig. 5.14(a), is almost equidistributed in the bulk
of the domain and is small near the bottom, top and right boundaries where the
velocity is xed.
The agreement between the exact and the estimated error in the nal adapted
solution, shown in Figs. 5.14(a) and 5.14(b), is poor and this undesired behaviour is
caused by the estimator and the averaging procedure, Eqn. (4.48), used for plotting
the estimated error eld. The estimated error is smaller on the right hand side of
the domain compared to the left hand side because the weighting factors used for
faces with high error, see Eqn. (4.48), are smaller due to smaller area of those faces
compared to the sum of areas of all cell faces, as shown in Fig. 5.16.
The graphs which show the reduction of exact and estimated errors in their max-
imum and mean values are presented in Figs. 5.15(a) and 5.15(b). The maximum
5.4 Examples 121
(a) Starting mesh (25
cells)
(b) Mesh after 2 cycles
(70 cells)
(c) Mesh after 3 cycles
(140 cells)
(d) Final mesh (280
cells)
Figure 5.13: Meshes for the creeping stagnation ow
122 Mesh Adaptation
(a) Exact error (b) Estimated error (given as average of
face errors)
Figure 5.14: Velocity errors after 4 cycles of renement for the
creeping stagnation ow [m/s]
estimated error is over-estimated by a factor of 3.5 such that the required max-
imum exact error is achieved after the third cycle on a mesh with 140 cells. The
estimated mean error does not tend to the exact one which is caused by the inconsis-
tency between the FREE and the truncation error for the surface normal gradient.
Fig. 5.15(c) shows that the maximum exact error after four cycles of renement on a
mesh with 280 cells is the same as the maximum error on a uniform mesh with 1600
cells. Even though the renement is not highly localised, the adapted solution re-
quired 17.5 % of the number of cells required on a uniform mesh. This was achieved
due to directional renement which occurs in the vertical direction for which the
second derivative of y velocity component is not zero.
% of maximum estimated error on a given mesh
Mesh 0-10 10-20 20-30 30-40 40-50 50-60 60-70 70-80 80-90 90-100
Starting 66.6 0 0 0 0 0 0 0 16.7 16.7
Final 54.4 0.659 0 0 0 0 0 2.31 0 42.6
The above table shows the distribution of estimated face errors on the starting and
the nal mesh. The distribution of error has improved because the percentage of
5.4 Examples 123
Stagnation - Velocity Error
10
1
10
2
10
3
10
-3
10
-2
10
-1
10
0
10
1
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Stagnation - Velocity Error
10
1
10
2
10
3
10
-3
10
-2
10
-1
10
0
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Stagnation - Velocity Error
10
1
10
2
10
3
10
4
10
-3
10
-2
10
-1
10
0
no of cells
m
a
x

e
r
r
o
r

[
%
]
Adaptive refinement
Uniform refinement
(c) A comparison of the maximum ve-
locity error for uniform and adaptive re-
nement
Figure 5.15: Velocity error scaling with adaptive renement for
the creeping stagnation ow (|U
norm
| = 1.107m/s)
faces with low error has reduced and the percentage of faces with highest error which
correspond to the required error has increased but is not yet optimal because there
are still many faces with very small error. Fig. 5.16 shows the distribution of the
estimated face error on the nal mesh. There are three groups of faces which can
be identied:
Horizontal faces have error almost equal to the required error.
Vertical internal faces. The variation of velocity in the x direction is linear
which results in small estimated error there. This suggests that the starting
mesh is too ne in the x direction so the coarsening procedure which could
remove those faces would have a benecial inuence on the error distribution.
Boundary faces. The error on these faces is zero because the value of velocity
is known there.
124 Mesh Adaptation
Figure 5.16: Estimated errors on the faces of the nal mesh with
280 cells (given as percentage of the maximum
estimated error on that mesh)
The second calculation has produced the same nal mesh as in the previous case,
as expected, but it required six adaptation cycles instead of four.
Figs. 5.17(a), 5.17(b), 5.17(c), 5.17(d), 5.17(e) and 5.17(f) show the meshes for
all six cycles. The reason for the increased number of cycles are split-hexahedra
which appear after the second cycle which have the highest error, Figs. 5.19(a) and
5.19(b), and impair the reduction of error, Figs. 5.18(a) and 5.18(b). Split-hexahedra
do not appear in the rst calculation, meshes shown in Figs. 5.13(a), 5.13(b), 5.13(c)
and 5.13(d), because Eqn. (5.4) is not satised on faces which would become split
faces of split-hexahedra and thus cells which would become split-hexahedra are also
rened resulting in the reduced number of adaptation cycles.
5.4 Examples 125
(a) Starting mesh (25
cells)
(b) Mesh after 2 cycles
(62 cells)
(c) Mesh after 3 cycles
(132 cells)
(d) Mesh after 4 cycles
(276 cells)
(e) Mesh after 5 cycles
(278 cells)
(f) Final mesh (280 cells)
Figure 5.17: Meshes for the creeping stagnation ow (second
calculation)
126 Mesh Adaptation
Stagnation - Velocity Error
10
1
10
2
10
3
10
-3
10
-2
10
-1
10
0
10
1
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Stagnation - Velocity Error
10
1
10
2
10
3
10
-3
10
-2
10
-1
10
0
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 5.18: Variation of velocity errors with adaptive mesh
renement for the stagnation ow (Second
calculation) (|U
norm
| = 1.107m/s)
(a) Exact error (b) Estimated error
Figure 5.19: Velocity error elds after 2 cycles of adaptive
renement for the stagnation ow (Second
calculation) [m/s]
5.4 Examples 127
5.4.3 Convection Transport of Heat with a Distributed Heat
Source
This problem was described in Section 4.5.3. The adaptive calculation has been
started from a (5 x 5) mesh. The maximum temperature found in the eld is 1
o
C
and the maximum allowed error is set to:
E = 0.1 % (5.9)
of this.
The required accuracy could not be achieved eciently by using adaptive rene-
ment so it was stopped after 6 cycles. Figs. 5.22(a) and 5.22(b) show that the error
stops reducing eectively after the third cycle of adaptive renement when the rst
split-hexahedra appear in the mesh, see Fig. 5.20. This happens because the volume
Figure 5.20: Mesh after 3 cycles of renement for the convection
transport case
of split-hexahedron cells is four times larger than the volume of their neighbours thus
having a large impact on the source term discretisation, Eqn. (3.58). These dier-
ences in cell sizes cause unboundedness of the volume integral of the source term,
shown in Fig. 5.21(c), which results in the increased error at the locations where
this inuence is important, Fig. 5.21(a). The agreement between the exact and the
estimated temperature error, shown in Figs. 5.21(a) and 5.21(b) respectively, is con-
sidered satisfactory. The estimation of the exact error is very accurate during the
rst two cycles. The inaccuracy of the error estimation afterwards is attributed to
the unboundedness of the temperature gradient eld, shown in Fig. 5.21(d), which
is used for error estimation.
128 Mesh Adaptation
(a) Exact temperature error (
o
C) (b) Estimated temperature error (given
as average of face errors (
o
C)
(c) Volume integral of the source term
(
o
Cm
3
s
)
(d) Temperature gradient (
o
C/m)
Figure 5.21: Fields after 3 cycles of renement
5.4 Examples 129
Convective Transport - Temperature Error
10
1
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Convective Transport - Temperature Error
10
1
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 5.22: Variation of temperature errors with adaptive
renement for the convection transport case
(T
norm
= 1
o
C)
5.4.4 Convection and diusion of a Temperature Prole with-
out a Heat Source
This test case is a solution of the general transport equation for temperature without
the heat source. Fig. 5.23 shows the temperature eld which has high gradients near
the inlet which diminish by the inuence of diusion. The purpose of this case is to
test the error estimator and the renement procedure near strong features.
Figure 5.23: Temperature eld for the internal layer case [
o
C]
130 Mesh Adaptation
The analytical solution for this case is [151]:
T(x, y) = A

k=1
(
k

1k
(x) +
k

2k
(x))
k
(y), (5.10)
where
1k
(x),
2k
(x),
k
(y) and b
k
are:

1k
(x) = e
xPe
2
sinh(b
k
(1 x))
sinh(b
k
)
, (5.11)

2k
(x) = e
(x1)Pe
2
sinh(b
k
x)
sinh(b
k
)
, (5.12)

k
(y) = sin(ky), (5.13)
b
k
=

_
Pe
2
_
2
+ (k)
2
, (5.14)
and
k
and
k
are constants:

k
=
2
k
(cos(0.45k) cos(0.55k)), (5.15)

k
=
k
b
k
e
Pe
2
sinhb
k
Pe
2
+b
k
cosh(b
k
)
sinh(b
k
)
, (5.16)
where x and y are dimensionless variables dened as:
x =
X
L
y =
Y
L
L = 1m being a reference length. Peclet number Pe =
|U|L

is 1000 and the velocity


U is uniform and the value of U
x
component is set to 1 m/s while other components
are zero. is set to:
= 0.001 [m
2
/s]. (5.17)
The solution domain and the boundary conditions used for calculations are de-
picted in Fig. 5.24. The interpolation scheme used for convection is CD.
Calculations for this case were started from a (18 x 20) uniform mesh, Fig. 5.25(a).
The maximum allowed temperature error was set to:
E = 0.5 % (5.18)
of the maximum temperature T
max
= 1
o
C.
The desired error was achieved after ve cycles of adaptive renement. Fig. 5.25(b)
shows the resulting mesh. As expected, the renement is localised in the region of
5.4 Examples 131
U = 1 m/s
X
Y
0.1m
zeroGradient B. C.
T fixed to analytical solution
0.9m
L

=

1
m
Figure 5.24: Solution domain and boundary conditions for the
convection and diusion of heat
steep gradients. Most of renement occurs in the cross-stream direction in which
the diusion is dominant. The region near the right boundary is also rened in
the stream-wise direction to reduce the oscillations from the CD convection scheme,
Fig. 5.27(a).
Figs. 5.25(c) and 5.25(d) show that errors are severely over-estimated. This
mostly occurs near the inlet where diusion is high, Fig. 5.26(b). The reasons for
this are twofold. It was shown in Chapter 4 that the diusion part of the estimator
is not consistent with the truncation error for the diusion term. The second issue
here is the accuracy of the gradients calculated from the solution, Fig. 5.27(b). On
coarse meshes the gradient contains high error itself which also has an impact on
the quality of error estimation. Fig. 5.25(e) shows a comparison between the exact
errors for adaptive and uniform renement. The error in the nal adapted mesh
is comparable to the error on the third uniform mesh consisting of 5760 cells while
the adapted mesh consists of 1706 cells. This is 29% of the number of cells in the
uniform mesh.
In order to check the eciency of mesh renement another test was made. The
renement was driven by the exact face error obtained as the dierence between the
FV solution interpolated onto the faces by using Eqn. (3.12) and the exact solution
at the face centres. The maximum face error dropped below the required tolerance
132 Mesh Adaptation
(a) Starting mesh for the convection and
diusion of heat (360 cells)
(b) Mesh after 5 cycles of renement for
the convection and diusion of heat (1706
cells)
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(c) Maximum error
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(d) Mean error
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
no of cells
m
a
x

e
r
r
o
r

[
%
]
Adaptive refinement
Uniform refinement
(e) A comparison of the maximum tem-
perature error for uniform and adaptive
renement
Figure 5.25: Variation of temperature errors with adaptive
renement for the convection and diusion of heat
(T
norm
= 1
o
C)
5.4 Examples 133
(a) Exact error (b) Estimated error
Figure 5.26: Temperature errors after 5 cycles of renement for
the convection and diusion of heat [
o
C] (1706 cells)
Temperature at y = 0.5
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
0.7
0.8
0.9
1.0
1.1
1.2
x
T
Cycle1
Cycle2
Cycle3
Cycle4
Cycle5
(a) Temperature at y = 0.5 for the con-
vection and diusion of heat (
o
C)
Magnitude of temperature gradient at x = 0.125
0.0 0.2 0.4 0.6 0.8 1.0
0.0
4.0
8.0
12.0
16.0
20.0
24.0
28.0
y
m
a
g
G
r
a
d
T
Cycle1
Cycle2
Cycle3
Cycle4
Cycle5
(b) Magnitude of temperature gradient
at x = 0.125 for the convection and dif-
fusion of heat (
o
C/m)
Figure 5.27: Temperature and its gradient for the convection and
diusion of heat
134 Mesh Adaptation
(a) Mesh after 10 cycles of renement driven by exact
face error (2698 cells)
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
-1
10
0
10
1
no of cells
m
a
x

e
r
r
o
r

[
%
]
Cell error
Face error
(b) Variation of maximum cell and
face errors with adaptive renement for
the convection and diusion of heat
(T
norm
= 1
o
C)
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Cell error
Face error
(c) Variation of mean cell and face
errors with adaptive renement for
the convection and diusion of heat
(T
norm
= 1
o
C)
Figure 5.28: Mesh and errors for the calculation driven by the
exact face errors
5.5 Summary and Conclusions 135
after 10 cycles of renement and the nal mesh consists of 2698 cells. This is 58%
more than 1706 cells obtained by using the FREE even though Figs. 5.25(b) and
5.28(a) show similar patterns of renement suggesting that the FREE is capable of
driving renement eciently. Figs. 5.28(b) and 5.28(c) show dierences between the
errors at face centres and nodal errors. These dierences are a consequence of the
interpolation practice used and dierent locations at which the error is measured.
5.5 Summary and Conclusions
A directional mesh renement procedure for hexahedral meshes was presented in this
chapter. It has shown variable success in producing solutions of required accuracy.
Solutions of required accuracy were produced with savings in the number of cells on
most cases and for such cases the analysis of errors on the faces has shown that the
distribution of error improves with mesh renement. The room for improvement
still exists because faces with low error are also generated during the renement
process. This suggests that a coarsening procedure could have a benecial eect on
error equidistribution but only if it is performed such that it does not reduce mesh
quality. Problems in reducing the error below the required limit were encountered
for the convection case for which the discretisation of source terms becomes very
inaccurate on meshes with rapid variation of cell sizes and results in unbounded
volume integrals source terms which increase the error.
It was also shown that the FREE over-estimates the error on diusion-dominated
problems thus making the nal adapted meshes over-rened for such cases. But
the fact that the error is estimated on mesh faces causes generation of anisotropic
meshes thus resulting in savings on the number of cells when compared to uniform
renement.
136 Mesh Adaptation
Chapter 6
Further Case Studies
6.1 Introduction
In this chapter the directional mesh adaptation algorithm, presented in Chapter 5,
will be tested further on four cases of engineering interest. These include 2D laminar
ow and 3D turbulent ow examples. They were chosen to represent problems oc-
curring in everyday engineering practice. Analytical solutions for them do not exist,
so accuracy will be judged by comparing the solution on the adapted mesh with the
one obtained on a very ne uniform mesh considered to be a benchmark solution.
The accuracy of solutions on adapted meshes will be measured by monitoring some
ow features eg. pressure drop, shear stress, forces, etc. Test cases involving super-
sonic ows were not considered as the errors are highly localised near the shocks
such that most renement would occur there.
6.2 Flow Over a Cavity
The rst case considered is an incompressible laminar channel ow over a cavity.
The geometry consists of a 2D channel with a cavity in the bottom wall, shown in
Fig. 6.1.
The ow is at Re = 200 based on the channel height H and the average inlet
velocity U
avg
. At the inlet a parabolic velocity prole is prescribed:
U
x
= 6 U
avg
_
y
H

_
y
H
_
2
_
.
The calculation was started on the mesh with 36 cells depicted in Fig. 6.2.
Second-order Central Dierencing (CD) was used for discretisation of convective
137
138 Further Case Studies
Walls Outlet
H
H
2H 8H 4H
X
Y
0
.2
5
H
0
.2
5
H
Parabolic velocity profile
Figure 6.1: Geometry and boundary conditions for the ow over a
cavity
Figure 6.2: Starting mesh for the ow over a cavity (36 cells)
terms. Gradients of all elds are evaluated by using the Gauss Theorem, Eqn. (3.24).
The required maximum velocity error in the solution is set to:
E = 1 %,
of the average inlet velocity U
avg
. The solution is compared with a benchmark
solution obtained on the 501552 cells mesh with the maximum estimated velocity
error of 0.2% of the inlet velocity U
avg
.
The predicted velocity eld on the nal adapted mesh with 3257 cells can be
found in Figs. 6.3(a) and 6.3(b). The ow is aligned with the x axis within the
channel and the variation of velocity in the cross-stream direction is parabolic. A
stagnation point at the top-right corner of the cavity, Fig. 6.3(d), is a region of high
velocity and pressure gradients, Figs. 6.3(d) and 6.4. The vortex formed within the
cavity has an impingement zone near the bottom-right corner where the ow parallel
to the right wall meets with the bottom wall. The separation near the upper-left
corner of the cavity is a region of moderate velocity and pressure gradients when
compared to the zone near the stagnation point, Figs. 6.3(c) and 6.4.
The calculation stopped after 8 cycles of renement. The nal mesh has 3257
cells and is shown in Fig. 6.5. It is highly rened in the region near the stagnation
point, as would be expected in a region of high gradients. Some renement occurred
6.2 Flow Over a Cavity 139
(a) Velocity
(b) Streamlines
(c) Zoom around the top-left corner
of the cavity
(d) Zoom around the top-right corner
of the cavity
Figure 6.3: Velocity eld for the ow over a cavity on the nal
adapted mesh with 3257 cells (normalised by U
avg
)
140 Further Case Studies
Figure 6.4: Pressure coecient eld for the ow over a cavity on
the nal adapted mesh with 3257 cells
Figure 6.5: Mesh after 8 cycles of renement for the ow over a
cavity (3257 cells)
within the cavity to resolve the impingement zone and the shear layer. The mesh
is unexpectedly ne within the channel and the main reason for such behaviour is
the fact that for the uniform mesh as present here the discretisation of the diusion
term can resolve the parabolic prole within the channel exactly, Eqn. (3.54), while
the error estimator is sensitive to the second gradient and reports non-zero error for
such conditions, Eqn. (4.45). Fig. 6.6(a) shows that the exact error after 8 cycles
of adaptive renement is negligible within the channel while the estimated error
shown in Fig. 6.6(b) is non-zero there. This undesired behaviour has caused poor
agreement of the estimated error with the exact one.
Figs. 6.7(a) and 6.7(b) show the reduction of maximum and mean velocity errors
with mesh renement. The maximum error exhibits steep reduction during the nal
three cycles when the renement is localised to a small number of cells with high
error. The estimated mean error in velocity does not tend to the exact error because
of the over-estimation within the channel.
The distribution of estimated errors on faces is shown in Table 6.1.
6.2 Flow Over a Cavity 141
(a) Exact error
(b) Estimated error (cell values are the weighted average of errors on cell faces)
Figure 6.6: Errors for the ow over a cavity on the nal adapted
mesh with 3257 cells (given as percentage of U
avg
)
Velocity Error
10
1
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
10
3
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum error
Velocity Error
10
1
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean error
Figure 6.7: Variation of velocity errors with adaptive mesh
renement for the ow over a cavity (errors given as
percentage of U
avg
)
142 Further Case Studies
% of maximum estimated error on a given mesh
Mesh 0-10 10-20 20-30 30-40 40-50 50-60 60-70 70-80 80-90 90-100
Starting 58.2 8.8 4.4 11 2.2 6.5 6.5 1.09 0 1.1
Final 37.1 9.9 13.1 10.2 8.5 12.4 4.2 2.2 1.5 0.8
Table 6.1: Distribution of face errors for the cavity case
The renement procedure tends to reduce the number of faces with low estimated
error and increase the number of faces with nearly average estimated error thus
increasing the mesh optimality. Fig. 6.8 shows the estimated velocity error on the
Figure 6.8: Estimated velocity error on the faces of the nal mesh
with 3257 cells (given as percentage of the maximum
estimated error on that mesh)
faces of the nal mesh. The main reason for this unfavourable error distribution is
the existence of many faces perpendicular to the ow which have low error due to
slow variation of velocity eld in that direction.
The pressure drop, dened as the dierence between the average pressures at
the inlet P
inlet
and outlet boundaries P
outlet
, is also used as an indicator of accuracy.
The pressure drop coecient (C
p
) dened as:
C
p
=
P
inlet
P
outlet
1
2
U
2
avg
can be found in Table 6.2. The renement makes the pressure drop reach its nal
value quickly. It does not change during the last four cycles of renement suggesting
that the remaining faces with estimated error above the required do not inuence the
global accuracy of the pressure eld. The pressure drop on the nal adapted mesh
is in good agreement (0.2% error) with the benchmark pressure drop. This suggests
that the adaptive renement is capable of achieving accurate solutions with saving
6.3 S-shaped Pipe Bend 143
Adaptive renement
Cells C
p
36 1.241
144 1.351
496 1.468
1541 1.508
2734 1.518
3044 1.518
3227 1.518
3257 1.518
Uniform renement
Cells C
p
172 1.438
1548 1.502
13932 1.518
125388 1.52
501552 1.52
Table 6.2: Pressure drop coecients for the ow over a cavity
on the number of cells because the nal adapted mesh has 0.65% of the number of
cells in the benchmark mesh.
6.3 S-shaped Pipe Bend
The second example is a 3D laminar ow in an annular pipe with a S-shaped bend
which serves as a uid mixer. The geometry and the boundary conditions for this
case are shown in Figs. 6.9(a) and 6.9(b).
The Reynolds number of the ow is Re = 750 based on the outer pipe diameter
D and the average inlet velocity U
avg
. The velocity prole applied at the inlet
boundary corresponds to a fully-developed ow in an annulus, thus:
U
x
=
2 U
avg
R
2
2
+
R
2
2
R
2
1
ln
R
1
R
2
+R
2
1
_
R
2
2
R
2
1
ln
R
1
R
2
ln
r
R
1
+r
2
R
2
1
_
where r is the radial coordinate, R
2
= 0.5D and R
1
= 0.075D.
The adaptive calculation was started from the 270 cell mesh, depicted in Fig. 6.10.
144 Further Case Studies
Developed inlet profile
Outlet
2D
D
8D
0
.
1
5
D
4D
X
Y
D
D
(a) Side view
Walls
Symmetry plane
Y
Z
0
.
5
D
0
.
0
7
5
D
r
(b) Front view
Figure 6.9: Case setup for the S-bend case
6.3 S-shaped Pipe Bend 145
Figure 6.10: Starting mesh for the S-bend case (270 cells)
The convection term is approximated by using the second-order CD. Gradients of
all elds are evaluated by using the Gauss Theorem, Eqn. (3.24).
Figs. 6.11(a), 6.11(b) and 6.11(c) show the ow eld for this problem. The
largest velocity can be found in the bend and is a consequence of reduced area due
to ow separation within the bend. There is also a separation in the straight part of
the annulus downstream of the bend. Fig. 6.11(a) shows that boundary layers are
very thin in the region of maximum velocity, which require a ne mesh to resolve
it accurately. The pressure eld, depicted in Fig. 6.12, is smooth with locally large
gradients near the zone of high shear. Velocity and pressure in the section after
the bend are shown in Figs. 6.13(a) and 6.13(b). The ow has cross-stream vortices
whose strength will also be used to assess the numerical accuracy.
The required maximum error was:
E = 1 %
based on the maximum velocity U
max
= 2.28 U
avg
. The accuracy of the solution
obtained by adaptive renement will be compared to the benchmark obtained on
a uniform mesh with 5.12 million cells. The maximum error in the benchmark
solution, estimated using the FREE, is 5% of U
max
.
The calculation stopped after 9 cycles of adaptive renement after reaching the
target maximum error, as shown in Fig. 6.14(a). The mesh after 9 cycles of rene-
ment consists of 390787 cells and is highly rened near the walls, Fig. 6.15(a). The
renement is primarily driven by the steep velocity gradients normal to the wall.
The mesh is also highly rened within the shear layers near the separation zones
146 Further Case Studies
(a) Velocity eld in the symmetry plane
(b) Streamlines in the symmetry plane
(c) Particle traces
Figure 6.11: Velocity eld in for the S-bend case obtained on the
nal adapted mesh with 390787 cells (normalised by
U
avg
)
6.3 S-shaped Pipe Bend 147
Figure 6.12: Pressure coecient in the symmetry plane for the
S-bend case obtained on the nal adapted mesh with
390787 cells
located downstream of the bend which are also regions of steep gradients.
The maximum estimated and exact velocity errors are in good agreement during
the rst few cycles, see Figs. 6.14(a) and 6.14(b). The unexpected behaviour of
maximum and mean exact error during the last three cycles is due to the fact
that the adapted mesh, Fig. 6.15(a), becomes ner in the regions of high error
than the mesh for the benchmark solution. Fig. 6.14(a) shows that the maximum
estimated error reduces quicker than in case of uniform renement suggesting that
the adaptation procedure removes high estimated errors eciently. This is not the
case for the average estimated errors, shown in Fig. 6.14(b), which show that there
is no saving in the number of cells between the adaptive procedure and uniform
renement. Fig. 6.16(b) shows the dierence between the benchmark solution and
the nal adapted solution which is highest near the inner pipe wall where most
renement occurred. The agreement between the estimated and exact error elds
is poor due to the limited accuracy of the benchmark solution. The areas of the
remaining error are captured by the error estimator i.e. the shear layers near the
downstream separation.
The accuracy was also judged by comparing the overall pressure drop, the mag-
nitude of the force acting on the annulus walls and the average vorticity magnitude
within the domain. The pressure drop is dened as the dierence between the aver-
age pressure at inlet (P
inlet
) and outlet (P
outlet
) boundaries and is given as a pressure
148 Further Case Studies
Y
Z X
(a) Velocity eld (normalised by
U
avg
)
Y
Z X
(b) Pressure coecient
Figure 6.13: Section at X = 2D (390787 cells)
6.3 S-shaped Pipe Bend 149
Velocity Error
10
2
10
3
10
4
10
5
10
6
10
7
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error (Adaptive ref)
Estimated error (Adaptive ref)
Estimated error (Uniform ref)
(a) Maximum error
Velocity Error
10
2
10
3
10
4
10
5
10
6
10
7
10
-2
10
-1
10
0
10
1
10
2
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error (Adaptive ref)
Estimated error (Adaptive ref)
Estimated error (Uniform ref)
(b) Mean error
Figure 6.14: Variation of velocity errors with adaptive mesh
renement for the S-bend case (given as percentage
of U
max
)
coecient dened as:
C
p
=
P
inlet
P
outlet
1
2
U
2
avg
.
The force coecient is given as:
C
F
=
|F|
1
2
A
ref
U
2
avg
where |F| is the magnitude of the total force and A
ref
=
(
(0.5D)
2
(0.075D)
2
)

2
, see
Fig. 6.9(b). The total force is calculated by integrating the pressure over all bound-
aries and the shear force over the walls. The vorticity = curl U is given in a
normalised form:
C

=
||D
U
avg
.
The values of C
p
, C
F
and C

are given in Table 6.3. The values on the nal adapted


mesh are in good agreement with the benchmark solution, the pressure drop diers
less than 0.2 % from the benchmark solution, the force magnitude matches within
0.3% and the vorticity magnitude matches within 1.6 % with the benchmark solution
but the nal adapted mesh has 8% of the number of cells in the benchmark mesh.
They have not changed much during the last ve cycles because the mean estimated
error exhibits slow reduction, Fig. 6.14(b), suggesting that the faces with highest
estimated errors do not have a large inuence on the overall accuracy.
150 Further Case Studies
(a) Mesh in the symmetry plane
(b) Mesh at wall boundaries
(c) Mesh at sec-
tion X = 2D (Tri-
angles are generated
by the EnSight visual-
isation software which
decomposed polyhedra
into tetrahedra.)
Figure 6.15: Mesh after 9 cycles of renement for the S-bend case
(390787 cells)
6.3 S-shaped Pipe Bend 151
(a) Estimated error
(b) Exact error
Figure 6.16: Velocity error in the symmetry plane after 9 cycles of
renement for the S-bend case (390787 cells) (given
as percentage of U
max
)
152 Further Case Studies
Adaptive renement
Cells C
p
C
F
C

270 1.861 2.187 5.37


2160 3.058 3.583 7.33
17280 3.504 3.967 8.24
119174 3.547 4.042 8.77
271810 3.536 4.048 8.91
343374 3.532 4.045 8.93
373203 3.533 4.045 8.93
388673 3.533 4.046 8.93
390787 3.533 4.046 8.94
Uniform renement
Cells C
p
C
F
C

1250 2.885 3.259 7.26


10000 3.47 3.948 8.09
80000 3.55 4.035 8.74
640000 3.54 4.052 8.97
5.12e+06 3.539 4.057 9.08
Table 6.3: Pressure drop coecients C
p
, force coecients C
F
and
average vorticity coecient C

for the S-bend case


6.4 Tube Bundle 153
6.4 Tube Bundle
The ow across a bank of staggered tubes is an example of turbulent ow calculated
using the q turbulence model developed by Gibson et al. [53]. This case is a part
of the ERCOFTAC database [43]. The geometry of the computational domain and
the boundary conditions employed here are shown in Fig. 6.17. Even though the
ow is periodic, see Fig. 6.19(a), periodic boundary conditions were not employed
for the inlet and the outlet boundary. This is because the renement procedure
cannot guarantee that the adapted mesh will have same distribution of faces at the
left and the right boundary which is required by the ow solver.
Symmetry plane
Symmetry plane Symmetry plane
Wall
Wall
Wall
Outlet Developed inlet profile
H
H
Y
X
0
.
5
D
0
.
5
D
Figure 6.17: Geometry and boundary conditions for the tube
bundle case
The ratio between H and D is:
H
D
= 1.0369.
The Reynolds number of the ow is Re = 18000 based on the tube diameter D
and the average inlet velocity U
avg
. A developed inlet prole is obtained by tting
a cubic spline through the data obtained by a separate calculation using periodic
boundary conditions. The data sets for velocity, q and are taken at the location of
the inlet boundary while the data set for the pressure eld is taken at the location
of the outlet boundary.
154 Further Case Studies
Figure 6.18: Starting mesh for the tube bundle case (640 cells)
The calculation was started on the coarse mesh with 640 cells, shown in Fig. 6.18.
Second-order accurate Central Dierencing was used for approximations of convec-
tive terms for all elds. Gradients were evaluated by using the Gauss Theorem,
Eqn. (3.24).
Figs. 6.19(a) and 6.19(b) show the ow eld for this problem. Fig. 6.20 shows
the pressure eld which is given as a pressure coecient dened as:
C
p
=
P P
atm
0.5 U
2
avg
(6.1)
where P
atm
is the atmospheric pressure. The ow is periodic with high gradients
of velocity, q and present near the tube walls, as shown in Figs. 6.19(a), 6.21
and 6.22. Separations on the downstream sides of the tubes are a consequence
of the adverse pressure gradients on the leeward sides which slow the uid down
and eventually cause separation, Fig. 6.20. The turbulence variables q and vary
strongly in the near-wall region, while their variation in most parts of the domain
is slow, see Figs. 6.21 and 6.22.
The required accuracy of the adapted solution was:
E = 1 %
for velocity, q and elds based on the maximums U
max
= 1.689U
avg
, q
max
=
0.599U
avg
and
max
= 5.83
U
2
avg
D
, respectively. The accuracy of the adapted solution
is compared with the solution on a mesh with 486000 cells considered to be the
6.4 Tube Bundle 155
(a) Velocity eld
(b) Streamlines
Figure 6.19: Velocity eld for the tube bundle case (17505
cells)(given as
U
U
avg
)
156 Further Case Studies
Figure 6.20: Pressure coecient for the tube bundle case (17505
cells)
Figure 6.21: q eld for the tube bundle case (17505 cells)(given as
q
U
avg
)
Figure 6.22: eld for the tube bundle case (17505 cells)(given as
D
Uavg
2
)
6.4 Tube Bundle 157
benchmark. The error in the benchmark is estimated to 0.2%, 1.3% and 0.51%
for the velocity, q and elds, respectively, using the FREE. The solution is also
compared with the measured data of Simonin and Barcouda [43].
The nal adapted mesh has 17505 cells and is highly rened near the walls
in the direction parallel to the wall, see Figs. 6.23(a) and 6.23(b), which is the
direction of steepest variations of the velocity, q and elds. The regions of ne
mesh downstream of the tubes were needed to resolve the shear layers near the
separation zones. The rened mesh regions also show periodic behaviour of the ow,
except near the outlet because of the zero gradient boundary condition imposed on
the velocity, q and elds is not accurate on the coarse mesh.
Figs. 6.24(a), 6.24(c) and 6.24(e) show good agreement between the estimated
and exact maximum errors for the rst ve cycles of renement. It is believed the
under-estimation of these errors during the last cycles of renement, see Figs. 6.24(a),
6.24(c), 6.24(e), 6.24(b) and 6.24(d), is caused by the fact that the errors on the
adapted mesh become comparable to the error in the benchmark solution. The
error is over-estimated in the near-wall region dominated by diusion for which the
estimator may predict higher errors because its truncation error, Eqn. (4.45), is not
consistent with the truncation error for the diusion term Eqn. (3.54).
The agreement between the exact error elds shown in Figs. 6.25(a), 6.25(c) and
6.25(e) and the estimated error elds presented in Figs. 6.25(b), 6.25(d) and 6.25(f)
is poor and the reasons for that are threefold:
1. The FREE which tends to over-estimate the error on faces at which dif-
fusion is dominant. This is the reason why the estimated error in veloc-
ity, Fig. 6.25(b), is higher in the bulk of the domain than the exact error,
Fig. 6.25(a).
2. Face error averaging, Eqn. (4.48), used for plotting the errors. For example,
the maximum of the estimated velocity error eld is located in the boundary
layer, as expected, but the Fig. 6.25(b) shows that the error is highest in the
stagnation zones. This happens because the size of the cell face determines its
weighting factor in Eqn. (4.48).
3. Benchmark solution which is not exact. It is believed that the main reason
for under-estimation of the error in the q eld, Figs. 6.25(c) and 6.25(d), is
158 Further Case Studies
(a) Final adapted mesh
(b) Detail near the bottom tube wall
Figure 6.23: Mesh after 7 cycles of renement for the tube bundle
case (17505 cells)
6.4 Tube Bundle 159
Velocity Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(a) Maximum velocity errors
Velocity Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(b) Mean velocity errors
Q Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(c) Maximum q errors
Q Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(d) Mean q errors
Zeta Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error
Estimated error
(e) Maximum errors
Zeta Error
10
2
10
3
10
4
10
5
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error
Estimated error
(f) Mean errors
Figure 6.24: Variation of errors with adaptive mesh renement for
the tube bundle case (errors given as percentage of
U
max
, q
max
and
max
respectively)
160 Further Case Studies
(a) Exact velocity error (b) Estimated velocity error
(c) Exact q error (d) Estimated q error
(e) Exact error (f) Estimated error
Figure 6.25: Exact and estimated error elds after 7 cycles of
renement (17505 cells)(errors are given as
percentage of U
max
, q
max
and
max
respectively).
Exact errors are calculated as the dierence from the
benchmark solution. Estimated errors are plotted as
a weighted average of face errors.
6.4 Tube Bundle 161
the remaining error in the benchmark solution because the estimated error in
the benchmark solution is highest there.
shearStress
0.0 20.0 40.0 60.0 80.0 100.0 120.0 140.0 160.0 180.0
0.0
0.01
0.02
0.03
0.04
angle[deg]
s
h
e
a
r
S
t
r
e
s
s
cycle1
cycle7
Benchmark solution
(a) Shear stress at bottom tube wall (given as

w
U
2
avg
)
Ux at x = 0.489 H
0.0 0.2 0.4 0.6 0.8 1.0
-0.4
0.0
0.4
0.8
1.2
1.6
2.0
y/H
U
x
cycle1
cycle7
Benchmark solution
Measurements
(b) U
x
proles at x = 0.489H (U
x
nor-
malised by U
avg
)
Uy at x = 0.489 H
0.0 0.2 0.4 0.6 0.8 1.0
-1.6
-1.4
-1.2
-1.0
-0.8
-0.6
-0.4
-0.2
0.0
0.2
y/H
U
y
cycle1
cycle7
Benchmark solution
Measurements
(c) U
y
proles at x = 0.489H (U
y
nor-
malised by U
avg
)
Figure 6.26: A comparison of proles for the tube bundle case
Fig. 6.26(a) shows the shear stress at the bottom tube wall which is in a very
good agreement with the benchmark solution even though the adapted mesh has
only 3.6% of the number of cells of the benchmark mesh. Figs. 6.26(b) and 6.26(c)
show that velocity proles after 7 cycles of renement match very well with the
benchmark solution but the agreement with the measured data by Simonin and
Barcouda [43] is poor. This happens because their data is given for higher inow
velocity than stated in [43]. Another limiting factor is the turbulence model which
is not the exact representation of ow physics.
162 Further Case Studies
6.5 Wall-Mounted Cube
The turbulent ow around a cubical obstacle mounted on a wall in a channel was
chosen for testing the mesh renement technique for calculations using the Standard
k- turbulence model with Wall-functions [123]. Even though the geometry is simple,
see Figs. 6.27(a) and 6.27(b), the ow around the cube is very complex, consisting
of many vortices, a stagnation point, a recirculation zone, a reattachment point, etc.
[96], see Figs. 6.29(b), 6.30(b) and 6.31(b). It therefore imposes a serious challenge
for the turbulence model and the renement procedure to detect and predict all
important ow features correctly. The objective of this exercise was to examine if
the mesh renement procedure is capable of producing a mesh-independent solution
for such a case.
Outlet Walls
Developed inlet profile
9H 20H
30H
2
H
H
H
Y
X
(a) Side view
Symmetry plane
Walls
Outlet
Developed inlet profile
1
2
H
0
.
5
H
Z
X
(b) Top view
Figure 6.27: Geometry and boundary conditions for the wall
mounted cube case
A computational study involving tests of dierent turbulence models on this ow
was performed by Lakehal et al. [82]. Muzaferija [101] performed a mesh renement
study for a dierent channel geometry than in the present case. His nal mesh con-
sists of 186000 cells, which was not enough to produce a mesh-independent solution.
The majority of renement occurred near the cube and in the boundary layers.
6.5 Wall-Mounted Cube 163
The geometry used for the present calculation is the one presented by Martinuzzi
et al. [96] which is a part of the ERCOFTAC test-case library [43].
The computational domain and the boundary conditions are shown in Figs. 6.27(a)
and 6.27(b). The geometry presented in [96] is symmetric so only one half is used
for calculations. A fully developed channel ow was simulated rst in a separate
calculation and then interpolated onto the inlet using a cubic interpolation [104],
which guarantees smooth proles of velocity, k and at the inlet. The prole was
interpolated after every cycle of renement if the mesh at the inlet changed.
The Reynolds number is Re = 40000 based on the cube height H and the average
inlet velocity U
avg
.
X
Y
Z
Figure 6.28: Starting mesh for the wall-mounted cube case (3444
cells)
The starting mesh for the adaptive calculation consists of 3444 cells and is shown
in Fig. 6.28. The Gamma scheme, described in Section 3.3.1, with the factor = 0.5
was used for the discretisation of convective terms for velocity, turbulent kinetic
energy k and turbulent dissipation . All gradients are calculated using the Gauss
theorem.
The velocity eld in the symmetry plane is shown in Figs. 6.29(a) and 6.29(b)
where three vortices can be seen. The vortex in front of the cube is the start of a
horse-shoe vortex. Those on the top and rear are caused by the adverse pressure
164 Further Case Studies
(a) Velocity eld (given as
U
U
avg
) (b) Streamlines
(c) Pressure coecient (d) Turbulent kinetic energy (given as
k
U
2
avg
)
(e) Turbulent dissipation (given as
H
U
3
avg
)
Figure 6.29: Distribution of ow variables in the symmetry plane
for the wall-mounted cube case, obtained on the nal
adapted mesh (1.16149e+06 cells)
6.5 Wall-Mounted Cube 165
gradient. The pressure eld is shown in Fig. 6.29(c) and is given as:
C
p
=
P P
atm
0.5U
2
avg
(6.2)
where P
atm
is the atmospheric pressure applied at the outlet boundary. The velocity
gradient is large near the top leading edge and it is the reason why the turbulent
kinetic energy, Fig. 6.29(d), and turbulent dissipation, Fig. 6.29(e), are high there.
The velocity eld in the plane y/H = 0.5 is presented in Figs. 6.30(a) and 6.30(b)
which show a vortex beside the cube and the arch vortex downstream of the cube.
The side vortex is again a consequence of the adverse pressure gradient, Fig. 6.30(c)
while the high turbulent kinetic energy, Fig. 6.30(d), and turbulent dissipation,
Fig. 6.30(e), are a result of sharp velocity gradients near the leading edge.
The section at x/H = 0.5 shows the separations on top and beside the cube,
Figs. 6.31(a) and 6.31(b). An additional feature which can be seen near the bottom
wall is the horse-shoe vortex. The pressure eld does not exhibit high gradients
there and it turns the uid towards the cube. The turbulent energy, Fig. 6.31(d),
and the turbulent dissipation, Fig. 6.31(e) are highest in the regions of highest shear
stresses, Fig. 6.31(a).
Fig. 6.32 shows the fully-developed horse-shoe vortex in the plane x/H = 2. The
structure left of the horse-shoe vortex is the arch vortex behind the cube where the
velocity gradient is high in the z direction.
The adaptive procedure was set to reduce the error below 1% for velocity based
on the average inlet velocity U
avg
. The tolerances for k and elds were 5% and
10%, respectively, based on its maximum values found at the inlet. The accuracy of
the solution on the adapted mesh will be assessed by comparing it with experiments
performed by Martinuzzi et al. [96] and with the CFD results obtained by Lakehal
et al. [82].
Fig. 6.33(a) shows the mesh after 7 cycles of renement (1.16149e+06 cells) where
three main regions of renement can be recognised. Most renement occurred near
the cube (region A) where the ow is most complex and where the highest gradients
reside. Figs. 6.33(b), 6.33(c) and 6.33(d) show that the nest mesh is present near
the leading edges of the cube which are the regions of highest shear. The renement
in front of the cube occurred to resolve the separation. The renement behind the
cube (region C) occurred to resolve the arch vortex. Fig. 6.33(d) shows that the mesh
is also rened to resolve the horse-shoe vortex downstream of the cube. Signicant
166 Further Case Studies
X
Z
Y
(a) Velocity eld (given as
U
U
avg
)
X
Z
Y
(b) Streamlines
X
Z
Y
(c) Pressure coecient
X
Z
Y
(d) Turbulent kinetic energy (given as
k
U
2
avg
)
X
Z
Y
(e) Turbulent dissipation (given as
H
U
3
avg
)
Figure 6.30: Distribution of ow variables in the plane y/H = 0.5
for the wall-mounted cube case, obtained on the nal
adapted mesh (1.16149e+06 cells)
6.5 Wall-Mounted Cube 167
Y
Z X
(a) Velocity eld (given as
U
U
avg
)
Y
Z X
(b) Streamlines
Y
Z X
(c) Pressure coecient
Y
Z X
(d) Turbulent kinetic energy (given
as
k
U
2
avg
)
Y
Z X
(e) Turbulent dissipation (given as
H
U
3
avg
)
Figure 6.31: Distribution of ow variables in the plane x/H = 0.5
for the wall-mounted cube case, obtained on the nal
adapted mesh (1.16149e+06 cells)
168 Further Case Studies
Y
Z X
Figure 6.32: Streamlines in the plane x/H = 2 for the
wall-mounted cube case, obtained on the nal
adapted mesh (1.16149e+06 cells)
renement also occurred in the near-wall region (region B) to resolve the boundary
layers properly. Renement in the near-wall region was stopped when the value of
Y
+
dropped below 50, see Fig. 6.33(b), but the cells on which that restriction does
not apply were still rened.
No of cells
H
U
3
avg
|U|H
U
avg
|k|H
U
2
avg
|p|H
0.5U
2
avg
3444 0.0195506 11.1664 0.0911675 3.11114
12588 0.0936529 22.6795 0.383472 7.58207
45284 0.354801 43.5974 0.882812 16.1717
150095 1.06293 86.7659 1.78578 32.6592
433616 2.86874 176.786 4.35404 62.4194
850243 6.82605 352.721 10.2637 129.418
1.16149e+06 7.65171 437.867 18.2246 231.578
Table 6.4: Maximum of , velocity gradient, k eld gradient and
pressure gradient elds
Figs. 6.34(a), 6.34(c) and 6.34(e) show that the maximum estimated errors do
not reduce with mesh renement. They are located near the leading cube edges,
Figs. 6.35(a), 6.35(b) and 6.35(c), which are the regions where the gradients of all
elds are highest, Figs. 6.36(a) and 6.36(b), and exhibit singular behaviour, see
Table 6.4, Figs. 6.37(a) and 6.37(b). This causes high over-estimation of the error
for the velocity and k elds because singular gradients prevent the diusion part
of the face residual, Eqn. (4.43), from tending to zero. This happens because the
6.5 Wall-Mounted Cube 169
(a) Final mesh
X
Y
Z
(b) Symmetry plane
(c) Isometric view of mesh at the wall
upstream of the cube
(d) View of the mesh at the wall down-
stream of the cube
Figure 6.33: Mesh after 7 cycles of renement for the
wall-mounted cube case (1.16149e+06 cells)
170 Further Case Studies
Velocity error
10
3
10
4
10
5
10
6
10
7
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Estimated error
(a) Maximum velocity error
Velocity error
10
3
10
4
10
5
10
6
10
7
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Estimated error
(b) Mean velocity error
k error
10
3
10
4
10
5
10
6
10
7
10
2
10
3
no of cells
m
a
x

e
r
r
o
r

[
%
]
Estimated error
(c) Maximum k error
k error
10
3
10
4
10
5
10
6
10
7
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Estimated error
(d) Mean k error
Epsilon error
10
3
10
4
10
5
10
6
10
7
10
2
10
3
10
4
10
5
10
6
no of cells
m
a
x

e
r
r
o
r

[
%
]
Estimated error
(e) Maximum error
Epsilon error
10
3
10
4
10
5
10
6
10
7
10
1
10
2
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Estimated error
(f) Mean error
Figure 6.34: Variation of estimated errors with adaptive mesh
renement for the wall-mounted cube case (errors are
given as percentage of U
avg
, k
max
at inlet and
max
at
inlet)
6.5 Wall-Mounted Cube 171
X
Y
Z
(a) Velocity error
X
Y
Z
(b) k error
X
Y
Z
(c) error
Figure 6.35: Remaining estimated errors after 7 cycles of
renement (errors are given as percentage of U
avg
,
k
max
at inlet and
max
at inlet, respectively)
Estimated errors are plotted as a weighted average of
face errors.
172 Further Case Studies
X
Y
Z
(a) Velocity gradient
|U|H
U
avg
X
Y
Z
(b) k eld gradient
|k|H
U
2
avg
Figure 6.36: Regions of highest gradients after 7 cycles of
renement
6.5 Wall-Mounted Cube 173
Magnitude of velocity gradient
1.0 1.1 1.2 1.3 1.4 1.5
0.0
0.2
0.4
0.6
0.8
1.0
1.2
y/H
m
a
g
G
r
a
d
U

/
1
0
2
cycle1
cycle3
cycle5
cycle6
cycle7
(a) Velocity gradient (given as
|U|H
U
avg
)
Magnitude of k field gradient
1.0 1.1 1.2 1.3 1.4 1.5
0.0
1.0
2.0
3.0
4.0
5.0
6.0
7.0
8.0
y/H
m
a
g
G
r
a
d
K
N
o
r
m
cycle1
cycle3
cycle5
cycle6
cycle7
(b) k eld gradient (given as
|k|H
U
2
avg
)
Ux
1.0 1.2 1.4 1.6 1.8 2.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
y/H
U
x Measurements
cycle1
cycle3
cycle6
cycle7
(c) U
x
(given as
U
x
U
avg
)
Uy
1.0 1.2 1.4 1.6 1.8 2.0
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
y/H
U
y
Measurements
cycle1
cycle3
cycle6
cycle7
(d) U
y
(given as
U
y
U
avg
)
Uz
1.0 1.2 1.4 1.6 1.8 2.0
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
0.0
y/H
U
z
cycle1
cycle3
cycle5
cycle6
cycle7
(e) U
z
(given as
U
z
U
avg
)
Cp
1.0 1.2 1.4 1.6 1.8 2.0
-1.6
-1.4
-1.2
-1.0
-0.8
-0.6
-0.4
-0.2
0.0
y/H
C
p
cycle1
cycle3
cycle5
cycle6
cycle7
(f) C
p
(given as
PP
atm
0.5U
2
avg
)
k
1.0 1.2 1.4 1.6 1.8 2.0
0.0
0.1
0.2
0.3
y/H
k
cycle1
cycle3
cycle5
cycle6
cycle7
(g) k (given as
k
U
2
avg
)
epsilon
1.0 1.1 1.2 1.3 1.4 1.5
0.0
1.0
2.0
3.0
4.0
5.0
6.0
7.0
y/H
e
p
s
i
l
o
n
cycle1
cycle3
cycle5
cycle6
cycle7
(h) (given as
H
U
3
avg
)
Figure 6.37: Proles of ow variables taken at
x
H
= 0,
z
H
= 0.5
(above the corner at which the leading edges meet)
174 Further Case Studies
dierence between gradients in Eqn. (4.43) increases, while the |x
N
x
P
| term in
Eqn. (4.35) decreases by almost the same factor thus making the estimated error
not tend to zero. Figs. 6.37(c), 6.37(d) and 6.37(e) show that the velocity eld tends
to its mesh independent value near the leading corner of the cube even though the
estimated error is highest there. The k eld also tends to its mesh independent value
there, see Fig. 6.37(g), even though the estimated error does not reduce with mesh
renement. The maximum estimated error, Fig. 6.34(e), increases with mesh
renement because the eld exhibits singular behaviour near the leading cube
edges, see Table 6.4 and Fig. 6.37(h), which is a result of the singular behaviour of
the velocity gradient there, see Fig. 6.36(a), Table 6.4 and Fig. 6.37(a). Average
estimated errors for the velocity and k elds reduce slowly during the last three
cycles, see Figs. 6.34(b) and 6.34(d), because there still exist high errors in the
boundary layers which cannot be further rened because of the Y
+
limit. Fig. 6.34(f)
shows that the average estimated error increases with mesh renement and it is
believed that the reason for this behaviour are the remaining errors in the boundary
layers and the singular behaviour of the eld near the leading cube edges.
No of cells C
F
X
R
H
X
F
H
3444 1.49 2.35 0.391815
12588 1.64 3.00 0.32
45284 1.83 2.65 0.5
150095 1.931 2.65 0.57
433616 1.95 2.65 0.67
850243 1.96 2.65 0.63
1.16149e+06 1.97 2.65 0.63
Lakehal et al. 2.18 0.65
Measurements 1.04 1.61
Table 6.5: Magnitude of the force acting on the cube and the
lengths of vortices downstream and upstream of the
cube
The magnitude of the force acting on the cube is another indicator of the achieved
accuracy which is monitored. Unfortunately, it is not given by Lakehal [82] nor
Martinuzzi et al. [96]. The magnitude of the force, given in a form:
C
F
=
|F|
0.5U
2
avg
H
2
2
6.5 Wall-Mounted Cube 175
is shown in Table 6.5. It changes rapidly during the rst four cycles of renement
while the mesh is still not ne enough to capture the separations around the cube
accurately.
The predicted length of the separation region downstream of the cube,
X
R
H
in
Table 6.5, is signicantly larger than the measured value by Martinuzzi et al. [96]
which is
X
R
H
= 1.61. It is also larger than
X
R
H
= 2.18 as predicted by Lakehal
et al. [82] by using the same turbulence model. This discrepancy suggests that the
maximum error tolerances set for the adaptive calculation are too high which results
in the mesh not being ne enough to capture the separation accurately. Lakehal
et al. [82] have not proven that their results are mesh-independent which may also
be the cause of the above discrepancy. The length of the upstream separation,
X
F
H
in
Table 6.5, is in good agreement with the results of Lakehal et al. The nal adapted
mesh is ner than the mesh used by Lakehal and is the most probable cause of the
small discrepancy in predicting the separation upstream of the cube.
Cp
-1.6 -1.4 -1.2 -1.0 -0.8 -0.6 -0.4 -0.2 0.0
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
1.1
x/H
C
p
Measurements
cycle1
cycle3
cycle6
cycle7
(a) Upstream of the cube
y
H
= 0,
z
H
= 0
Cp
-3.6 -3.2 -2.8 -2.4 -2.0 -1.6 -1.2 -0.8 -0.4
-0.8
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
0.0
0.1
z/H
C
p
Measurements
cycle1
cycle3
cycle6
cycle7
(b) Beside the cube
x
H
= 0.5,
y
H
= 0
Cp
1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0
-0.5
-0.4
-0.3
-0.2
-0.1
0.0
0.1
x/H
C
p
Measurements
cycle1
cycle3
cycle6
cycle7
(c) Downstream of the cube
y
H
= 0,
z
H
= 0
Figure 6.38: C
p
on the bottom wall
176 Further Case Studies
Figs. 6.38(a), 6.38(b) and 6.38(c) show the pressure proles on the bottom wall
the cube. The dierences between the proles for the sixth and seventh cycle of
adaptive renement are small. The agreement between the CFD and the mea-
sured proles improves with mesh renement, especially beside the cube as shown
in Fig. 6.38(b). It is poor in the regions where separations are wrongly predicted.
Ux
1.0 1.2 1.4 1.6 1.8 2.0
-0.8
-0.4
0.0
0.4
0.8
1.2
1.6
y/H
U
x Measurements
cycle1
cycle3
cycle6
cycle7
(a) x velocity component
x
H
= 0.5,
z
H
= 0
(above the centre of the top face) (given as
U
x
U
avg
)
Uy
1.0 1.2 1.4 1.6 1.8 2.0
-0.1
0.0
0.1
0.2
0.3
y/H
U
y
Measurements
cycle1
cycle3
cycle6
cycle7
(b) y velocity component
x
H
= 0.5,
z
H
= 0
(above the centre of the top face) (given as
U
y
U
avg
)
Uz
0.0 0.4 0.8 1.2 1.6 2.0
-0.5
-0.4
-0.3
-0.2
-0.1
0.0
y/H
U
z
Measurements
cycle1
cycle3
cycle6
cycle7
(c) z velocity component
x
H
= 0.5,
z
H
= 1
(given as
U
z
U
avg
)
k
1.0 1.2 1.4 1.6 1.8 2.0
0.0
0.1
0.2
y/H
k
Measurements
cycle1
cycle3
cycle6
cycle7
(d) Turbulent energy k
x
H
= 0.5,
z
H
= 0
(above the centre of the top face) (given as
k
U
2
avg
)
Figure 6.39: Velocity and turbulent energy k proles
Figs. 6.39(a) and 6.39(b) show that the velocity proles above the centre of the
top cube face do not change between the last two cycles of renement. The velocity
in the separation zone is under-predicted by the CFD calculation, which was also
the case in the calculations by Lakehal et al. [82]. The velocity in the z direction
beside the cube, depicted in Fig. 6.39(c), is predicted well away from the cube but
the horse-shoe vortex is under-predicted. Turbulent kinetic energy has undergone
rapid changes near the cube, Fig. 6.39(d), and its maximum is in good agreement
6.6 Summary and Conclusions 177
with the measured prole but it is more diused.
The above evidence shows that the velocity, pressure and k elds are near mesh-
independence. This is not the case for the eld which exhibits singular behaviour
near the leading edges of the cube. The mesh is highly rened in the regions of
high gradients and has remained coarse elsewhere. A uniform mesh after 7 cycles
of renement would consist of 9.028e8 cells instead of 1.16149e6. Even though the
% of maximum error
Mesh 0-10 10-20 20-30 30-40 40-50 50-60 60-70 70-80 80-90 90-100
Starting 86.71 1.16 0.58 0.32 0.26 0.41 0.77 0.095 0.32 0.018
Final 96.12 0.33 0.21 0.22 0.085 0.024 0.0072 0.0047 5e-4 8.3e-5
Table 6.6: Distribution of estimated velocity error on the faces
renement is highly localised, the mesh has not become more optimal, see Table 6.6,
because the percentage of faces with very low error has increased after the rene-
ment. This happens because the maximum estimated velocity error near the leading
cube edges does not reduce as expected.
6.6 Summary and Conclusions
The mesh renement procedure described in Chapter 5 was tested on a set of cases
of engineering interest.
The procedure was found capable of producing solutions which were in good
agreement with the benchmark solutions for laminar ows and the nal adapted
meshes had much smaller numbers of cells than the benchmark meshes.
The calculation using a low-Re turbulence model has produced a mesh which is
very ne near the walls and mostly rened in the direction of high gradients. This
has resulted in a highly directional renement and high savings on the number of
cells when compared to the benchmark solution.
Similar patterns of renement in the near-wall regions were observed in the
calculation using a high-Re turbulence model but the renement of near-wall cells
was blocked in the direction normal to the wall for Y
+
< 50 even though the errors
there were still above the required upper limit.
The fact that the FREE over-estimates the error in the diusion-dominated parts
178 Further Case Studies
of the ow makes the procedure produce over-rened meshes there. It was also found
that the error estimator severely over-estimates the error near sharp corners where
solution gradients tend to innity and prevent the estimated error from tending
to zero with mesh renement. Analyses of errors on the faces have shown that
the renement procedure also generates faces with low errors which could only be
removed by some coarsening procedure.
Chapter 7
Adaptive Polyhedral Mesh
Generation
7.1 Introduction
An error driven adaptation procedure for CFD calculations on hexahedral meshes
was described and tested in the preceeding two chapters. The procedure is dependent
on the use of auxiliary criteria which are introduced in order not to generate split-
hexahedron cells in the regions where they can reduce the discretisation accuracy.
In this chapter an adaptive mesh generation technique for polyhedral meshes will
be presented.
Polyhedral meshes consist of cells of arbitrary shapes, for which the distribution
of nodes is adjusted to achieve the required accuracy. After the distribution of nodes
is known, it is supplied to the mesh generator to generate a new mesh. In order
to achieve this, a polyhedral mesh generator based on Delaunay triangulation was
developed in the present study and will be presented in this chapter.
The chapter is organised as follows. A literature survey of mesh generation
methods is given in Section 7.2. The theory behind the Voronoi polygons and the
corresponding Delaunay Triangulation will be given in Section 7.3. The algorithm
used to calculate the Delaunay Triangulation will be described in Section 7.3.1 along
with the possible degenerate situations and the remedies for them. Polyhedral mesh
generation will be described in Section 7.5.
A comparison of accuracies and computational times obtained on dierent mesh
types will be discussed in Section 7.5.1.
179
180 Adaptive Polyhedral Mesh Generation
A mesh adaptation procedure for polyhedral meshes will be presented in Sec-
tion 7.6. The main parts of the procedure are: estimation of the error on the faces
of the polyhedral mesh and generation of a new polyhedral mesh. The performance
of the procedure will be tested in Section 7.6.1.
Conclusions and some closing remarks will be given in Section 7.7.
7.2 Literature survey
As numerical methods become applicable to more complicated problems and com-
puter resources advance quickly, mesh generation has emerged as the major bottle-
neck [155]. Tetrahedral mesh generators have reached a high degree of automation
but tetrahedral meshes are not a preferable type of mesh because of low accuracy.
Hexahedral mesh generators still require substantial user intervention to generate a
mesh of good quality. The aim to achieve good accuracy and automate the mesh
generation process has brought interest into developing polyhedral mesh generators.
Considerable research has been done on mesh generation and it will be reviewed
here considering tetrahedral mesh generation rst, followed by hexahedral mesh
generation. Polyhedral mesh generation and applications of Voronoi meshes will be
discussed at the end of this section.
Tetrahedral mesh generation methods can be divided into two main classes:
Advancing front methods (AFT) consist of element additions into the
mesh by marching into a yet ungridded space and creating elements one by one.
The region between the gridded and the ungridded regions is called the front.
At the early stage of development AFT methods were designed to generate
meshes from a set of previously determined set of vertices [32, 120] which limits
the quality of generated meshes. Over the years, more advanced generators
have appeared which generate vertices during mesh generation [77, 92, 118].
This improvement has got a benecial inuence on the quality of generated
meshes. Optimal data structures have also been implemented which reduce
the complexity of mesh generation to O(N log(N)), where N is the number of
tetrahedra, and the time required to generate the mesh [26, 77]. AFT has also
been ported to parallel computers [92, 156].
AFT is a reliable and robust method for generating good quality tetrahedral
7.2 Literature survey 181
meshes with pre-determined cell sizes but it is limited to tetrahedral meshes
only which are not a preferable type of mesh from the aspect of accuracy of
the FV method.
Delaunay methods are based on the property that a set of mesh points in
space can be connected into a triangulation in 2D or tetrahedra in 3D with the
properties dened in Section 7.3. At the early stages of development Delau-
nay methods were designed to generate meshes from a pre-dened set of points
used to calculate the Delaunay structure and by removing the tetrahedra with
centroids outside the domain from the mesh [33]. Such methods work well for
convex geometries while on concave ones they may result in incorrect bound-
ary description. The fact that the original boundary triangulation must be
recovered after mesh generation also has an adverse impact on mesh quality.
The quality and reliability of Delaunay mesh generators was further improved
by enabling automatic creation of internal vertices and by implementing pro-
cedures which can recover the original boundary surface from the Delaunay
structure for general geometries [5052, 154]. One of the adverse eects on
mesh quality associated with Delaunay methods is the appearance of at tetra-
hedra called slivers which appear in 3D applications. Joe [78] has replaced the
circumsphere criterion with a Max-Min solid angle criterion, ensuring that all
solid angles are maximised, which improved the quality of generated meshes at
the expense of time required to complete the process. He has shown that for
2D problems the Max-Min angle triangulations and the Delaunay triangula-
tions are identical, thus producing well shaped triangles. Avoidance of slivers
has also been discussed in [33].
An advantage of Delaunay methods is that points which form a mesh can be
connected into a valid triangulation automatically. The main disadvantages of
the method is the generation of at slivers and the recovery of the boundary
from Delaunay structure.
Octree methods are an approach where the computational domain is repre-
sented as an octree structure which is obtained by recursive subdivision of a
cube which encompasses the entire domain into smaller cubes called octants.
The octants are subdivided until the required mesh resolution is achieved.
When the octree structure is nished the mesh is generated by decompos-
182 Adaptive Polyhedral Mesh Generation
ing the octants into tetrahedra. Examples of this approach can be found in
[136, 157]. This methodology can be extended to generate meshes consisting
of dierent cell shapes. The advantage of octree methods is that they reduce
the number of searching operations because they are localised to octants. Be-
cause the tetrahedra are generated by decomposing octants, it mostly produces
tetrahedra with right angles which may locally be of low quality.
An extensive review of tetrahedral mesh generation methods was presented by
L ohner in [91].
Even though there has been substantial eort in developing hexahedral mesh gen-
erators they are still not as reliable as required. Hexahedral mesh generation meth-
ods can be classied into inside-out, outside-in and domain decomposition methods.
Inside-out methods generate meshes by lling the interior of the domain
with squares or hexahedra of the desired size which are contained within the
domain. The mesh is closed by projecting points on the boundary to form
boundary cells. After the mesh is connected a smoothing procedure is applied
to improve its quality. Examples can be found in [135, 152]. A diculty
associated with this approach is the control of mesh quality near the boundary
where it may generate small and skewed cells. This is not desirable in case
case of viscous ow computations as high errors may reside in the boundary
layers.
Outside-in methods. Paving is an example of an outside-in method, which
generates quadrilateral meshes by layering the geometry with rows of cells
starting from the boundary towards the interior [25, 158]. The extension of
the method to the 3D space was introduced by Cass et al. [31]. It does not
require any subdivision of the domain and it generates good quality meshes
near the boundary but their quality may deteriorate within the domain where
two or more layers meet.
Indirect methods which generate quadrilateral meshes from triangular meshes
by merging triangles into quadrilaterals were also developed [110, 160]. In
order to be able to produce an all-quadrilateral mesh the boundary surface
must be discretised in an even number of segments.
Outside-in methods based on dual graphs which represent the connections
7.2 Literature survey 183
between the hexahedra in the mesh have become popular recently [30, 100,
143]. The mesh is created by advancing from the surface mesh into the interior
forming dual entities whose intersections form a hexahedron. These methods
are still not capable of producing meshes without any user intervention because
during the construction of mesh dual it my happen that dual entities intersect
in an inappropriate manner resulting in an invalid mesh.
In general, Outside-in methods generate high-quality meshes near the bound-
ary and the rotation or translation of the given geometry results in the same
mesh topology. The complexity of meshing procedures is the main drawback
of the method and the reason why this type of generators are still at early
stages of their development.
Domain decomposition methods are another important group based on
decomposing the domain into primitive polyhedra which can be lled with hex-
ahedra [88, 89, 124, 125]. A method commonly used for meshing subdomains
is midpoint subdivision. In order to make the meshes in subregions match at
their boundaries an integer programming technique can be used for determin-
ing the number of divisions of each edge [89]. Decomposition of the domain is
facilitated by medial axes positioned in the middle between the opposite sur-
faces. Some authors have used copying of meshes from a template, smoothing
and sweeping of 2D meshes through a 3D space to generate hexahedral meshes
in the subdomains [81, 155].
Domain decomposition methods produce meshes with discontinuities in regions
where the subdomains meet which has an adverse eect on the accuracy at
these regions.
In [142] Tautges gives a review of the state of art of the hexahedral meshing.
Mapping techniques along with an extensive overview of the unstructured mesh
generation techniques can be found in Thompson et al. [144].
The development of Finite Volume solvers has enabled the use of cells of arbi-
trary topology, i.e. [36, 68]. Such polyhedral meshes can consist of cells of dierent
shape depending on the mesh generation method and the complexity of the domain.
Sampl [131] presented a mesh generation method using the Delaunay method to
determine the medial surface within the domain. Regions between the boundary
184 Adaptive Polyhedral Mesh Generation
and the medial surface are lled with cells by creating layers of cells starting from
the boundary and going towards the interior. The method may produce low quality
cells near the medial surface which must be topologically cleansed to provide a valid
mesh. The method is considered very time-consuming due to large number of steps
required to generate the mesh. An example of a method similar to paving [31] can
be found in Hmorph developed by Owen et al. [109] to generate a hexahedra-
dominant mesh from a background tetrahedral mesh. The mesh generation process
starts by generating a surface mesh of quadrilaterals, which are then decomposed
into triangles which then serve for tetrahedral mesh generation; the tetrahedra are
then rearranged to get the best topology to form a hexahedra starting from the
boundary towards interior. The method is capable of creating meshes of good qual-
ity but at the expense of time required to perform all necessary tests before creating
a hexahedron. Another method starting from a background tetrahedral mesh which
generates mixed meshes of hexahedra, pentahedra and tetrahedra by employing dual
graphs was discussed by Meshkat et al. [98]. The method relies on the existence of
a dual graph of the tetrahedral mesh in which dierent topologies can be found, eg.
dual graph of hexahedra decomposed into tetrahedra or pentahedra decomposed into
tetrahedra. By searching through the tetrahedral mesh it is possible to recognise
these topologies and merge tetrahedra into hexahedra or pentahedra. The exam-
ples show variable success depending on the size of the tetrahedral mesh and the
geometric complexity.
Meshes of arbitrary topology can also be generated using the Delaunay technique
where the dual of the triangulation so-called Voronoi Polyhedra are used for com-
putation, Fig. 7.1. A FVM method for Voronoi meshes was presented by Taniguchi
et al. [139]. In [140] the methodology was tested on a turbulent ow around a car.
The performance of the method with regard to the calculation time was found sim-
ilar to that for structured hexahedral mesh. The advantage of polyhedral meshes
was found in mesh generation as it was less time consuming then to generate a
hexahedral mesh. A FV method using polyhedral meshes for simulation moving
fronts during mold injection and casting was presented by Maliska et al. [94]. An-
other application of Voronoi meshes for multi-material problems was developed by
Dukowicz et al. [40]. The polyhedral mesh was used due to its ability to adapt to
the Lagrangian interface without reducing the quality of the mesh. Mishev [99] has
analysed properties of the second-order accurate cell-centred Finite Volume Method
7.3 Voronoi Polygons and Delaunay Triangulation 185
on Voronoi meshes and has proven that the expected convergence is between rst
and second-order which is in agreement with ndings from Chapter 3.
Even though modern mesh generation tools can generate tetrahedral meshes re-
liably and quickly, they are not a preferable type of mesh from the computational
viewpoint because of their low accuracy. By contrast, good quality hexahedral
meshes are more accurate but reliable methods for their automatic generation are
still nonexistent for complicated geometries appearing in engineering applications.
Polyhedral meshes based on Voronoi cells can be generated automatically without
much intervention from the analyst and should be of a good quality even for complex
geometries. Polyhedral meshes oer a good basis for adaptive mesh generation with
highly localised renement while the quality of polyhedral cells should remain pre-
served due to the property that a polyhedral face is a nearly-perpendicular bisector
of a line connecting centres of adjacent cells. Polyhedral meshes are considered to be
a good compromise between the high accuracy which can be achieved on hexahedral
meshes and the ease of generation of tetrahedral meshes.
7.3 Voronoi Polygons and Delaunay Triangulation
For a given set of points P
n
in plane, a Dirichlet tessellation is a partition of the
plane into a number of convex polygons, one per point, Fig. 7.1. Each point is
assigned a territory that is the area of the plane closer to that point than to any
other point in the set. This tessellation of non-overlapping convex polygons, called
Voronoi Polygons, covers the whole domain [28]. The Voronoi Polygon V
i
around
the point P
i
is dened as [153]:
V
i
= {P : P P
i
< P P
j
, j = i} (7.1)
where P is the set of all points within the Voronoi Polygon V
i
and . represents
the Euclidian distance between the two points. The Voronoi Polygon is formed by
points in P which are closer to point P
i
than to any other point in the set P
n
.
Voronoi Polygons may have nite and innite territories, Fig. 7.1. Polygons with
innite territories are formed around points which are on the so-called convex hull.
A side of the Voronoi Polygon lies midway between the two points forming the two
neighbouring regions. When all the points which form two neighbouring regions
are connected, the result is a triangulation of the convex hull. This triangulation is
186 Adaptive Polyhedral Mesh Generation
P
1
P
i
V
1
Voronoi vertex
Figure 7.1: Delaunay Triangulation (solid lines) and Voronoi
Polygons (dashed lines) for a set of points P
n
(dots)
called a Delaunay Triangulation and for each triangle in the triangulation there exists
an associated vertex of the Voronoi diagram, Fig. 7.1, which is its circumcentre.
Therefore, each vertex of the Voronoi diagram corresponds to only one triangle in
the Delaunay Triangulation. An important property of the Delaunay Triangulation
is that no other point in P
n
, apart from the ones forming a triangle, lie within the
circle centred at this vertex, Fig. 7.2 a). If a point in P
n
was within the circumcircle
P
P
P
P
V
V
2
4
1
3
1
2
V
2
P
3
V
1
P
P
P
2
4
1
a) Delaunay Triangulation b) Non-Delaunay Triangulation
Figure 7.2: Delaunay vs other triangulations
of the triangle, Fig. 7.2 b), this would result in the non-convex Voronoi Polygons
7.3 Voronoi Polygons and Delaunay Triangulation 187
which overlap yielding an invalid Dirichlet Tessellation.
In 3D, the Voronoi diagram is formed of convex polyhedra, one around each
point, and the points form Delaunay tetrahedra.
7.3.1 Algorithm for calculation of the Dirichlet Tessellation
The algorithm for creation of the Dirichlet Tessellation used here is based on the
work of Bowyer [28] and is applicable to both 2D and 3D spaces. It is a sequential
process in which the points in the set P
n
are inserted into the tessellation one
after another. Every point is inserted into the existing tessellation such that the
tessellation is broken rst and then reconnected with the point included in it. The
algorithm for 2D space consists of the following steps [28]:
1. Start the calculation by dening four triangles from the rst three points in
P
n
and an additional point called point at innity, Fig. 7.3. The triangle con-
taining points P
1
, P
2
and P
3
forms the convex hull while other three triangles
( P
1
P
2
N, P
2
P
3
N and P
1
P
3
N) which contain the point at innity have in-
nite areas and they span the whole plane. The Voronoi vertex of the triangle
which forms the convex hull is located at its circumcentre while other triangles
have their Voronoi vertices located at the innity. The data associated with a
triangle is shown in Table 7.1. Every triangle holds information about:
(a) Points forming it
(b) Neighbouring triangles
(c) Voronoi vertex
(d) Information if the triangle is within the convex hull
Triangle Forming points Neighbouring triangles In the hull? Circumcentre
1 P1 P2 P3 2 3 4 yes V1
2 N P1 P2 1 3 4 no
3 N P2 P3 2 4 1 no
4 N P1 P3 1 3 2 no
Table 7.1: Data structure for the triangulation
2. Introduce a new point within the domain.
188 Adaptive Polyhedral Mesh Generation
P
3
P
1
P
2
N
V
1
point at infinity
Figure 7.3: Initial hull for the Delaunay triangulation
3. Determine which Delaunay triangles have to be changed due to the addition
of the point. If the point to be inserted lies within a circumscribed circle of a
triangle, the circle centred at the Voronoi vertex corresponding to the triangle,
the triangle is marked for deletion.
4. Find all the points forming the triangles marked for deletion as these are the
contiguous points to the point which will be inserted.
5. Determine the Delaunay triangles which are the neighbours of the deleted
Delaunay triangles and are not themselves deleted. This information will be
used for reconnection of the tessellation.
6. Determine which points form the new Delaunay triangles. Each new triangle
is formed from the new point and the two points contiguous to that point.
7. Set the information about neighbours both into the newly created triangles
and the already existing ones.
8. Store the new Delaunay triangles and delete the ones removed from the tes-
sellation from computers memory.
9. Repeat steps 2-8 for every new point.
7.3 Voronoi Polygons and Delaunay Triangulation 189
Step 3 is the most time-consuming part of the above algorithm. It requires
operations which are not local in nature and cannot be carried out in an operation
count independent of the total number of points in the tessellation. Therefore, a
naive search would require a O(N
2
) workload. The workload can be minimised using
the following search:
Find a triangle which will be deleted.
Search through its neighbours and check whether they should be deleted as
well. This step is recursive as further neighbours should be searched until no
triangles for deletion can be found.
Finding the initial triangle for the above search does not require much workload if
the points are ordered in a systematic manner. Then the last inserted triangle is a
reasonable starting triangle. To speed up the process, the following search is used:
1. Start the search from the last inserted triangle. Check if the point lies inside
the circumcircle of that triangle. If the point is inside the circle the search is
stopped.
2. Find the distances from the point to the Voronoi vertices corresponding to the
neighbouring triangles.
3. Determine the smallest distance of all and set the searching triangle to the one
corresponding to the smallest distance.
4. Check if the point is inside the circle of the new searching triangle. If it is
inside the circle stop the search or else go to Step 2.
It is important to note that problems can arise in the triangulation procedure
when certain degeneracies occur in the data. The most common degeneracies in 2D
are:
1. Two points are coincident.
2. Three points of a potential triangle lie on a straight line.
3. Four or more points lie on a circle.
190 Adaptive Polyhedral Mesh Generation
The rst degeneracy is easily avoided by rejecting points which are very close to
any of the points which are already in the tessellation. The second degeneracy is
easily detected as it implies that the radius of the formed triangle tends to innity.
It can be alleviated by moving the point to be inserted by a small distance. The
third degeneracy is of a dierent nature than the previous two as it produces a
triangulation which is not degenerate but the Voronoi vertices corresponding to two
or more triangles are coincident. This degeneracy can manifest itself at the latter
stage of the process when the insertion of another point may result in the deletion
of one triangle but not the others which share the same Voronoi vertex. It can cause
breakdown of the algorithm or cause the appearance of Voronoi Polygons which
overlap and are not convex. The problem is caused by the round-o error. In order
to avoid cyclic points from being inserted it is advisable to check whether the point
lies on the circumcircle of any triangles selected for deletion. If it does it is moved
by a small distance. Therefore, it is advisable to insert rst those points which must
have certain positions (i.e. boundary points, corner points) as it may happen that
they have to be moved. When calculating the tessellation in 3D space, an additional
degeneracy appears when the four points forming a potential tetrahedron lie in a
plane.
7.4 Computational mesh
The information provided by the Delaunay method presented in the previous section
is not in a form required for CFD analysis. The mesh for CFD calculations is dened
as follows [93]:
A list of coordinates of mesh vertices.
A list of mesh faces. A face is dened as a list vertex numbers forming it.
A cell is formed from faces in the face list and is given as a list of face numbers
in the face list. Cells are stored in a list.
The boundary is decomposed into a list of patches where the patch corresponds
to a region of the boundary. Each patch contains information about the faces
forming it.
7.5 Polyhedral Mesh Generation 191
Note that the denition of the mesh does not impose any limitations on the shape
of faces and cells.
7.5 Polyhedral Mesh Generation
A polyhedral mesh can be constructed from convex Voronoi Polyhedra. The polyhe-
dra which intersect with the boundary surface are cut by the boundary and only the
parts which are within the domain are taken, Fig. 7.4, to form a closed mesh suitable
for the FV discretisation practice presented in Chapter 3. Because the polyhedra
must be cut near the boundary, the algorithm is dependent on the dimension of the
space considered. Both 2D and 3D cases will be presented here.
B
3
B
4
B
1
P
3
P
4
P
5
P
6
P
7
P
8 P
2
P
1
P
9 P
10
P
11
P
12
P
13
P
14
P
15
P
16
P
17
P
18
B
2
a) Dirichlet Tessellation
b) Polyhedral Mesh
Figure 7.4: Dirichlet Tessellation and polyhedral mesh
The generation of the polyhedral mesh is started when the Delaunay Triangu-
lation is already constructed. There are two main issues which have to be resolved
192 Adaptive Polyhedral Mesh Generation
Delaunay Triangulation point edge face tetrahedron
Dirichlet Tessellation polyhedron face edge Voronoi Vertex
Table 7.2: Relations between objects forming Delaunay
Triangulation and Dirichlet Tessellation
here:
How to construct Voronoi Polyhedra from the available data, Table 7.1, which
is stored as Delaunay triangles instead of Voronoi Polyhedra?
How to cut the polyhedra near the boundary?
It will be recalled that the Voronoi Polyhedra form the Dirichlet tessellation
which is a dual of Delaunay triangulation. This property will be used for generation
of polyhedra. Relations between objects of Delaunay Triangulation and Dirichlet
Tessellation are given in Table 7.2. Fig. 7.4 shows these relations in 2D space, where
the faces of both Delaunay Triangulation and Dirichlet Tessellation are contracted
into edges of Delaunay Triangles and Voronoi Polygons.
Table 7.2 shows that a point in the Delaunay Triangulation corresponds to a
polyhedron in the Dirichlet Tessellation. Therefore, the number of cells in the poly-
hedral mesh is equal to the number of points in the set P inserted into the Delaunay
triangulation. The Voronoi Polyhedra originating from the set of points B forming
the bounding box around the domain are excluded Fig. 7.4.
Another property of the Dirichlet Tessellation which is used for mesh generation
is the fact that there should be a polygonal face around every edge of its corre-
sponding Delaunay Triangulation, see Table 7.2. The number of vertices and faces
of the polyhedral mesh cannot be calculated before the cuts of polyhedra with the
boundary are resolved. Due to this, vertices and faces of the polyhedral mesh are
created during the mesh generation process and stored into their corresponding lists
every time a new vertex or face is created. The process of creating mesh vertices
and faces in the 3D space consists of the following steps:
1. Generate internal vertices. Vertices of the polyhedral mesh which are
within the domain correspond to Voronoi Vertices which are the centres of
circumscribed spheres around tetrahedral cells, Fig. 7.2 a). Only the Voronoi
Vertices which are inside the domain are stored into the list of mesh vertices,
7.5 Polyhedral Mesh Generation 193
Fig. 7.4. Vertices located at the boundary are created during the generation
of internal and boundary faces.
2. Generate internal faces. Table 7.2 shows that faces of Voronoi Polyhedra
correspond to edges of Delaunay Triangulation. This property will be used for
generation of internal faces. In order to simplify and speed up the process, the
following information is created rst:
(a) A set of edges L in the Delaunay Triangulation which are formed by
points forming the domain (set P in Fig. 7.4 a) ).
(b) For every edge in the set L nd which tetrahedra share that edge and
order them such that every tetrahedron shares a face with the previous
and the next one.
Internal faces of the polyhedral mesh are created from Voronoi Vertices of the
tetrahedra around every edge of the set L, Fig. 7.5. If there exist Voronoi Ver-
tices which are outside the domain, only the part of the face within the domain
is retained by calculating coordinates of the boundary vertices at which the
edges connecting two neighbouring Voronoi vertices intersect the boundary,
Fig. 7.5. Every boundary vertex also holds information about the boundary
region it is in. This will be used later to create boundary faces of the mesh.
A word of caution is necessary here. Table 7.2 shows that an edge of the
V
1
V
2
V
3
V
4
V
5
V
6
edge of the tetrahedral mesh
Vertex in region 1 Vertex in region 1
Figure 7.5: Generation of an internal face of the polyhedral mesh
(section in the plane of the face)
polyhedral mesh corresponds to a triangular face in the Delaunay triangula-
tion. From this it follows that an edge of the polyhedral mesh appears in three
194 Adaptive Polyhedral Mesh Generation
dierent polygonal faces created from the edges of a triangular face. In order
Figure 7.6: Tetrahedra sharing a face. The edge of the polyhedral
mesh (thick lines) is perpendicular to the shared
triangular face (red). There exist a polygonal face for
every edge of the triangular face.
not to generate and store the vertex at which the edge of the polygonal face
intersects the boundary more than once, a number of the vertex in the list of
vertices is made available to the triangular face corresponding to that edge of
the polyhedral mesh, Fig. 7.6. This information can be read next time that
edge of the polyhedral mesh is checked to store the vertex into the face of the
polyhedral mesh without storing it into the list of vertices again.
Internal faces of the polyhedral mesh can also intersect edges which dene
borders between two boundary regions of the domain, Fig. 7.7. If this happens,
the intersection is also stored into the face and into the list of vertices. Such
vertices cannot appear more than once and they do not require any special
treatment.
Polyhedral cells sharing a created internal face are known as they correspond
to the points of the set P which form the edge. This is a consequence of the
denition of the Dirichlet Tessellation where there exists one convex polygon
around every point in the Delaunay Triangulation, Table 7.2.
3. Generation of boundary faces is started after the internal faces are known.
7.5 Polyhedral Mesh Generation 195
V
1
V
2
V
3
V
4
V
5
V
6
edge of the tetrahedral mesh
Intersection with an edge
Vertex in region 1
Vertex in region 2
in regions 1 & 2
Figure 7.7: Generation of an internal face including the
intersection of a boundary edge (section in the plane
of the face)
It was mentioned before that every boundary vertex holds information about
boundary regions it is in, Fig. 7.8. By sweeping through the list of cells, it is
possible to create boundary faces for every cell such that all boundary vertices
found in the polyhedron and which are in the same boundary region form a
boundary face. The number of boundary faces per polyhedron is dependent
on the number of boundaries which cut it.
Vertex in region 1
Vertex in region 2
Vertex in regions 1 & 2
Vertex in regions 2 & 3
Vertex in regions 1 & 3
Corner point in regions 1 & 2 & 3
Figure 7.8: Generation of boundary faces (coloured) including
intersections with boundary edges (thick lines) and a
corner point
Points which dene corners at which three or more boundary regions meet
require more attention. Such points are not yet stored into the list of vertices
196 Adaptive Polyhedral Mesh Generation
but they must be kept for the sake of geometry denition. After the vertex
is stored into the list of vertices, boundary faces can be created such that the
new vertex is added into boundary faces created from boundary points in the
same boundary region. An example can be found in Fig. 7.8.
Degeneracies discussed in Section 7.3 have an impact on the quality of Voronoi
Polyhedra. If ve or more points in the set P are nearly cospherical, the Voronoi
Vertices of tetrahedra formed by those points are nearly coincident. If that happens
the edges and/or faces of the polyhedral mesh have negligible size and are removed
from the polyhedral mesh.
Figure 7.9: An example of a 3D mesh for a cube with side length
l = 1m
The algorithm for generation of meshes in 3D space is currently limited to box-
like domain, see Fig. 7.9, because the support for arbitrary surfaces is not imple-
mented. The procedure would not change for arbitrary geometries and the only
dierence would be in calculating the intersections between the surface and an edge
of the polyhedral mesh.
The algorithm for mesh generation in 2D space diers from the 3D one as follows:
1. Internal faces. Faces and edges are the same structure in 2D space for both
Voronoi Polygons and Delaunay Triangles. An internal face of the polyhedral
mesh is therefore a perpendicular bisector of an edge in L connecting Voronoi
Vertices of the triangles adjacent to the edge, Fig. 7.4. If there exist Voronoi
7.5 Polyhedral Mesh Generation 197
Vertices outside the domain only the part of the face which is within the
domain is retained.
2. Boundary faces are constructed using the same procedure as in 3D case but
with a dierence that there should exist only two vertices which are in the
same boundary region, Fig. 7.4.
7.5.1 A comparison of accuracy on Quadrilateral, Polygonal
and Triangular Meshes
The accuracy of the FV discretisation practice on quadrilateral, polygonal and tri-
angular meshes will be tested on two cases, namely the Planar Jet case described
in Chapter 4 and the Flow Over a Cavity from Chapter 6. Variation of the exact
discretisation error will monitored for all types of meshes.
Planar Jet
This case has already been introduced in Section 4.5.1 and used for testing of the
FREE in Chapter 4 and the mesh adaption procedure presented in Chapter 5. The
same discretisation procedures are applied here.
The purpose of this test is to compare the accuracy achievable on meshes of
dierent cell types, namely; quadrilateral meshes, polyhedral meshes mainly con-
sisting of hexagons and triangular meshes. The time required to obtain the solution
on dierent mesh types will also be compared.
The comparison was conducted on ve meshes for every cell type and their sizes
are given in Table 7.3. They were created such that the rst quadrilateral and
polygonal meshes have a similar number of cells. The triangular meshes are duals
of the polygonal mesh and are expected to have twice as many cells, see Fig. 7.4, as
present for ner meshes. The meshes corresponding to the second row of Table 7.3
are shown in Figs. 7.10(a), 7.10(b) and 7.10(c).
The exact velocity errors obtained on the meshes in Figs. 7.10(a), 7.10(b) and
7.10(c) are shown in Figs. 7.11(a), 7.11(b) and 7.11(c). The error eld on the quadri-
lateral mesh, Fig. 7.11(a), is smoother than on other types of meshes. The error
elds on the polygonal mesh, Fig. 7.11(b), and triangular mesh, Fig. 7.11(c), have
peaks in the regions where the regularity of the mesh is impaired. It is believed
that this is a consequence of the fact that the approximation of the surface normal
198 Adaptive Polyhedral Mesh Generation
No Quadrilaterals Polygons Triangles
1 18 19 20
2 72 59 86
3 288 211 362
4 1152 782 1448
5 4608 3063 5898
Table 7.3: Number of cells for dierent types of meshes (Jet case)
(a) Quadrilateral mesh (288
cells)
(b) Polygonal mesh (211
cells)
(c) Triangular mesh (362
cells)
Figure 7.10: Meshes used for the jet case
7.5 Polyhedral Mesh Generation 199
(a) Quadrilateral mesh (288 cells)
(b) Polygonal mesh (211 cells)
(c) Triangular mesh (362 cells)
Figure 7.11: Exact velocity errors for the jet case [m/s]
200 Adaptive Polyhedral Mesh Generation
gradient required for the discretisation of the diusion term, Section 3.3.2, becomes
rst-order accurate on non-uniform meshes resulting in increased errors in the re-
gions where the mesh is not uniform.
Planar Jet - Velocity Error
10
1
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Quadrilateral
Polygonal
Triangular
(a) Variation of the maximum exact
error in the velocity eld (|U
norm
| =
2.474m/s)
Planar Jet - Velocity Error
10
1
10
2
10
3
10
4
10
-2
10
-1
10
0
10
1
No of cells
m
e
a
n

e
r
r
o
r

[
%
]
Quadrilateral mesh
Polygonal mesh
Triangular mesh
(b) Variation of the mean exact error in
the velocity eld (|U
norm
| = 2.474m/s)
Solution Times
10
1
10
2
10
3
10
4
10
-1
10
0
10
1
10
2
10
3
no of cells
T
i
m
e
Quadrilateral mesh
Polygonal mesh
Triangular mesh
(c) Time required to obtain the solution
on dierent mesh types (s)
Fig. 7.12(a) shows that for the same number of cells the maximum exact er-
ror is largest on triangular meshes while it is at the same level for polygonal and
quadrilateral meshes when the mesh becomes ner. The mean exact error depicted
in Fig. 7.12(b) also behaves according to the ndings from Section 3.6. The mean
error is the smallest on quadrilateral meshes and the highest on triangular ones. On
ner meshes all mesh types tend to the same curve which is the inuence of the
approximations used for deriving the analytical solution for this case, Section 4.5.
The calculations were terminated when the residuals of both pressure and veloc-
ity were below the 10
8
. The pressure equation is solved using the ICCG solver [67],
the momentum equation is solved using Bi-CGSTAB solver [147] and the pressure-
velocity coupling is treated using the SIMPLE algorithm described in Section 3.8.
Fig. 7.12(c) shows the times obtained for all mesh types. Triangular and quadrilat-
eral meshes require similar time while polygonal meshes require more time for the
7.5 Polyhedral Mesh Generation 201
same number of cells. The times required on dierent mesh types tend to the same
curve as the mesh becomes ner from which it follows that only the number of cells
but not their type inuence the performance of the solvers of linear equations.
Flow Over a Cavity
This problem has been introduced in Section 6.2 and is used to test the accuracy
of dierent mesh types on a more complex example than the previous one. Four
meshes of each type, summarised in Table 7.4, were used to determine which gives
the best accuracy and to monitor the reduction of error with mesh renement. The
convergence of the predicted pressure drop coecient will also be monitored.
Quadrilateral and polygonal meshes in each row of the Table 7.4 were generated
to have a similar number of cells while the triangular mesh is a dual of the polyg-
onal mesh and is expected to have twice as many cells as the polygonal mesh. A
quadrilateral, a polygonal and a triangular meshes corresponding to the second row
in the Table 7.4 are shown in Fig. 7.12.
No Quadrilaterals Polygons Triangles
1 594 556 950
2 2376 2159 3996
3 9504 8487 16336
4 38016 33352 65430
Table 7.4: Number of cells for dierent types of meshes
Variations of maximum and mean exact errors in the velocity eld for dier-
ent types of meshes are given in Figs. 7.13(a) and 7.13(b), respectively. Triangular
meshes have the largest exact error for the same number of cells, as expected. The
maximum exact errors found on quadrilateral meshes are almost the same as on
the polygonal mesh. These ndings are in agreement with the analysis given in Sec-
tion 3.6. The unexpected behaviour of the maximum exact error on the quadrilateral
mesh between the rst and the second cycles is attributed to inadequate resolution
and non-uniformity of the mesh near the stagnation zone, see Figs. 7.12(d) and
7.14(a). The triangular mesh has the largest average exact error for a given number
of cells and requires almost 10 times more cells to achieve the same accuracy as
on the quadrilateral mesh. The average error on polygonal meshes is much closer
202 Adaptive Polyhedral Mesh Generation
(d) Quadrilateral mesh (2376 cells)
(e) Polygonal mesh (2159 cells)
(f) Triangular mesh (3996 cells)
Figure 7.12: Quadrilateral, polygonal and triangular meshes used
for comparison
to the quadrilateral mesh result, requiring approximately twice as many cells to
achieve the same accuracy. The reduction of the average exact error is very close to
the theoretical second-order reduction rate for all types of meshes and it deteriorates
when the mesh becomes ner. This is probably caused by the remaining error in
benchmark solution as its inuence is larger on ne meshes.
A comparison of the pressure drop coecients (C
p
) given in Table 7.5 and
Fig. 7.16 shows that on the quadrilateral and polygonal meshes C
p
tends to the
mesh-independent value quicker than their triangular counterparts. The magnitude
of the error is almost the same for quadrilateral and polygonal meshes for all mesh
sizes but their trends to the mesh independence are dierent. It is believed that
dierent trends are caused by dierent distributions of the pressure error within the
cavity and the channel, Figs. 7.15(a), 7.15(b) and 7.15(c). The error on the quadri-
lateral mesh is close to zero within the channel because the mesh is uniform and
7.5 Polyhedral Mesh Generation 203
Exact velocity error
10
2
10
3
10
4
10
5
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Quadrilateral mesh
Polygonal mesh
Triangular mesh
(a) Maximum error
Exact velocity error
10
2
10
3
10
4
10
5
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Quadrilateral mesh
Polygonal mesh
Triangular mesh
(b) Mean error
Figure 7.13: Variation of the exact velocity error on dierent
types of meshes for the cavity case. Errors are given
as percentage of average inlet velocity U
avg
.
(a) Quadrilateral mesh (2376 cells)
(b) Polygonal mesh (2159 cells)
(c) Triangular mesh (3996 cells)
Figure 7.14: Magnitude of the exact velocity error (given as
percentage of average inlet velocity U
avg
)
204 Adaptive Polyhedral Mesh Generation
(a) Quadrilateral mesh (2376 cells)
(b) Polygonal mesh (2159 cells)
(c) Triangular mesh (3996 cells)
Figure 7.15: The exact pressure error (given as percentage of
p
max
=
1.64
2
U
2
avg
)
Pressure drop coecients (C
p
)
Quadrilateral Polygonal Triangular
Cells C
p
Cells C
p
Cells C
p
594 1.43128 556 1.59121 950 1.96345
2376 1.49723 2159 1.53935 3996 1.67216
9504 1.51544 8487 1.52665 16336 1.56432
38016 1.51982 33352 1.52333 65430 1.53555
Mesh independent C
p
= 1.5203
Table 7.5: A comparison of pressure drop for dierent types of
meshes
7.6 Mesh adaptation on Polyhedral Meshes 205
Cp
10
2
10
3
10
4
10
5
1.4
1.5
1.6
1.7
1.8
1.9
2.0
no of cells
C
p
Quadrilateral mesh
Polygonal mesh
Triangular mesh
Figure 7.16: Scaling of the pressure drop for dierent types of
meshes
ow-aligned there and consequently the variations of velocity and pressure elds can
be captured exactly by the second-order accurate FV approximation. It is negative
within the cavity and thus causes the pressure drop to be smaller than required.
On the polygonal and triangular meshes the error is negative within the part of the
channel to the right of the cavity which therefore causes the pressure drop to be
higher than the exact pressure drop. The pressure error on the triangular mesh is
caused by the error coming from the evaluation of mass uxes through the faces
which is not zero, Eqn. (3.89), and results in errors in velocity and pressure elds.
The error on the polygonal meshes exists in the regions where the mesh is non-
uniform (the symmetry of the channel and the boundary layers) because the errors
committed on mesh faces do not cancel there.
7.6 Mesh adaptation on Polyhedral Meshes
A mesh adaption technique developed for polyhedral meshes is an adaptive mesh
generation method because after the error estimation is performed a new mesh
is generated with the density of the nodes increased in the regions of high error
using the mesh generator described in Section 7.5. This is achieved by inserting
points into the Delaunay Triangulation and then generating a new mesh after each
computational cycle. As a point in the Delaunay Triangulation corresponds to a cell
206 Adaptive Polyhedral Mesh Generation
in the polyhedral mesh, see Figs. 7.17(c) and 7.17(d), the mesh adaptation technique
can be seen as the growing or insertion of cells within the mesh structure.
face with high error
(a) Initial mesh (b) Rened mesh
P
3
P
4
P
5
P
6
P
7
P
8 P
2
P
1
P
9 P
10
P
11
P
12
P
13
P
14
P
15
P
16
P
17
P
18
(c) Delaunay Triangula-
tion before renement
P
3
P
4
P
5
P
6
P
7
P
8 P
2
P
1
P
9 P
10
P
11
P
12
P
13
P
14
P
15
P
16
P
17
P
18
P
19
(d) Delaunay Triangula-
tion after renement
Figure 7.17: Adaptation of polyhedral meshes
The error is estimated using the FREE at all faces of the mesh. If the error on a
face is larger than acceptable, a point located at the centroid of the face is inserted
into the Delaunay Triangulation. An example is shown in Fig. 7.17(d) where the
point P
19
is inserted in the centroid of that face which has large error. Due to the
point insertion the parent mesh changes such that the inserted point generates a
new cell in the rened polyhedral mesh, Figs. 7.17(a) and 7.17(b). The shape of the
created cell is dependent on the distribution of points in the Delaunay Triangulation.
The number of faces is equal to the number of edges in the Delaunay Triangulation
sharing the inserted point.
This type of renement should have a small impact on the mesh quality because
the Delaunay method generates the best shaped tetrahedra and polyhedra for a given
7.6 Mesh adaptation on Polyhedral Meshes 207
set of points [78]. Figs. 7.17(c) and 7.17(d) shows that points forming the Delaunay
triangulation are very close to the nodes (centroids) of the polyhedral mesh. A face
of the polyhedral mesh is almost perpendicular to the line connecting neighbouring
nodes of the face. Because of that the non-orthogonality and skewness should be
small. The mesh uniformity should also remain high because faces of the polyhedral
mesh are midway the two neighbouring points in the Delaunay Triangulation.
The renement procedure consists of the following steps:
1. Generate the starting mesh for the problem under consideration.
2. Solve the problem on the latest available mesh.
3. Estimate the discretisation error in the solution. If the error on every face is
smaller than the required error E the calculation is stopped. If the error on a
face is larger than E:
e
f
> E,
a point is inserted in the centroid of that face, Fig. 7.17(d).
4. Generate a new polyhedral mesh.
5. Map the solution from the previous mesh onto the new mesh.
6. Go to step 2.
7.6.1 Examples
Here, the adaptation procedure will be tested on a case already used in Chapter 5.
The results obtained will also be compared with the results of the mesh renement
procedure described in Chapter 5.
Convection and diusion of heat
The description of this problem including the numerical setup and the discretisation
practices employed can be found in Section 5.4.4. The calculation was started on a
mesh shown in Fig. 7.18. The maximum allowed estimated temperature error was
set to:
E = 0.5 % (7.2)
of the maximum temperature T
max
= 1
o
C.
208 Adaptive Polyhedral Mesh Generation
Figure 7.18: Staring polygonal mesh for the convection and
diusion of heat
The required accuracy was achieved after nine cycles of adaptive renement on
the nal mesh with 5925 cells shown in Fig. 7.19.
The renement pattern in Fig. 7.19 is very similar to the one obtained by using
the adaptive procedure described in Chapter 5, see Fig. 5.25(b), where the mesh
is highly rened in the regions of strong gradients, Fig. 5.23. The region near the
right boundary is predominately lled with quadrilaterals aligned with the direction
of high gradients, Fig. 5.24, which appear from nearly degenerate Delaunay Trian-
gulation, see Fig. 7.20. Mesh-to-ow alignment is not present as in case when the
adaptive mesh renement procedure of Chapter 5 was used, see Fig. 5.25(b). This
is the main reason why the adaptive mesh generation required 3.5 times more cells
than the adaptive mesh renement procedure of Chapter 5 to achieve the required
accuracy. The quality of the mesh has also remained good even though it is highly
rened in some regions, Table 7.6.
Non-orthogonality (deg) Skewness
Maximum Average Maximum Average
Starting mesh 13 1.74178 0.2 0.0295965
Rened mesh 39.5 5.04 0.78 0.08
Table 7.6: Measures of mesh quality
Figs. 7.21(a) and 7.21(b) show the exact and the estimated error in the solution
obtained after nine cycles of renement. The error is over-estimated in the region
of high gradients. The reason for such behaviour has already been discussed in
7.6 Mesh adaptation on Polyhedral Meshes 209
Figure 7.19: Mesh after 9 cycles for the convection and diusion of
heat (5925 cells)
1
P
2
P
3
P
4
P
5
P
6
P
7
P
8
P
9
P
V
2
=
1
V V
4
=
3
V
V
6
=
5
V V
8
=
7
V
Degenerate Tessellation Polygonal mesh
Figure 7.20: Polygonal mesh from nearly degenerate Delaunay
Triangulation
210 Adaptive Polyhedral Mesh Generation
(a) Exact error (b) Estimated error (plotted as average of
face errors)
Figure 7.21: Errors after 9 cycles of renement (5925 cells)
(a) Uniform mesh (b) Exact error
Figure 7.22: Uniform mesh and the exact error (6769 cells)
7.6 Mesh adaptation on Polyhedral Meshes 211
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
5
10
-1
10
0
10
1
10
2
no of cells
m
a
x

e
r
r
o
r

[
%
]
Exact error (Adaptive ref)
Estimated error (Adaptive ref)
Exact error (Uniform ref)
(a) Maximum error
Convection and diffusion of heat - Temperature Error
10
2
10
3
10
4
10
5
10
-3
10
-2
10
-1
10
0
10
1
no of cells
m
e
a
n

e
r
r
o
r

[
%
]
Exact error (Adaptive ref)
Estimated error (Adaptive ref)
Exact error (Uniform ref)
(b) Mean error
Figure 7.23: Variations of errors with adaptive renement for the
convection and diusion of heat (T
norm
= 1
o
C)
Section 5.4.4. The maximum exact error is slightly under-estimated, Fig. 7.23(a).
There is not any saving in the number of cells when the exact error is compared
with the error on uniformly rened meshes. Fig. 7.22(a) shows a uniform mesh
with similar number of cells as the adapted one. The error on the uniform mesh
depicted in Fig. 7.22(b) is high in regions where the regularity of the mesh is impaired
suggesting that the error is mainly inuenced by mesh quality. The error on the
adapted mesh, Fig. 7.21(a), is also high in the regions of high local renement
where the mesh quality is reduced. This is because most of the cells introduced
by the renement procedure do not have face pairs which would cancel face errors
and therefore have higher error for the same cell size than the mesh consisting of
hexagons.
212 Adaptive Polyhedral Mesh Generation
7.7 Summary and Conclusions
A method for generation of polyhedral meshes suitable for the FV discretisation
practice and an approach to adaptive mesh generation on polyhedral meshes were
presented in this chapter. Polyhedral meshes are generated by computing the Delau-
nay Triangulation and the corresponding Voronoi Diagram then followed by remov-
ing parts of the Voronoi Polyhedra outside the boundary to form a valid mesh. The
adaptive mesh generation is performed by inserting points into the Dirichlet Tessel-
lation where a better resolution is needed which is then followed by the generation
of the new mesh.
The generator can produce meshes with smooth variation of cell sizes and with
low non-orthogonality and skewness without any intervention by the analyst. Un-
fortunately, it cannot generate 3D meshes for arbitrary geometry as the support for
arbitrary geometries is not implemented.
Experiments conducted on triangular, polygonal and quadrilateral meshes con-
rm the ndings from Section 3.6 that the quadrilateral/hexahedral meshes are the
most accurate ones. The accuracy achieved on polygonal meshes is comparable with
the one on quadrilateral meshes while the triangular meshes consistently produced
solutions with highest errors. The experiment conducted on the planar jet case sug-
gests that on ne meshes the time required to converge the solution to the same
residual is almost independent on the type of mesh used for the same number of
cells.
The adaptive procedure has reduced the error below the required level and the
reduction was monotonic. Unfortunately, it is not as eective as the procedure
described in Chapter 5 as it produces meshes consisting of cell types which are not
optimal from the aspect of accuracy.
Chapter 8
Conclusions and Future Work
The aim of this study was to develop an accurate estimator of the discretisation
errors for the FV solution method and to develop an adaptive remeshing procedure
which is automatic and capable of producing solutions of required accuracy with
savings in the number of required cells.
One of the important issues which had to be resolved was the inuence of the
mesh and the discretisation practice on the accuracy of the solution. The analy-
sis of discretisation errors was performed for all terms appearing in the governing
equations. It conrmed that the linear interpolation scheme for skewed meshes pro-
vides second-order accurate face integrals for any mesh. The approximation of the
surface normal gradient was found second-order accurate on uniform meshes but
it becomes rst-order accurate on non-uniform ones. It was also shown that skew-
ness and non-orthogonality have a negative impact on the accuracy. Gradient and
divergence terms calculated using the Gauss theorem are conrmed to be second-
order accurate. The FV approximation of the convective terms is dependent on the
approximation procedure for the mass uxes and on the interpolation procedure
used for obtaining the value of the eld under consideration at the mesh faces. The
analysis of dierent interpolation schemes has shown that the Central Dierencing
scheme is the only second-order scheme of the considered ones. The error in the
face ux obtained by the Rhie-Chow procedure used for solving Navier-Stokes equa-
tions is second-order accurate on uniform meshes but it becomes rst-order accurate
on non-uniform ones which is a consequence of the discretisation procedure for the
surface normal gradients required by the pressure equation. The accuracy of the
diusion term was found to be dependent on the linear interpolation scheme for
213
214 Conclusions and Future Work
skewed meshes used for interpolation of the diusion coecient eld onto the mesh
faces and on the discretisation procedure for the surface normal gradients of the eld
under consideration. The accuracy of the source term approximation is dependent
on the linearisation procedure employed and it is second-order accurate if the source
term is linear.
8.1 Error Estimation
A novel approach to a posteriori error estimation for spatial terms has been
proposed in Chapter 4. The Face Residual Error Estimate (FREE) estimates the
error on the mesh faces and thus provides information about the error magnitude
in absolute terms and which faces of a cell are the main contributors to the error.
The analysis of the error on the faces has shown that the error may be transported
in the opposite direction of the solution uxes and this is believed to be the reason
why it is not possible to solve the error transport equation using the second-order
accurate FV procedure and achieve accurate estimation of error.
The estimator was tested on a set of cases with analytical solutions. Test cases
ranged from convection to diusion-dominated ones. The accuracy of the estimator
was satisfactory only for the convection-dominated problem. It over-estimates the
error for problems where the error is a consequence of diusion term disretisation
because its truncation error is not consistent with the truncation error for the surface
normal gradient term.
8.2 Mesh Adaptation
In this study two dierent adaptation techniques were proposed. In Chapter 5 a
technique utilising the directional property of the FREE in driving a mesh rene-
ment procedure for hexahedral meshes was presented. An adaptive mesh renement
technique working on unstructured meshes of completely arbitrary topology was
described in Chapter 7.
The algorithm presented in Chapter 5 is a hrenement procedure which is based
on splitting the hexahedral cells parallel to the faces with large error. Additional
safety criteria were introduced for preserving mesh quality and to make the reduction
of error monotonic. It is not allowed to insert split-hexahedron cells in the regions
8.2 Mesh Adaptation 215
where the error may increase above the required upper limit because the distance
between the neighbouring nodes of the split-face is higher than it was before the
renement was performed thus making the error higher there. This brings most
merit for problems where high aspect ratio cells occur such that it preserves mesh
quality and improves the rate of error reduction.
The procedure was tested in Chapter 5 with a variable success. Quick error
reduction and savings on the number of cells were achieved when the error was
localised to some small part of the domain and highly directional. An convection-
dominated case where the solution was generated by a source, given by an analytical
expression, was found very sensitive to non-uniformity of the mesh which causes
problems with boundedness of the source term volume integral and the result of it
is the increased error in the solution.
Further testing was performed in Chapter 6 on ows in complex geometries
ranging from laminar to turbulent ones. It has produced solutions which are in
good agreement with the benchmark solutions for laminar ows but the nal meshes
had much smaller numbers of cells when compared to the benchmark meshes. The
calculation using a low-Re turbulence model has produced a solution which is also
in good agreement with the benchmark but has only 3.6% of the number of the cells
of the benchmark mesh. This happens because the renement was highly directional
near the walls. The calculation using a high-Re k turbulence model produced
a similar pattern of renement in the near-wall regions but the renement of near-
wall cells was blocked in the direction normal to the wall for Y
+
< 50 even though
the errors there were still above the required upper limit. Analyses of face errors
conducted for a few cases have shown that the renement procedure also generates
faces with low error which could be removed from the mesh using a coarsening
procedure.
The method presented in Chapter 7 is based on point addition into the Delaunay
structure. When the distribution of the discretisation error is known, points are
introduced in the centroids of faces having large error. When the Delaunay structure
is enriched with the new points, a new mesh is created. The method was found
capable of reducing the estimated error below the required limit but without any
savings in the number of cells compared to uniform renement. This is attributed to
the fact that most cells which appear in the mesh are not of desirable shapes from
the aspect of accuracy.
216 Conclusions and Future Work
8.3 Mesh Generation
The mesh generator developed during this study and presented in Chapter 7 gener-
ates polyhedral meshes from Voronoi Polyhedra which are cut near the boundary to
form a closed mesh. It can generate meshes for arbitrary 2D geometries but it still
cannot produce meshes for arbitrary 3D geometry.
The comparison of accuracy on polygonal, triangular and quadrilateral meshes
was performed in Chapter 7. Those tests have shown that the maximum errors were
at the same level for quadrilateral and polygonal meshes for the same number of
cells but the average error was smaller on quadrilateral meshes than on polygonal
ones. Triangular meshes were the least accurate in all tests. These results are in
agreement with the analysis performed in Section 3.6.
8.4 Future Work
In authors opinion, the results of this work can be further improved in the following
areas:
Error Estimation. The face residual for the diusion term should be re-
formulated such that it becomes consistent with the truncation error for the
diusion term. This would remove the problem of error over-estimation for
diusion-dominated problems. Including the error coming from the source
terms approximations into the face residual would improve the accuracy of
error estimation but it would also require approximations of the moments of
inertia for every face which is not a trivial task when they are of arbitrary
shape. The estimator should also be further tested on more cases to get a
better insight into the behaviour of the face residual and the discretisation
error which could result in the improved normalisation factor.
Adaptive Mesh Renement can be improved further by adding the pos-
sibility of checking and controlling uniformity which would not allow large
dierences between the sizes of neighbouring cells. This can be achieved by
selecting more cells for renement than required by the estimator until the
jump in cell sizes is smaller than some threshold value or by incorporating r-
renement which would reposition mesh vertices such that the cell size varies
smoothly. Coarsening would improve the cell count further but it could only
8.4 Future Work 217
be allowed where the split-hexahedra generated by the coarsening procedure
would not reduce the accuracy achieved by the renement procedure. This is
a very complicated task which could only be achieved if the coarsening could
control the topology of the mesh.
Currently, the renement procedure can only operate on hexahedra and split-
hexahedra. Thus it should be modied such that it is able to cope with all
types of polyhedra which may appear in the mesh generated by a commercial
hexahedra-dominant mesh generator. This would improve usability of the
procedure in the engineering environment.
Adaptive Polyhedral Mesh Generation would become more ecient if
the locations of the new points inserted into the Delaunay structure were
chosen such that the resulting mesh is more regular. Coarsening can also be
implemented by removing points from regions of low error but care has to be
taken that the grading between the ne and coarse mesh is smooth.
Polyhedral Mesh Generator should be improved such that it can generate
meshes for arbitrary 3D geometries. This can be achieved by adding support
for arbitrary surfaces which could provide information about intersections of
the Voronoi Polyhedra with the boundary surface. The ability to generate
layers of prismatical cells near wall boundaries would enable users to perform
calculation with low-Re turbulence models eciently.
218 Conclusions and Future Work
References
[1] Adjerid, S., Belguendouz, B., and Flaherty, J. E.: A posteriori Finite Element
Error Estimation for diusion problems, SIAM J. Sci. Comput., 21:728746,
1999.
[2] Aftosmis, M. J.: Upwind Method for Simulation of Viscous Flow on Adap-
tively Rened Meshes, AIAA J., 32:268277, 1994.
[3] Ainsworth, M.: A-posteriori error estimators for second-order elliptic sys-
tems: Part 1. Theoretical foundations and a-posteriori error analysis, Com-
puters Math. Applic., 25(2):101113, 1993.
[4] Ainsworth, M. and Oden, J. T.: A procedure for a-posteriori error estimation
for h p Finite Element methods, Comput. Methods Appl. Mech. Engrg.,
101:7396, 1992.
[5] Ainsworth, M. and Oden, J. T.: A-posteriori error estimators for second-
order elliptic systems: Part 2. An optimal order process for calculating self-
equilibrating uxes, Computers Math. Applic., 26(9):7587, 1993.
[6] Ainsworth, M. and Oden, J. T.: A posteriori error estimation in nite element
analysis, Comput. Methods Appl. Mech. Engrg., 142:188, 1997.
[7] Ainsworth, M. and Oden, J. T.: A posteriori error estimators for the Stokes
and Oseen equations, SIAM J. Numer. Anal., 34:228245, 1997.
[8] Ainsworth, M. and Oden, J.T.: A unied approach to a-posteriori error
estimation using Element Residual methods, Numerische Mathematik, 65:23
50, 1993.
[9] Ait-Ali-Yahia, D., Baruzzi, G., Habashi, W. G., Fortin, M., Dompierre, J.,
and Vallet, M. G.: Anisotropic mesh adaptation: towards user-independent,
219
220 References
mesh-independent and solver-independent CFD. Part II: Structured grids,
Int. J. Numer. Meth. Fluids, 39:657673, 2002.
[10] Ait-Ali-Yahia, D., Habashi, W. G., Tam, A., Vallet, M. G., and Fortin, M.:
A directionally adaptive methodology using and Edge-Based Error Estimate
on quadrilateral grids, Int. J. Numer. Meth. Fluids, 23:673690, 1996.
[11] Almeida, R. C., Feijoo, R. A., Galeao, A. C., Padra, C., and Silva, R. S.:
Adaptive nite element computational uid dynamics using and anisotropic
error estimator, Comput. Methods Appl. Mech. Engrg., 182:379400, 2000.
[12] Angermann, L.: The Finite Volume Method with Quadratic Basis Func-
tions, Computing, 55:305323, 1995.
[13] Angermann, L., Knabner, P., and Thiele, K.: An error estimator for a
nite volume discretization of density driven ow in porous media, Applied
Numerical Mathematics, 26:179191, 1998.
[14] Apel, T., Grosman, S., Jimack, P. K., and Meyer, A.: A new methodology for
anisotropic mesh renement based upon error gradients, Applied Numerical
Mathematics, 50:329341, 2004.
[15] Babuska and C., Rheinboldt W.: A-posteriori error estimates for the Finite
Element Method, Int. J. Numer. Meth. Engng., 12:15971615, 1978.
[16] Baker, T. J.: Mesh adaptation strategies for problems in uid dynamics,
Finite Elements in Analysis and Design, 25:243273, 1997.
[17] Bank, R.E. and Weiser, A.: Some A Posteriori Error Estimators for Elliptic
Partial dierential Equations, Math. Comp., 44:283301, 1985.
[18] Bank, R.E. and Welfert, B. D.: A-posteriori error estimates for the Stokes
problem, SIAM J. Numer. Anal., 28:591623, 1991.
[19] Bardina, J. J., Ferziger, J. H., and Rogallo, R. S.: Eect of rotation on
isotropic turbulence: computation and modelling, J. Fluid Mech., 154:321
336, 1985.
[20] Basara, B.: Latest trends in CFD: the perspective of AVLs CFD solver,
In Proceeding of the International User Meeting, Advanced Simulation Tech-
nologies, Graz, Austria, October 14-15 2003.
References 221
[21] Becker, R., Heuveline, V., and Rannacher, R.: An optimal control approach
to adaptivity in computational uid dynamics, Int. J. Numer. Meth. Fluids,
40:105120, 2002.
[22] Berger, M. J. and Collela, P.: Local adaptive mesh renement for shock
hydrodynamics, J. Comput. Phys., 82:6484, 1989.
[23] Berger, M. J. and Oliger, J.: Adaptive mesh renement for hyperbolic partial
dierential equations, J. Comput. Phys., 53:484512, 1984.
[24] Berger, M.J.: On conservation at grid interfaces, SIAM J. Numer. Anal.,
24(5):967984, 1987.
[25] Blacker, T. D. and Stephenson, M. B.: Paving: A new approach to Auto-
mated Quadrilateral Mesh Generation, Int. J. Numer. Meth. Engng., 32:811
847, 1991.
[26] Bonet, J. and Peraire, J.: An Alternating Digital Tree (ADT) algorithm
for 3D geomteric searching and intersection problems, Int. J. Numer. Meth.
Engng., 31:117, 1991.
[27] Boussinesq, J.: Theorie de lecoulement tourbillant, Mem. par. div. Sav.,
Paris, 23, 1877.
[28] Bowyer, A.: Computing Dirichlet tessellations, The Computer Journal,
24:162166, 1981.
[29] Brandt, A.: Multi-level adaptive solutions to boundary-value problems,
Math. Comp., 31:333, 1977.
[30] Calvo, N. A. and Idelsohn, S. R.: All-hexahedral element meshing: Gener-
ation of the dual mesh recurrent subdivision, Comput. Methods Appl. Mech.
Engrg., 182:371378, 2000.
[31] Cass, R. J., Benzley, S. E., Meyers, R. J., and Blacker, T. D.: Generalized 3-
D Paving: An automated Quadrilateral Surface Mesh Generation algorithm,
Int. J. Numer. Meth. Engng., 39:14751489, 1996.
[32] Cavendish, J. C., Field, D. A., and Frey, W. H.: Automatic triangluation
of arbitrary planar domains for the Finite Element Method, Int. J. Numer.
Meth. Engng., 8:679696, 1974.
222 References
[33] Cavendish, J. C., Field, D. A., and Frey, W. H.: An approach to automatic
Three-dimensional Finite Element mesh generation, Int. J. Numer. Meth.
Engng., 21:329347, 1985.
[34] Cebeci, T. and Smith, A.M.O.: Analysis of turbulent boundary layers: Aca-
demic Press, 1974.
[35] Chang, S. and Haworth, D. C.: Adaptive grid renement using cell-level and
global imbalances, Int. J. Numer. Meth. Fluids, 24:375392, 1997.
[36] Davidson, L.: A pressure correction methods for unstructured meshes with
arbitrary control volumes, Int. J. Numer. Meth. Fluids, 22:265281, 1996.
[37] Demkowicz, L., Oden, J.T., Rachowicz, W., and Hardy, O.: Toward a univer-
sal hp adaptive Finite Element strategy: Part 1: Constrained approximation
and data structure, Comput. Methods Appl. Mech. Engrg., 77:79112, 1989.
[38] Dompierre, J., Vallet, M. G., Borgault, Y., Fortin, M., and Habashi, W. G.:
Anisotropic mesh adaptation: towards user-independent, mesh-independent
and solver-independent CFD. Part III: Unstructured meshes, Int. J. Numer.
Meth. Fluids, 39:675702, 2002.
[39] Dompierre, J., Vallet, M. G., Fortin, M., Bourgault, Y., and Habashi, W. G.:
Anisotropic mesh adaptation: Towards a solver and user independent CFD:
35th Aerospace Sciences Meeting and Exhibit, January 6-10, 1997 / Reno,
NV.
[40] Dukowicz, J. K., Cline, M. C., and Addesso, F. L.: A General Topology
Godunov Method, J. Comput. Phys., 82:2963, 1989.
[41] Dwyer, H. A.: Grid Adaptation for Problems in Fluid Dynamics, AIAA J.,
22:17051712, 1984.
[42] Dwyer, H. A., Kee, R. J., and Sanders, B. R.: Grid Adaptation for Problems
in Fluid Dynamics, AIAA J., 18:12051212, 1980.
[43] ERCOFTAC : European Research Community on Flow, Turbulence
and Combustion, Portal to Fluid Dynamics Database Resources:
http://ercoftac.mech.surrey.ac.uk/.
References 223
[44] Erlebacher, G. and Eiseman, P. R.: Adaptive Triangular Mesh Generation,
AIAA J., 25:13561364, 1987.
[45] Favre, A.: Equations des gaz turbulents compressibles, J. de Mecanique,
4:361, 1965.
[46] Ferziger, J. H. and Peric, M.: Further discussion of numerical errors in CFD,
Int. J. Numer. Meth. Fluids, 23:12631274, 1996.
[47] Ferziger, J.H. and Peric, M.: Computational methods for uid dynamics:
Springer Verlag, Berlin-New York, 1995.
[48] Franklin, P., Gosman, A. D., and Kaludzercic, B.: Development of a Parallel
PACE Code, Periodic report, Imperial College, 1993.
[49] Gaskell, P. H. and Lau, A. K. C.: Curvature-compensated convective trans-
port: SMART, a new boundedness-preserving transport algorithm, Int. J.
Numer. Meth. Fluids, 8:617641, 1988.
[50] George, P. L.: Improvements on Delaunay-based three-dimensional auto-
matic mesh generator, Finite Elements in Analysis and Design, 25:297317,
1997.
[51] George, P. L., Hecht, F., and Saltel, E.: Automatic parallel generator with
specied boundary, Comput. Methods Appl. Mech. Engrg., 92:269288, 1991.
[52] George, P. L. and Hermeline, F.: Delaunays mesh of a convex polyhedron
in dimension d. Application to arbitrary polyhedra, Int. J. Numer. Meth.
Engng., 33:975995, 1992.
[53] Gibson, M. M. and DafaAlla, A. A.: Two-Equation Model for Turbulent
Wall Flow, AIAA J., 33(8):15141518, 1995.
[54] Gnoo, P. A.: A Finite-Volume, Adaptive Grid Algorithm Applied to Plan-
etary Entry Flowelds, AIAA J., 21:12491254, 1983.
[55] Habashi, W. G., Dompierre, J., Bourgault, Y., Ait-Ali-Yahia, D., Fortin, M.,
and Vallet, M. G.: Anisotropic mesh adaptation: towards user-independent,
mesh-independent and solver-independent CFD. Part I: general principles,
Int. J. Numer. Meth. Fluids, 32:725744, 2000.
224 References
[56] Hawken, D. F., Gottlieb, J. J., and Hansen, J. S.: Review of Some Adaptive
Node-Movement Techniques in Partial Dierential Equations, J. Comput.
Phys., 95:254302, 1991.
[57] Haworth, D.C., El Tahry, S.H., and Huebler, M.S.: A global approach to error
estimation and physical diagnostics in multidimensional uid dynamics, Int.
J. Numer. Meth. Fluids, 17(1):7597, 1993.
[58] Haworth, D.C. and Jansen, K.: Large-eddy simulation on unstructured de-
forming meshes: toward reciprocating IC engines, Comp. Fluids, 29:493524,
2000.
[59] Hestens, M.R. and Steifel, E.L.: Method of conjugate gradients for solving
linear systems, Journal of Research, 29:409436, 1952.
[60] Hinze, J.O.: Turbulence: McGraw-Hill, 1975.
[61] Hirsch, C.: Numerical computation of internal and external ows: John Willey
& Sons, 1991.
[62] Ignat, L., Pelletier, D., and Ilinca, F.: A universal formulation of two-
equation models for adaptive computation of turbulent ows, AIAA J.,
33:20582065, 1995.
[63] Ilinca, A., Camarero, R., Trepanier, J. Y., and Reggio, M.: Error Estimator
and Adaptive Moving Grids for Finite Volume Schemes, AIAA J., 33:2058
2065, 1995.
[64] Ilinca, F. and Pelletier, D.: Positivity Preservation and Adaptive Solution
for the k Model of Turbulence, AIAA J., 36:4450, 1998.
[65] Ilinca, F., Pelletier, D., and Garon, A.: An Adaptive Finite Element Method
for a Two-equation Turbulence Model in Wall-bounded ows, Int. J. Numer.
Meth. Fluids, 24:101120, 1997.
[66] Issa, R.I.: Solution of the implicitly discretized uid ow equations by
operator-splitting, J. Comput. Phys., 62:4065, 1986.
[67] Jacobs, D.A.H.: Preconditioned Conjugate Gradient methods for solving
systems of algebraic equations: Central Electricity Research Laboratories,
1980.
References 225
[68] Jasak, H.: Error analysis and estimation in the Finite Volume method with
applications to uid ows, PhD thesis, Imperial College, University of London,
1996.
[69] Jasak, H.: Private communication, 2003: Imperial College, 2003.
[70] Jasak, H. and Gosman, A. D.: Automatic Resolution Control for the Finite-
Volume Method, Part 1: A-posteriori error estimates, Num. Heat. Trans.,
Part B, 38:237256, 2000.
[71] Jasak, H. and Gosman, A. D.: Automatic Resolution Control for the Finite-
Volume Method, Part 2: Adaptive mesh renement and coarsening, Num.
Heat. Trans., Part B, 38:257272, 2000.
[72] Jasak, H. and Gosman, A. D.: Automatic Resolution Control for the Finite-
Volume Method, Part 3: Turbulent ow applications, Num. Heat. Trans.,
Part B, 38:273290, 2000.
[73] Jasak, H. and Gosman, A. D.: Residual error estimate for the nite volume
method, Num. Heat. Trans., Part B, 39:000000, 2001.
[74] Jasak, H. and Gosman, A. D.: Element residual error estimate for the nite
volume method, Comp. Fluids, 32:223248, 2003.
[75] Jasak, H., Weller, H. G., and Gosman, A. D.: High Resolution NVD Dif-
ferencing Scheme for Arbitrarily Unstructured Meshes, Int. J. Numer. Meth.
Fluids, 31:431449, 1999.
[76] Jin, H. and Prudhomme, S.: A posteriori error estimation of steady-state -
nite element solutions of the Mavier-Stokes equations by a subdomain residual
method, Comput. Methods Appl. Mech. Engrg., 159:1948, 1998.
[77] Jin, H. and Tanner, R. I.: Generation of unstructured tetrahedral meshes
by Advancing Front Technique, Int. J. Numer. Meth. Engng., 36:18051823,
1993.
[78] Joe, B.: Delaunay versus Min-max solid angle triangulations for Three-
dimensional mesh generation, Int. J. Numer. Meth. Engng., 31:987997,
1991.
226 References
[79] Kaludzercic, B.: Parallelisation of Eulerian and Lagrangian CFD Algorithms,
PhD thesis, Imperial College, University of London, 2000.
[80] Kelly, D. W.: The self-equilibration of residuals and complementary a-
postriori error estimates in the Finite Element method, Int. J. Numer. Meth.
Engng., 20:14911506, 1984.
[81] Knupp, P. M.: Applications of mesh smoothing: copy, morph and sweep on
unstructured quadrilateral meshes, Int. J. Numer. Meth. Engng., 45:3745,
1999.
[82] Lakehal, D. and Rodi, W.: Calculation of the ow past a surface-mounted
cube with two-layer turbulence models, Journal of Wind Engineering and
Industrial Aerodynamics, 67 and 68:6578, 1997.
[83] Launder, B.E. and Sharma, B.I.: Application of the energy-dissipation model
of turbulence to the calculation of a ow near a spinning disk, Letters in Heat
and Mass Transfer, 1:131138, 1974.
[84] Launder, B.E. and Spalding, D.B.: The numerical computation of turbulent
ows, Comput. Methods Appl. Mech. Engrg., 3:269289, 1974.
[85] Lee, M. J., Kim, J., and Moin, P.: Structure of turbulence at high shear
rate, J. Fluid Mech., 216:561583, 1990.
[86] Lehnh auser, T. and Sch afer, M.: Improved linear interpolation practice for
nite-volume schemes on complex grids, Int. J. Numer. Meth. Fluids, 38:625
645, 2002.
[87] Leonard, B.P.: Simple high-accuracy resolution program for convective mod-
elling of discontinuities, Int. J. Numer. Meth. Fluids, 8:12911318, 1988.
[88] Li, T. S., Armstrong, C. G., and McKeag, R. M.: Quad mesh generation
for k-sided faces and hex mesh generation for trivalent polyhedra, Finite
Elements in Analysis and Design, 26:279301, 1997.
[89] Li, T. S., McKeag, R. M., and Armstrong, C. G.: Hexahedral meshing us-
ing midpoint subdivision and integer programming, Comput. Methods Appl.
Mech. Engrg., 124:171193, 1995.
References 227
[90] Lilek,

Z, Muzaferija, S., Peric, M., and Seidl, V.: An implicit Finite-Volume
Method using nonmatching blocks of structured grid, Num. Heat. Trans.,
Part B, 97:385401, 1997.
[91] L ohner, R.: Automatic unstructured grid generators, Finite Elements in
Analysis and Design, 25:111134, 1997.
[92] L ohner, R., Camberos, J., and Merriam, M.: Parallel unstructured grid
generation, Comput. Methods Appl. Mech. Engrg., 95:343357, 1992.
[93] Ltd., Nabla: FOAM The Complete Guide: Nabla Ltd., 2001: Available
from http://www.nabla.co.uk/.
[94] Maliska, C. R., Fl avio, J., and Vasconcellos, V.: An unstructured nite
volume procedure for simulating ows with moving fronts, Comput. Methods
Appl. Mech. Engrg., 182:401420, 2000.
[95] Marchi, C. H. and Carvalho da Silva, A. F.: Unidimensional Numerical So-
lution Error Estimation for Convergent Apparent Order, Num. Heat. Trans.,
Part B, 42:167188, 2002.
[96] Martinuzzi, R. an Tropea, C.: The Flow Around Surface-Mounted, Prismatic
Obstacles Placed in a Fully Developed Channel Flow, J. Fluids Eng., Trans.
ASME, 115:8592, 1993.
[97] Mavriplis, D. J.: Adaptive Mesh Generation for Viscous Flows Using Delau-
nay triangulation, J. Comput. Phys., 90:271291, 1990.
[98] Meshkat, S. and Talmor, D.: Generating a mixed mesh of hexahedra, penta-
hedra and tetrahedra from an underlying tetrahedral mesh, Int. J. Numer.
Meth. Engng., 49:1730, 2000.
[99] Mishev, I. D.: Finite Volume Methods on Voronoi Meshes, Numer. Methods
Partial Dierential Equations, 14:193212, 1998.
[100] M uller-Hannemann, M.: Hexahedral Mesh Generation by successive Dual
Cycle Elimination, Engineering with Computers, 17:269279, 1999.
[101] Muzaferija, S.: Adaptive Finite Volume method for ow prediction using un-
structured meshes and multigrid approach, PhD thesis, Imperial College, Uni-
versity of London, 1994.
228 References
[102] Muzaferija, S. and Gosman, A. D.: Finite-Volume CFD Procedure and
Adaptive Error Control Strategy for Grids of Arbitrary Topology, J.Comput.
Phys., 138:766787, 1997.
[103] Nakahashi, K and Deiwert, G. S.: Three-Dimensional Adaptive Grid
Method, AIAA J., 24:948954, 1986.
[104] Numerical Recipes Home Page: http://www.nr.com/.
[105] Oden, J.T. and Prudhomme, S.: New approaches to error estimation and
adaptivity for the Stokes and Oseen equations, Int. J. Numer. Meth. Fluids,
31:315, 1999.
[106] Oden, J.T., Stroubolis, T., and Devloo, P.: Adaptive Finite Element methods
for the analysis of Inviscid Euler ow: Part 1. Fast Renement/Unrenement
and moving mesh methods for unstructured meshes, Comput. Methods Appl.
Mech. Engrg., 59:327362, 1986.
[107] Oden, J.T., Wu, W., and Ainsworth, M.: An a-posteriori error estimate
for Finite Element approximations of the Navier-Stokes equations, Comput.
Methods Appl. Mech. Engrg., 111:185202, 1994.
[108] Oden, J.T., Wu, W., and Legat, V.: An h p adaptive strategy for Finite
Element approximations of the Navier-Stokes equations, Int. J. Numer. Meth.
Fluids, 20:831851, 1995.
[109] Owen, S. J. and Saigal, S.: H-Morph: an indirect approach to advancing
front hex meshing, Int. J. Numer. Meth. Engng., 49:289312, 2000.
[110] Owen, S. J., Staten, M. L., Canann, S. A., and Saigal, S.: Q-Morph: an
indirect approach to advancing front quad meshing, Int. J. Numer. Meth.
Engng., 44:13171340, 1999.
[111] Panton, R.L.: Incompressible ow: John Wiley and Sons, 1984.
[112] Papanastasiou, T. C, Georgiou, G. C., and Alexandrou, A. N.: Viscous uid
ow: CRC Press, 1999.
[113] Patankar, S. V. and Spalding, D. B.: A Calculation Procedure for Heat,
Mass and Momentum transfer in Three-Dimensional Parabolic Flows, Int. J.
Heat Mass Transfer, 15:17871806, 1972.
References 229
[114] Patankar, S.V.: Numerical heat transfer and uid ow: Hemisphere Publish-
ing Corporation, 1981.
[115] Pelletier, D.: Adaptive Finite Element Computations of Complex Flows,
Int. J. Numer. Meth. Fluids, 31:189202, 1999.
[116] Pelletier, D. and Ilinca, F.: Adaptive Remeshing for the k Model of
Turbulence, AIAA J., 35:640646, 1997.
[117] Pelletier, D., Ilinca, F., and Turgeon, E.: An Adaptive Finite Element
Method for Forced Convection, Int. J. Numer. Meth. Fluids, 25:803823,
1997.
[118] Peraire, J., Vahdati, M., Morgan, K., and Zienkiewicz, O. C.: Adaptive
Remeshing for Compressible Flow Computations, J. Comput. Phys., 72:449
466, 1987.
[119] Peric, M.: A Finite Volume method for the prediction of Three-dimensional
uid ow in complex ducts, PhD thesis, Imperial College, University of Lon-
don, 1985.
[120] Phai, N. van: Automatic mesh generation with tetrahedron elements, Int.
J. Numer. Meth. Engng., 18:273289, 1982.
[121] Piomelli, U.: Large-eddy simulation: achievements and challenges, Progress
in Aerospace Sciences, 35(10):335362, 1999.
[122] Pirzadeh, S.Z.: An adaptive unstructured grid method by grid subdivision,
local remeshing, and grid movement: 14th Computational Fluid Dynamics
Conference, June 28-July 1, 1999 / Norfolk , Virginia.
[123] Pope, S. B.: Turbulent Flows: Cambridge University Press, 2000.
[124] Price, M. A. and Armstrong, C. G.: Hexahedral mesh generation by medial
surface subdivision: Part 2. Solids with at and concave edges, Int. J. Numer.
Meth. Engng., 38:33353359, 1995.
[125] Price, M. A., Armstrong, C. G., and Sabin, M. A.: Hexahedral mesh gen-
eration by medial surface subdivision: Part 1. Solids with convex edges, Int.
J. Numer. Meth. Engng., 38:33353359, 1995.
230 References
[126] Prudhomme, S. and Oden, J. T.: A posteriori error estimation and error
control for nite element approximations of the time-dependent Navier-Stokes
equations, Finite Elements in Analysis and Design, 33:247262, 1999.
[127] Prudhomme, S., Oden, J. T., Westermann, T., Bass, J., and Botkin, M. E.:
Practical methods for a-posteriori error estimation in engineering applica-
tions, Int. J. Numer. Meth. Engng., 56:11931224, 2003.
[128] Ramakrishnan, R., Bey, K. S., and Thornton, E. A.: Adaptive Quadrilateral
and Triangular Finite-Element Scheme for Compressible Flows, AIAA J.,
28(1):5159, 1990.
[129] Rhie, C.M. and Chow, W.L.: Numerical Study of the Turbulent Flow Past
an Airfoil with Trailing Edge Separation, AIAA J., 21:15251532, 1983.
[130] Rogers, M. M. and Moin, P.: The structure of the vorticity eld in homoge-
neous turbulent ows, J. Fluid Mech., 176:3366, 1987.
[131] Sampl, P.: Semi-structured Mesh Generation based on Medial Axis, Engi-
neering with Computers, 17:234248, 2001.
[132] Sandri, D.: A posteriori estimators for mixed nite element approximations
of a uid obeying the power law, Comput. Methods Appl. Mech. Engrg.,
166:329340, 1998.
[133] Scarborough, J. B.: Numerical Mathematical Analysis: Hopkins Press, Balti-
more, 1958.
[134] Schlichting, H.: Boundary Layer Theory: Pergamon Press LTD and Verlag
G. Braun, 1955.
[135] Schneiders, R. and B unten, R.: Automatic generation of hexahedral nite
elements meshes, Computer Aided Geometric Design, 12:693707, 1995.
[136] Shephard, M. S. and Georges, M. K.: Automatic three-dimensional mesh
generation by the Finite Octree Technique, Int. J. Numer. Meth. Engng.,
32:709749, 1991.
[137] Smagorinsky, J.: General circulation experiments with the primitive equa-
tions, Mon. Weather Rev., 91:99, 1963.
References 231
[138] Tam, A., Ait-Ali-Yahia, D., Robichaud, M. P., Moore, M., Kozel, V., and
Habashi, W. G.: Anisotropic mesh adaptation for 3D ows on structured
and unstructured grids, Comput. Methods Appl. Mech. Engrg., 189:1205
1230, 2000.
[139] Taniguchi, N., Arakawa, C., and Kobayashi, T.: Construction of a Flow-
Simulating Method with Finite Volume Based on a Voronoi Diagram, JSME
International Journal, 34(1):1823, 1991.
[140] Taniguchi, N. and Kobayashi, T.: Finite Volume Method on the unstructured
grid system, Comp. Fluids, 19:287295, 1991.
[141] Tattersall, P. and McGuirk, J.: Evaluation of Numerical Diusion eects in
viscous ow calculations, Comp. Fluids, 23(1):177209, 1994.
[142] Tautges, T. J.: The generation of hexahedral meshes for assmebly geometry:
survey and progress, Int. J. Numer. Meth. Engng., 50:26172642, 2001.
[143] Tautges, T. J., Blacker, T., and Mitchell, S. A.: The Whisker Weaving Al-
gorithm: A connectivity-based method for constructing All-hexahedral Finite
Element meshes, Int. J. Numer. Meth. Engng., 39:33273349, 1996.
[144] Thompson, J. F., Soni, B. K., and Weatherill, N. P.: Handbook of Grid
Generation: CRC Press, 1999.
[145] Thompson, M. C. and Ferziger, J. H.: An Adaptive Multigrid Technique for
the Incompressible Navier-Stokes Equations, J. Comput. Phys., 82:94121,
1989.
[146] Turgeon, E and Pelletier, D.: Computation of Jet Impingement Heat Transfer
by an Adaptive Finite Element algorithm, AIAA 98-2585.
[147] Van Der Vorst, H.A.: Bi-CGSTAB: A fast and smoothly converging variant
of Bi-CG for the solution of nonsymmetric linear systems, SIAM J. Sci.
Comput., 13(2):631644, 1992.
[148] Versteeg, H. K. and Malalasekera, W.: An introduction to computational uid
dynamics The nite volume method: Longman, 1st edition, 1995.
232 References
[149] Vijayan, P and Kallinderis, Y.: A 3D Finite Volume Scheme for the Euler
Equations on Adaptive Tetrahedral Grids, J. Comput. Phys., 113:249267,
1994.
[150] Vilsmeier, R. and H anel, D.: Adaptive methods on unstructured grids for
Euler and Navier-Stokes equations, Comp. Fluids, 22(4-5):485499, 1993.
[151] Volker, J.: A numerical study of a posteriori error estimators for convection-
diusion equations, Comput. Methods Appl. Mech. Engrg., 190:757781, 2000.
[152] Wang, Z. J. and Srinivasan, K.: An adaptive Cartesian grid generation
method for Dirty geometry, Int. J. Numer. Meth. Fluids, 39:703717, 2002.
[153] Weatherill, N. P.: A method for generating irregular computational grids in
Multiply Connected Domains, Int. J. Numer. Meth. Fluids, 8:181197, 1988.
[154] Weatherill, N. P. and Hassan, O.: Ecient three-dimensional Delaunay tri-
angulation with automatic point creation and imposed boundary constraints,
Int. J. Numer. Meth. Engng., 37:20052039, 1994.
[155] White, D. R. and Tautges, T. J.: Automatic scheme selection for toolkit hex
meshing, Int. J. Numer. Meth. Engng., 49:127144, 2000.
[156] Wilson, J.K and Topping, B.H.V.: Parallel adaptive tetrahedral mesh gener-
ation by the advancing front technique, Computers and Structures, 68:5778,
1998.
[157] Yerry, M. A. and Shephard, M. S.: Automatic three-dimensional mesh
generation by the Modied-octree Technique, Int. J. Numer. Meth. Engng.,
20:19651990, 1984.
[158] Yoshimura, S., Yoshitaka, W., and Genki, Y.: Automatic mesh generation
of quadrilateral elements unsing intelligent local approach, Comput. Methods
Appl. Mech. Engrg., 179:125138, 1999.
[159] Zhang, X. D., Trepanier, J. Y., and Camarero, R.: A posteriori error esti-
mation for nite-volume solutions of hyperbolic conservation laws, Comput.
Methods Appl. Mech. Engrg., 185:119, 2000.
References 233
[160] Zhu, J. Z., Zienkiewicz, O. C., Hinton, E., and Wu, J.: A new approach to
the development of automatic quadrilateral mesh generation, Int. J. Numer.
Meth. Engng., 32:849866, 1991.
[161] Zienkiewicz, O. C. and Taylor, R. L.: The Finite Element method, vol 1:
Basic formulation and linear problems: McGraw-Hill, 4th edition, 1989.
[162] Zienkiewicz, O. C. and Zhu, J. Z: A simple error estimator and adaptive
procedure for practical engineering analysis, Int. J. Numer. Meth. Engng.,
24:337357, 1987.
[163] Zienkiewicz, O. C. and Zhu, J. Z: The Superconvergent Patch Recovery and a
posteriori Error Estimates, Part 1: The Recovery Technique, Int. J. Numer.
Meth. Engng., 33:13311364, 1992.
[164] Zienkiewicz, O. C. and Zhu, J. Z: The Superconvergent Patch Recovery and
a posteriori Error Estimates, Part 2: Error Estimates and Adaptivity, Int.
J. Numer. Meth. Engng., 33:13651382, 1992.

You might also like