11 real(kind=realtype),
dimension(:, :, :),
allocatable ::
qq
12 real(kind=realtype),
dimension(:, :, :),
pointer ::
ddw,
ww,
ddvt
13 real(kind=realtype),
dimension(:, :),
pointer ::
rrlv
14 real(kind=realtype),
dimension(:, :),
pointer ::
dd2wall
42 real(kind=realtype),
parameter :: f23=
two*
third
44 integer(kind=inttype) :: i, j, k, nn, ii
45 real(kind=realtype) :: fv1, fv2, ft2
46 real(kind=realtype) :: fv1d, fv2d, ft2d
47 real(kind=realtype) :: ss,
sst, nu, dist2inv, chi, chi2, chi3
48 real(kind=realtype) :: ssd, sstd, nud, dist2invd, chid, chi2d, chi3d
49 real(kind=realtype) :: rr, gg, gg6, termfw, fwsa, term1, term2
50 real(kind=realtype) :: rrd, ggd, gg6d, termfwd, fwsad, term1d, &
52 real(kind=realtype) :: dfv1, dfv2, dft2, drr, dgg, dfw
53 real(kind=realtype) :: uux, uuy, uuz, vvx, vvy, vvz, wwx, wwy, wwz
54 real(kind=realtype) :: uuxd, uuyd, uuzd, vvxd, vvyd, vvzd, wwxd, &
56 real(kind=realtype) :: div2, fact, sxx, syy, szz, sxy, sxz, syz
57 real(kind=realtype) :: div2d, factd, sxxd, syyd, szzd, sxyd, sxzd, &
59 real(kind=realtype) :: vortx, vorty, vortz
60 real(kind=realtype) :: vortxd, vortyd, vortzd
61 real(kind=realtype) :: omegax, omegay, omegaz
62 real(kind=realtype) :: omegaxd, omegayd, omegazd
63 real(kind=realtype) :: strainmag2, strainprod, vortprod
64 real(kind=realtype) :: strainmag2d, strainprodd, vortprodd
65 real(kind=realtype),
parameter :: xminn=1.e-10_realtype
71 real(kind=realtype) :: y1
72 real(kind=realtype) :: y1d
73 real(kind=realtype) :: min1
74 real(kind=realtype) :: min1d
75 real(kind=realtype) :: temp
76 real(kind=realtype) :: tempd
77 real(kind=realtype) :: temp0
78 real(kind=realtype) :: tempd0
102 j = mod(ii/
nx,
ny) + 2
108 uux =
w(i+1, j, k,
ivx)*
si(i, j, k, 1) -
w(i-1, j, k,
ivx)*
si(i-&
109 & 1, j, k, 1) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 1) -
w(i, j-1, k, &
110 &
ivx)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 1) -
w(i&
111 & , j, k-1,
ivx)*
sk(i, j, k-1, 1)
112 uuy =
w(i+1, j, k,
ivx)*
si(i, j, k, 2) -
w(i-1, j, k,
ivx)*
si(i-&
113 & 1, j, k, 2) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 2) -
w(i, j-1, k, &
114 &
ivx)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 2) -
w(i&
115 & , j, k-1,
ivx)*
sk(i, j, k-1, 2)
116 uuz =
w(i+1, j, k,
ivx)*
si(i, j, k, 3) -
w(i-1, j, k,
ivx)*
si(i-&
117 & 1, j, k, 3) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 3) -
w(i, j-1, k, &
118 &
ivx)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 3) -
w(i&
119 & , j, k-1,
ivx)*
sk(i, j, k-1, 3)
121 vvx =
w(i+1, j, k,
ivy)*
si(i, j, k, 1) -
w(i-1, j, k,
ivy)*
si(i-&
122 & 1, j, k, 1) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 1) -
w(i, j-1, k, &
123 &
ivy)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 1) -
w(i&
124 & , j, k-1,
ivy)*
sk(i, j, k-1, 1)
125 vvy =
w(i+1, j, k,
ivy)*
si(i, j, k, 2) -
w(i-1, j, k,
ivy)*
si(i-&
126 & 1, j, k, 2) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 2) -
w(i, j-1, k, &
127 &
ivy)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 2) -
w(i&
128 & , j, k-1,
ivy)*
sk(i, j, k-1, 2)
129 vvz =
w(i+1, j, k,
ivy)*
si(i, j, k, 3) -
w(i-1, j, k,
ivy)*
si(i-&
130 & 1, j, k, 3) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 3) -
w(i, j-1, k, &
131 &
ivy)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 3) -
w(i&
132 & , j, k-1,
ivy)*
sk(i, j, k-1, 3)
134 wwx =
w(i+1, j, k,
ivz)*
si(i, j, k, 1) -
w(i-1, j, k,
ivz)*
si(i-&
135 & 1, j, k, 1) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 1) -
w(i, j-1, k, &
136 &
ivz)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 1) -
w(i&
137 & , j, k-1,
ivz)*
sk(i, j, k-1, 1)
138 wwy =
w(i+1, j, k,
ivz)*
si(i, j, k, 2) -
w(i-1, j, k,
ivz)*
si(i-&
139 & 1, j, k, 2) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 2) -
w(i, j-1, k, &
140 &
ivz)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 2) -
w(i&
141 & , j, k-1,
ivz)*
sk(i, j, k-1, 2)
142 wwz =
w(i+1, j, k,
ivz)*
si(i, j, k, 3) -
w(i-1, j, k,
ivz)*
si(i-&
143 & 1, j, k, 3) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 3) -
w(i, j-1, k, &
144 &
ivz)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 3) -
w(i&
145 & , j, k-1,
ivz)*
sk(i, j, k-1, 3)
159 div2 = f23*(sxx+syy+szz)**2
161 strainmag2 =
two*(sxy**2+sxz**2+syz**2) + sxx**2 + syy**2 + &
163 strainprod =
two*strainmag2 - div2
164 ss = sqrt(strainprod)
165 call pushcontrol2b(0)
169 vortx =
two*fact*(wwy-vvz) -
two*omegax
170 vorty =
two*fact*(uuz-wwx) -
two*omegay
171 vortz =
two*fact*(vvx-uuy) -
two*omegaz
173 vortprod = vortx**2 + vorty**2 + vortz**2
178 call pushcontrol2b(1)
180 call pushcontrol2b(2)
188 chi =
w(i, j, k,
itu1)/nu
191 fv1 = chi3/(chi3+
cv13)
192 fv2 =
one - chi/(
one+chi*fv1)
198 call pushcontrol1b(0)
201 call pushcontrol1b(1)
208 y1 = sqrt(
two*strainmag2)
209 if (
zero .gt. y1)
then
211 call pushcontrol1b(0)
214 call pushcontrol1b(1)
217 call pushcontrol1b(1)
219 call pushcontrol1b(0)
221 if (
sst .lt. xminn)
then
223 call pushcontrol1b(0)
225 call pushcontrol1b(1)
232 if (rr .gt. 10.0_realtype)
then
234 call pushcontrol1b(0)
236 call pushcontrol1b(1)
239 gg = rr +
rsacw2*(rr**6-rr)
246 call pushcontrol1b(0)
250 call pushcontrol1b(1)
254 temp =
w(i, j, k,
itu1)
256 wd(i, j, k,
itu1) =
wd(i, j, k,
itu1) + (term1+term2*temp)*&
264 fwsad = -(
rsacw1*dist2inv*term2d)
265 ft2d = (1.0-fv2)*tempd0
266 fv2d = (
one-ft2)*tempd0
267 call popcontrol1b(branch)
268 if (branch .ne. 0)
then
269 ft2d = ft2d - ss*
rsacb1*term1d
274 if (temp0 .le. 0.0_8 .and. (
sixth .eq. 0.0_8 .or.
sixth .ne. int&
280 ggd = termfw*fwsad + 6*gg**5*gg6d
282 call popcontrol1b(branch)
283 if (branch .eq. 0) rrd = 0.0_8
286 dist2invd = dist2invd + tempd0
287 sstd = -(dist2inv*tempd0/
sst)
288 call popcontrol1b(branch)
289 if (branch .eq. 0) sstd = 0.0_8
290 call popcontrol1b(branch)
291 if (branch .ne. 0)
then
293 call popcontrol1b(branch)
294 if (branch .eq. 0)
then
299 if (.not.
two*strainmag2 .eq. 0.0_8) strainmag2d = strainmag2d &
300 & +
two*y1d/(2.0*sqrt(
two*strainmag2))
306 fv2d = fv2d + dist2inv*tempd0
307 dist2invd = dist2invd + fv2*tempd0
308 call popcontrol1b(branch)
309 if (branch .eq. 0)
then
314 tempd = -(fv2d/(
one+chi*fv1))
316 tempd0 = -(chi*tempd/(
one+chi*fv1))
318 tempd = fv1d/(
cv13+chi3)
319 chi3d = (1.0-chi3/(
cv13+chi3))*tempd
320 chi2d = chi2d + chi*chi3d
321 chid = chid + fv1*tempd0 + chi2*chi3d + 2*chi*chi2d
323 nud = -(
w(i, j, k,
itu1)*chid/nu**2)
326 temp =
w(i, j, k,
irho)
327 rlvd(i, j, k) =
rlvd(i, j, k) + nud/temp
329 call popcontrol2b(branch)
330 if (branch .eq. 0)
then
331 if (strainprod .eq. 0.0_8)
then
334 strainprodd = ssd/(2.0*sqrt(strainprod))
336 strainmag2d = strainmag2d +
two*strainprodd
338 tempd =
two*strainmag2d
342 tempd = 2*(sxx+syy+szz)*f23*div2d
343 sxxd = 2*sxx*strainmag2d + tempd
344 syyd = 2*syy*strainmag2d + tempd
345 szzd = 2*szz*strainmag2d + tempd
346 factd = (vvz+wwy)*syzd + (uuz+wwx)*sxzd + (uuy+vvx)*sxyd + wwz&
347 & *
two*szzd + vvy*
two*syyd + uux*
two*sxxd
360 if (branch .eq. 1)
then
361 if (vortprod .eq. 0.0_8)
then
364 vortprodd = ssd/(2.0*sqrt(vortprod))
366 vortxd = 2*vortx*vortprodd
367 vortyd = 2*vorty*vortprodd
368 vortzd = 2*vortz*vortprodd
370 omegazd = omegazd -
two*vortzd
371 factd = (vvx-uuy)*tempd
375 omegayd = omegayd -
two*vortyd
376 factd = factd + (uuz-wwx)*tempd
380 omegaxd = omegaxd -
two*vortxd
381 factd = factd + (wwy-vvz)*tempd
398 wd(i, j, k-1,
ivz) =
wd(i, j, k-1,
ivz) -
sk(i, j, k-1, 3)*wwzd &
399 & -
sk(i, j, k-1, 2)*wwyd -
sk(i, j, k-1, 1)*wwxd
400 wd(i, j-1, k,
ivz) =
wd(i, j-1, k,
ivz) -
sj(i, j-1, k, 3)*wwzd &
401 & -
sj(i, j-1, k, 2)*wwyd -
sj(i, j-1, k, 1)*wwxd
402 wd(i, j, k+1,
ivz) =
wd(i, j, k+1,
ivz) +
sk(i, j, k, 3)*wwzd + &
403 &
sk(i, j, k, 2)*wwyd +
sk(i, j, k, 1)*wwxd
404 wd(i, j+1, k,
ivz) =
wd(i, j+1, k,
ivz) +
sj(i, j, k, 3)*wwzd + &
405 &
sj(i, j, k, 2)*wwyd +
sj(i, j, k, 1)*wwxd
406 wd(i-1, j, k,
ivz) =
wd(i-1, j, k,
ivz) -
si(i-1, j, k, 3)*wwzd &
407 & -
si(i-1, j, k, 2)*wwyd -
si(i-1, j, k, 1)*wwxd
409 wd(i+1, j, k,
ivz) =
wd(i+1, j, k,
ivz) +
si(i, j, k, 3)*wwzd + &
410 &
si(i, j, k, 2)*wwyd +
si(i, j, k, 1)*wwxd
411 sid(i, j, k, 3) =
sid(i, j, k, 3) +
w(i+1, j, k,
ivz)*wwzd
412 sid(i-1, j, k, 3) =
sid(i-1, j, k, 3) -
w(i-1, j, k,
ivz)*wwzd
413 sjd(i, j, k, 3) =
sjd(i, j, k, 3) +
w(i, j+1, k,
ivz)*wwzd
414 skd(i, j, k, 3) =
skd(i, j, k, 3) +
w(i, j, k+1,
ivz)*wwzd
415 sjd(i, j-1, k, 3) =
sjd(i, j-1, k, 3) -
w(i, j-1, k,
ivz)*wwzd
416 skd(i, j, k-1, 3) =
skd(i, j, k-1, 3) -
w(i, j, k-1,
ivz)*wwzd
417 sid(i, j, k, 2) =
sid(i, j, k, 2) +
w(i+1, j, k,
ivz)*wwyd
418 sid(i-1, j, k, 2) =
sid(i-1, j, k, 2) -
w(i-1, j, k,
ivz)*wwyd
419 sjd(i, j, k, 2) =
sjd(i, j, k, 2) +
w(i, j+1, k,
ivz)*wwyd
420 skd(i, j, k, 2) =
skd(i, j, k, 2) +
w(i, j, k+1,
ivz)*wwyd
421 sjd(i, j-1, k, 2) =
sjd(i, j-1, k, 2) -
w(i, j-1, k,
ivz)*wwyd
422 skd(i, j, k-1, 2) =
skd(i, j, k-1, 2) -
w(i, j, k-1,
ivz)*wwyd
423 sid(i, j, k, 1) =
sid(i, j, k, 1) +
w(i+1, j, k,
ivz)*wwxd
424 sid(i-1, j, k, 1) =
sid(i-1, j, k, 1) -
w(i-1, j, k,
ivz)*wwxd
425 sjd(i, j, k, 1) =
sjd(i, j, k, 1) +
w(i, j+1, k,
ivz)*wwxd
426 skd(i, j, k, 1) =
skd(i, j, k, 1) +
w(i, j, k+1,
ivz)*wwxd
427 sjd(i, j-1, k, 1) =
sjd(i, j-1, k, 1) -
w(i, j-1, k,
ivz)*wwxd
428 skd(i, j, k-1, 1) =
skd(i, j, k-1, 1) -
w(i, j, k-1,
ivz)*wwxd
429 sid(i, j, k, 3) =
sid(i, j, k, 3) +
w(i+1, j, k,
ivy)*vvzd
430 sid(i-1, j, k, 3) =
sid(i-1, j, k, 3) -
w(i-1, j, k,
ivy)*vvzd
431 sjd(i, j, k, 3) =
sjd(i, j, k, 3) +
w(i, j+1, k,
ivy)*vvzd
432 skd(i, j, k, 3) =
skd(i, j, k, 3) +
w(i, j, k+1,
ivy)*vvzd
433 sjd(i, j-1, k, 3) =
sjd(i, j-1, k, 3) -
w(i, j-1, k,
ivy)*vvzd
434 wd(i, j, k-1,
ivy) =
wd(i, j, k-1,
ivy) -
sk(i, j, k-1, 3)*vvzd &
435 & -
sk(i, j, k-1, 2)*vvyd -
sk(i, j, k-1, 1)*vvxd
436 wd(i, j-1, k,
ivy) =
wd(i, j-1, k,
ivy) -
sj(i, j-1, k, 3)*vvzd &
437 & -
sj(i, j-1, k, 2)*vvyd -
sj(i, j-1, k, 1)*vvxd
438 wd(i, j, k+1,
ivy) =
wd(i, j, k+1,
ivy) +
sk(i, j, k, 3)*vvzd + &
439 &
sk(i, j, k, 2)*vvyd +
sk(i, j, k, 1)*vvxd
440 wd(i, j+1, k,
ivy) =
wd(i, j+1, k,
ivy) +
sj(i, j, k, 3)*vvzd + &
441 &
sj(i, j, k, 2)*vvyd +
sj(i, j, k, 1)*vvxd
442 wd(i-1, j, k,
ivy) =
wd(i-1, j, k,
ivy) -
si(i-1, j, k, 3)*vvzd &
443 & -
si(i-1, j, k, 2)*vvyd -
si(i-1, j, k, 1)*vvxd
444 wd(i+1, j, k,
ivy) =
wd(i+1, j, k,
ivy) +
si(i, j, k, 3)*vvzd + &
445 &
si(i, j, k, 2)*vvyd +
si(i, j, k, 1)*vvxd
446 skd(i, j, k-1, 3) =
skd(i, j, k-1, 3) -
w(i, j, k-1,
ivy)*vvzd
447 sid(i, j, k, 2) =
sid(i, j, k, 2) +
w(i+1, j, k,
ivy)*vvyd
448 sid(i-1, j, k, 2) =
sid(i-1, j, k, 2) -
w(i-1, j, k,
ivy)*vvyd
449 sjd(i, j, k, 2) =
sjd(i, j, k, 2) +
w(i, j+1, k,
ivy)*vvyd
450 skd(i, j, k, 2) =
skd(i, j, k, 2) +
w(i, j, k+1,
ivy)*vvyd
451 sjd(i, j-1, k, 2) =
sjd(i, j-1, k, 2) -
w(i, j-1, k,
ivy)*vvyd
452 skd(i, j, k-1, 2) =
skd(i, j, k-1, 2) -
w(i, j, k-1,
ivy)*vvyd
453 sid(i, j, k, 1) =
sid(i, j, k, 1) +
w(i+1, j, k,
ivy)*vvxd
454 sid(i-1, j, k, 1) =
sid(i-1, j, k, 1) -
w(i-1, j, k,
ivy)*vvxd
455 sjd(i, j, k, 1) =
sjd(i, j, k, 1) +
w(i, j+1, k,
ivy)*vvxd
456 skd(i, j, k, 1) =
skd(i, j, k, 1) +
w(i, j, k+1,
ivy)*vvxd
457 sjd(i, j-1, k, 1) =
sjd(i, j-1, k, 1) -
w(i, j-1, k,
ivy)*vvxd
458 skd(i, j, k-1, 1) =
skd(i, j, k-1, 1) -
w(i, j, k-1,
ivy)*vvxd
459 sid(i, j, k, 3) =
sid(i, j, k, 3) +
w(i+1, j, k,
ivx)*uuzd
460 sid(i-1, j, k, 3) =
sid(i-1, j, k, 3) -
w(i-1, j, k,
ivx)*uuzd
461 sjd(i, j, k, 3) =
sjd(i, j, k, 3) +
w(i, j+1, k,
ivx)*uuzd
462 skd(i, j, k, 3) =
skd(i, j, k, 3) +
w(i, j, k+1,
ivx)*uuzd
463 sjd(i, j-1, k, 3) =
sjd(i, j-1, k, 3) -
w(i, j-1, k,
ivx)*uuzd
464 wd(i, j, k-1,
ivx) =
wd(i, j, k-1,
ivx) -
sk(i, j, k-1, 3)*uuzd &
465 & -
sk(i, j, k-1, 2)*uuyd -
sk(i, j, k-1, 1)*uuxd
466 wd(i, j-1, k,
ivx) =
wd(i, j-1, k,
ivx) -
sj(i, j-1, k, 3)*uuzd &
467 & -
sj(i, j-1, k, 2)*uuyd -
sj(i, j-1, k, 1)*uuxd
468 wd(i, j, k+1,
ivx) =
wd(i, j, k+1,
ivx) +
sk(i, j, k, 3)*uuzd + &
469 &
sk(i, j, k, 2)*uuyd +
sk(i, j, k, 1)*uuxd
470 wd(i, j+1, k,
ivx) =
wd(i, j+1, k,
ivx) +
sj(i, j, k, 3)*uuzd + &
471 &
sj(i, j, k, 2)*uuyd +
sj(i, j, k, 1)*uuxd
472 wd(i-1, j, k,
ivx) =
wd(i-1, j, k,
ivx) -
si(i-1, j, k, 3)*uuzd &
473 & -
si(i-1, j, k, 2)*uuyd -
si(i-1, j, k, 1)*uuxd
474 wd(i+1, j, k,
ivx) =
wd(i+1, j, k,
ivx) +
si(i, j, k, 3)*uuzd + &
475 &
si(i, j, k, 2)*uuyd +
si(i, j, k, 1)*uuxd
476 skd(i, j, k-1, 3) =
skd(i, j, k-1, 3) -
w(i, j, k-1,
ivx)*uuzd
477 sid(i, j, k, 2) =
sid(i, j, k, 2) +
w(i+1, j, k,
ivx)*uuyd
478 sid(i-1, j, k, 2) =
sid(i-1, j, k, 2) -
w(i-1, j, k,
ivx)*uuyd
479 sjd(i, j, k, 2) =
sjd(i, j, k, 2) +
w(i, j+1, k,
ivx)*uuyd
480 skd(i, j, k, 2) =
skd(i, j, k, 2) +
w(i, j, k+1,
ivx)*uuyd
481 sjd(i, j-1, k, 2) =
sjd(i, j-1, k, 2) -
w(i, j-1, k,
ivx)*uuyd
482 skd(i, j, k-1, 2) =
skd(i, j, k-1, 2) -
w(i, j, k-1,
ivx)*uuyd
483 sid(i, j, k, 1) =
sid(i, j, k, 1) +
w(i+1, j, k,
ivx)*uuxd
484 sid(i-1, j, k, 1) =
sid(i-1, j, k, 1) -
w(i-1, j, k,
ivx)*uuxd
485 sjd(i, j, k, 1) =
sjd(i, j, k, 1) +
w(i, j+1, k,
ivx)*uuxd
486 skd(i, j, k, 1) =
skd(i, j, k, 1) +
w(i, j, k+1,
ivx)*uuxd
487 sjd(i, j-1, k, 1) =
sjd(i, j-1, k, 1) -
w(i, j-1, k,
ivx)*uuxd
488 skd(i, j, k-1, 1) =
skd(i, j, k-1, 1) -
w(i, j, k-1,
ivx)*uuxd
511 real(kind=realtype),
parameter :: f23=
two*
third
513 integer(kind=inttype) :: i, j, k, nn, ii
514 real(kind=realtype) :: fv1, fv2, ft2
515 real(kind=realtype) :: ss,
sst, nu, dist2inv, chi, chi2, chi3
516 real(kind=realtype) :: rr, gg, gg6, termfw, fwsa, term1, term2
517 real(kind=realtype) :: dfv1, dfv2, dft2, drr, dgg, dfw
518 real(kind=realtype) :: uux, uuy, uuz, vvx, vvy, vvz, wwx, wwy, wwz
519 real(kind=realtype) :: div2, fact, sxx, syy, szz, sxy, sxz, syz
520 real(kind=realtype) :: vortx, vorty, vortz
521 real(kind=realtype) :: omegax, omegay, omegaz
522 real(kind=realtype) :: strainmag2, strainprod, vortprod
523 real(kind=realtype),
parameter :: xminn=1.e-10_realtype
529 real(kind=realtype) :: y1
530 real(kind=realtype) :: min1
543 print*,
'katolaunder production term not supported for sa'
549 j = mod(ii/
nx,
ny) + 2
555 uux =
w(i+1, j, k,
ivx)*
si(i, j, k, 1) -
w(i-1, j, k,
ivx)*
si(i-&
556 & 1, j, k, 1) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 1) -
w(i, j-1, k, &
557 &
ivx)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 1) -
w(i&
558 & , j, k-1,
ivx)*
sk(i, j, k-1, 1)
559 uuy =
w(i+1, j, k,
ivx)*
si(i, j, k, 2) -
w(i-1, j, k,
ivx)*
si(i-&
560 & 1, j, k, 2) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 2) -
w(i, j-1, k, &
561 &
ivx)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 2) -
w(i&
562 & , j, k-1,
ivx)*
sk(i, j, k-1, 2)
563 uuz =
w(i+1, j, k,
ivx)*
si(i, j, k, 3) -
w(i-1, j, k,
ivx)*
si(i-&
564 & 1, j, k, 3) +
w(i, j+1, k,
ivx)*
sj(i, j, k, 3) -
w(i, j-1, k, &
565 &
ivx)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivx)*
sk(i, j, k, 3) -
w(i&
566 & , j, k-1,
ivx)*
sk(i, j, k-1, 3)
568 vvx =
w(i+1, j, k,
ivy)*
si(i, j, k, 1) -
w(i-1, j, k,
ivy)*
si(i-&
569 & 1, j, k, 1) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 1) -
w(i, j-1, k, &
570 &
ivy)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 1) -
w(i&
571 & , j, k-1,
ivy)*
sk(i, j, k-1, 1)
572 vvy =
w(i+1, j, k,
ivy)*
si(i, j, k, 2) -
w(i-1, j, k,
ivy)*
si(i-&
573 & 1, j, k, 2) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 2) -
w(i, j-1, k, &
574 &
ivy)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 2) -
w(i&
575 & , j, k-1,
ivy)*
sk(i, j, k-1, 2)
576 vvz =
w(i+1, j, k,
ivy)*
si(i, j, k, 3) -
w(i-1, j, k,
ivy)*
si(i-&
577 & 1, j, k, 3) +
w(i, j+1, k,
ivy)*
sj(i, j, k, 3) -
w(i, j-1, k, &
578 &
ivy)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivy)*
sk(i, j, k, 3) -
w(i&
579 & , j, k-1,
ivy)*
sk(i, j, k-1, 3)
581 wwx =
w(i+1, j, k,
ivz)*
si(i, j, k, 1) -
w(i-1, j, k,
ivz)*
si(i-&
582 & 1, j, k, 1) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 1) -
w(i, j-1, k, &
583 &
ivz)*
sj(i, j-1, k, 1) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 1) -
w(i&
584 & , j, k-1,
ivz)*
sk(i, j, k-1, 1)
585 wwy =
w(i+1, j, k,
ivz)*
si(i, j, k, 2) -
w(i-1, j, k,
ivz)*
si(i-&
586 & 1, j, k, 2) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 2) -
w(i, j-1, k, &
587 &
ivz)*
sj(i, j-1, k, 2) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 2) -
w(i&
588 & , j, k-1,
ivz)*
sk(i, j, k-1, 2)
589 wwz =
w(i+1, j, k,
ivz)*
si(i, j, k, 3) -
w(i-1, j, k,
ivz)*
si(i-&
590 & 1, j, k, 3) +
w(i, j+1, k,
ivz)*
sj(i, j, k, 3) -
w(i, j-1, k, &
591 &
ivz)*
sj(i, j-1, k, 3) +
w(i, j, k+1,
ivz)*
sk(i, j, k, 3) -
w(i&
592 & , j, k-1,
ivz)*
sk(i, j, k-1, 3)
606 div2 = f23*(sxx+syy+szz)**2
608 strainmag2 =
two*(sxy**2+sxz**2+syz**2) + sxx**2 + syy**2 + &
610 strainprod =
two*strainmag2 - div2
611 ss = sqrt(strainprod)
615 vortx =
two*fact*(wwy-vvz) -
two*omegax
616 vorty =
two*fact*(uuz-wwx) -
two*omegay
617 vortz =
two*fact*(vvx-uuy) -
two*omegaz
619 vortprod = vortx**2 + vorty**2 + vortz**2
631 chi =
w(i, j, k,
itu1)/nu
634 fv1 = chi3/(chi3+
cv13)
635 fv2 =
one - chi/(
one+chi*fv1)
649 y1 = sqrt(
two*strainmag2)
650 if (
zero .gt. y1)
then
657 if (
sst .lt. xminn)
then
666 if (rr .gt. 10.0_realtype)
then
671 gg = rr +
rsacw2*(rr**6-rr)
708 integer(kind=inttype) :: i, j, k, nn, ii
709 real(kind=realtype) :: nu
710 real(kind=realtype) :: nud
711 real(kind=realtype) :: fv1, fv2, ft2
712 real(kind=realtype) :: voli, volmi, volpi, xm, ym, zm, xp, yp, zp
713 real(kind=realtype) :: volid, volmid, volpid, xmd, ymd, zmd, xpd, &
715 real(kind=realtype) :: xa, ya, za, ttm, ttp, cnud, cam, cap
716 real(kind=realtype) :: xad, yad, zad, ttmd, ttpd, cnudd, camd, capd
717 real(kind=realtype) :: nutm, nutp, num, nup, cdm, cdp
718 real(kind=realtype) :: nutmd, nutpd, numd, nupd, cdmd, cdpd
719 real(kind=realtype) :: c1m, c1p, c10, b1, c1, d1, qs
720 real(kind=realtype) :: c1md, c1pd, c10d
723 real(kind=realtype) :: temp
724 real(kind=realtype) :: tempd
725 real(kind=realtype) :: temp0
726 real(kind=realtype) :: tempd0
733 j = mod(ii/
nx,
ny) + 2
738 volmi =
two/(
vol(i, j, k)+
vol(i-1, j, k))
739 volpi =
two/(
vol(i, j, k)+
vol(i+1, j, k))
740 xm =
si(i-1, j, k, 1)*volmi
741 ym =
si(i-1, j, k, 2)*volmi
742 zm =
si(i-1, j, k, 3)*volmi
743 xp =
si(i, j, k, 1)*volpi
744 yp =
si(i, j, k, 2)*volpi
745 zp =
si(i, j, k, 3)*volpi
746 xa =
half*(
si(i, j, k, 1)+
si(i-1, j, k, 1))*voli
747 ya =
half*(
si(i, j, k, 2)+
si(i-1, j, k, 2))*voli
748 za =
half*(
si(i, j, k, 3)+
si(i-1, j, k, 3))*voli
749 ttm = xm*xa + ym*ya + zm*za
750 ttp = xp*xa + yp*ya + zp*za
773 if (cdm + cam .lt.
zero)
then
775 call pushcontrol1b(0)
778 call pushcontrol1b(1)
780 if (cdp + cap .lt.
zero)
then
782 call pushcontrol1b(0)
785 call pushcontrol1b(1)
799 call popcontrol1b(branch)
800 if (branch .eq. 0)
then
807 call popcontrol1b(branch)
808 if (branch .eq. 0)
then
815 cnudd = ttp*capd + ttm*camd
819 ttpd = (nup+(
one+
rsacb2)*nutp)*tempd0 + cnud*capd
823 ttmd = (num+(
one+
rsacb2)*nutm)*tempd0 + cnud*camd
824 temp0 =
w(i+1, j, k,
irho)
825 tempd =
half*nupd/temp0
827 rlvd(i+1, j, k) =
rlvd(i+1, j, k) + tempd
830 temp0 =
w(i-1, j, k,
irho)
831 tempd =
half*numd/temp0
832 rlvd(i-1, j, k) =
rlvd(i-1, j, k) + tempd
835 temp0 =
w(i, j, k,
irho)
836 rlvd(i, j, k) =
rlvd(i, j, k) + nud/temp0
843 xad = xp*ttpd + xm*ttmd
845 yad = yp*ttpd + ym*ttmd
847 zad = zp*ttpd + zm*ttmd
852 sid(i, j, k, 3) =
sid(i, j, k, 3) + voli*tempd0
853 sid(i-1, j, k, 3) =
sid(i-1, j, k, 3) + voli*tempd0
854 volid = (
si(i, j, k, 3)+
si(i-1, j, k, 3))*tempd0
856 sid(i, j, k, 2) =
sid(i, j, k, 2) + voli*tempd0
857 sid(i-1, j, k, 2) =
sid(i-1, j, k, 2) + voli*tempd0
858 volid = volid + (
si(i, j, k, 2)+
si(i-1, j, k, 2))*tempd0
860 sid(i, j, k, 1) =
sid(i, j, k, 1) + voli*tempd0
861 sid(i-1, j, k, 1) =
sid(i-1, j, k, 1) + voli*tempd0
862 volid = volid + (
si(i, j, k, 1)+
si(i-1, j, k, 1))*tempd0
863 sid(i, j, k, 3) =
sid(i, j, k, 3) + volpi*zpd
864 volpid =
si(i, j, k, 3)*zpd +
si(i, j, k, 2)*ypd +
si(i, j, k, 1)*&
866 sid(i, j, k, 2) =
sid(i, j, k, 2) + volpi*ypd
867 sid(i, j, k, 1) =
sid(i, j, k, 1) + volpi*xpd
868 sid(i-1, j, k, 3) =
sid(i-1, j, k, 3) + volmi*zmd
869 volmid =
si(i-1, j, k, 3)*zmd +
si(i-1, j, k, 2)*ymd +
si(i-1, j, &
871 sid(i-1, j, k, 2) =
sid(i-1, j, k, 2) + volmi*ymd
872 sid(i-1, j, k, 1) =
sid(i-1, j, k, 1) + volmi*xmd
873 temp0 =
vol(i, j, k) +
vol(i+1, j, k)
874 tempd0 = -(
two*volpid/temp0**2)
875 vold(i, j, k) =
vold(i, j, k) + tempd0
876 vold(i+1, j, k) =
vold(i+1, j, k) + tempd0
877 temp0 =
vol(i, j, k) +
vol(i-1, j, k)
878 tempd0 = -(
two*volmid/temp0**2)
879 vold(i-1, j, k) =
vold(i-1, j, k) + tempd0
880 vold(i, j, k) =
vold(i, j, k) + tempd0 -
one*volid/
vol(i, j, k)**2
885 j = mod(ii/
nx,
ny) + 2
890 volmi =
two/(
vol(i, j, k)+
vol(i, j-1, k))
891 volpi =
two/(
vol(i, j, k)+
vol(i, j+1, k))
892 xm =
sj(i, j-1, k, 1)*volmi
893 ym =
sj(i, j-1, k, 2)*volmi
894 zm =
sj(i, j-1, k, 3)*volmi
895 xp =
sj(i, j, k, 1)*volpi
896 yp =
sj(i, j, k, 2)*volpi
897 zp =
sj(i, j, k, 3)*volpi
898 xa =
half*(
sj(i, j, k, 1)+
sj(i, j-1, k, 1))*voli
899 ya =
half*(
sj(i, j, k, 2)+
sj(i, j-1, k, 2))*voli
900 za =
half*(
sj(i, j, k, 3)+
sj(i, j-1, k, 3))*voli
901 ttm = xm*xa + ym*ya + zm*za
902 ttp = xp*xa + yp*ya + zp*za
925 if (cdm + cam .lt.
zero)
then
927 call pushcontrol1b(0)
930 call pushcontrol1b(1)
932 if (cdp + cap .lt.
zero)
then
934 call pushcontrol1b(0)
937 call pushcontrol1b(1)
951 call popcontrol1b(branch)
952 if (branch .eq. 0)
then
959 call popcontrol1b(branch)
960 if (branch .eq. 0)
then
967 cnudd = ttp*capd + ttm*camd
971 ttpd = (nup+(
one+
rsacb2)*nutp)*tempd0 + cnud*capd
975 ttmd = (num+(
one+
rsacb2)*nutm)*tempd0 + cnud*camd
976 temp0 =
w(i, j+1, k,
irho)
977 tempd =
half*nupd/temp0
979 rlvd(i, j+1, k) =
rlvd(i, j+1, k) + tempd
982 temp0 =
w(i, j-1, k,
irho)
983 tempd =
half*numd/temp0
984 rlvd(i, j-1, k) =
rlvd(i, j-1, k) + tempd
987 temp0 =
w(i, j, k,
irho)
988 rlvd(i, j, k) =
rlvd(i, j, k) + nud/temp0
995 xad = xp*ttpd + xm*ttmd
997 yad = yp*ttpd + ym*ttmd
999 zad = zp*ttpd + zm*ttmd
1004 sjd(i, j, k, 3) =
sjd(i, j, k, 3) + voli*tempd0
1005 sjd(i, j-1, k, 3) =
sjd(i, j-1, k, 3) + voli*tempd0
1006 volid = (
sj(i, j, k, 3)+
sj(i, j-1, k, 3))*tempd0
1008 sjd(i, j, k, 2) =
sjd(i, j, k, 2) + voli*tempd0
1009 sjd(i, j-1, k, 2) =
sjd(i, j-1, k, 2) + voli*tempd0
1010 volid = volid + (
sj(i, j, k, 2)+
sj(i, j-1, k, 2))*tempd0
1012 sjd(i, j, k, 1) =
sjd(i, j, k, 1) + voli*tempd0
1013 sjd(i, j-1, k, 1) =
sjd(i, j-1, k, 1) + voli*tempd0
1014 volid = volid + (
sj(i, j, k, 1)+
sj(i, j-1, k, 1))*tempd0
1015 sjd(i, j, k, 3) =
sjd(i, j, k, 3) + volpi*zpd
1016 volpid =
sj(i, j, k, 3)*zpd +
sj(i, j, k, 2)*ypd +
sj(i, j, k, 1)*&
1018 sjd(i, j, k, 2) =
sjd(i, j, k, 2) + volpi*ypd
1019 sjd(i, j, k, 1) =
sjd(i, j, k, 1) + volpi*xpd
1020 sjd(i, j-1, k, 3) =
sjd(i, j-1, k, 3) + volmi*zmd
1021 volmid =
sj(i, j-1, k, 3)*zmd +
sj(i, j-1, k, 2)*ymd +
sj(i, j-1, &
1023 sjd(i, j-1, k, 2) =
sjd(i, j-1, k, 2) + volmi*ymd
1024 sjd(i, j-1, k, 1) =
sjd(i, j-1, k, 1) + volmi*xmd
1025 temp0 =
vol(i, j, k) +
vol(i, j+1, k)
1026 tempd0 = -(
two*volpid/temp0**2)
1027 vold(i, j, k) =
vold(i, j, k) + tempd0
1028 vold(i, j+1, k) =
vold(i, j+1, k) + tempd0
1029 temp0 =
vol(i, j, k) +
vol(i, j-1, k)
1030 tempd0 = -(
two*volmid/temp0**2)
1031 vold(i, j-1, k) =
vold(i, j-1, k) + tempd0
1032 vold(i, j, k) =
vold(i, j, k) + tempd0 -
one*volid/
vol(i, j, k)**2
1037 j = mod(ii/
nx,
ny) + 2
1042 volmi =
two/(
vol(i, j, k)+
vol(i, j, k-1))
1043 volpi =
two/(
vol(i, j, k)+
vol(i, j, k+1))
1044 xm =
sk(i, j, k-1, 1)*volmi
1045 ym =
sk(i, j, k-1, 2)*volmi
1046 zm =
sk(i, j, k-1, 3)*volmi
1047 xp =
sk(i, j, k, 1)*volpi
1048 yp =
sk(i, j, k, 2)*volpi
1049 zp =
sk(i, j, k, 3)*volpi
1050 xa =
half*(
sk(i, j, k, 1)+
sk(i, j, k-1, 1))*voli
1051 ya =
half*(
sk(i, j, k, 2)+
sk(i, j, k-1, 2))*voli
1052 za =
half*(
sk(i, j, k, 3)+
sk(i, j, k-1, 3))*voli
1053 ttm = xm*xa + ym*ya + zm*za
1054 ttp = xp*xa + yp*ya + zp*za
1080 if (cdm + cam .lt.
zero)
then
1082 call pushcontrol1b(0)
1085 call pushcontrol1b(1)
1087 if (cdp + cap .lt.
zero)
then
1089 call pushcontrol1b(0)
1092 call pushcontrol1b(1)
1106 call popcontrol1b(branch)
1107 if (branch .eq. 0)
then
1114 call popcontrol1b(branch)
1115 if (branch .eq. 0)
then
1122 cnudd = ttp*capd + ttm*camd
1126 ttpd = (nup+(
one+
rsacb2)*nutp)*tempd0 + cnud*capd
1130 ttmd = (num+(
one+
rsacb2)*nutm)*tempd0 + cnud*camd
1131 temp0 =
w(i, j, k+1,
irho)
1132 tempd =
half*nupd/temp0
1134 rlvd(i, j, k+1) =
rlvd(i, j, k+1) + tempd
1137 temp =
w(i, j, k-1,
irho)
1138 tempd0 =
half*numd/temp
1139 rlvd(i, j, k-1) =
rlvd(i, j, k-1) + tempd0
1142 temp =
w(i, j, k,
irho)
1143 rlvd(i, j, k) =
rlvd(i, j, k) + nud/temp
1150 xad = xp*ttpd + xm*ttmd
1152 yad = yp*ttpd + ym*ttmd
1154 zad = zp*ttpd + zm*ttmd
1159 skd(i, j, k, 3) =
skd(i, j, k, 3) + voli*tempd
1160 skd(i, j, k-1, 3) =
skd(i, j, k-1, 3) + voli*tempd
1161 volid = (
sk(i, j, k, 3)+
sk(i, j, k-1, 3))*tempd
1163 skd(i, j, k, 2) =
skd(i, j, k, 2) + voli*tempd
1164 skd(i, j, k-1, 2) =
skd(i, j, k-1, 2) + voli*tempd
1165 volid = volid + (
sk(i, j, k, 2)+
sk(i, j, k-1, 2))*tempd
1167 skd(i, j, k, 1) =
skd(i, j, k, 1) + voli*tempd
1168 skd(i, j, k-1, 1) =
skd(i, j, k-1, 1) + voli*tempd
1169 volid = volid + (
sk(i, j, k, 1)+
sk(i, j, k-1, 1))*tempd
1170 skd(i, j, k, 3) =
skd(i, j, k, 3) + volpi*zpd
1171 volpid =
sk(i, j, k, 3)*zpd +
sk(i, j, k, 2)*ypd +
sk(i, j, k, 1)*&
1173 skd(i, j, k, 2) =
skd(i, j, k, 2) + volpi*ypd
1174 skd(i, j, k, 1) =
skd(i, j, k, 1) + volpi*xpd
1175 skd(i, j, k-1, 3) =
skd(i, j, k-1, 3) + volmi*zmd
1176 volmid =
sk(i, j, k-1, 3)*zmd +
sk(i, j, k-1, 2)*ymd +
sk(i, j, k-&
1178 skd(i, j, k-1, 2) =
skd(i, j, k-1, 2) + volmi*ymd
1179 skd(i, j, k-1, 1) =
skd(i, j, k-1, 1) + volmi*xmd
1180 temp =
vol(i, j, k) +
vol(i, j, k+1)
1181 tempd = -(
two*volpid/temp**2)
1182 vold(i, j, k) =
vold(i, j, k) + tempd
1183 vold(i, j, k+1) =
vold(i, j, k+1) + tempd
1184 temp =
vol(i, j, k) +
vol(i, j, k-1)
1185 tempd = -(
two*volmid/temp**2)
1186 vold(i, j, k-1) =
vold(i, j, k-1) + tempd
1187 vold(i, j, k) =
vold(i, j, k) + tempd -
one*volid/
vol(i, j, k)**2
1200 integer(kind=inttype) :: i, j, k, nn, ii
1201 real(kind=realtype) :: nu
1202 real(kind=realtype) :: fv1, fv2, ft2
1203 real(kind=realtype) :: voli, volmi, volpi, xm, ym, zm, xp, yp, zp
1204 real(kind=realtype) :: xa, ya, za, ttm, ttp, cnud, cam, cap
1205 real(kind=realtype) :: nutm, nutp, num, nup, cdm, cdp
1206 real(kind=realtype) :: c1m, c1p, c10, b1, c1, d1, qs
1220 j = mod(ii/
nx,
ny) + 2
1225 volmi =
two/(
vol(i, j, k)+
vol(i, j, k-1))
1226 volpi =
two/(
vol(i, j, k)+
vol(i, j, k+1))
1227 xm =
sk(i, j, k-1, 1)*volmi
1228 ym =
sk(i, j, k-1, 2)*volmi
1229 zm =
sk(i, j, k-1, 3)*volmi
1230 xp =
sk(i, j, k, 1)*volpi
1231 yp =
sk(i, j, k, 2)*volpi
1232 zp =
sk(i, j, k, 3)*volpi
1233 xa =
half*(
sk(i, j, k, 1)+
sk(i, j, k-1, 1))*voli
1234 ya =
half*(
sk(i, j, k, 2)+
sk(i, j, k-1, 2))*voli
1235 za =
half*(
sk(i, j, k, 3)+
sk(i, j, k-1, 3))*voli
1236 ttm = xm*xa + ym*ya + zm*za
1237 ttp = xp*xa + yp*ya + zp*za
1263 if (cdm + cam .lt.
zero)
then
1268 if (cdp + cap .lt.
zero)
then
1285 j = mod(ii/
nx,
ny) + 2
1290 volmi =
two/(
vol(i, j, k)+
vol(i, j-1, k))
1291 volpi =
two/(
vol(i, j, k)+
vol(i, j+1, k))
1292 xm =
sj(i, j-1, k, 1)*volmi
1293 ym =
sj(i, j-1, k, 2)*volmi
1294 zm =
sj(i, j-1, k, 3)*volmi
1295 xp =
sj(i, j, k, 1)*volpi
1296 yp =
sj(i, j, k, 2)*volpi
1297 zp =
sj(i, j, k, 3)*volpi
1298 xa =
half*(
sj(i, j, k, 1)+
sj(i, j-1, k, 1))*voli
1299 ya =
half*(
sj(i, j, k, 2)+
sj(i, j-1, k, 2))*voli
1300 za =
half*(
sj(i, j, k, 3)+
sj(i, j-1, k, 3))*voli
1301 ttm = xm*xa + ym*ya + zm*za
1302 ttp = xp*xa + yp*ya + zp*za
1325 if (cdm + cam .lt.
zero)
then
1330 if (cdp + cap .lt.
zero)
then
1347 j = mod(ii/
nx,
ny) + 2
1352 volmi =
two/(
vol(i, j, k)+
vol(i-1, j, k))
1353 volpi =
two/(
vol(i, j, k)+
vol(i+1, j, k))
1354 xm =
si(i-1, j, k, 1)*volmi
1355 ym =
si(i-1, j, k, 2)*volmi
1356 zm =
si(i-1, j, k, 3)*volmi
1357 xp =
si(i, j, k, 1)*volpi
1358 yp =
si(i, j, k, 2)*volpi
1359 zp =
si(i, j, k, 3)*volpi
1360 xa =
half*(
si(i, j, k, 1)+
si(i-1, j, k, 1))*voli
1361 ya =
half*(
si(i, j, k, 2)+
si(i-1, j, k, 2))*voli
1362 za =
half*(
si(i, j, k, 3)+
si(i-1, j, k, 3))*voli
1363 ttm = xm*xa + ym*ya + zm*za
1364 ttp = xp*xa + yp*ya + zp*za
1387 if (cdm + cam .lt.
zero)
then
1392 if (cdp + cap .lt.
zero)
then
1421 integer(kind=inttype) :: i, j, k, ii
1422 real(kind=realtype) :: rblank
1426 real(realtype) :: x1
1431 j = mod(ii/
nx,
ny) + 2
1433 x1 = real(
iblank(i, j, k), realtype)
1434 if (x1 .lt.
zero)
then
1456 integer(kind=inttype) :: i, j, k, ii
1457 real(kind=realtype) :: rblank
1461 real(realtype) :: x1
1465 j = mod(ii/
nx,
ny) + 2
1467 x1 = real(
iblank(i, j, k), realtype)
1468 if (x1 .lt.
zero)
then
real(kind=realtype), dimension(:, :, :, :), pointer sjd
real(kind=realtype), dimension(:, :, :, :), pointer wd
real(kind=realtype), dimension(:, :, :), pointer vold
real(kind=realtype), dimension(:, :, :, :), pointer w
real(kind=realtype), dimension(:, :, :, :), pointer scratch
real(kind=realtype), dimension(:, :, :), pointer d2wall
integer(kind=inttype), dimension(:, :, :), pointer iblank
real(kind=realtype), dimension(:, :, :, :), pointer skd
real(kind=realtype), dimension(:, :, :), pointer rlv
real(kind=realtype), dimension(:, :, :, :), pointer si
real(kind=realtype), dimension(:, :, :, :), pointer sid
real(kind=realtype), dimension(:, :, :), pointer volref
real(kind=realtype), dimension(:, :, :, :), pointer sj
integer(kind=inttype) sectionid
real(kind=realtype), dimension(:, :, :, :), pointer scratchd
real(kind=realtype), dimension(:, :, :, :), pointer dw
real(kind=realtype), dimension(:, :, :, :), pointer sk
real(kind=realtype), dimension(:, :, :), pointer rlvd
real(kind=realtype), dimension(:, :, :), pointer vol
real(kind=realtype), dimension(:, :, :), pointer d2walld
real(kind=realtype), dimension(:, :, :, :), pointer dwd
integer(kind=inttype), parameter strain
real(kind=realtype), parameter zero
real(kind=realtype), parameter third
integer(kind=inttype), parameter vorticity
real(kind=realtype), parameter one
real(kind=realtype), parameter half
integer(kind=inttype), parameter katolaunder
real(kind=realtype), parameter two
real(kind=realtype), parameter fourth
real(kind=realtype), parameter sixth
real(kind=realtype) timeref
real(kind=realtype) timerefd
real(kind=realtype), parameter rsacw1
real(kind=realtype), parameter rsak
real(kind=realtype), parameter rsact4
real(kind=realtype), parameter rsacrot
real(kind=realtype), parameter rsacb2
real(kind=realtype), parameter rsact3
real(kind=realtype), parameter rsacw3
real(kind=realtype), parameter rsacw2
real(kind=realtype), parameter rsacv1
real(kind=realtype), parameter rsacb3
real(kind=realtype), parameter rsacb1
real(kind=realtype), dimension(:, :, :), pointer ddw
real(kind=realtype) cb3inv
real(kind=realtype), dimension(:, :, :), pointer ddvt
real(kind=realtype), dimension(:, :), pointer rrlv
real(kind=realtype), dimension(:, :, :), allocatable qq
real(kind=realtype) kar2inv
real(kind=realtype), dimension(:, :), pointer dd2wall
subroutine saresscale_b()
real(kind=realtype), dimension(:, :, :), pointer ww
type(sectiontype), dimension(:), allocatable sections