51 type(
mesh_t),
intent(inout) :: msh
52 type(
space_t),
intent(inout) :: Xh
53 type(
coef_t),
intent(inout) :: coef
54 real(kind=
rp),
intent(inout) :: w(xh%lx, xh%ly, xh%lz, msh%nelv)
55 real(kind=
rp),
intent(inout) :: u(xh%lx, xh%ly, xh%lz, msh%nelv)
59 call sx_ax_helm_lx14(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
60 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
62 call sx_ax_helm_lx13(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
63 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
65 call sx_ax_helm_lx12(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
66 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
68 call sx_ax_helm_lx11(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
69 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
71 call sx_ax_helm_lx10(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
72 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
74 call sx_ax_helm_lx9(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
75 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
77 call sx_ax_helm_lx8(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
78 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
80 call sx_ax_helm_lx7(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
81 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
83 call sx_ax_helm_lx6(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
84 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
86 call sx_ax_helm_lx5(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
87 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
89 call sx_ax_helm_lx4(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
90 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
92 call sx_ax_helm_lx3(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
93 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
95 call sx_ax_helm_lx2(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
96 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, msh%nelv)
98 call sx_ax_helm_lx(w, u, xh%dx, xh%dy, xh%dz, xh%dxt, xh%dyt, xh%dzt, &
99 coef%h1, coef%G11, coef%G22, coef%G33, coef%G12, coef%G13, coef%G23, &
103 if (coef%ifh2)
call addcol4 (w,coef%h2,coef%B,u,coef%dof%size())
108 h1, G11, G22, G33, G12, G13, G23, n, lx)
109 integer,
intent(in) :: n, lx
110 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
111 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
112 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
113 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
114 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
115 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
116 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
117 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
118 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
119 real(kind=
rp),
intent(in) :: dx(lx, lx)
120 real(kind=
rp),
intent(in) :: dy(lx, lx)
121 real(kind=
rp),
intent(in) :: dz(lx, lx)
122 real(kind=
rp),
intent(in) :: dxt(lx, lx)
123 real(kind=
rp),
intent(in) :: dyt(lx, lx)
124 real(kind=
rp),
intent(in) :: dzt(lx, lx)
125 integer :: e, i, j, k, jj, kk
126 real(kind=
rp) :: ur(lx, lx, lx, n)
127 real(kind=
rp) :: us(lx, lx, lx, n)
128 real(kind=
rp) :: ut(lx, lx, lx, n)
129 real(kind=
rp) :: uur(lx, lx, lx, n)
130 real(kind=
rp) :: uus(lx, lx, lx, n)
131 real(kind=
rp) :: uut(lx, lx, lx, n)
132 real(kind=
rp) :: wr, ws, wt
135 do jj = 1, lx * lx * n
138 wr = wr + dx(i,kk)*u(kk,jj,1,1)
151 ws = ws + dy(j,kk)*u(i,kk,k,e)
166 wt = wt + dz(k,kk)*u(i,j,kk,e)
174 do i = 1, n * lx * lx * lx
175 uur(i,1,1,1) = h1(i,1,1,1) * &
176 ( g11(i,1,1,1) * ur(i,1,1,1) &
177 + g12(i,1,1,1) * us(i,1,1,1) &
178 + g13(i,1,1,1) * ut(i,1,1,1))
180 uus(i,1,1,1) = h1(i,1,1,1) * &
181 ( g22(i,1,1,1) * us(i,1,1,1) &
182 + g12(i,1,1,1) * ur(i,1,1,1) &
183 + g23(i,1,1,1) * ut(i,1,1,1) )
185 uut(i,1,1,1) = h1(i,1,1,1) * &
186 ( g33(i,1,1,1) * ut(i,1,1,1) &
187 + g13(i,1,1,1) * ur(i,1,1,1) &
188 + g23(i,1,1,1) * us(i,1,1,1))
192 do jj = 1, lx * lx * n
195 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
208 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
210 w(i,j,k,e) = w(i,j,k,e) + ws
223 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
225 w(i,j,k,e) = w(i,j,k,e) + wt
235 h1, G11, G22, G33, G12, G13, G23, n)
236 integer,
parameter :: lx = 14
237 integer,
intent(in) :: n
238 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
239 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
240 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
241 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
242 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
243 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
244 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
245 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
246 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
247 real(kind=
rp),
intent(in) :: dx(lx, lx)
248 real(kind=
rp),
intent(in) :: dy(lx, lx)
249 real(kind=
rp),
intent(in) :: dz(lx, lx)
250 real(kind=
rp),
intent(in) :: dxt(lx, lx)
251 real(kind=
rp),
intent(in) :: dyt(lx, lx)
252 real(kind=
rp),
intent(in) :: dzt(lx, lx)
253 integer :: e, i, j, k, jj, kk
254 real(kind=
rp) :: ur(lx, lx, lx, n)
255 real(kind=
rp) :: us(lx, lx, lx, n)
256 real(kind=
rp) :: ut(lx, lx, lx, n)
257 real(kind=
rp) :: uur(lx, lx, lx, n)
258 real(kind=
rp) :: uus(lx, lx, lx, n)
259 real(kind=
rp) :: uut(lx, lx, lx, n)
260 real(kind=
rp) :: wr, ws, wt
263 do jj = 1, lx * lx * n
266 wr = wr + dx(i,kk)*u(kk,jj,1,1)
279 ws = ws + dy(j,kk)*u(i,kk,k,e)
294 wt = wt + dz(k,kk)*u(i,j,kk,e)
302 do i = 1, n * lx * lx * lx
303 uur(i,1,1,1) = h1(i,1,1,1) * &
304 ( g11(i,1,1,1) * ur(i,1,1,1) &
305 + g12(i,1,1,1) * us(i,1,1,1) &
306 + g13(i,1,1,1) * ut(i,1,1,1))
308 uus(i,1,1,1) = h1(i,1,1,1) * &
309 ( g22(i,1,1,1) * us(i,1,1,1) &
310 + g12(i,1,1,1) * ur(i,1,1,1) &
311 + g23(i,1,1,1) * ut(i,1,1,1) )
313 uut(i,1,1,1) = h1(i,1,1,1) * &
314 ( g33(i,1,1,1) * ut(i,1,1,1) &
315 + g13(i,1,1,1) * ur(i,1,1,1) &
316 + g23(i,1,1,1) * us(i,1,1,1))
320 do jj = 1, lx * lx * n
323 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
336 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
338 w(i,j,k,e) = w(i,j,k,e) + ws
351 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
353 w(i,j,k,e) = w(i,j,k,e) + wt
363 h1, G11, G22, G33, G12, G13, G23, n)
364 integer,
parameter :: lx = 13
365 integer,
intent(in) :: n
366 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
367 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
368 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
369 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
370 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
371 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
372 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
373 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
374 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
375 real(kind=
rp),
intent(in) :: dx(lx, lx)
376 real(kind=
rp),
intent(in) :: dy(lx, lx)
377 real(kind=
rp),
intent(in) :: dz(lx, lx)
378 real(kind=
rp),
intent(in) :: dxt(lx, lx)
379 real(kind=
rp),
intent(in) :: dyt(lx, lx)
380 real(kind=
rp),
intent(in) :: dzt(lx, lx)
381 integer :: e, i, j, k, jj, kk
382 real(kind=
rp) :: ur(lx, lx, lx, n)
383 real(kind=
rp) :: us(lx, lx, lx, n)
384 real(kind=
rp) :: ut(lx, lx, lx, n)
385 real(kind=
rp) :: uur(lx, lx, lx, n)
386 real(kind=
rp) :: uus(lx, lx, lx, n)
387 real(kind=
rp) :: uut(lx, lx, lx, n)
388 real(kind=
rp) :: wr, ws, wt
391 do jj = 1, lx * lx * n
394 wr = wr + dx(i,kk)*u(kk,jj,1,1)
407 ws = ws + dy(j,kk)*u(i,kk,k,e)
422 wt = wt + dz(k,kk)*u(i,j,kk,e)
430 do i = 1, n * lx * lx * lx
431 uur(i,1,1,1) = h1(i,1,1,1) * &
432 ( g11(i,1,1,1) * ur(i,1,1,1) &
433 + g12(i,1,1,1) * us(i,1,1,1) &
434 + g13(i,1,1,1) * ut(i,1,1,1))
436 uus(i,1,1,1) = h1(i,1,1,1) * &
437 ( g22(i,1,1,1) * us(i,1,1,1) &
438 + g12(i,1,1,1) * ur(i,1,1,1) &
439 + g23(i,1,1,1) * ut(i,1,1,1) )
441 uut(i,1,1,1) = h1(i,1,1,1) * &
442 ( g33(i,1,1,1) * ut(i,1,1,1) &
443 + g13(i,1,1,1) * ur(i,1,1,1) &
444 + g23(i,1,1,1) * us(i,1,1,1))
448 do jj = 1, lx * lx * n
451 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
464 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
466 w(i,j,k,e) = w(i,j,k,e) + ws
479 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
481 w(i,j,k,e) = w(i,j,k,e) + wt
491 h1, G11, G22, G33, G12, G13, G23, n)
492 integer,
parameter :: lx = 12
493 integer,
intent(in) :: n
494 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
495 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
496 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
497 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
498 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
499 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
500 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
501 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
502 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
503 real(kind=
rp),
intent(in) :: dx(lx, lx)
504 real(kind=
rp),
intent(in) :: dy(lx, lx)
505 real(kind=
rp),
intent(in) :: dz(lx, lx)
506 real(kind=
rp),
intent(in) :: dxt(lx, lx)
507 real(kind=
rp),
intent(in) :: dyt(lx, lx)
508 real(kind=
rp),
intent(in) :: dzt(lx, lx)
509 integer :: e, i, j, k, jj, kk
510 real(kind=
rp) :: ur(lx, lx, lx, n)
511 real(kind=
rp) :: us(lx, lx, lx, n)
512 real(kind=
rp) :: ut(lx, lx, lx, n)
513 real(kind=
rp) :: uur(lx, lx, lx, n)
514 real(kind=
rp) :: uus(lx, lx, lx, n)
515 real(kind=
rp) :: uut(lx, lx, lx, n)
516 real(kind=
rp) :: wr, ws, wt
519 do jj = 1, lx * lx * n
522 wr = wr + dx(i,kk)*u(kk,jj,1,1)
535 ws = ws + dy(j,kk)*u(i,kk,k,e)
550 wt = wt + dz(k,kk)*u(i,j,kk,e)
558 do i = 1, n * lx * lx * lx
559 uur(i,1,1,1) = h1(i,1,1,1) * &
560 ( g11(i,1,1,1) * ur(i,1,1,1) &
561 + g12(i,1,1,1) * us(i,1,1,1) &
562 + g13(i,1,1,1) * ut(i,1,1,1))
564 uus(i,1,1,1) = h1(i,1,1,1) * &
565 ( g22(i,1,1,1) * us(i,1,1,1) &
566 + g12(i,1,1,1) * ur(i,1,1,1) &
567 + g23(i,1,1,1) * ut(i,1,1,1) )
569 uut(i,1,1,1) = h1(i,1,1,1) * &
570 ( g33(i,1,1,1) * ut(i,1,1,1) &
571 + g13(i,1,1,1) * ur(i,1,1,1) &
572 + g23(i,1,1,1) * us(i,1,1,1))
576 do jj = 1, lx * lx * n
579 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
592 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
594 w(i,j,k,e) = w(i,j,k,e) + ws
607 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
609 w(i,j,k,e) = w(i,j,k,e) + wt
619 h1, G11, G22, G33, G12, G13, G23, n)
620 integer,
parameter :: lx = 11
621 integer,
intent(in) :: n
622 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
623 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
624 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
625 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
626 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
627 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
628 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
629 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
630 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
631 real(kind=
rp),
intent(in) :: dx(lx, lx)
632 real(kind=
rp),
intent(in) :: dy(lx, lx)
633 real(kind=
rp),
intent(in) :: dz(lx, lx)
634 real(kind=
rp),
intent(in) :: dxt(lx, lx)
635 real(kind=
rp),
intent(in) :: dyt(lx, lx)
636 real(kind=
rp),
intent(in) :: dzt(lx, lx)
637 integer :: e, i, j, k, jj, kk
638 real(kind=
rp) :: ur(lx, lx, lx, n)
639 real(kind=
rp) :: us(lx, lx, lx, n)
640 real(kind=
rp) :: ut(lx, lx, lx, n)
641 real(kind=
rp) :: uur(lx, lx, lx, n)
642 real(kind=
rp) :: uus(lx, lx, lx, n)
643 real(kind=
rp) :: uut(lx, lx, lx, n)
644 real(kind=
rp) :: wr, ws, wt
647 do jj = 1, lx * lx * n
650 wr = wr + dx(i,kk)*u(kk,jj,1,1)
663 ws = ws + dy(j,kk)*u(i,kk,k,e)
678 wt = wt + dz(k,kk)*u(i,j,kk,e)
686 do i = 1, n * lx * lx * lx
687 uur(i,1,1,1) = h1(i,1,1,1) * &
688 ( g11(i,1,1,1) * ur(i,1,1,1) &
689 + g12(i,1,1,1) * us(i,1,1,1) &
690 + g13(i,1,1,1) * ut(i,1,1,1))
692 uus(i,1,1,1) = h1(i,1,1,1) * &
693 ( g22(i,1,1,1) * us(i,1,1,1) &
694 + g12(i,1,1,1) * ur(i,1,1,1) &
695 + g23(i,1,1,1) * ut(i,1,1,1) )
697 uut(i,1,1,1) = h1(i,1,1,1) * &
698 ( g33(i,1,1,1) * ut(i,1,1,1) &
699 + g13(i,1,1,1) * ur(i,1,1,1) &
700 + g23(i,1,1,1) * us(i,1,1,1))
704 do jj = 1, lx * lx * n
707 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
720 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
722 w(i,j,k,e) = w(i,j,k,e) + ws
735 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
737 w(i,j,k,e) = w(i,j,k,e) + wt
747 h1, G11, G22, G33, G12, G13, G23, n)
748 integer,
parameter :: lx = 10
749 integer,
intent(in) :: n
750 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
751 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
752 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
753 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
754 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
755 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
756 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
757 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
758 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
759 real(kind=
rp),
intent(in) :: dx(lx, lx)
760 real(kind=
rp),
intent(in) :: dy(lx, lx)
761 real(kind=
rp),
intent(in) :: dz(lx, lx)
762 real(kind=
rp),
intent(in) :: dxt(lx, lx)
763 real(kind=
rp),
intent(in) :: dyt(lx, lx)
764 real(kind=
rp),
intent(in) :: dzt(lx, lx)
765 integer :: e, i, j, k, jj, kk
766 real(kind=
rp) :: ur(lx, lx, lx, n)
767 real(kind=
rp) :: us(lx, lx, lx, n)
768 real(kind=
rp) :: ut(lx, lx, lx, n)
769 real(kind=
rp) :: uur(lx, lx, lx, n)
770 real(kind=
rp) :: uus(lx, lx, lx, n)
771 real(kind=
rp) :: uut(lx, lx, lx, n)
772 real(kind=
rp) :: wr, ws, wt
775 do jj = 1, lx * lx * n
778 wr = wr + dx(i,kk)*u(kk,jj,1,1)
791 ws = ws + dy(j,kk)*u(i,kk,k,e)
806 wt = wt + dz(k,kk)*u(i,j,kk,e)
814 do i = 1, n * lx * lx * lx
815 uur(i,1,1,1) = h1(i,1,1,1) * &
816 ( g11(i,1,1,1) * ur(i,1,1,1) &
817 + g12(i,1,1,1) * us(i,1,1,1) &
818 + g13(i,1,1,1) * ut(i,1,1,1))
820 uus(i,1,1,1) = h1(i,1,1,1) * &
821 ( g22(i,1,1,1) * us(i,1,1,1) &
822 + g12(i,1,1,1) * ur(i,1,1,1) &
823 + g23(i,1,1,1) * ut(i,1,1,1) )
825 uut(i,1,1,1) = h1(i,1,1,1) * &
826 ( g33(i,1,1,1) * ut(i,1,1,1) &
827 + g13(i,1,1,1) * ur(i,1,1,1) &
828 + g23(i,1,1,1) * us(i,1,1,1))
832 do jj = 1, lx * lx * n
835 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
848 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
850 w(i,j,k,e) = w(i,j,k,e) + ws
863 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
865 w(i,j,k,e) = w(i,j,k,e) + wt
875 h1, G11, G22, G33, G12, G13, G23, n)
876 integer,
parameter :: lx = 9
877 integer,
intent(in) :: n
878 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
879 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
880 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
881 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
882 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
883 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
884 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
885 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
886 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
887 real(kind=
rp),
intent(in) :: dx(lx, lx)
888 real(kind=
rp),
intent(in) :: dy(lx, lx)
889 real(kind=
rp),
intent(in) :: dz(lx, lx)
890 real(kind=
rp),
intent(in) :: dxt(lx, lx)
891 real(kind=
rp),
intent(in) :: dyt(lx, lx)
892 real(kind=
rp),
intent(in) :: dzt(lx, lx)
893 integer :: e, i, j, k, jj, kk
894 real(kind=
rp) :: ur(lx, lx, lx, n)
895 real(kind=
rp) :: us(lx, lx, lx, n)
896 real(kind=
rp) :: ut(lx, lx, lx, n)
897 real(kind=
rp) :: uur(lx, lx, lx, n)
898 real(kind=
rp) :: uus(lx, lx, lx, n)
899 real(kind=
rp) :: uut(lx, lx, lx, n)
900 real(kind=
rp) :: wr, ws, wt
903 do jj = 1, lx * lx * n
906 wr = wr + dx(i,kk)*u(kk,jj,1,1)
919 ws = ws + dy(j,kk)*u(i,kk,k,e)
934 wt = wt + dz(k,kk)*u(i,j,kk,e)
942 do i = 1, n * lx * lx * lx
943 uur(i,1,1,1) = h1(i,1,1,1) * &
944 ( g11(i,1,1,1) * ur(i,1,1,1) &
945 + g12(i,1,1,1) * us(i,1,1,1) &
946 + g13(i,1,1,1) * ut(i,1,1,1))
948 uus(i,1,1,1) = h1(i,1,1,1) * &
949 ( g22(i,1,1,1) * us(i,1,1,1) &
950 + g12(i,1,1,1) * ur(i,1,1,1) &
951 + g23(i,1,1,1) * ut(i,1,1,1) )
953 uut(i,1,1,1) = h1(i,1,1,1) * &
954 ( g33(i,1,1,1) * ut(i,1,1,1) &
955 + g13(i,1,1,1) * ur(i,1,1,1) &
956 + g23(i,1,1,1) * us(i,1,1,1))
960 do jj = 1, lx * lx * n
963 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
976 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
978 w(i,j,k,e) = w(i,j,k,e) + ws
991 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
993 w(i,j,k,e) = w(i,j,k,e) + wt
1003 h1, G11, G22, G33, G12, G13, G23, n)
1004 integer,
parameter :: lx = 8
1005 integer,
intent(in) :: n
1006 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1007 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1008 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1009 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1010 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1011 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1012 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1013 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1014 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1015 real(kind=
rp),
intent(in) :: dx(lx, lx)
1016 real(kind=
rp),
intent(in) :: dy(lx, lx)
1017 real(kind=
rp),
intent(in) :: dz(lx, lx)
1018 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1019 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1020 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1021 integer :: e, i, j, k, jj, kk
1022 real(kind=
rp) :: ur(lx, lx, lx, n)
1023 real(kind=
rp) :: us(lx, lx, lx, n)
1024 real(kind=
rp) :: ut(lx, lx, lx, n)
1025 real(kind=
rp) :: uur(lx, lx, lx, n)
1026 real(kind=
rp) :: uus(lx, lx, lx, n)
1027 real(kind=
rp) :: uut(lx, lx, lx, n)
1028 real(kind=
rp) :: wr, ws, wt
1031 do jj = 1, lx * lx * n
1034 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1047 ws = ws + dy(j,kk)*u(i,kk,k,e)
1062 wt = wt + dz(k,kk)*u(i,j,kk,e)
1070 do i = 1, n * lx * lx * lx
1071 uur(i,1,1,1) = h1(i,1,1,1) * &
1072 ( g11(i,1,1,1) * ur(i,1,1,1) &
1073 + g12(i,1,1,1) * us(i,1,1,1) &
1074 + g13(i,1,1,1) * ut(i,1,1,1))
1076 uus(i,1,1,1) = h1(i,1,1,1) * &
1077 ( g22(i,1,1,1) * us(i,1,1,1) &
1078 + g12(i,1,1,1) * ur(i,1,1,1) &
1079 + g23(i,1,1,1) * ut(i,1,1,1) )
1081 uut(i,1,1,1) = h1(i,1,1,1) * &
1082 ( g33(i,1,1,1) * ut(i,1,1,1) &
1083 + g13(i,1,1,1) * ur(i,1,1,1) &
1084 + g23(i,1,1,1) * us(i,1,1,1))
1088 do jj = 1, lx * lx * n
1091 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1104 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1106 w(i,j,k,e) = w(i,j,k,e) + ws
1119 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1121 w(i,j,k,e) = w(i,j,k,e) + wt
1131 h1, G11, G22, G33, G12, G13, G23, n)
1132 integer,
parameter :: lx = 7
1133 integer,
intent(in) :: n
1134 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1135 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1136 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1137 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1138 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1139 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1140 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1141 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1142 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1143 real(kind=
rp),
intent(in) :: dx(lx, lx)
1144 real(kind=
rp),
intent(in) :: dy(lx, lx)
1145 real(kind=
rp),
intent(in) :: dz(lx, lx)
1146 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1147 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1148 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1149 integer :: e, i, j, k, jj, kk
1150 real(kind=
rp) :: ur(lx, lx, lx, n)
1151 real(kind=
rp) :: us(lx, lx, lx, n)
1152 real(kind=
rp) :: ut(lx, lx, lx, n)
1153 real(kind=
rp) :: uur(lx, lx, lx, n)
1154 real(kind=
rp) :: uus(lx, lx, lx, n)
1155 real(kind=
rp) :: uut(lx, lx, lx, n)
1156 real(kind=
rp) :: wr, ws, wt
1159 do jj = 1, lx * lx * n
1162 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1175 ws = ws + dy(j,kk)*u(i,kk,k,e)
1190 wt = wt + dz(k,kk)*u(i,j,kk,e)
1198 do i = 1, n * lx * lx * lx
1199 uur(i,1,1,1) = h1(i,1,1,1) * &
1200 ( g11(i,1,1,1) * ur(i,1,1,1) &
1201 + g12(i,1,1,1) * us(i,1,1,1) &
1202 + g13(i,1,1,1) * ut(i,1,1,1))
1204 uus(i,1,1,1) = h1(i,1,1,1) * &
1205 ( g22(i,1,1,1) * us(i,1,1,1) &
1206 + g12(i,1,1,1) * ur(i,1,1,1) &
1207 + g23(i,1,1,1) * ut(i,1,1,1) )
1209 uut(i,1,1,1) = h1(i,1,1,1) * &
1210 ( g33(i,1,1,1) * ut(i,1,1,1) &
1211 + g13(i,1,1,1) * ur(i,1,1,1) &
1212 + g23(i,1,1,1) * us(i,1,1,1))
1216 do jj = 1, lx * lx * n
1219 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1232 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1234 w(i,j,k,e) = w(i,j,k,e) + ws
1247 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1249 w(i,j,k,e) = w(i,j,k,e) + wt
1259 h1, G11, G22, G33, G12, G13, G23, n)
1260 integer,
parameter :: lx = 6
1261 integer,
intent(in) :: n
1262 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1263 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1264 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1265 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1266 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1267 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1268 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1269 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1270 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1271 real(kind=
rp),
intent(in) :: dx(lx, lx)
1272 real(kind=
rp),
intent(in) :: dy(lx, lx)
1273 real(kind=
rp),
intent(in) :: dz(lx, lx)
1274 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1275 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1276 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1277 integer :: e, i, j, k, jj, kk
1278 real(kind=
rp) :: ur(lx, lx, lx, n)
1279 real(kind=
rp) :: us(lx, lx, lx, n)
1280 real(kind=
rp) :: ut(lx, lx, lx, n)
1281 real(kind=
rp) :: uur(lx, lx, lx, n)
1282 real(kind=
rp) :: uus(lx, lx, lx, n)
1283 real(kind=
rp) :: uut(lx, lx, lx, n)
1284 real(kind=
rp) :: wr, ws, wt
1287 do jj = 1, lx * lx * n
1290 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1303 ws = ws + dy(j,kk)*u(i,kk,k,e)
1318 wt = wt + dz(k,kk)*u(i,j,kk,e)
1326 do i = 1, n * lx * lx * lx
1327 uur(i,1,1,1) = h1(i,1,1,1) * &
1328 ( g11(i,1,1,1) * ur(i,1,1,1) &
1329 + g12(i,1,1,1) * us(i,1,1,1) &
1330 + g13(i,1,1,1) * ut(i,1,1,1))
1332 uus(i,1,1,1) = h1(i,1,1,1) * &
1333 ( g22(i,1,1,1) * us(i,1,1,1) &
1334 + g12(i,1,1,1) * ur(i,1,1,1) &
1335 + g23(i,1,1,1) * ut(i,1,1,1) )
1337 uut(i,1,1,1) = h1(i,1,1,1) * &
1338 ( g33(i,1,1,1) * ut(i,1,1,1) &
1339 + g13(i,1,1,1) * ur(i,1,1,1) &
1340 + g23(i,1,1,1) * us(i,1,1,1))
1344 do jj = 1, lx * lx * n
1347 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1360 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1362 w(i,j,k,e) = w(i,j,k,e) + ws
1375 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1377 w(i,j,k,e) = w(i,j,k,e) + wt
1387 h1, G11, G22, G33, G12, G13, G23, n)
1388 integer,
parameter :: lx = 5
1389 integer,
intent(in) :: n
1390 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1391 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1392 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1393 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1394 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1395 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1396 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1397 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1398 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1399 real(kind=
rp),
intent(in) :: dx(lx, lx)
1400 real(kind=
rp),
intent(in) :: dy(lx, lx)
1401 real(kind=
rp),
intent(in) :: dz(lx, lx)
1402 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1403 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1404 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1405 integer :: e, i, j, k, jj, kk
1406 real(kind=
rp) :: ur(lx, lx, lx, n)
1407 real(kind=
rp) :: us(lx, lx, lx, n)
1408 real(kind=
rp) :: ut(lx, lx, lx, n)
1409 real(kind=
rp) :: uur(lx, lx, lx, n)
1410 real(kind=
rp) :: uus(lx, lx, lx, n)
1411 real(kind=
rp) :: uut(lx, lx, lx, n)
1412 real(kind=
rp) :: wr, ws, wt
1415 do jj = 1, lx * lx * n
1418 wr = wr + dx(i,kk)*u(kk,jj,1,1)
1431 ws = ws + dy(j,kk)*u(i,kk,k,e)
1446 wt = wt + dz(k,kk)*u(i,j,kk,e)
1454 do i = 1, n * lx * lx * lx
1455 uur(i,1,1,1) = h1(i,1,1,1) * &
1456 ( g11(i,1,1,1) * ur(i,1,1,1) &
1457 + g12(i,1,1,1) * us(i,1,1,1) &
1458 + g13(i,1,1,1) * ut(i,1,1,1))
1460 uus(i,1,1,1) = h1(i,1,1,1) * &
1461 ( g22(i,1,1,1) * us(i,1,1,1) &
1462 + g12(i,1,1,1) * ur(i,1,1,1) &
1463 + g23(i,1,1,1) * ut(i,1,1,1) )
1465 uut(i,1,1,1) = h1(i,1,1,1) * &
1466 ( g33(i,1,1,1) * ut(i,1,1,1) &
1467 + g13(i,1,1,1) * ur(i,1,1,1) &
1468 + g23(i,1,1,1) * us(i,1,1,1))
1472 do jj = 1, lx * lx * n
1475 wr = wr + dxt(i,kk) * uur(kk,jj,1,1)
1488 ws = ws + dyt(j, kk)*uus(i,kk,k,e)
1490 w(i,j,k,e) = w(i,j,k,e) + ws
1503 wt = wt + dzt(k, kk)*uut(i,j,kk,e)
1505 w(i,j,k,e) = w(i,j,k,e) + wt
1515 h1, G11, G22, G33, G12, G13, G23, n)
1516 integer,
parameter :: lx = 4
1517 integer,
intent(in) :: n
1518 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1519 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1520 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1521 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1522 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1523 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1524 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1525 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1526 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1527 real(kind=
rp),
intent(in) :: dx(lx, lx)
1528 real(kind=
rp),
intent(in) :: dy(lx, lx)
1529 real(kind=
rp),
intent(in) :: dz(lx, lx)
1530 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1531 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1532 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1533 integer :: e, i, j, k, jj
1534 real(kind=
rp) :: ur(lx, lx, lx, n)
1535 real(kind=
rp) :: us(lx, lx, lx, n)
1536 real(kind=
rp) :: ut(lx, lx, lx, n)
1537 real(kind=
rp) :: uur(lx, lx, lx, n)
1538 real(kind=
rp) :: uus(lx, lx, lx, n)
1539 real(kind=
rp) :: uut(lx, lx, lx, n)
1542 do jj = 1, lx * lx * n
1543 ur(i,jj,1,1) = dx(i,1)*u(1,jj,1,1) &
1544 + dx(i,2)*u(2,jj,1,1) &
1545 + dx(i,3)*u(3,jj,1,1) &
1546 + dx(i,4)*u(4,jj,1,1)
1555 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1556 + dy(j,2) * u(i,2,k,e) &
1557 + dy(j,3) * u(i,3,k,e) &
1558 + dy(j,4) * u(i,4,k,e)
1570 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1571 + dz(k,2) * u(i,j,2,e) &
1572 + dz(k,3) * u(i,j,3,e) &
1573 + dz(k,4) * u(i,j,4,e)
1579 do i = 1, n * lx * lx * lx
1580 uur(i,1,1,1) = h1(i,1,1,1) * &
1581 ( g11(i,1,1,1) * ur(i,1,1,1) &
1582 + g12(i,1,1,1) * us(i,1,1,1) &
1583 + g13(i,1,1,1) * ut(i,1,1,1))
1585 uus(i,1,1,1) = h1(i,1,1,1) * &
1586 ( g22(i,1,1,1) * us(i,1,1,1) &
1587 + g12(i,1,1,1) * ur(i,1,1,1) &
1588 + g23(i,1,1,1) * ut(i,1,1,1) )
1590 uut(i,1,1,1) = h1(i,1,1,1) * &
1591 ( g33(i,1,1,1) * ut(i,1,1,1) &
1592 + g13(i,1,1,1) * ur(i,1,1,1) &
1593 + g23(i,1,1,1) * us(i,1,1,1))
1597 do jj = 1, lx * lx * n
1598 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1599 + dxt(i,2) * uur(2,jj,1,1) &
1600 + dxt(i,3) * uur(3,jj,1,1) &
1601 + dxt(i,4) * uur(4,jj,1,1)
1609 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1610 + dyt(j,2) * uus(i,2,k,e) &
1611 + dyt(j,3) * uus(i,3,k,e) &
1612 + dyt(j,4) * uus(i,4,k,e)
1622 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1623 + dzt(k,2) * uut(i,j,2,e) &
1624 + dzt(k,3) * uut(i,j,3,e) &
1625 + dzt(k,4) * uut(i,j,4,e)
1634 h1, G11, G22, G33, G12, G13, G23, n)
1635 integer,
parameter :: lx = 3
1636 integer,
intent(in) :: n
1637 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1638 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1639 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1640 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1641 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1642 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1643 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1644 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1645 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1646 real(kind=
rp),
intent(in) :: dx(lx, lx)
1647 real(kind=
rp),
intent(in) :: dy(lx, lx)
1648 real(kind=
rp),
intent(in) :: dz(lx, lx)
1649 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1650 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1651 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1652 integer :: e, i, j, k, jj
1653 real(kind=
rp) :: ur(lx, lx, lx, n)
1654 real(kind=
rp) :: us(lx, lx, lx, n)
1655 real(kind=
rp) :: ut(lx, lx, lx, n)
1656 real(kind=
rp) :: uur(lx, lx, lx, n)
1657 real(kind=
rp) :: uus(lx, lx, lx, n)
1658 real(kind=
rp) :: uut(lx, lx, lx, n)
1661 do jj = 1, lx * lx * n
1662 ur(i,jj,1,1) = dx(i,1)*u(1,jj,1,1) &
1663 + dx(i,2)*u(2,jj,1,1) &
1664 + dx(i,3)*u(3,jj,1,1)
1673 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1674 + dy(j,2) * u(i,2,k,e) &
1675 + dy(j,3) * u(i,3,k,e)
1687 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1688 + dz(k,2) * u(i,j,2,e) &
1689 + dz(k,3) * u(i,j,3,e)
1695 do i = 1, n * lx * lx * lx
1696 uur(i,1,1,1) = h1(i,1,1,1) * &
1697 ( g11(i,1,1,1) * ur(i,1,1,1) &
1698 + g12(i,1,1,1) * us(i,1,1,1) &
1699 + g13(i,1,1,1) * ut(i,1,1,1))
1701 uus(i,1,1,1) = h1(i,1,1,1) * &
1702 ( g22(i,1,1,1) * us(i,1,1,1) &
1703 + g12(i,1,1,1) * ur(i,1,1,1) &
1704 + g23(i,1,1,1) * ut(i,1,1,1) )
1706 uut(i,1,1,1) = h1(i,1,1,1) * &
1707 ( g33(i,1,1,1) * ut(i,1,1,1) &
1708 + g13(i,1,1,1) * ur(i,1,1,1) &
1709 + g23(i,1,1,1) * us(i,1,1,1))
1713 do jj = 1, lx * lx * n
1714 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1715 + dxt(i,2) * uur(2,jj,1,1) &
1716 + dxt(i,3) * uur(3,jj,1,1)
1724 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1725 + dyt(j,2) * uus(i,2,k,e) &
1726 + dyt(j,3) * uus(i,3,k,e)
1736 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1737 + dzt(k,2) * uut(i,j,2,e) &
1738 + dzt(k,3) * uut(i,j,3,e)
1747 h1, G11, G22, G33, G12, G13, G23, n)
1748 integer,
parameter :: lx = 2
1749 integer,
intent(in) :: n
1750 real(kind=
rp),
intent(inout) :: w(lx, lx, lx, n)
1751 real(kind=
rp),
intent(in) :: u(lx, lx, lx, n)
1752 real(kind=
rp),
intent(in) :: h1(lx, lx, lx, n)
1753 real(kind=
rp),
intent(in) :: g11(lx, lx, lx, n)
1754 real(kind=
rp),
intent(in) :: g22(lx, lx, lx, n)
1755 real(kind=
rp),
intent(in) :: g33(lx, lx, lx, n)
1756 real(kind=
rp),
intent(in) :: g12(lx, lx, lx, n)
1757 real(kind=
rp),
intent(in) :: g13(lx, lx, lx, n)
1758 real(kind=
rp),
intent(in) :: g23(lx, lx, lx, n)
1759 real(kind=
rp),
intent(in) :: dx(lx, lx)
1760 real(kind=
rp),
intent(in) :: dy(lx, lx)
1761 real(kind=
rp),
intent(in) :: dz(lx, lx)
1762 real(kind=
rp),
intent(in) :: dxt(lx, lx)
1763 real(kind=
rp),
intent(in) :: dyt(lx, lx)
1764 real(kind=
rp),
intent(in) :: dzt(lx, lx)
1765 integer :: e, i, j, k, jj
1766 real(kind=
rp) :: ur(lx, lx, lx, n)
1767 real(kind=
rp) :: us(lx, lx, lx, n)
1768 real(kind=
rp) :: ut(lx, lx, lx, n)
1769 real(kind=
rp) :: uur(lx, lx, lx, n)
1770 real(kind=
rp) :: uus(lx, lx, lx, n)
1771 real(kind=
rp) :: uut(lx, lx, lx, n)
1774 do jj = 1, lx * lx * n
1775 ur(i,jj,1,1) = dx(i,1) * u(1,jj,1,1) &
1776 + dx(i,2) * u(2,jj,1,1)
1784 us(i,j,k,e) = dy(j,1) * u(i,1,k,e) &
1785 + dy(j,2) * u(i,2,k,e)
1795 ut(i,j,k,e) = dz(k,1) * u(i,j,1,e) &
1796 + dz(k,2) * u(i,j,2,e)
1802 do i = 1, n * lx * lx * lx
1803 uur(i,1,1,1) = h1(i,1,1,1) * &
1804 ( g11(i,1,1,1) * ur(i,1,1,1) &
1805 + g12(i,1,1,1) * us(i,1,1,1) &
1806 + g13(i,1,1,1) * ut(i,1,1,1))
1808 uus(i,1,1,1) = h1(i,1,1,1) * &
1809 ( g22(i,1,1,1) * us(i,1,1,1) &
1810 + g12(i,1,1,1) * ur(i,1,1,1) &
1811 + g23(i,1,1,1) * ut(i,1,1,1) )
1813 uut(i,1,1,1) = h1(i,1,1,1) * &
1814 ( g33(i,1,1,1) * ut(i,1,1,1) &
1815 + g13(i,1,1,1) * ur(i,1,1,1) &
1816 + g23(i,1,1,1) * us(i,1,1,1))
1820 do jj = 1, lx * lx * n
1821 w(i,jj,1,1) = dxt(i,1) * uur(1,jj,1,1) &
1822 + dxt(i,2) * uur(2,jj,1,1)
1830 w(i,j,k,e) = w(i,j,k,e) + dyt(j,1) * uus(i,1,k,e) &
1831 + dyt(j,2) * uus(i,2,k,e)
1841 w(i,j,k,e) = w(i,j,k,e) + dzt(k,1) * uut(i,j,1,e) &
1842 + dzt(k,2) * uut(i,j,2,e)
subroutine sx_ax_helm_lx8(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine ax_helm_sx_compute(w, u, coef, msh, Xh)
subroutine sx_ax_helm_lx(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n, lx)
subroutine sx_ax_helm_lx13(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx6(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx14(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx10(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx3(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx11(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx7(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx12(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx5(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx4(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx9(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine sx_ax_helm_lx2(w, u, Dx, Dy, Dz, Dxt, Dyt, Dzt, h1, G11, G22, G33, G12, G13, G23, n)
subroutine, public addcol4(a, b, c, d, n)
Returns .
integer, parameter, public rp
Global precision used in computations.
Defines a function space.
Matrix-vector product for a Helmholtz problem.
Coefficients defined on a given (mesh, ) tuple. Arrays use indices (i,j,k,e): element e,...
The function space for the SEM solution fields.