52 type(
mesh_t),
intent(in) :: msh
54 type(
coef_t),
intent(in) :: coef
55 real(kind=
rp),
intent(inout) :: w(xh%lx, xh%ly, xh%lz, msh%nelv)
56 real(kind=
rp),
intent(in) :: u(xh%lx, xh%ly, xh%lz, msh%nelv)
60 call sx_ax_helm_lx14(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
61 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
63 call sx_ax_helm_lx13(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
64 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
66 call sx_ax_helm_lx12(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
67 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
69 call sx_ax_helm_lx11(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
70 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
72 call sx_ax_helm_lx10(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
73 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
75 call sx_ax_helm_lx9(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
76 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
78 call sx_ax_helm_lx8(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
79 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
81 call sx_ax_helm_lx7(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
82 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
84 call sx_ax_helm_lx6(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
85 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
87 call sx_ax_helm_lx5(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
88 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
90 call sx_ax_helm_lx4(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
91 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
93 call sx_ax_helm_lx3(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
94 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
96 call sx_ax_helm_lx2(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
97 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
99 call sx_ax_helm_lx(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
100 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, &
104 if (coef%ifh2)
call addcol4 (w,coef%h2,coef%B,u,coef%dof%size())
109 h1, G11, G22, G33, G12, G13, G23, n, lx)
110 integer,
intent(in) :: n, lx
111 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
112 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
113 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
114 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
115 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
116 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
117 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
118 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
119 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
120 real(kind=
rp),
intent(in) :: dx(lx, lx)
121 real(kind=
rp),
intent(in) :: dy(lx, lx)
122 real(kind=
rp),
intent(in) :: dz(lx, lx)
123 real(kind=
rp),
intent(in) :: dxt(lx, lx)
124 real(kind=
rp),
intent(in) :: dyt(lx, lx)
125 real(kind=
rp),
intent(in) :: dzt(lx, lx)
126 integer :: e, i, j, k, jj, kk
127 real(kind=
rp) :: ur(lx, lx, lx, n)
128 real(kind=
rp) :: us(lx, lx, lx, n)
129 real(kind=
rp) :: ut(lx, lx, lx, n)
130 real(kind=
rp) :: uur(lx, lx, lx, n)
131 real(kind=
rp) :: uus(lx, lx, lx, n)
132 real(kind=
rp) :: uut(lx, lx, lx, n)
133 real(kind=
rp) :: wr, ws, wt
136 do jj = 1, lx * lx * n
139 wr = wr + dx(i,kk)*u(kk,jj,1,1)
152 ws = ws + dy(j,kk)*u(i,kk,k,e)
167 wt = wt + dz(k,kk)*u(i,j,kk,e)
175 do i = 1, n * lx * lx * lx
176 uur(i,1,1,1) = h1(i,1,1,1) * &
177 ( g11(i,1,1,1) * ur(i,1,1,1) &
178 + g12(i,1,1,1) * us(i,1,1,1) &
179 + g13(i,1,1,1) * ut(i,1,1,1))
181 uus(i,1,1,1) = h1(i,1,1,1) * &
182 ( g22(i,1,1,1) * us(i,1,1,1) &
183 + g12(i,1,1,1) * ur(i,1,1,1) &
184 + g23(i,1,1,1) * ut(i,1,1,1) )
186 uut(i,1,1,1) = h1(i,1,1,1) * &
187 ( g33(i,1,1,1) * ut(i,1,1,1) &
188 + g13(i,1,1,1) * ur(i,1,1,1) &
189 + g23(i,1,1,1) * us(i,1,1,1))
193 do jj = 1, lx * lx * n
196 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
209 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
211 w(i,j,k,e) = w(i,j,k,e) + ws
224 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
226 w(i,j,k,e) = w(i,j,k,e) + wt
236 h1, G11, G22, G33, G12, G13, G23, n)
237 integer,
parameter :: lx = 14
238 integer,
intent(in) :: n
239 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
240 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
241 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
242 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
243 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
244 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
245 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
246 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
247 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
248 real(kind=
rp),
intent(in) :: dx(lx, lx)
249 real(kind=
rp),
intent(in) :: dy(lx, lx)
250 real(kind=
rp),
intent(in) :: dz(lx, lx)
251 real(kind=
rp),
intent(in) :: dxt(lx, lx)
252 real(kind=
rp),
intent(in) :: dyt(lx, lx)
253 real(kind=
rp),
intent(in) :: dzt(lx, lx)
254 integer :: e, i, j, k, jj, kk
255 real(kind=
rp) :: ur(lx, lx, lx, n)
256 real(kind=
rp) :: us(lx, lx, lx, n)
257 real(kind=
rp) :: ut(lx, lx, lx, n)
258 real(kind=
rp) :: uur(lx, lx, lx, n)
259 real(kind=
rp) :: uus(lx, lx, lx, n)
260 real(kind=
rp) :: uut(lx, lx, lx, n)
261 real(kind=
rp) :: wr, ws, wt
264 do jj = 1, lx * lx * n
267 wr = wr + dx(i,kk)*u(kk,jj,1,1)
280 ws = ws + dy(j,kk)*u(i,kk,k,e)
295 wt = wt + dz(k,kk)*u(i,j,kk,e)
303 do i = 1, n * lx * lx * lx
304 uur(i,1,1,1) = h1(i,1,1,1) * &
305 ( g11(i,1,1,1) * ur(i,1,1,1) &
306 + g12(i,1,1,1) * us(i,1,1,1) &
307 + g13(i,1,1,1) * ut(i,1,1,1))
309 uus(i,1,1,1) = h1(i,1,1,1) * &
310 ( g22(i,1,1,1) * us(i,1,1,1) &
311 + g12(i,1,1,1) * ur(i,1,1,1) &
312 + g23(i,1,1,1) * ut(i,1,1,1) )
314 uut(i,1,1,1) = h1(i,1,1,1) * &
315 ( g33(i,1,1,1) * ut(i,1,1,1) &
316 + g13(i,1,1,1) * ur(i,1,1,1) &
317 + g23(i,1,1,1) * us(i,1,1,1))
321 do jj = 1, lx * lx * n
324 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
337 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
339 w(i,j,k,e) = w(i,j,k,e) + ws
352 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
354 w(i,j,k,e) = w(i,j,k,e) + wt
364 h1, G11, G22, G33, G12, G13, G23, n)
365 integer,
parameter :: lx = 13
366 integer,
intent(in) :: n
367 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
368 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
369 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
370 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
371 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
372 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
373 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
374 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
375 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
376 real(kind=
rp),
intent(in) :: dx(lx, lx)
377 real(kind=
rp),
intent(in) :: dy(lx, lx)
378 real(kind=
rp),
intent(in) :: dz(lx, lx)
379 real(kind=
rp),
intent(in) :: dxt(lx, lx)
380 real(kind=
rp),
intent(in) :: dyt(lx, lx)
381 real(kind=
rp),
intent(in) :: dzt(lx, lx)
382 integer :: e, i, j, k, jj, kk
383 real(kind=
rp) :: ur(lx, lx, lx, n)
384 real(kind=
rp) :: us(lx, lx, lx, n)
385 real(kind=
rp) :: ut(lx, lx, lx, n)
386 real(kind=
rp) :: uur(lx, lx, lx, n)
387 real(kind=
rp) :: uus(lx, lx, lx, n)
388 real(kind=
rp) :: uut(lx, lx, lx, n)
389 real(kind=
rp) :: wr, ws, wt
392 do jj = 1, lx * lx * n
395 wr = wr + dx(i,kk)*u(kk,jj,1,1)
408 ws = ws + dy(j,kk)*u(i,kk,k,e)
423 wt = wt + dz(k,kk)*u(i,j,kk,e)
431 do i = 1, n * lx * lx * lx
432 uur(i,1,1,1) = h1(i,1,1,1) * &
433 ( g11(i,1,1,1) * ur(i,1,1,1) &
434 + g12(i,1,1,1) * us(i,1,1,1) &
435 + g13(i,1,1,1) * ut(i,1,1,1))
437 uus(i,1,1,1) = h1(i,1,1,1) * &
438 ( g22(i,1,1,1) * us(i,1,1,1) &
439 + g12(i,1,1,1) * ur(i,1,1,1) &
440 + g23(i,1,1,1) * ut(i,1,1,1) )
442 uut(i,1,1,1) = h1(i,1,1,1) * &
443 ( g33(i,1,1,1) * ut(i,1,1,1) &
444 + g13(i,1,1,1) * ur(i,1,1,1) &
445 + g23(i,1,1,1) * us(i,1,1,1))
449 do jj = 1, lx * lx * n
452 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
465 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
467 w(i,j,k,e) = w(i,j,k,e) + ws
480 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
482 w(i,j,k,e) = w(i,j,k,e) + wt
492 h1, G11, G22, G33, G12, G13, G23, n)
493 integer,
parameter :: lx = 12
494 integer,
intent(in) :: n
495 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
496 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
497 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
498 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
499 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
500 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
501 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
502 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
503 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
504 real(kind=
rp),
intent(in) :: dx(lx, lx)
505 real(kind=
rp),
intent(in) :: dy(lx, lx)
506 real(kind=
rp),
intent(in) :: dz(lx, lx)
507 real(kind=
rp),
intent(in) :: dxt(lx, lx)
508 real(kind=
rp),
intent(in) :: dyt(lx, lx)
509 real(kind=
rp),
intent(in) :: dzt(lx, lx)
510 integer :: e, i, j, k, jj, kk
511 real(kind=
rp) :: ur(lx, lx, lx, n)
512 real(kind=
rp) :: us(lx, lx, lx, n)
513 real(kind=
rp) :: ut(lx, lx, lx, n)
514 real(kind=
rp) :: uur(lx, lx, lx, n)
515 real(kind=
rp) :: uus(lx, lx, lx, n)
516 real(kind=
rp) :: uut(lx, lx, lx, n)
517 real(kind=
rp) :: wr, ws, wt
520 do jj = 1, lx * lx * n
523 wr = wr + dx(i,kk)*u(kk,jj,1,1)
536 ws = ws + dy(j,kk)*u(i,kk,k,e)
551 wt = wt + dz(k,kk)*u(i,j,kk,e)
559 do i = 1, n * lx * lx * lx
560 uur(i,1,1,1) = h1(i,1,1,1) * &
561 ( g11(i,1,1,1) * ur(i,1,1,1) &
562 + g12(i,1,1,1) * us(i,1,1,1) &
563 + g13(i,1,1,1) * ut(i,1,1,1))
565 uus(i,1,1,1) = h1(i,1,1,1) * &
566 ( g22(i,1,1,1) * us(i,1,1,1) &
567 + g12(i,1,1,1) * ur(i,1,1,1) &
568 + g23(i,1,1,1) * ut(i,1,1,1) )
570 uut(i,1,1,1) = h1(i,1,1,1) * &
571 ( g33(i,1,1,1) * ut(i,1,1,1) &
572 + g13(i,1,1,1) * ur(i,1,1,1) &
573 + g23(i,1,1,1) * us(i,1,1,1))
577 do jj = 1, lx * lx * n
580 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
593 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
595 w(i,j,k,e) = w(i,j,k,e) + ws
608 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
610 w(i,j,k,e) = w(i,j,k,e) + wt
620 h1, G11, G22, G33, G12, G13, G23, n)
621 integer,
parameter :: lx = 11
622 integer,
intent(in) :: n
623 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
624 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
625 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
626 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
627 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
628 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
629 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
630 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
631 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
632 real(kind=
rp),
intent(in) :: dx(lx, lx)
633 real(kind=
rp),
intent(in) :: dy(lx, lx)
634 real(kind=
rp),
intent(in) :: dz(lx, lx)
635 real(kind=
rp),
intent(in) :: dxt(lx, lx)
636 real(kind=
rp),
intent(in) :: dyt(lx, lx)
637 real(kind=
rp),
intent(in) :: dzt(lx, lx)
638 integer :: e, i, j, k, jj, kk
639 real(kind=
rp) :: ur(lx, lx, lx, n)
640 real(kind=
rp) :: us(lx, lx, lx, n)
641 real(kind=
rp) :: ut(lx, lx, lx, n)
642 real(kind=
rp) :: uur(lx, lx, lx, n)
643 real(kind=
rp) :: uus(lx, lx, lx, n)
644 real(kind=
rp) :: uut(lx, lx, lx, n)
645 real(kind=
rp) :: wr, ws, wt
648 do jj = 1, lx * lx * n
651 wr = wr + dx(i,kk)*u(kk,jj,1,1)
664 ws = ws + dy(j,kk)*u(i,kk,k,e)
679 wt = wt + dz(k,kk)*u(i,j,kk,e)
687 do i = 1, n * lx * lx * lx
688 uur(i,1,1,1) = h1(i,1,1,1) * &
689 ( g11(i,1,1,1) * ur(i,1,1,1) &
690 + g12(i,1,1,1) * us(i,1,1,1) &
691 + g13(i,1,1,1) * ut(i,1,1,1))
693 uus(i,1,1,1) = h1(i,1,1,1) * &
694 ( g22(i,1,1,1) * us(i,1,1,1) &
695 + g12(i,1,1,1) * ur(i,1,1,1) &
696 + g23(i,1,1,1) * ut(i,1,1,1) )
698 uut(i,1,1,1) = h1(i,1,1,1) * &
699 ( g33(i,1,1,1) * ut(i,1,1,1) &
700 + g13(i,1,1,1) * ur(i,1,1,1) &
701 + g23(i,1,1,1) * us(i,1,1,1))
705 do jj = 1, lx * lx * n
708 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
721 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
723 w(i,j,k,e) = w(i,j,k,e) + ws
736 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
738 w(i,j,k,e) = w(i,j,k,e) + wt
748 h1, G11, G22, G33, G12, G13, G23, n)
749 integer,
parameter :: lx = 10
750 integer,
intent(in) :: n
751 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
752 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
753 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
754 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
755 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
756 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
757 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
758 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
759 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
760 real(kind=
rp),
intent(in) :: dx(lx, lx)
761 real(kind=
rp),
intent(in) :: dy(lx, lx)
762 real(kind=
rp),
intent(in) :: dz(lx, lx)
763 real(kind=
rp),
intent(in) :: dxt(lx, lx)
764 real(kind=
rp),
intent(in) :: dyt(lx, lx)
765 real(kind=
rp),
intent(in) :: dzt(lx, lx)
766 integer :: e, i, j, k, jj, kk
767 real(kind=
rp) :: ur(lx, lx, lx, n)
768 real(kind=
rp) :: us(lx, lx, lx, n)
769 real(kind=
rp) :: ut(lx, lx, lx, n)
770 real(kind=
rp) :: uur(lx, lx, lx, n)
771 real(kind=
rp) :: uus(lx, lx, lx, n)
772 real(kind=
rp) :: uut(lx, lx, lx, n)
773 real(kind=
rp) :: wr, ws, wt
776 do jj = 1, lx * lx * n
779 wr = wr + dx(i,kk)*u(kk,jj,1,1)
792 ws = ws + dy(j,kk)*u(i,kk,k,e)
807 wt = wt + dz(k,kk)*u(i,j,kk,e)
815 do i = 1, n * lx * lx * lx
816 uur(i,1,1,1) = h1(i,1,1,1) * &
817 ( g11(i,1,1,1) * ur(i,1,1,1) &
818 + g12(i,1,1,1) * us(i,1,1,1) &
819 + g13(i,1,1,1) * ut(i,1,1,1))
821 uus(i,1,1,1) = h1(i,1,1,1) * &
822 ( g22(i,1,1,1) * us(i,1,1,1) &
823 + g12(i,1,1,1) * ur(i,1,1,1) &
824 + g23(i,1,1,1) * ut(i,1,1,1) )
826 uut(i,1,1,1) = h1(i,1,1,1) * &
827 ( g33(i,1,1,1) * ut(i,1,1,1) &
828 + g13(i,1,1,1) * ur(i,1,1,1) &
829 + g23(i,1,1,1) * us(i,1,1,1))
833 do jj = 1, lx * lx * n
836 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
849 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
851 w(i,j,k,e) = w(i,j,k,e) + ws
864 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
866 w(i,j,k,e) = w(i,j,k,e) + wt
876 h1, G11, G22, G33, G12, G13, G23, n)
877 integer,
parameter :: lx = 9
878 integer,
intent(in) :: n
879 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
880 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
881 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
882 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
883 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
884 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
885 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
886 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
887 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
888 real(kind=
rp),
intent(in) :: dx(lx, lx)
889 real(kind=
rp),
intent(in) :: dy(lx, lx)
890 real(kind=
rp),
intent(in) :: dz(lx, lx)
891 real(kind=
rp),
intent(in) :: dxt(lx, lx)
892 real(kind=
rp),
intent(in) :: dyt(lx, lx)
893 real(kind=
rp),
intent(in) :: dzt(lx, lx)
894 integer :: e, i, j, k, jj, kk
895 real(kind=
rp) :: ur(lx, lx, lx, n)
896 real(kind=
rp) :: us(lx, lx, lx, n)
897 real(kind=
rp) :: ut(lx, lx, lx, n)
898 real(kind=
rp) :: uur(lx, lx, lx, n)
899 real(kind=
rp) :: uus(lx, lx, lx, n)
900 real(kind=
rp) :: uut(lx, lx, lx, n)
901 real(kind=
rp) :: wr, ws, wt
904 do jj = 1, lx * lx * n
907 wr = wr + dx(i,kk)*u(kk,jj,1,1)
920 ws = ws + dy(j,kk)*u(i,kk,k,e)
935 wt = wt + dz(k,kk)*u(i,j,kk,e)
943 do i = 1, n * lx * lx * lx
944 uur(i,1,1,1) = h1(i,1,1,1) * &
945 ( g11(i,1,1,1) * ur(i,1,1,1) &
946 + g12(i,1,1,1) * us(i,1,1,1) &
947 + g13(i,1,1,1) * ut(i,1,1,1))
949 uus(i,1,1,1) = h1(i,1,1,1) * &
950 ( g22(i,1,1,1) * us(i,1,1,1) &
951 + g12(i,1,1,1) * ur(i,1,1,1) &
952 + g23(i,1,1,1) * ut(i,1,1,1) )
954 uut(i,1,1,1) = h1(i,1,1,1) * &
955 ( g33(i,1,1,1) * ut(i,1,1,1) &
956 + g13(i,1,1,1) * ur(i,1,1,1) &
957 + g23(i,1,1,1) * us(i,1,1,1))
961 do jj = 1, lx * lx * n
964 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
977 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
979 w(i,j,k,e) = w(i,j,k,e) + ws
992 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
994 w(i,j,k,e) = w(i,j,k,e) + wt
1004 h1, G11, G22, G33, G12, G13, G23, n)
1005 integer,
parameter :: lx = 8
1006 integer,
intent(in) :: n
1007 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1008 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1009 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1010 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1011 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1012 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1013 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1014 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1015 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1016 real(kind=
rp),
intent(in) :: dx(lx, lx)
1017 real(kind=
rp),
intent(in) :: dy(lx, lx)
1018 real(kind=
rp),
intent(in) :: dz(lx, lx)
1019 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1020 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1021 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1022 integer :: e, i, j, k, jj, kk
1023 real(kind=
rp) :: ur(lx, lx, lx, n)
1024 real(kind=
rp) :: us(lx, lx, lx, n)
1025 real(kind=
rp) :: ut(lx, lx, lx, n)
1026 real(kind=
rp) :: uur(lx, lx, lx, n)
1027 real(kind=
rp) :: uus(lx, lx, lx, n)
1028 real(kind=
rp) :: uut(lx, lx, lx, n)
1029 real(kind=
rp) :: wr, ws, wt
1032 do jj = 1, lx * lx * n
1035 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1048 ws = ws + dy(j,kk)*u(i,kk,k,e)
1063 wt = wt + dz(k,kk)*u(i,j,kk,e)
1071 do i = 1, n * lx * lx * lx
1072 uur(i,1,1,1) = h1(i,1,1,1) * &
1073 ( g11(i,1,1,1) * ur(i,1,1,1) &
1074 + g12(i,1,1,1) * us(i,1,1,1) &
1075 + g13(i,1,1,1) * ut(i,1,1,1))
1077 uus(i,1,1,1) = h1(i,1,1,1) * &
1078 ( g22(i,1,1,1) * us(i,1,1,1) &
1079 + g12(i,1,1,1) * ur(i,1,1,1) &
1080 + g23(i,1,1,1) * ut(i,1,1,1) )
1082 uut(i,1,1,1) = h1(i,1,1,1) * &
1083 ( g33(i,1,1,1) * ut(i,1,1,1) &
1084 + g13(i,1,1,1) * ur(i,1,1,1) &
1085 + g23(i,1,1,1) * us(i,1,1,1))
1089 do jj = 1, lx * lx * n
1092 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1105 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1107 w(i,j,k,e) = w(i,j,k,e) + ws
1120 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1122 w(i,j,k,e) = w(i,j,k,e) + wt
1132 h1, G11, G22, G33, G12, G13, G23, n)
1133 integer,
parameter :: lx = 7
1134 integer,
intent(in) :: n
1135 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1136 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1137 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1138 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1139 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1140 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1141 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1142 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1143 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1144 real(kind=
rp),
intent(in) :: dx(lx, lx)
1145 real(kind=
rp),
intent(in) :: dy(lx, lx)
1146 real(kind=
rp),
intent(in) :: dz(lx, lx)
1147 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1148 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1149 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1150 integer :: e, i, j, k, jj, kk
1151 real(kind=
rp) :: ur(lx, lx, lx, n)
1152 real(kind=
rp) :: us(lx, lx, lx, n)
1153 real(kind=
rp) :: ut(lx, lx, lx, n)
1154 real(kind=
rp) :: uur(lx, lx, lx, n)
1155 real(kind=
rp) :: uus(lx, lx, lx, n)
1156 real(kind=
rp) :: uut(lx, lx, lx, n)
1157 real(kind=
rp) :: wr, ws, wt
1160 do jj = 1, lx * lx * n
1163 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1176 ws = ws + dy(j,kk)*u(i,kk,k,e)
1191 wt = wt + dz(k,kk)*u(i,j,kk,e)
1199 do i = 1, n * lx * lx * lx
1200 uur(i,1,1,1) = h1(i,1,1,1) * &
1201 ( g11(i,1,1,1) * ur(i,1,1,1) &
1202 + g12(i,1,1,1) * us(i,1,1,1) &
1203 + g13(i,1,1,1) * ut(i,1,1,1))
1205 uus(i,1,1,1) = h1(i,1,1,1) * &
1206 ( g22(i,1,1,1) * us(i,1,1,1) &
1207 + g12(i,1,1,1) * ur(i,1,1,1) &
1208 + g23(i,1,1,1) * ut(i,1,1,1) )
1210 uut(i,1,1,1) = h1(i,1,1,1) * &
1211 ( g33(i,1,1,1) * ut(i,1,1,1) &
1212 + g13(i,1,1,1) * ur(i,1,1,1) &
1213 + g23(i,1,1,1) * us(i,1,1,1))
1217 do jj = 1, lx * lx * n
1220 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1233 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1235 w(i,j,k,e) = w(i,j,k,e) + ws
1248 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1250 w(i,j,k,e) = w(i,j,k,e) + wt
1260 h1, G11, G22, G33, G12, G13, G23, n)
1261 integer,
parameter :: lx = 6
1262 integer,
intent(in) :: n
1263 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1264 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1265 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1266 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1267 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1268 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1269 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1270 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1271 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1272 real(kind=
rp),
intent(in) :: dx(lx, lx)
1273 real(kind=
rp),
intent(in) :: dy(lx, lx)
1274 real(kind=
rp),
intent(in) :: dz(lx, lx)
1275 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1276 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1277 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1278 integer :: e, i, j, k, jj, kk
1279 real(kind=
rp) :: ur(lx, lx, lx, n)
1280 real(kind=
rp) :: us(lx, lx, lx, n)
1281 real(kind=
rp) :: ut(lx, lx, lx, n)
1282 real(kind=
rp) :: uur(lx, lx, lx, n)
1283 real(kind=
rp) :: uus(lx, lx, lx, n)
1284 real(kind=
rp) :: uut(lx, lx, lx, n)
1285 real(kind=
rp) :: wr, ws, wt
1288 do jj = 1, lx * lx * n
1291 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1304 ws = ws + dy(j,kk)*u(i,kk,k,e)
1319 wt = wt + dz(k,kk)*u(i,j,kk,e)
1327 do i = 1, n * lx * lx * lx
1328 uur(i,1,1,1) = h1(i,1,1,1) * &
1329 ( g11(i,1,1,1) * ur(i,1,1,1) &
1330 + g12(i,1,1,1) * us(i,1,1,1) &
1331 + g13(i,1,1,1) * ut(i,1,1,1))
1333 uus(i,1,1,1) = h1(i,1,1,1) * &
1334 ( g22(i,1,1,1) * us(i,1,1,1) &
1335 + g12(i,1,1,1) * ur(i,1,1,1) &
1336 + g23(i,1,1,1) * ut(i,1,1,1) )
1338 uut(i,1,1,1) = h1(i,1,1,1) * &
1339 ( g33(i,1,1,1) * ut(i,1,1,1) &
1340 + g13(i,1,1,1) * ur(i,1,1,1) &
1341 + g23(i,1,1,1) * us(i,1,1,1))
1345 do jj = 1, lx * lx * n
1348 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1361 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1363 w(i,j,k,e) = w(i,j,k,e) + ws
1376 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1378 w(i,j,k,e) = w(i,j,k,e) + wt
1388 h1, G11, G22, G33, G12, G13, G23, n)
1389 integer,
parameter :: lx = 5
1390 integer,
intent(in) :: n
1391 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1392 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1393 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1394 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1395 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1396 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1397 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1398 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1399 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1400 real(kind=
rp),
intent(in) :: dx(lx, lx)
1401 real(kind=
rp),
intent(in) :: dy(lx, lx)
1402 real(kind=
rp),
intent(in) :: dz(lx, lx)
1403 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1404 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1405 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1406 integer :: e, i, j, k, jj, kk
1407 real(kind=
rp) :: ur(lx, lx, lx, n)
1408 real(kind=
rp) :: us(lx, lx, lx, n)
1409 real(kind=
rp) :: ut(lx, lx, lx, n)
1410 real(kind=
rp) :: uur(lx, lx, lx, n)
1411 real(kind=
rp) :: uus(lx, lx, lx, n)
1412 real(kind=
rp) :: uut(lx, lx, lx, n)
1413 real(kind=
rp) :: wr, ws, wt
1416 do jj = 1, lx * lx * n
1419 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1432 ws = ws + dy(j,kk)*u(i,kk,k,e)
1447 wt = wt + dz(k,kk)*u(i,j,kk,e)
1455 do i = 1, n * lx * lx * lx
1456 uur(i,1,1,1) = h1(i,1,1,1) * &
1457 ( g11(i,1,1,1) * ur(i,1,1,1) &
1458 + g12(i,1,1,1) * us(i,1,1,1) &
1459 + g13(i,1,1,1) * ut(i,1,1,1))
1461 uus(i,1,1,1) = h1(i,1,1,1) * &
1462 ( g22(i,1,1,1) * us(i,1,1,1) &
1463 + g12(i,1,1,1) * ur(i,1,1,1) &
1464 + g23(i,1,1,1) * ut(i,1,1,1) )
1466 uut(i,1,1,1) = h1(i,1,1,1) * &
1467 ( g33(i,1,1,1) * ut(i,1,1,1) &
1468 + g13(i,1,1,1) * ur(i,1,1,1) &
1469 + g23(i,1,1,1) * us(i,1,1,1))
1473 do jj = 1, lx * lx * n
1476 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1489 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1491 w(i,j,k,e) = w(i,j,k,e) + ws
1504 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1506 w(i,j,k,e) = w(i,j,k,e) + wt
1516 h1, G11, G22, G33, G12, G13, G23, n)
1517 integer,
parameter :: lx = 4
1518 integer,
intent(in) :: n
1519 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1520 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1521 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1522 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1523 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1524 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1525 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1526 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1527 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1528 real(kind=
rp),
intent(in) :: dx(lx, lx)
1529 real(kind=
rp),
intent(in) :: dy(lx, lx)
1530 real(kind=
rp),
intent(in) :: dz(lx, lx)
1531 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1532 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1533 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1534 integer :: e, i, j, k, jj
1535 real(kind=
rp) :: ur(lx, lx, lx, n)
1536 real(kind=
rp) :: us(lx, lx, lx, n)
1537 real(kind=
rp) :: ut(lx, lx, lx, n)
1538 real(kind=
rp) :: uur(lx, lx, lx, n)
1539 real(kind=
rp) :: uus(lx, lx, lx, n)
1540 real(kind=
rp) :: uut(lx, lx, lx, n)
1543 do jj = 1, lx * lx * n
1544 ur(i,jj,1,1) = dx(i,1)*u(1,jj,1,1) &
1545 + dx(i,2)*u(2,jj,1,1) &
1546 + dx(i,3)*u(3,jj,1,1) &
1547 + dx(i,4)*u(4,jj,1,1)
1556 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1557 + dy(j,2) * u(i,2,k,e) &
1558 + dy(j,3) * u(i,3,k,e) &
1559 + dy(j,4) * u(i,4,k,e)
1571 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1572 + dz(k,2) * u(i,j,2,e) &
1573 + dz(k,3) * u(i,j,3,e) &
1574 + dz(k,4) * u(i,j,4,e)
1580 do i = 1, n * lx * lx * lx
1581 uur(i,1,1,1) = h1(i,1,1,1) * &
1582 ( g11(i,1,1,1) * ur(i,1,1,1) &
1583 + g12(i,1,1,1) * us(i,1,1,1) &
1584 + g13(i,1,1,1) * ut(i,1,1,1))
1586 uus(i,1,1,1) = h1(i,1,1,1) * &
1587 ( g22(i,1,1,1) * us(i,1,1,1) &
1588 + g12(i,1,1,1) * ur(i,1,1,1) &
1589 + g23(i,1,1,1) * ut(i,1,1,1) )
1591 uut(i,1,1,1) = h1(i,1,1,1) * &
1592 ( g33(i,1,1,1) * ut(i,1,1,1) &
1593 + g13(i,1,1,1) * ur(i,1,1,1) &
1594 + g23(i,1,1,1) * us(i,1,1,1))
1598 do jj = 1, lx * lx * n
1599 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1600 + dxt(i,2) * uur(2,jj,1,1) &
1601 + dxt(i,3) * uur(3,jj,1,1) &
1602 + dxt(i,4) * uur(4,jj,1,1)
1610 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1611 + dyt(j,2) * uus(i,2,k,e) &
1612 + dyt(j,3) * uus(i,3,k,e) &
1613 + dyt(j,4) * uus(i,4,k,e)
1623 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1624 + dzt(k,2) * uut(i,j,2,e) &
1625 + dzt(k,3) * uut(i,j,3,e) &
1626 + dzt(k,4) * uut(i,j,4,e)
1635 h1, G11, G22, G33, G12, G13, G23, n)
1636 integer,
parameter :: lx = 3
1637 integer,
intent(in) :: n
1638 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1639 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1640 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1641 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1642 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1643 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1644 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1645 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1646 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1647 real(kind=
rp),
intent(in) :: dx(lx, lx)
1648 real(kind=
rp),
intent(in) :: dy(lx, lx)
1649 real(kind=
rp),
intent(in) :: dz(lx, lx)
1650 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1651 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1652 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1653 integer :: e, i, j, k, jj
1654 real(kind=
rp) :: ur(lx, lx, lx, n)
1655 real(kind=
rp) :: us(lx, lx, lx, n)
1656 real(kind=
rp) :: ut(lx, lx, lx, n)
1657 real(kind=
rp) :: uur(lx, lx, lx, n)
1658 real(kind=
rp) :: uus(lx, lx, lx, n)
1659 real(kind=
rp) :: uut(lx, lx, lx, n)
1662 do jj = 1, lx * lx * n
1663 ur(i,jj,1,1) = dx(i,1)*u(1,jj,1,1) &
1664 + dx(i,2)*u(2,jj,1,1) &
1665 + dx(i,3)*u(3,jj,1,1)
1674 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1675 + dy(j,2) * u(i,2,k,e) &
1676 + dy(j,3) * u(i,3,k,e)
1688 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1689 + dz(k,2) * u(i,j,2,e) &
1690 + dz(k,3) * u(i,j,3,e)
1696 do i = 1, n * lx * lx * lx
1697 uur(i,1,1,1) = h1(i,1,1,1) * &
1698 ( g11(i,1,1,1) * ur(i,1,1,1) &
1699 + g12(i,1,1,1) * us(i,1,1,1) &
1700 + g13(i,1,1,1) * ut(i,1,1,1))
1702 uus(i,1,1,1) = h1(i,1,1,1) * &
1703 ( g22(i,1,1,1) * us(i,1,1,1) &
1704 + g12(i,1,1,1) * ur(i,1,1,1) &
1705 + g23(i,1,1,1) * ut(i,1,1,1) )
1707 uut(i,1,1,1) = h1(i,1,1,1) * &
1708 ( g33(i,1,1,1) * ut(i,1,1,1) &
1709 + g13(i,1,1,1) * ur(i,1,1,1) &
1710 + g23(i,1,1,1) * us(i,1,1,1))
1714 do jj = 1, lx * lx * n
1715 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1716 + dxt(i,2) * uur(2,jj,1,1) &
1717 + dxt(i,3) * uur(3,jj,1,1)
1725 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1726 + dyt(j,2) * uus(i,2,k,e) &
1727 + dyt(j,3) * uus(i,3,k,e)
1737 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1738 + dzt(k,2) * uut(i,j,2,e) &
1739 + dzt(k,3) * uut(i,j,3,e)
1748 h1, G11, G22, G33, G12, G13, G23, n)
1749 integer,
parameter :: lx = 2
1750 integer,
intent(in) :: n
1751 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1752 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1753 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1754 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1755 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1756 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1757 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1758 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1759 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1760 real(kind=
rp),
intent(in) :: dx(lx, lx)
1761 real(kind=
rp),
intent(in) :: dy(lx, lx)
1762 real(kind=
rp),
intent(in) :: dz(lx, lx)
1763 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1764 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1765 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1766 integer :: e, i, j, k, jj
1767 real(kind=
rp) :: ur(lx, lx, lx, n)
1768 real(kind=
rp) :: us(lx, lx, lx, n)
1769 real(kind=
rp) :: ut(lx, lx, lx, n)
1770 real(kind=
rp) :: uur(lx, lx, lx, n)
1771 real(kind=
rp) :: uus(lx, lx, lx, n)
1772 real(kind=
rp) :: uut(lx, lx, lx, n)
1775 do jj = 1, lx * lx * n
1776 ur(i,jj,1,1) = dx(i,1) * u(1,jj,1,1) &
1777 + dx(i,2) * u(2,jj,1,1)
1785 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1786 + dy(j,2) * u(i,2,k,e)
1796 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1797 + dz(k,2) * u(i,j,2,e)
1803 do i = 1, n * lx * lx * lx
1804 uur(i,1,1,1) = h1(i,1,1,1) * &
1805 ( g11(i,1,1,1) * ur(i,1,1,1) &
1806 + g12(i,1,1,1) * us(i,1,1,1) &
1807 + g13(i,1,1,1) * ut(i,1,1,1))
1809 uus(i,1,1,1) = h1(i,1,1,1) * &
1810 ( g22(i,1,1,1) * us(i,1,1,1) &
1811 + g12(i,1,1,1) * ur(i,1,1,1) &
1812 + g23(i,1,1,1) * ut(i,1,1,1) )
1814 uut(i,1,1,1) = h1(i,1,1,1) * &
1815 ( g33(i,1,1,1) * ut(i,1,1,1) &
1816 + g13(i,1,1,1) * ur(i,1,1,1) &
1817 + g23(i,1,1,1) * us(i,1,1,1))
1821 do jj = 1, lx * lx * n
1822 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1823 + dxt(i,2) * uur(2,jj,1,1)
1831 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1832 + dyt(j,2) * uus(i,2,k,e)
1842 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1843 + dzt(k,2) * uut(i,j,2,e)