Beruflich Dokumente
Kultur Dokumente
Richard D. Sandberg
November 2007
COPYRIGHT NOTICE All right reserved. No parts of this publication may be reproduced, stored in a retrieval
system, or transmitted, in any form or by any means, electronic, mechanical, photocopying,
recording, or otherwise, without the permission of the Head of the School of Engineering
Sciences, University of Southampton, Southampton SO17 1BJ, U.K.
The aim of this report is to derive the governing equations for a new compressible NavierStokes solver in general cylindrical coordinates, i.e. the streamwise and radial directions
are mapped to general coordinates. A literature review revealed that simulations of complex cylindrical geometries have mostly been conducted using general curvilinear coordinates (e.g. DeBonis & Scott, 2002). The method presented in this report is chosen over
three-dimensional general curvilinear coordinates as it requires a smaller number of terms
to be computed. Furthermore, only two-dimensional metric terms need to be stored,
reducing the required allocated memory and therefore resulting in a more efficient code.
cp
u r
u
,
M
=
,
P
r
=
.
With z, r, denoting the streamwise, radial and azimuthal directions, respectively, and
u, v, w denoting the velocity components in z, r, directions, respectively, the non-dimensional
compressible NavierStokes equations in cylindrical coordinates are
U
A B 1 C 1
+
+
+
+ D=0
t
z
r
r
r
u
v
w
E
U =
A=
C=
u
uu + p zz
uv rz
uw z
uH + qz uzz vrz wz
w
uw z
vw r
ww + p
wH + q uz vr w
(1)
B=
D=
(2)
v
uv rz
vv + p rr
vw r
vH + qr urz vrr wr
v
uv rz
vv ww rr +
2vw 2r
vH + qr urz vrr wr
where the total energy is defined as E = T /[( 1)M 2 ] + 1/2ui ui with = 1.4, and the
total enthalpy is H = E + p/.
1
zz =
rr =
=
rz =
z =
r =
!#
2
u v 1 w
2
+v
3Re z
r r
"
!#
u
v 1 w
2
+2
+v
3Re
z
r r
"
!#
2
u v
1 w
+2
+v
3Re
z
r
r
"
#
u v
+
Re r z
"
#
w 1 u
+
Re z
r
"
!
#
1 v
w
w +
.
Re r
r
(3)
(4)
(5)
(6)
(7)
(8)
2
P r( 1)M Re z
T
=
2
P r( 1)M Re r
1 T
=
,
2
P r( 1)M Re r
qz =
qr
q
(9)
(10)
(11)
In order to allow for complex geometries, the (r, z) plane is mapped to general coordinates
(, ). Hence, streamwise and radial derivatives need to be expressed in terms of the new
variables. By using the chain rule, the following expressions can be derived
"
1 r
r
= r
r
,
z
J
"
#
1
z
z
+
= z
z
,
r
J
(12)
(13)
where J is the determinant of the coordinate transformation. For conciseness, the metric
r
terms are abbreviated as, e.g., r =
so that J = z r z r , and the asterisk denotes
a metric term already divided by J.
2
Following Anderson (1995), the r and z derivatives of equation (1) can be transformed as
follows (provided that the grid transformation does not vary in time)
"
U
1
1 C 1
=
(Ar Bz ) +
(Ar + Bz )
D
t
J
r
r
(14)
(uv rz ) r (vv + p rr ) z
(uv rz ) r (vv + p rr ) z .
(15)
The only term containing 1/r is the stress tensor component rr . Therefore, the equation
is separated into
"
(uv rz ) r vv + p
"
(uv rz ) r vv + p
"
#!
2
u
v
+2
z
3Re
z
r
"
#! #
2
u
v
+2
z +
3Re
z
r
"
Applying the chain rule to the last term of each row results in
"
"
1 2 w
1 2 w
+ v z =
+ v z
r 3Re
r 3Re
"
! #
"
! #
1 2 w
1 2 w
+ v z =
+ v z
r 3Re
r 3Re
1
r
1
+ 2
r
"
1 2 w
+ v z
r 3Re
"
! #
1 2 w
+ v z .
r 3Re
(16)
1
2 w
r z
+v
2
r
3Re
!
1
2 w
r z
+v
r2
3Re
#!
2
u
v
(uv rz ) r vv + p
+2
z
3Re
z
r
"
"
#! #
2
u
v
(uv rz ) r vv + p
+2
z
3Re
z
r
"
! #
"
! #
2 w
1 2 w
+ v z +
+ v z
3Re
r 3Re
!
2 w
+ v (r z r z ) .
|
{z
}
3Re
(17)
The last term of (17) occurs because of the partial derivative with respect to r of rr . In
2.1
Continuity equation
"
1 (w) (v)
=
(ur vz ) +
(ur + vz )
t
J
r
r
2.2
"
"
#!
2
u v
uu + p
2
r (uv rz ) z
3Re z
r
"
"
#!
#
2
u v
uu + p
2
r (uv rz ) z
3Re z
r
"
! #
"
! #
1 2 w
1 2 w
+
+ v r
+ v r
r 3Re
r 3Re
1
1
uw z
uv rz
r
r
2.3
(18)
(19)
"
"
#!
2
u
v
(uv rz ) r vv + p
+2
z
(20)
3Re
z
r
"
"
#! #
2
u
v
(uv rz ) r vv + p
z
+2
3Re
z
r
"
! #
"
! #
)
1 2 w
1 2 w
+ v z +
+ v z
r 3Re
r 3Re
!
1 2 w
+ 2
+v
r 3Re
"
!!#
1
1
2 v 1 w
vw r
(vv ww)
+v
r
r
Re r r
(v)
1
=
t
J
2.4
(w)
1
=
t
J
"
w
w
uw
r vw
z
(21)
Re z
Re r
"
!
! #
w
w
uw
r vw
z
Re z
Re r
"
! !#
"
! !# )
v
v
1 u
1 u
r
w z +
r
w z
r Re
r Re
!
1 v
2
w
r Re
1
1
ww + p
2vw 2r
r
r
2.5
Energy equation
(
"
"
2
u v
w
uH + qz u
2
vrz w
r
(22)
3Re z
r
Re z
"
#
! #
2
v u
w
vH + qr urz v
2
w
z
3Re r z
Re r
"
"
#
!
2
u v
w
uH + qz u
2
vrz w
r
3Re z
r
Re z
"
#
! #
2
v u
w
vH + qr urz v
2
w
z
3Re r z
Re r
"
"
#
!
1
2 w
u
+
u
+v w
r
r Re 3
"
!# #
2
w
v
v
+v w
w z
Re 3
"
"
!
#
1
2 w
u
u
+v w
r
r Re 3
"
!# #
)
2
w
v
v
+v w
w z
Re 3
"
!#
1 2
w
v
v
+v w
w
+ 2
r Re 3
1
1
wH + q uz vr w
vH + qr urz vrr wr
r
r
(E)
1
=
t
J
U
1
+ Ar
+ Bz
= {
Ar Bz
t
J
"
#)
r z +
r z
+
Ar r B
Ar r + B
r
1 C 1
1
D 2B
rr ,
r
r
r
where
A =
=
B
Ar =
2
3Re
u h
2
uu + p 3Re
2 u
v
z
r
uv rz
w
uw
h Re zi
2
w
uH + qz u 3Re
2 u
v
vrz w Re
z
r
z
v
uv h rz
i
2
v
u
+
2
vv + p 3Re
z
r
w
vw hRe
r
i
2
w
v
vH + qr urz v 3Re
u
+
2
w Re
z
r
r
+v
0
u
h
Re
2 w
u
+ v w u
Re
3
Brr =
Re
2
3Re
Re
Re
v
0
0
r =
B
2
v
3
2
w
+v
3Re
v
Re w
w
v
+
v
0
0
w
+v
(23)
w 23 v
+v
In order to make the new code most efficient, a good compromise between the number
of arithmetic operations and the number of three dimensional arrays stored needs to be
found. The emphasis here lies on reducing the number of stored arrays to a minimum
while minimizing the number of repeated operations. One choice is to simply store all
nine velocity derivatives. However, for this option, the number of operations is high as the
stress tensor components constantly need to be reassembled. The most efficient choice of
2
u v
u v
w
1) zz =
2
2) rz =
+
3) z =
3Re z
r !
Re r z
Re z
!
v u
w
2 w
2
2
5) r =
6) 1 =
+v
4) rr =
3Re
r z
Rer
3Re
!
u
v
7) 2 =
8) 3 =
w .
Re
Re
Using these eight arrays in addition to the primitive variables and the heat-flux vector,
B,
Ar , B
r and B
rr can be assembled. In order to evaluate C and D, the following
A,
relations can be used
1
1
1
2
z = z + 2 , r = r + 3 , rr = rr 1 , =
zz rr + 1 . (24)
r
r
r
r
Finally, all vectors required for (23) can be written as
A=
u
uu + p zz
uv rz
uw z
uH + qz u
zz vrz w
z
Ar =
C=
0
1
0
2
u1 w2
Br =
B=
0
0
1
3
v1 w3
v
uv rz
vv + p rr
vw r
vH + qr urz v
rr w
r
Brr =
0
0
1
3
w3 v1
w
uw (
z + 1r 2 )
vw (
r + 1r 3 )
ww + p (
zz rr + 2r 1 )
1
wH + q u(
z + r 2 ) v(
r + 1r 3 ) w(
zz rr + 2r 1 )
D=
v
uv rz
zz rr + 2r 1 )
vv ww (
rr 1r 1 ) + (
2vw 2(
r + 1r 3 )
vH + qr urz v(
rr 1r 1 ) w(
r + 1r 3 )
References
Anderson, J. 1995 Computational Fluid Dynamics, The Basics with Applications.
McGraw-Hill.
DeBonis, J. & Scott, J. N. 2002 Large-eddy simulation of a turbulent compressible
round jet. AIAA J. 40 (7), 13461354.
White, F. M. 1991 Viscous Fluid Flow . McGraw Hill.
7