1 subroutine r8herm3ev(xget,yget,zget,x,nx,y,ny,z,nz,
3 > f,inf2,inf3,ict,fval,ier)
18 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
19 INTEGER ny,nz,inf2,inf3,nx
29 real*8 f(0:7,inf2,inf3,nz)
90 real*8 xparam,yparam,zparam
104 call r8herm3xyz(xget,yget,zget,x,nx,y,ny,z,nz,ilinx,iliny,ilinz,
105 > i,j,k,xparam,yparam,zparam,hx,hxi,hy,hyi,hz,hzi,ier)
108 call r8herm3fcn(ict,1,1,
109 > fval,i,j,k,xparam,yparam,zparam,
110 > hx,hxi,hy,hyi,hz,hzi,
120 subroutine r8herm3xyz(xget,yget,zget,x,nx,y,ny,z,nz,
122 > i,j,k,xparam,yparam,zparam,
123 > hx,hxi,hy,hyi,hz,hzi,ier)
131 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
132 INTEGER nxm,nym,nzm,ii,jj,kk
135 real*8 zxget,zyget,zzget,zxtol,zytol,zztol
139 REAL*8 xget,yget,zget
140 real*8 x(nx),y(ny),z(nz)
180 if((xget.lt.x(1)).or.(xget.gt.x(nx)))
then
181 zxtol=4.0e-7_r8*max(abs(x(1)),abs(x(nx)))
182 if((xget.lt.x(1)-zxtol).or.(xget.gt.x(nx)+zxtol))
then
184 write(6,1001) xget,x(1),x(nx)
185 1001
format(
' ?herm3ev: xget=',1pe11.4,
' out of range ',
186 > 1pe11.4,
' to ',1pe11.4)
188 if((xget.lt.x(1)-0.5_r8*zxtol).or.
189 > (xget.gt.x(nx)+0.5_r8*zxtol))
190 >
write(6,1011) xget,x(1),x(nx)
191 1011
format(
' %herm3ev: xget=',1pe15.8,
' beyond range ',
192 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
193 if(xget.lt.x(1))
then
200 if((yget.lt.y(1)).or.(yget.gt.y(ny)))
then
201 zytol=4.0e-7_r8*max(abs(y(1)),abs(y(ny)))
202 if((yget.lt.y(1)-zytol).or.(yget.gt.y(ny)+zytol))
then
204 write(6,1002) yget,y(1),y(ny)
205 1002
format(
' ?herm3ev: yget=',1pe11.4,
' out of range ',
206 > 1pe11.4,
' to ',1pe11.4)
208 if((yget.lt.y(1)-0.5_r8*zytol).or.
209 > (yget.gt.y(ny)+0.5_r8*zytol))
210 >
write(6,1012) yget,y(1),y(ny)
211 1012
format(
' %herm3ev: yget=',1pe15.8,
' beyond range ',
212 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
213 if(yget.lt.y(1))
then
220 if((zget.lt.z(1)).or.(zget.gt.z(nz)))
then
221 zztol=4.0e-7_r8*max(abs(z(1)),abs(z(nz)))
222 if((zget.lt.z(1)-zztol).or.(zget.gt.z(nz)+zztol))
then
224 write(6,1003) zget,z(1),z(nz)
225 1003
format(
' ?herm3ev: zget=',1pe11.4,
' out of range ',
226 > 1pe11.4,
' to ',1pe11.4)
228 if((zget.lt.z(1)-0.5_r8*zztol).or.
229 > (zget.gt.z(nz)+0.5_r8*zztol))
230 >
write(6,1013) zget,z(1),z(nz)
231 1013
format(
' %herm3ev: zget=',1pe15.8,
' beyond range ',
232 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
233 if(zget.lt.z(1))
then
249 ii=1+nxm*(zxget-x(1))/(x(nx)-x(1))
251 if(zxget.lt.x(i))
then
253 else if(zxget.gt.x(i+1))
then
257 if((1.le.i).and.(i.lt.nxm))
then
258 if((x(i).le.zxget).and.(zxget.le.x(i+1)))
then
261 call r8zonfind(x,nx,zxget,i)
265 call r8zonfind(x,nx,zxget,i)
270 jj=1+nym*(zyget-y(1))/(y(ny)-y(1))
272 if(zyget.lt.y(j))
then
274 else if(zyget.gt.y(j+1))
then
278 if((1.le.j).and.(j.lt.nym))
then
279 if((y(j).le.zyget).and.(zyget.le.y(j+1)))
then
282 call r8zonfind(y,ny,zyget,j)
286 call r8zonfind(y,ny,zyget,j)
291 kk=1+nzm*(zzget-z(1))/(z(nz)-z(1))
293 if(zzget.lt.z(k))
then
295 else if(zzget.gt.z(k+1))
then
299 if((1.le.k).and.(k.lt.nzm))
then
300 if((z(k).le.zzget).and.(zzget.le.z(k+1)))
then
303 call r8zonfind(z,nz,zzget,k)
307 call r8zonfind(z,nz,zzget,k)
319 xparam=(zxget-x(i))*hxi
320 yparam=(zyget-y(j))*hyi
321 zparam=(zzget-z(k))*hzi
329 subroutine r8herm3fcn(ict,ivec,ivecd,
330 > fval,ii,jj,kk,xparam,yparam,zparam,
331 > hx,hxi,hy,hyi,hz,hzi,
337 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
338 INTEGER inf3,nz,inf2,i,j,k,iadr
341 REAL*8 xp,xpi,xp2,xpi2,ax,axbar,bx,bxbar,yp,ypi,yp2,ypi2,ay
342 REAL*8 aybar,by,bybar,zp,zpi,zp2,zpi2,az,azbar,bz,bzbar,axp
343 REAL*8 axbarp,bxp,bxbarp,ayp,aybarp,byp,bybarp,azp,azbarp,bzp
350 integer ii(ivec),jj(ivec),kk(ivec)
351 real*8 xparam(ivec),yparam(ivec),zparam(ivec)
354 real*8 hx(ivec),hy(ivec),hz(ivec)
355 real*8 hxi(ivec),hyi(ivec),hzi(ivec)
358 real*8 fin(0:7,inf2,inf3,nz)
404 ax=xp2*(3.0_r8-2.0_r8*xp)
415 ay=yp2*(3.0_r8-2.0_r8*yp)
426 az=zp2*(3.0_r8-2.0_r8*zp)
437 bxp=xp*(3.0_r8*xp-2.0_r8)
438 bxbarp=xpi*(3.0_r8*xpi-2.0_r8)
442 byp=yp*(3.0_r8*yp-2.0_r8)
443 bybarp=ypi*(3.0_r8*ypi-2.0_r8)
447 bzp=zp*(3.0_r8*zp-2.0_r8)
448 bzbarp=zpi*(3.0_r8*zpi-2.0_r8)
458 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
459 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
461 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
462 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
466 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
467 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
469 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
470 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
475 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
476 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
478 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
479 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
484 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
485 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
487 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
488 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
491 sum=sum+hx(v)*hy(v)*(
493 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
494 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
496 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
497 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
500 sum=sum+hx(v)*hz(v)*(
502 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
503 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
505 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
506 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
509 sum=sum+hy(v)*hz(v)*(
511 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
512 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
514 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
515 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
518 sum=sum+hx(v)*hy(v)*hz(v)*(
520 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
521 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
523 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
524 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
538 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
539 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
541 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
542 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
547 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
548 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
550 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
551 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
554 sum=sum+hxi(v)*hy(v)*(
556 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
557 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
559 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
560 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
563 sum=sum+hxi(v)*hz(v)*(
565 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
566 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
568 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
569 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
574 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
575 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
577 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
578 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
583 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
584 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
586 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
587 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
590 sum=sum+hxi(v)*hy(v)*hz(v)*(
592 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
593 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
595 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
596 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
599 sum=sum+hy(v)*hz(v)*(
601 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
602 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
604 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
605 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
619 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
620 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
622 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
623 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
626 sum=sum+hyi(v)*hx(v)*(
628 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
629 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
631 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
632 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
637 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
638 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
640 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
641 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
644 sum=sum+hyi(v)*hz(v)*(
646 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
647 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
649 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
650 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
655 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
656 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
658 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
659 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
662 sum=sum+hx(v)*hyi(v)*hz(v)*(
664 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
665 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
667 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
668 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
673 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
674 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
676 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
677 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
680 sum=sum+hx(v)*hz(v)*(
682 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
683 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
685 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
686 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
700 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
701 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
703 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
704 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
707 sum=sum+hzi(v)*hx(v)*(
709 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
710 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
712 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
713 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
716 sum=sum+hzi(v)*hy(v)*(
718 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
719 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
721 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
722 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
727 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
728 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
730 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
731 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
734 sum=sum+hzi(v)*hx(v)*hy(v)*(
736 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
737 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
739 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
740 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
745 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
746 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
748 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
749 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
754 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
755 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
757 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
758 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
761 sum=sum+hx(v)*hy(v)*(
763 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
764 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
766 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
767 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
781 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
782 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
784 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
785 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
790 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
791 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
793 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
794 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
799 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
800 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
802 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
803 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
806 sum=sum+hxi(v)*hyi(v)*hz(v)*(
808 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
809 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
811 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
812 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
817 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
818 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
820 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
821 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
824 sum=sum+hyi(v)*hz(v)*(
826 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
827 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
829 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
830 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
833 sum=sum+hxi(v)*hz(v)*(
835 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
836 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
838 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
839 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
844 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
845 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
847 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
848 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
862 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
863 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
865 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
866 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
871 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
872 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
874 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
875 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
878 sum=sum+hxi(v)*hy(v)*hzi(v)*(
880 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
881 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
883 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
884 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
889 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
890 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
892 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
893 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
896 sum=sum+hy(v)*hzi(v)*(
898 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
899 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
901 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
902 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
907 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
908 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
910 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
911 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
914 sum=sum+hxi(v)*hy(v)*(
916 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
917 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
919 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
920 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
925 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
926 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
928 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
929 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
943 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
944 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
946 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
947 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
950 sum=sum+hyi(v)*hzi(v)*hx(v)*(
952 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
953 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
955 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
956 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
961 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
962 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
964 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
965 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
970 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
971 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
973 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
974 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
977 sum=sum+hx(v)*hzi(v)*(
979 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
980 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
982 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
983 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
986 sum=sum+hx(v)*hyi(v)*(
988 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
989 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
991 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
992 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
997 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
998 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1000 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1001 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1006 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1007 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1009 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1010 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1016 if(ict(8).eq.1)
then
1022 sum=hxi(v)*hyi(v)*hzi(v)*(
1024 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1025 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1027 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1028 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1031 sum=sum+hyi(v)*hzi(v)*(
1033 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1034 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1036 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1037 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1040 sum=sum+hxi(v)*hzi(v)*(
1042 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1043 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1045 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1046 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1049 sum=sum+hxi(v)*hyi(v)*(
1051 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1052 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1054 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1055 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1060 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1061 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1063 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1064 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1069 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1070 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1072 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1073 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1078 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1079 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1081 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1082 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1087 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1088 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1090 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1091 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1106 subroutine r8herm3fcnx(ict,ivec,ivecd,
1107 > fval,ii,jj,kk,xparam,yparam,zparam,
1108 > hx,hxi,hy,hyi,hz,hzi,
1114 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
1115 INTEGER inf3,nz,inf2,j,k,i,iadr
1118 real*8 yp,ypi,yp2,ypi2,ay,aybar,by,bybar,zp,zpi,zp2,zpi2,az
1119 real*8 azbar,bz,bzbar,ayp,aybarp,byp,bybarp,azp,azbarp,bzp
1120 real*8 bzbarp,xp,xpi,xp2,xpi2,ax,axbar,bx,bxbar,axp,axbarp
1127 integer ii(ivec),jj,kk
1128 REAL*8 xparam(ivec),yparam,zparam
1131 real*8 hx(ivec),hy,hz
1132 real*8 hxi(ivec),hyi,hzi
1135 real*8 fin(0:7,inf2,inf3,nz)
1137 real*8 fval(ivecd,*)
1179 ay=yp2*(3.0_r8-2.0_r8*yp)
1190 az=zp2*(3.0_r8-2.0_r8*zp)
1199 byp=yp*(3.0_r8*yp-2.0_r8)
1200 bybarp=ypi*(3.0_r8*ypi-2.0_r8)
1204 bzp=zp*(3.0_r8*zp-2.0_r8)
1205 bzbarp=zpi*(3.0_r8*zpi-2.0_r8)
1216 ax=xp2*(3.0_r8-2.0_r8*xp)
1227 bxp=xp*(3.0_r8*xp-2.0_r8)
1228 bxbarp=xpi*(3.0_r8*xpi-2.0_r8)
1232 if(ict(1).eq.1)
then
1238 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1239 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1241 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1242 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1246 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1247 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1249 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1250 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1255 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1256 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1258 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1259 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1264 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1265 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1267 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1268 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1273 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1274 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1276 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1277 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1282 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1283 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1285 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1286 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1291 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1292 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1294 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1295 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1298 sum=sum+hx(v)*hy*hz*(
1300 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1301 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1303 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1304 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1310 if(ict(2).eq.1)
then
1318 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1319 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1321 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1322 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1327 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1328 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1330 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1331 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1336 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1337 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1339 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1340 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1345 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1346 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1348 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1349 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1354 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1355 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1357 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1358 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1363 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1364 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1366 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1367 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1370 sum=sum+hxi(v)*hy*hz*(
1372 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1373 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1375 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1376 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1381 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1382 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1384 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1385 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1391 if(ict(3).eq.1)
then
1399 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1400 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1402 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1403 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1408 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1409 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1411 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1412 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1417 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1418 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1420 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1421 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1426 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1427 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1429 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1430 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1435 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1436 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1438 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1439 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1442 sum=sum+hx(v)*hyi*hz*(
1444 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1445 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1447 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1448 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1453 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1454 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1456 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1457 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1462 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1463 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1465 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1466 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1472 if(ict(4).eq.1)
then
1480 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1481 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1483 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1484 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1489 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1490 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1492 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1493 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1498 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1499 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1501 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1502 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1507 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1508 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1510 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1511 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1514 sum=sum+hzi*hx(v)*hy*(
1516 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1517 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1519 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1520 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1525 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1526 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1528 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1529 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1534 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1535 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1537 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1538 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1543 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1544 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1546 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1547 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1553 if(ict(5).eq.1)
then
1561 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1562 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1564 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1565 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1570 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1571 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1573 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1574 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1579 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1580 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1582 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1583 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1586 sum=sum+hxi(v)*hyi*hz*(
1588 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1589 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1591 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1592 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1597 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1598 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1600 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1601 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1606 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1607 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1609 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1610 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1615 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1616 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1618 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1619 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1624 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1625 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1627 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1628 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1634 if(ict(6).eq.1)
then
1642 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1643 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1645 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1646 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1651 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1652 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1654 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1655 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1658 sum=sum+hxi(v)*hy*hzi*(
1660 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1661 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1663 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1664 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1669 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1670 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1672 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1673 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1678 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1679 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1681 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1682 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1687 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1688 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1690 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1691 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1696 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1697 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1699 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1700 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1705 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1706 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1708 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1709 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1715 if(ict(7).eq.1)
then
1723 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1724 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1726 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1727 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1730 sum=sum+hyi*hzi*hx(v)*(
1732 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1733 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1735 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1736 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1741 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1742 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1744 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1745 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1750 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1751 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1753 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1754 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1759 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1760 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1762 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1763 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1768 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1769 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1771 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1772 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1777 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1778 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1780 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1781 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1786 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1787 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1789 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1790 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1796 if(ict(8).eq.1)
then
1802 sum=hxi(v)*hyi*hzi*(
1804 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1805 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1807 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1808 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1813 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1814 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1816 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1817 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1820 sum=sum+hxi(v)*hzi*(
1822 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1823 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1825 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1826 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1829 sum=sum+hxi(v)*hyi*(
1831 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1832 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1834 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1835 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1840 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1841 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1843 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1844 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1849 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1850 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1852 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1853 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1858 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1859 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1861 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1862 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1867 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1868 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1870 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1871 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))