26 real(kind=realtype),
parameter :: thresvolume=1.e-2_realtype
27 real(kind=realtype),
parameter :: halocellratio=1e-10_realtype
31 integer(kind=inttype) :: i, j, k, n, m, l, ii
32 integer(kind=inttype) :: mm
33 real(kind=realtype) :: fact, mult
34 real(kind=realtype) :: xp, yp, zp, vp1, vp2, vp3, vp4, vp5, vp6
35 real(kind=realtype) :: xpd, ypd, zpd, vp1d, vp2d, vp3d, vp4d, vp5d, &
37 real(kind=realtype) :: xxp, yyp, zzp
38 real(kind=realtype),
dimension(3) :: v1, v2
63 & i, j, n, 1)+
xd(l, j, k, 1)+
xd(l, m, k, 1)+
xd(l, m, n, 1)+
xd(&
65 xp =
eighth*(
x(i, j, k, 1)+
x(i, m, k, 1)+
x(i, m, n, 1)+
x(i, j&
66 & , n, 1)+
x(l, j, k, 1)+
x(l, m, k, 1)+
x(l, m, n, 1)+
x(l, j, n&
69 & i, j, n, 2)+
xd(l, j, k, 2)+
xd(l, m, k, 2)+
xd(l, m, n, 2)+
xd(&
71 yp =
eighth*(
x(i, j, k, 2)+
x(i, m, k, 2)+
x(i, m, n, 2)+
x(i, j&
72 & , n, 2)+
x(l, j, k, 2)+
x(l, m, k, 2)+
x(l, m, n, 2)+
x(l, j, n&
75 & i, j, n, 3)+
xd(l, j, k, 3)+
xd(l, m, k, 3)+
xd(l, m, n, 3)+
xd(&
77 zp =
eighth*(
x(i, j, k, 3)+
x(i, m, k, 3)+
x(i, m, n, 3)+
x(i, j&
78 & , n, 3)+
x(l, j, k, 3)+
x(l, m, k, 3)+
x(l, m, n, 3)+
x(l, j, n&
83 call volpym_d(
x(i, j, k, 1),
xd(i, j, k, 1),
x(i, j, k, 2),
xd&
84 & (i, j, k, 2),
x(i, j, k, 3),
xd(i, j, k, 3),
x(i, j, n&
85 & , 1),
xd(i, j, n, 1),
x(i, j, n, 2),
xd(i, j, n, 2),
x&
86 & (i, j, n, 3),
xd(i, j, n, 3),
x(i, m, n, 1),
xd(i, m, &
87 & n, 1),
x(i, m, n, 2),
xd(i, m, n, 2),
x(i, m, n, 3), &
88 &
xd(i, m, n, 3),
x(i, m, k, 1),
xd(i, m, k, 1),
x(i, m&
89 & , k, 2),
xd(i, m, k, 2),
x(i, m, k, 3),
xd(i, m, k, 3)&
91 call volpym_d(
x(l, j, k, 1),
xd(l, j, k, 1),
x(l, j, k, 2),
xd&
92 & (l, j, k, 2),
x(l, j, k, 3),
xd(l, j, k, 3),
x(l, m, k&
93 & , 1),
xd(l, m, k, 1),
x(l, m, k, 2),
xd(l, m, k, 2),
x&
94 & (l, m, k, 3),
xd(l, m, k, 3),
x(l, m, n, 1),
xd(l, m, &
95 & n, 1),
x(l, m, n, 2),
xd(l, m, n, 2),
x(l, m, n, 3), &
96 &
xd(l, m, n, 3),
x(l, j, n, 1),
xd(l, j, n, 1),
x(l, j&
97 & , n, 2),
xd(l, j, n, 2),
x(l, j, n, 3),
xd(l, j, n, 3)&
99 call volpym_d(
x(i, j, k, 1),
xd(i, j, k, 1),
x(i, j, k, 2),
xd&
100 & (i, j, k, 2),
x(i, j, k, 3),
xd(i, j, k, 3),
x(l, j, k&
101 & , 1),
xd(l, j, k, 1),
x(l, j, k, 2),
xd(l, j, k, 2),
x&
102 & (l, j, k, 3),
xd(l, j, k, 3),
x(l, j, n, 1),
xd(l, j, &
103 & n, 1),
x(l, j, n, 2),
xd(l, j, n, 2),
x(l, j, n, 3), &
104 &
xd(l, j, n, 3),
x(i, j, n, 1),
xd(i, j, n, 1),
x(i, j&
105 & , n, 2),
xd(i, j, n, 2),
x(i, j, n, 3),
xd(i, j, n, 3)&
107 call volpym_d(
x(i, m, k, 1),
xd(i, m, k, 1),
x(i, m, k, 2),
xd&
108 & (i, m, k, 2),
x(i, m, k, 3),
xd(i, m, k, 3),
x(i, m, n&
109 & , 1),
xd(i, m, n, 1),
x(i, m, n, 2),
xd(i, m, n, 2),
x&
110 & (i, m, n, 3),
xd(i, m, n, 3),
x(l, m, n, 1),
xd(l, m, &
111 & n, 1),
x(l, m, n, 2),
xd(l, m, n, 2),
x(l, m, n, 3), &
112 &
xd(l, m, n, 3),
x(l, m, k, 1),
xd(l, m, k, 1),
x(l, m&
113 & , k, 2),
xd(l, m, k, 2),
x(l, m, k, 3),
xd(l, m, k, 3)&
115 call volpym_d(
x(i, j, k, 1),
xd(i, j, k, 1),
x(i, j, k, 2),
xd&
116 & (i, j, k, 2),
x(i, j, k, 3),
xd(i, j, k, 3),
x(i, m, k&
117 & , 1),
xd(i, m, k, 1),
x(i, m, k, 2),
xd(i, m, k, 2),
x&
118 & (i, m, k, 3),
xd(i, m, k, 3),
x(l, m, k, 1),
xd(l, m, &
119 & k, 1),
x(l, m, k, 2),
xd(l, m, k, 2),
x(l, m, k, 3), &
120 &
xd(l, m, k, 3),
x(l, j, k, 1),
xd(l, j, k, 1),
x(l, j&
121 & , k, 2),
xd(l, j, k, 2),
x(l, j, k, 3),
xd(l, j, k, 3)&
123 call volpym_d(
x(i, j, n, 1),
xd(i, j, n, 1),
x(i, j, n, 2),
xd&
124 & (i, j, n, 2),
x(i, j, n, 3),
xd(i, j, n, 3),
x(l, j, n&
125 & , 1),
xd(l, j, n, 1),
x(l, j, n, 2),
xd(l, j, n, 2),
x&
126 & (l, j, n, 3),
xd(l, j, n, 3),
x(l, m, n, 1),
xd(l, m, &
127 & n, 1),
x(l, m, n, 2),
xd(l, m, n, 2),
x(l, m, n, 3), &
128 &
xd(l, m, n, 3),
x(i, m, n, 1),
xd(i, m, n, 1),
x(i, m&
129 & , n, 2),
xd(i, m, n, 2),
x(i, m, n, 3),
xd(i, m, n, 3)&
134 vold(i, j, k) =
sixth*(vp1d+vp2d+vp3d+vp4d+vp5d+vp6d)
135 vol(i, j, k) =
sixth*(vp1+vp2+vp3+vp4+vp5+vp6)
136 if (
vol(i, j, k) .ge. 0.)
then
137 vol(i, j, k) =
vol(i, j, k)
140 vol(i, j, k) = -
vol(i, j, k)
148 if (
vol(1, j, k)/
vol(2, j, k) .lt. halocellratio)
then
150 vol(1, j, k) =
vol(2, j, k)
152 if (
vol(
ie, j, k)/
vol(
il, j, k) .lt. halocellratio)
then
160 if (
vol(i, 1, k)/
vol(i, 2, k) .lt. halocellratio)
then
162 vol(i, 1, k) =
vol(i, 2, k)
164 if (
vol(i,
je, k)/
vol(i,
jl, k) .lt. halocellratio)
then
172 if (
vol(i, j, 1)/
vol(i, j, 2) .lt. halocellratio)
then
174 vol(i, j, 1) =
vol(i, j, 2)
176 if (
vol(i, j,
ke)/
vol(i, j,
kl) .lt. halocellratio)
then
188 subroutine volpym_d(xa, xad, ya, yad, za, zad, xb, xbd, yb, ybd, zb&
189 & , zbd, xc, xcd, yc, ycd, zc, zcd, xd, xdd, yd, ydd, zd, zdd, &
210 real(kind=
realtype),
intent(in) :: xa, ya, za, xb, yb, zb
211 real(kind=
realtype),
intent(in) :: xad, yad, zad, xbd, ybd, zbd
212 real(kind=
realtype),
intent(in) :: xc, yc, zc,
xd, yd, zd
213 real(kind=
realtype),
intent(in) :: xcd, ycd, zcd, xdd, ydd, zdd
220 temp = (ya-yc)*(zb-zd) - (za-zc)*(yb-yd)
222 temp1 = (za-zc)*(xb-
xd) - (xa-xc)*(zb-zd)
223 temp2 = yp -
fourth*(ya+yb+yc+yd)
224 temp3 = (xa-xc)*(yb-yd) - (ya-yc)*(xb-
xd)
225 temp4 = zp -
fourth*(za+zb+zc+zd)
226 volumed = temp*(xpd-
fourth*(xad+xbd+xcd+xdd)) + temp0*((zb-zd)*(&
227 & yad-ycd)+(ya-yc)*(zbd-zdd)-(yb-yd)*(zad-zcd)-(za-zc)*(ybd-ydd)) &
228 & + temp1*(ypd-
fourth*(yad+ybd+ycd+ydd)) + temp2*((xb-
xd)*(zad-zcd&
229 & )+(za-zc)*(xbd-xdd)-(zb-zd)*(xad-xcd)-(xa-xc)*(zbd-zdd)) + temp3&
230 & *(zpd-
fourth*(zad+zbd+zcd+zdd)) + temp4*((yb-yd)*(xad-xcd)+(xa-&
231 & xc)*(ybd-ydd)-(xb-
xd)*(yad-ycd)-(ya-yc)*(xbd-xdd))
232 volume = temp0*temp + temp2*temp1 + temp4*temp3
235 subroutine volpym(xa, ya, za, xb, yb, zb, xc, yc, zc, xd, yd, zd, &
255 real(kind=
realtype),
intent(in) :: xa, ya, za, xb, yb, zb
256 real(kind=
realtype),
intent(in) :: xc, yc, zc,
xd, yd, zd
257 volume = (xp-
fourth*(xa+xb+xc+
xd))*((ya-yc)*(zb-zd)-(za-zc)*(yb-yd&
258 & )) + (yp-
fourth*(ya+yb+yc+yd))*((za-zc)*(xb-
xd)-(xa-xc)*(zb-zd))&
259 & + (zp-
fourth*(za+zb+zc+zd))*((xa-xc)*(yb-yd)-(ya-yc)*(xb-
xd))
277 real(kind=realtype),
parameter :: thresvolume=1.e-2_realtype
278 real(kind=realtype),
parameter :: halocellratio=1e-10_realtype
282 integer(kind=inttype) :: i, j, k, n, m, l, ii
283 integer(kind=inttype) :: mm
284 real(kind=realtype) :: fact, mult
285 real(kind=realtype) :: xp, yp, zp, vp1, vp2, vp3, vp4, vp5, vp6
286 real(kind=realtype) :: xxp, yyp, zzp
287 real(kind=realtype),
dimension(3) :: v1, v2
303 xp =
eighth*(
x(i, j, k, 1)+
x(i, m, k, 1)+
x(i, m, n, 1)+
x(i, j&
304 & , n, 1)+
x(l, j, k, 1)+
x(l, m, k, 1)+
x(l, m, n, 1)+
x(l, j, n&
306 yp =
eighth*(
x(i, j, k, 2)+
x(i, m, k, 2)+
x(i, m, n, 2)+
x(i, j&
307 & , n, 2)+
x(l, j, k, 2)+
x(l, m, k, 2)+
x(l, m, n, 2)+
x(l, j, n&
309 zp =
eighth*(
x(i, j, k, 3)+
x(i, m, k, 3)+
x(i, m, n, 3)+
x(i, j&
310 & , n, 3)+
x(l, j, k, 3)+
x(l, m, k, 3)+
x(l, m, n, 3)+
x(l, j, n&
315 call volpym(
x(i, j, k, 1),
x(i, j, k, 2),
x(i, j, k, 3),
x(i, &
316 & j, n, 1),
x(i, j, n, 2),
x(i, j, n, 3),
x(i, m, n, 1),
x&
317 & (i, m, n, 2),
x(i, m, n, 3),
x(i, m, k, 1),
x(i, m, k, 2&
318 & ),
x(i, m, k, 3), vp1)
319 call volpym(
x(l, j, k, 1),
x(l, j, k, 2),
x(l, j, k, 3),
x(l, &
320 & m, k, 1),
x(l, m, k, 2),
x(l, m, k, 3),
x(l, m, n, 1),
x&
321 & (l, m, n, 2),
x(l, m, n, 3),
x(l, j, n, 1),
x(l, j, n, 2&
322 & ),
x(l, j, n, 3), vp2)
323 call volpym(
x(i, j, k, 1),
x(i, j, k, 2),
x(i, j, k, 3),
x(l, &
324 & j, k, 1),
x(l, j, k, 2),
x(l, j, k, 3),
x(l, j, n, 1),
x&
325 & (l, j, n, 2),
x(l, j, n, 3),
x(i, j, n, 1),
x(i, j, n, 2&
326 & ),
x(i, j, n, 3), vp3)
327 call volpym(
x(i, m, k, 1),
x(i, m, k, 2),
x(i, m, k, 3),
x(i, &
328 & m, n, 1),
x(i, m, n, 2),
x(i, m, n, 3),
x(l, m, n, 1),
x&
329 & (l, m, n, 2),
x(l, m, n, 3),
x(l, m, k, 1),
x(l, m, k, 2&
330 & ),
x(l, m, k, 3), vp4)
331 call volpym(
x(i, j, k, 1),
x(i, j, k, 2),
x(i, j, k, 3),
x(i, &
332 & m, k, 1),
x(i, m, k, 2),
x(i, m, k, 3),
x(l, m, k, 1),
x&
333 & (l, m, k, 2),
x(l, m, k, 3),
x(l, j, k, 1),
x(l, j, k, 2&
334 & ),
x(l, j, k, 3), vp5)
335 call volpym(
x(i, j, n, 1),
x(i, j, n, 2),
x(i, j, n, 3),
x(l, &
336 & j, n, 1),
x(l, j, n, 2),
x(l, j, n, 3),
x(l, m, n, 1),
x&
337 & (l, m, n, 2),
x(l, m, n, 3),
x(i, m, n, 1),
x(i, m, n, 2&
338 & ),
x(i, m, n, 3), vp6)
342 vol(i, j, k) =
sixth*(vp1+vp2+vp3+vp4+vp5+vp6)
343 if (
vol(i, j, k) .ge. 0.)
then
344 vol(i, j, k) =
vol(i, j, k)
346 vol(i, j, k) = -
vol(i, j, k)
354 if (
vol(1, j, k)/
vol(2, j, k) .lt. halocellratio)
vol(1, j, k)&
362 if (
vol(i, 1, k)/
vol(i, 2, k) .lt. halocellratio)
vol(i, 1, k)&
370 if (
vol(i, j, 1)/
vol(i, j, 2) .lt. halocellratio)
vol(i, j, 1)&
378 subroutine volpym(xa, ya, za, xb, yb, zb, xc, yc, zc, xd, yd, zd, &
398 real(kind=
realtype),
intent(in) :: xa, ya, za, xb, yb, zb
399 real(kind=
realtype),
intent(in) :: xc, yc, zc,
xd, yd, zd
400 volume = (xp-
fourth*(xa+xb+xc+
xd))*((ya-yc)*(zb-zd)-(za-zc)*(yb-yd&
401 & )) + (yp-
fourth*(ya+yb+yc+yd))*((za-zc)*(xb-
xd)-(xa-xc)*(zb-zd))&
402 & + (zp-
fourth*(za+zb+zc+zd))*((xa-xc)*(yb-yd)-(ya-yc)*(xb-
xd))
417 integer(kind=inttype) :: i, j, k, n, m, l, ii
418 real(kind=realtype) :: fact
419 real(kind=realtype) :: xxp, yyp, zzp
420 real(kind=realtype),
dimension(3) :: v1, v2
421 real(kind=realtype),
dimension(3) :: v1d, v2d
434 if (
associated(
sid))
sid = 0.0_8
450 i = mod(ii,
ie + 1) + 0
452 j = mod(ii/(
ie+1),
je) + 1
454 k = ii/((
ie+1)*
je) + 1
458 v1d(1) =
xd(i, j, n, 1) -
xd(i, m, k, 1)
459 v1(1) =
x(i, j, n, 1) -
x(i, m, k, 1)
460 v1d(2) =
xd(i, j, n, 2) -
xd(i, m, k, 2)
461 v1(2) =
x(i, j, n, 2) -
x(i, m, k, 2)
462 v1d(3) =
xd(i, j, n, 3) -
xd(i, m, k, 3)
463 v1(3) =
x(i, j, n, 3) -
x(i, m, k, 3)
464 v2d(1) =
xd(i, j, k, 1) -
xd(i, m, n, 1)
465 v2(1) =
x(i, j, k, 1) -
x(i, m, n, 1)
466 v2d(2) =
xd(i, j, k, 2) -
xd(i, m, n, 2)
467 v2(2) =
x(i, j, k, 2) -
x(i, m, n, 2)
468 v2d(3) =
xd(i, j, k, 3) -
xd(i, m, n, 3)
469 v2(3) =
x(i, j, k, 3) -
x(i, m, n, 3)
473 sid(i, j, k, 1) = fact*(v2(3)*v1d(2)+v1(2)*v2d(3)-v2(2)*v1d(3)-v1(&
475 si(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
476 sid(i, j, k, 2) = fact*(v2(1)*v1d(3)+v1(3)*v2d(1)-v2(3)*v1d(1)-v1(&
478 si(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
479 sid(i, j, k, 3) = fact*(v2(2)*v1d(1)+v1(1)*v2d(2)-v2(1)*v1d(2)-v1(&
481 si(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
483 if (
associated(
sjd))
sjd = 0.0_8
489 j = mod(ii/
ie,
je + 1) + 0
491 k = ii/(
ie*(
je+1)) + 1
495 v1d(1) =
xd(i, j, n, 1) -
xd(l, j, k, 1)
496 v1(1) =
x(i, j, n, 1) -
x(l, j, k, 1)
497 v1d(2) =
xd(i, j, n, 2) -
xd(l, j, k, 2)
498 v1(2) =
x(i, j, n, 2) -
x(l, j, k, 2)
499 v1d(3) =
xd(i, j, n, 3) -
xd(l, j, k, 3)
500 v1(3) =
x(i, j, n, 3) -
x(l, j, k, 3)
501 v2d(1) =
xd(l, j, n, 1) -
xd(i, j, k, 1)
502 v2(1) =
x(l, j, n, 1) -
x(i, j, k, 1)
503 v2d(2) =
xd(l, j, n, 2) -
xd(i, j, k, 2)
504 v2(2) =
x(l, j, n, 2) -
x(i, j, k, 2)
505 v2d(3) =
xd(l, j, n, 3) -
xd(i, j, k, 3)
506 v2(3) =
x(l, j, n, 3) -
x(i, j, k, 3)
510 sjd(i, j, k, 1) = fact*(v2(3)*v1d(2)+v1(2)*v2d(3)-v2(2)*v1d(3)-v1(&
512 sj(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
513 sjd(i, j, k, 2) = fact*(v2(1)*v1d(3)+v1(3)*v2d(1)-v2(3)*v1d(1)-v1(&
515 sj(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
516 sjd(i, j, k, 3) = fact*(v2(2)*v1d(1)+v1(1)*v2d(2)-v2(1)*v1d(2)-v1(&
518 sj(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
520 if (
associated(
skd))
skd = 0.0_8
526 j = mod(ii/
ie,
je) + 1
532 v1d(1) =
xd(i, j, k, 1) -
xd(l, m, k, 1)
533 v1(1) =
x(i, j, k, 1) -
x(l, m, k, 1)
534 v1d(2) =
xd(i, j, k, 2) -
xd(l, m, k, 2)
535 v1(2) =
x(i, j, k, 2) -
x(l, m, k, 2)
536 v1d(3) =
xd(i, j, k, 3) -
xd(l, m, k, 3)
537 v1(3) =
x(i, j, k, 3) -
x(l, m, k, 3)
538 v2d(1) =
xd(l, j, k, 1) -
xd(i, m, k, 1)
539 v2(1) =
x(l, j, k, 1) -
x(i, m, k, 1)
540 v2d(2) =
xd(l, j, k, 2) -
xd(i, m, k, 2)
541 v2(2) =
x(l, j, k, 2) -
x(i, m, k, 2)
542 v2d(3) =
xd(l, j, k, 3) -
xd(i, m, k, 3)
543 v2(3) =
x(l, j, k, 3) -
x(i, m, k, 3)
547 skd(i, j, k, 1) = fact*(v2(3)*v1d(2)+v1(2)*v2d(3)-v2(2)*v1d(3)-v1(&
549 sk(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
550 skd(i, j, k, 2) = fact*(v2(1)*v1d(3)+v1(3)*v2d(1)-v2(3)*v1d(1)-v1(&
552 sk(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
553 skd(i, j, k, 3) = fact*(v2(2)*v1d(1)+v1(1)*v2d(2)-v2(1)*v1d(2)-v1(&
555 sk(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
564 integer(kind=inttype) :: i, j, k, n, m, l, ii
565 real(kind=realtype) :: fact
566 real(kind=realtype) :: xxp, yyp, zzp
567 real(kind=realtype),
dimension(3) :: v1, v2
594 i = mod(ii,
ie + 1) + 0
596 j = mod(ii/(
ie+1),
je) + 1
598 k = ii/((
ie+1)*
je) + 1
602 v1(1) =
x(i, j, n, 1) -
x(i, m, k, 1)
603 v1(2) =
x(i, j, n, 2) -
x(i, m, k, 2)
604 v1(3) =
x(i, j, n, 3) -
x(i, m, k, 3)
605 v2(1) =
x(i, j, k, 1) -
x(i, m, n, 1)
606 v2(2) =
x(i, j, k, 2) -
x(i, m, n, 2)
607 v2(3) =
x(i, j, k, 3) -
x(i, m, n, 3)
611 si(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
612 si(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
613 si(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
621 j = mod(ii/
ie,
je + 1) + 0
623 k = ii/(
ie*(
je+1)) + 1
627 v1(1) =
x(i, j, n, 1) -
x(l, j, k, 1)
628 v1(2) =
x(i, j, n, 2) -
x(l, j, k, 2)
629 v1(3) =
x(i, j, n, 3) -
x(l, j, k, 3)
630 v2(1) =
x(l, j, n, 1) -
x(i, j, k, 1)
631 v2(2) =
x(l, j, n, 2) -
x(i, j, k, 2)
632 v2(3) =
x(l, j, n, 3) -
x(i, j, k, 3)
636 sj(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
637 sj(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
638 sj(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
646 j = mod(ii/
ie,
je) + 1
652 v1(1) =
x(i, j, k, 1) -
x(l, m, k, 1)
653 v1(2) =
x(i, j, k, 2) -
x(l, m, k, 2)
654 v1(3) =
x(i, j, k, 3) -
x(l, m, k, 3)
655 v2(1) =
x(l, j, k, 1) -
x(i, m, k, 1)
656 v2(2) =
x(l, j, k, 2) -
x(i, m, k, 2)
657 v2(3) =
x(l, j, k, 3) -
x(i, m, k, 3)
661 sk(i, j, k, 1) = fact*(v1(2)*v2(3)-v1(3)*v2(2))
662 sk(i, j, k, 2) = fact*(v1(3)*v2(1)-v1(1)*v2(3))
663 sk(i, j, k, 3) = fact*(v1(1)*v2(2)-v1(2)*v2(1))
686 integer(kind=inttype) :: i, j, ii
687 integer(kind=inttype) :: mm
688 real(kind=realtype) :: fact, mult
689 real(kind=realtype) :: factd
690 real(kind=realtype) :: xxp, yyp, zzp
691 real(kind=realtype) :: xxpd, yypd, zzpd
694 real(kind=realtype) :: arg1
695 real(kind=realtype) :: arg1d
696 real(kind=realtype) :: temp
717 xxpd =
sid(1, i, j, 1)
719 yypd =
sid(1, i, j, 2)
721 zzpd =
sid(1, i, j, 3)
725 xxpd =
sid(
il, i, j, 1)
726 xxp =
si(
il, i, j, 1)
727 yypd =
sid(
il, i, j, 2)
728 yyp =
si(
il, i, j, 2)
729 zzpd =
sid(
il, i, j, 3)
730 zzp =
si(
il, i, j, 3)
733 xxpd =
sjd(i, 1, j, 1)
735 yypd =
sjd(i, 1, j, 2)
737 zzpd =
sjd(i, 1, j, 3)
741 xxpd =
sjd(i,
jl, j, 1)
742 xxp =
sj(i,
jl, j, 1)
743 yypd =
sjd(i,
jl, j, 2)
744 yyp =
sj(i,
jl, j, 2)
745 zzpd =
sjd(i,
jl, j, 3)
746 zzp =
sj(i,
jl, j, 3)
749 xxpd =
skd(i, j, 1, 1)
751 yypd =
skd(i, j, 1, 2)
753 zzpd =
skd(i, j, 1, 3)
757 xxpd =
skd(i, j,
kl, 1)
758 xxp =
sk(i, j,
kl, 1)
759 yypd =
skd(i, j,
kl, 2)
760 yyp =
sk(i, j,
kl, 2)
761 zzpd =
skd(i, j,
kl, 3)
762 zzp =
sk(i, j,
kl, 3)
766 arg1d = 2*xxp*xxpd + 2*yyp*yypd + 2*zzp*zzpd
767 arg1 = xxp*xxp + yyp*yyp + zzp*zzp
769 if (arg1 .eq. 0.0_8)
then
772 factd = arg1d/(2.0*temp)
775 if (fact .gt.
zero)
then
776 factd = -(mult*factd/fact**2)
780 bcdatad(mm)%norm(i, j, 1) = xxp*factd + fact*xxpd
781 bcdata(mm)%norm(i, j, 1) = fact*xxp
782 bcdatad(mm)%norm(i, j, 2) = yyp*factd + fact*yypd
783 bcdata(mm)%norm(i, j, 2) = fact*yyp
784 bcdatad(mm)%norm(i, j, 3) = zzp*factd + fact*zzpd
785 bcdata(mm)%norm(i, j, 3) = fact*zzp
802 integer(kind=inttype) :: i, j, ii
803 integer(kind=inttype) :: mm
804 real(kind=realtype) :: fact, mult
805 real(kind=realtype) :: xxp, yyp, zzp
808 real(kind=realtype) :: arg1
827 xxp =
si(
il, i, j, 1)
828 yyp =
si(
il, i, j, 2)
829 zzp =
si(
il, i, j, 3)
837 xxp =
sj(i,
jl, j, 1)
838 yyp =
sj(i,
jl, j, 2)
839 zzp =
sj(i,
jl, j, 3)
847 xxp =
sk(i, j,
kl, 1)
848 yyp =
sk(i, j,
kl, 2)
849 zzp =
sk(i, j,
kl, 3)
853 arg1 = xxp*xxp + yyp*yyp + zzp*zzp
855 if (fact .gt.
zero) fact = mult/fact
857 bcdata(mm)%norm(i, j, 1) = fact*xxp
858 bcdata(mm)%norm(i, j, 2) = fact*yyp
859 bcdata(mm)%norm(i, j, 3) = fact*zzp
885 integer(kind=inttype) :: mm, i, j, k
886 integer(kind=inttype) :: ibeg, iend, jbeg, jend, iimax, jjmax
888 real(kind=realtype) :: length, dot
889 real(kind=realtype) :: dotd
890 real(kind=realtype),
dimension(3) :: v1, v2, norm
891 real(kind=realtype),
dimension(3) :: v1d
893 real(kind=realtype) :: arg1
897 xd(0, j, k, 1) =
two*
xd(1, j, k, 1) -
xd(2, j, k, 1)
898 x(0, j, k, 1) =
two*
x(1, j, k, 1) -
x(2, j, k, 1)
899 xd(0, j, k, 2) =
two*
xd(1, j, k, 2) -
xd(2, j, k, 2)
900 x(0, j, k, 2) =
two*
x(1, j, k, 2) -
x(2, j, k, 2)
901 xd(0, j, k, 3) =
two*
xd(1, j, k, 3) -
xd(2, j, k, 3)
902 x(0, j, k, 3) =
two*
x(1, j, k, 3) -
x(2, j, k, 3)
914 xd(i, 0, k, 1) =
two*
xd(i, 1, k, 1) -
xd(i, 2, k, 1)
915 x(i, 0, k, 1) =
two*
x(i, 1, k, 1) -
x(i, 2, k, 1)
916 xd(i, 0, k, 2) =
two*
xd(i, 1, k, 2) -
xd(i, 2, k, 2)
917 x(i, 0, k, 2) =
two*
x(i, 1, k, 2) -
x(i, 2, k, 2)
918 xd(i, 0, k, 3) =
two*
xd(i, 1, k, 3) -
xd(i, 2, k, 3)
919 x(i, 0, k, 3) =
two*
x(i, 1, k, 3) -
x(i, 2, k, 3)
931 xd(i, j, 0, 1) =
two*
xd(i, j, 1, 1) -
xd(i, j, 2, 1)
932 x(i, j, 0, 1) =
two*
x(i, j, 1, 1) -
x(i, j, 2, 1)
933 xd(i, j, 0, 2) =
two*
xd(i, j, 1, 2) -
xd(i, j, 2, 2)
934 x(i, j, 0, 2) =
two*
x(i, j, 1, 2) -
x(i, j, 2, 2)
935 xd(i, j, 0, 3) =
two*
xd(i, j, 1, 3) -
xd(i, j, 2, 3)
936 x(i, j, 0, 3) =
two*
x(i, j, 1, 3) -
x(i, j, 2, 3)
957 norm(1) =
bcdata(mm)%symnorm(1)
958 norm(2) =
bcdata(mm)%symnorm(2)
959 norm(3) =
bcdata(mm)%symnorm(3)
960 arg1 = norm(1)**2 + norm(2)**2 + norm(3)**2
963 norm(1) = norm(1)/length
964 norm(2) = norm(2)/length
965 norm(3) = norm(3)/length
967 if (length .gt.
eps)
then
976 if (ibeg .eq. 1) ibeg = 0
977 if (iend .eq. iimax) iend = iimax + 1
978 if (jbeg .eq. 1) jbeg = 0
979 if (jend .eq. jjmax) jend = jjmax + 1
982 v1d(1) =
xd(1, i, j, 1) -
xd(2, i, j, 1)
983 v1(1) =
x(1, i, j, 1) -
x(2, i, j, 1)
984 v1d(2) =
xd(1, i, j, 2) -
xd(2, i, j, 2)
985 v1(2) =
x(1, i, j, 2) -
x(2, i, j, 2)
986 v1d(3) =
xd(1, i, j, 3) -
xd(2, i, j, 3)
987 v1(3) =
x(1, i, j, 3) -
x(2, i, j, 3)
988 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
990 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
991 xd(0, i, j, 1) =
xd(2, i, j, 1) + norm(1)*dotd
992 x(0, i, j, 1) =
x(2, i, j, 1) + dot*norm(1)
993 xd(0, i, j, 2) =
xd(2, i, j, 2) + norm(2)*dotd
994 x(0, i, j, 2) =
x(2, i, j, 2) + dot*norm(2)
995 xd(0, i, j, 3) =
xd(2, i, j, 3) + norm(3)*dotd
996 x(0, i, j, 3) =
x(2, i, j, 3) + dot*norm(3)
1006 if (ibeg .eq. 1) ibeg = 0
1007 if (iend .eq. iimax) iend = iimax + 1
1008 if (jbeg .eq. 1) jbeg = 0
1009 if (jend .eq. jjmax) jend = jjmax + 1
1012 v1d(1) =
xd(
il, i, j, 1) -
xd(
nx, i, j, 1)
1013 v1(1) =
x(
il, i, j, 1) -
x(
nx, i, j, 1)
1014 v1d(2) =
xd(
il, i, j, 2) -
xd(
nx, i, j, 2)
1015 v1(2) =
x(
il, i, j, 2) -
x(
nx, i, j, 2)
1016 v1d(3) =
xd(
il, i, j, 3) -
xd(
nx, i, j, 3)
1017 v1(3) =
x(
il, i, j, 3) -
x(
nx, i, j, 3)
1018 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
1020 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1021 xd(
ie, i, j, 1) =
xd(
nx, i, j, 1) + norm(1)*dotd
1022 x(
ie, i, j, 1) =
x(
nx, i, j, 1) + dot*norm(1)
1023 xd(
ie, i, j, 2) =
xd(
nx, i, j, 2) + norm(2)*dotd
1024 x(
ie, i, j, 2) =
x(
nx, i, j, 2) + dot*norm(2)
1025 xd(
ie, i, j, 3) =
xd(
nx, i, j, 3) + norm(3)*dotd
1026 x(
ie, i, j, 3) =
x(
nx, i, j, 3) + dot*norm(3)
1036 if (ibeg .eq. 1) ibeg = 0
1037 if (iend .eq. iimax) iend = iimax + 1
1038 if (jbeg .eq. 1) jbeg = 0
1039 if (jend .eq. jjmax) jend = jjmax + 1
1042 v1d(1) =
xd(i, 1, j, 1) -
xd(i, 2, j, 1)
1043 v1(1) =
x(i, 1, j, 1) -
x(i, 2, j, 1)
1044 v1d(2) =
xd(i, 1, j, 2) -
xd(i, 2, j, 2)
1045 v1(2) =
x(i, 1, j, 2) -
x(i, 2, j, 2)
1046 v1d(3) =
xd(i, 1, j, 3) -
xd(i, 2, j, 3)
1047 v1(3) =
x(i, 1, j, 3) -
x(i, 2, j, 3)
1048 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
1050 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1051 xd(i, 0, j, 1) =
xd(i, 2, j, 1) + norm(1)*dotd
1052 x(i, 0, j, 1) =
x(i, 2, j, 1) + dot*norm(1)
1053 xd(i, 0, j, 2) =
xd(i, 2, j, 2) + norm(2)*dotd
1054 x(i, 0, j, 2) =
x(i, 2, j, 2) + dot*norm(2)
1055 xd(i, 0, j, 3) =
xd(i, 2, j, 3) + norm(3)*dotd
1056 x(i, 0, j, 3) =
x(i, 2, j, 3) + dot*norm(3)
1066 if (ibeg .eq. 1) ibeg = 0
1067 if (iend .eq. iimax) iend = iimax + 1
1068 if (jbeg .eq. 1) jbeg = 0
1069 if (jend .eq. jjmax) jend = jjmax + 1
1072 v1d(1) =
xd(i,
jl, j, 1) -
xd(i,
ny, j, 1)
1073 v1(1) =
x(i,
jl, j, 1) -
x(i,
ny, j, 1)
1074 v1d(2) =
xd(i,
jl, j, 2) -
xd(i,
ny, j, 2)
1075 v1(2) =
x(i,
jl, j, 2) -
x(i,
ny, j, 2)
1076 v1d(3) =
xd(i,
jl, j, 3) -
xd(i,
ny, j, 3)
1077 v1(3) =
x(i,
jl, j, 3) -
x(i,
ny, j, 3)
1078 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
1080 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1081 xd(i,
je, j, 1) =
xd(i,
ny, j, 1) + norm(1)*dotd
1082 x(i,
je, j, 1) =
x(i,
ny, j, 1) + dot*norm(1)
1083 xd(i,
je, j, 2) =
xd(i,
ny, j, 2) + norm(2)*dotd
1084 x(i,
je, j, 2) =
x(i,
ny, j, 2) + dot*norm(2)
1085 xd(i,
je, j, 3) =
xd(i,
ny, j, 3) + norm(3)*dotd
1086 x(i,
je, j, 3) =
x(i,
ny, j, 3) + dot*norm(3)
1096 if (ibeg .eq. 1) ibeg = 0
1097 if (iend .eq. iimax) iend = iimax + 1
1098 if (jbeg .eq. 1) jbeg = 0
1099 if (jend .eq. jjmax) jend = jjmax + 1
1102 v1d(1) =
xd(i, j, 1, 1) -
xd(i, j, 2, 1)
1103 v1(1) =
x(i, j, 1, 1) -
x(i, j, 2, 1)
1104 v1d(2) =
xd(i, j, 1, 2) -
xd(i, j, 2, 2)
1105 v1(2) =
x(i, j, 1, 2) -
x(i, j, 2, 2)
1106 v1d(3) =
xd(i, j, 1, 3) -
xd(i, j, 2, 3)
1107 v1(3) =
x(i, j, 1, 3) -
x(i, j, 2, 3)
1108 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
1110 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1111 xd(i, j, 0, 1) =
xd(i, j, 2, 1) + norm(1)*dotd
1112 x(i, j, 0, 1) =
x(i, j, 2, 1) + dot*norm(1)
1113 xd(i, j, 0, 2) =
xd(i, j, 2, 2) + norm(2)*dotd
1114 x(i, j, 0, 2) =
x(i, j, 2, 2) + dot*norm(2)
1115 xd(i, j, 0, 3) =
xd(i, j, 2, 3) + norm(3)*dotd
1116 x(i, j, 0, 3) =
x(i, j, 2, 3) + dot*norm(3)
1126 if (ibeg .eq. 1) ibeg = 0
1127 if (iend .eq. iimax) iend = iimax + 1
1128 if (jbeg .eq. 1) jbeg = 0
1129 if (jend .eq. jjmax) jend = jjmax + 1
1132 v1d(1) =
xd(i, j,
kl, 1) -
xd(i, j,
nz, 1)
1133 v1(1) =
x(i, j,
kl, 1) -
x(i, j,
nz, 1)
1134 v1d(2) =
xd(i, j,
kl, 2) -
xd(i, j,
nz, 2)
1135 v1(2) =
x(i, j,
kl, 2) -
x(i, j,
nz, 2)
1136 v1d(3) =
xd(i, j,
kl, 3) -
xd(i, j,
nz, 3)
1137 v1(3) =
x(i, j,
kl, 3) -
x(i, j,
nz, 3)
1138 dotd =
two*(norm(1)*v1d(1)+norm(2)*v1d(2)+norm(3)*v1d(3)&
1140 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1141 xd(i, j,
ke, 1) =
xd(i, j,
nz, 1) + norm(1)*dotd
1142 x(i, j,
ke, 1) =
x(i, j,
nz, 1) + dot*norm(1)
1143 xd(i, j,
ke, 2) =
xd(i, j,
nz, 2) + norm(2)*dotd
1144 x(i, j,
ke, 2) =
x(i, j,
nz, 2) + dot*norm(2)
1145 xd(i, j,
ke, 3) =
xd(i, j,
nz, 3) + norm(3)*dotd
1146 x(i, j,
ke, 3) =
x(i, j,
nz, 3) + dot*norm(3)
1171 integer(kind=inttype) :: mm, i, j, k
1172 integer(kind=inttype) :: ibeg, iend, jbeg, jend, iimax, jjmax
1174 real(kind=realtype) :: length, dot
1175 real(kind=realtype),
dimension(3) :: v1, v2, norm
1177 real(kind=realtype) :: arg1
1181 x(0, j, k, 1) =
two*
x(1, j, k, 1) -
x(2, j, k, 1)
1182 x(0, j, k, 2) =
two*
x(1, j, k, 2) -
x(2, j, k, 2)
1183 x(0, j, k, 3) =
two*
x(1, j, k, 3) -
x(2, j, k, 3)
1192 x(i, 0, k, 1) =
two*
x(i, 1, k, 1) -
x(i, 2, k, 1)
1193 x(i, 0, k, 2) =
two*
x(i, 1, k, 2) -
x(i, 2, k, 2)
1194 x(i, 0, k, 3) =
two*
x(i, 1, k, 3) -
x(i, 2, k, 3)
1203 x(i, j, 0, 1) =
two*
x(i, j, 1, 1) -
x(i, j, 2, 1)
1204 x(i, j, 0, 2) =
two*
x(i, j, 1, 2) -
x(i, j, 2, 2)
1205 x(i, j, 0, 3) =
two*
x(i, j, 1, 3) -
x(i, j, 2, 3)
1222 norm(1) =
bcdata(mm)%symnorm(1)
1223 norm(2) =
bcdata(mm)%symnorm(2)
1224 norm(3) =
bcdata(mm)%symnorm(3)
1225 arg1 = norm(1)**2 + norm(2)**2 + norm(3)**2
1228 norm(1) = norm(1)/length
1229 norm(2) = norm(2)/length
1230 norm(3) = norm(3)/length
1232 if (length .gt.
eps)
then
1241 if (ibeg .eq. 1) ibeg = 0
1242 if (iend .eq. iimax) iend = iimax + 1
1243 if (jbeg .eq. 1) jbeg = 0
1244 if (jend .eq. jjmax) jend = jjmax + 1
1247 v1(1) =
x(1, i, j, 1) -
x(2, i, j, 1)
1248 v1(2) =
x(1, i, j, 2) -
x(2, i, j, 2)
1249 v1(3) =
x(1, i, j, 3) -
x(2, i, j, 3)
1250 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1251 x(0, i, j, 1) =
x(2, i, j, 1) + dot*norm(1)
1252 x(0, i, j, 2) =
x(2, i, j, 2) + dot*norm(2)
1253 x(0, i, j, 3) =
x(2, i, j, 3) + dot*norm(3)
1263 if (ibeg .eq. 1) ibeg = 0
1264 if (iend .eq. iimax) iend = iimax + 1
1265 if (jbeg .eq. 1) jbeg = 0
1266 if (jend .eq. jjmax) jend = jjmax + 1
1269 v1(1) =
x(
il, i, j, 1) -
x(
nx, i, j, 1)
1270 v1(2) =
x(
il, i, j, 2) -
x(
nx, i, j, 2)
1271 v1(3) =
x(
il, i, j, 3) -
x(
nx, i, j, 3)
1272 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1273 x(
ie, i, j, 1) =
x(
nx, i, j, 1) + dot*norm(1)
1274 x(
ie, i, j, 2) =
x(
nx, i, j, 2) + dot*norm(2)
1275 x(
ie, i, j, 3) =
x(
nx, i, j, 3) + dot*norm(3)
1285 if (ibeg .eq. 1) ibeg = 0
1286 if (iend .eq. iimax) iend = iimax + 1
1287 if (jbeg .eq. 1) jbeg = 0
1288 if (jend .eq. jjmax) jend = jjmax + 1
1291 v1(1) =
x(i, 1, j, 1) -
x(i, 2, j, 1)
1292 v1(2) =
x(i, 1, j, 2) -
x(i, 2, j, 2)
1293 v1(3) =
x(i, 1, j, 3) -
x(i, 2, j, 3)
1294 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1295 x(i, 0, j, 1) =
x(i, 2, j, 1) + dot*norm(1)
1296 x(i, 0, j, 2) =
x(i, 2, j, 2) + dot*norm(2)
1297 x(i, 0, j, 3) =
x(i, 2, j, 3) + dot*norm(3)
1307 if (ibeg .eq. 1) ibeg = 0
1308 if (iend .eq. iimax) iend = iimax + 1
1309 if (jbeg .eq. 1) jbeg = 0
1310 if (jend .eq. jjmax) jend = jjmax + 1
1313 v1(1) =
x(i,
jl, j, 1) -
x(i,
ny, j, 1)
1314 v1(2) =
x(i,
jl, j, 2) -
x(i,
ny, j, 2)
1315 v1(3) =
x(i,
jl, j, 3) -
x(i,
ny, j, 3)
1316 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1317 x(i,
je, j, 1) =
x(i,
ny, j, 1) + dot*norm(1)
1318 x(i,
je, j, 2) =
x(i,
ny, j, 2) + dot*norm(2)
1319 x(i,
je, j, 3) =
x(i,
ny, j, 3) + dot*norm(3)
1329 if (ibeg .eq. 1) ibeg = 0
1330 if (iend .eq. iimax) iend = iimax + 1
1331 if (jbeg .eq. 1) jbeg = 0
1332 if (jend .eq. jjmax) jend = jjmax + 1
1335 v1(1) =
x(i, j, 1, 1) -
x(i, j, 2, 1)
1336 v1(2) =
x(i, j, 1, 2) -
x(i, j, 2, 2)
1337 v1(3) =
x(i, j, 1, 3) -
x(i, j, 2, 3)
1338 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1339 x(i, j, 0, 1) =
x(i, j, 2, 1) + dot*norm(1)
1340 x(i, j, 0, 2) =
x(i, j, 2, 2) + dot*norm(2)
1341 x(i, j, 0, 3) =
x(i, j, 2, 3) + dot*norm(3)
1351 if (ibeg .eq. 1) ibeg = 0
1352 if (iend .eq. iimax) iend = iimax + 1
1353 if (jbeg .eq. 1) jbeg = 0
1354 if (jend .eq. jjmax) jend = jjmax + 1
1357 v1(1) =
x(i, j,
kl, 1) -
x(i, j,
nz, 1)
1358 v1(2) =
x(i, j,
kl, 2) -
x(i, j,
nz, 2)
1359 v1(3) =
x(i, j,
kl, 3) -
x(i, j,
nz, 3)
1360 dot =
two*(v1(1)*norm(1)+v1(2)*norm(2)+v1(3)*norm(3))
1361 x(i, j,
ke, 1) =
x(i, j,
nz, 1) + dot*norm(1)
1362 x(i, j,
ke, 2) =
x(i, j,
nz, 2) + dot*norm(2)
1363 x(i, j,
ke, 3) =
x(i, j,
nz, 3) + dot*norm(3)
1384 integer(kind=inttype) :: i, j, k, ii, nturb
1385 real(kind=realtype) :: ovol
1410 integer(kind=inttype) :: i, j, k, ii, nturb
1411 real(kind=realtype) :: ovol
1437 integer(kind=inttype) :: i, j, k, l
1440 real(realtype) :: x1
1441 real(realtype) :: max1
1446 x1 = real(
iblank(i, j, k), realtype)
1447 if (x1 .lt.
zero)
then
1452 dwd(i, j, k, l) = max1*(
dwd(i, j, k, l)+
fwd(i, j, k, l))
1453 dw(i, j, k, l) = (
dw(i, j, k, l)+
fw(i, j, k, l))*max1
1466 integer(kind=inttype) :: i, j, k, l
1469 real(realtype) :: x1
1470 real(realtype) :: max1
1475 x1 = real(
iblank(i, j, k), realtype)
1476 if (x1 .lt.
zero)
then
1481 dw(i, j, k, l) = (
dw(i, j, k, l)+
fw(i, j, k, l))*max1
real(kind=realtype), dimension(:, :, :, :), pointer fwd
integer(kind=inttype), dimension(:), pointer knend
integer(kind=inttype), dimension(:), pointer inend
real(kind=realtype), dimension(:, :, :, :), pointer sjd
integer(kind=inttype), dimension(:), pointer knbeg
real(kind=realtype), dimension(:, :, :), pointer vold
integer(kind=inttype), dimension(:), pointer jnbeg
type(bcdatatype), dimension(:), pointer bcdatad
integer(kind=inttype), dimension(:, :, :), pointer iblank
real(kind=realtype), dimension(:, :, :, :), pointer skd
integer(kind=inttype), dimension(:), pointer bcfaceid
real(kind=realtype), dimension(:, :, :, :), pointer si
real(kind=realtype), dimension(:, :, :, :), pointer sid
integer(kind=inttype) nbocos
real(kind=realtype), dimension(:, :, :), pointer volref
real(kind=realtype), dimension(:, :, :, :), pointer sj
integer(kind=inttype), dimension(:), pointer jnend
integer(kind=inttype), dimension(:), pointer bctype
real(kind=realtype), dimension(:, :, :, :), pointer dw
real(kind=realtype), dimension(:, :, :, :), pointer sk
real(kind=realtype), dimension(:, :, :), pointer vol
real(kind=realtype), dimension(:, :, :, :), pointer xd
real(kind=realtype), dimension(:, :, :, :), pointer fw
real(kind=realtype), dimension(:, :, :, :), pointer x
integer(kind=inttype), dimension(:), pointer inbeg
real(kind=realtype), dimension(:, :, :, :), pointer dwd
real(kind=realtype), parameter zero
integer(kind=inttype), parameter imax
integer(kind=inttype), parameter kmin
integer(kind=inttype), parameter jmax
real(kind=realtype), parameter eps
real(kind=realtype), parameter eighth
integer(kind=inttype), parameter symm
real(kind=realtype), parameter one
real(kind=realtype), parameter half
integer(kind=inttype), parameter imin
real(kind=realtype), parameter two
real(kind=realtype), parameter fourth
integer(kind=inttype), parameter kmax
integer(kind=inttype), parameter jmin
real(kind=realtype), parameter sixth
integer(kind=inttype) isize1ofdrfbcdata
integer(kind=inttype) nt1
integer(kind=inttype) nwf
integer(kind=inttype) nt2
integer, parameter realtype