1 subroutine herm3ev(xget,yget,zget,x,nx,y,ny,z,nz,
3 > f,inf2,inf3,ict,fval,ier)
23 real f(0:7,inf2,inf3,nz)
84 real xparam,yparam,zparam
98 call herm3xyz(xget,yget,zget,x,nx,y,ny,z,nz,ilinx,iliny,ilinz,
99 > i,j,k,xparam,yparam,zparam,hx,hxi,hy,hyi,hz,hzi,ier)
102 call herm3fcn(ict,1,1,
103 > fval,i,j,k,xparam,yparam,zparam,
104 > hx,hxi,hy,hyi,hz,hzi,
114 subroutine herm3xyz(xget,yget,zget,x,nx,y,ny,z,nz,
116 > i,j,k,xparam,yparam,zparam,
117 > hx,hxi,hy,hyi,hz,hzi,ier)
125 real x(nx),y(ny),z(nz)
165 if((xget.lt.x(1)).or.(xget.gt.x(nx)))
then
166 zxtol=4.0e-7*max(abs(x(1)),abs(x(nx)))
167 if((xget.lt.x(1)-zxtol).or.(xget.gt.x(nx)+zxtol))
then
169 write(6,1001) xget,x(1),x(nx)
170 1001
format(
' ?herm3ev: xget=',1pe11.4,
' out of range ',
171 > 1pe11.4,
' to ',1pe11.4)
173 if((xget.lt.x(1)-0.5*zxtol).or.
174 > (xget.gt.x(nx)+0.5*zxtol))
175 >
write(6,1011) xget,x(1),x(nx)
176 1011
format(
' %herm3ev: xget=',1pe15.8,
' beyond range ',
177 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
178 if(xget.lt.x(1))
then
185 if((yget.lt.y(1)).or.(yget.gt.y(ny)))
then
186 zytol=4.0e-7*max(abs(y(1)),abs(y(ny)))
187 if((yget.lt.y(1)-zytol).or.(yget.gt.y(ny)+zytol))
then
189 write(6,1002) yget,y(1),y(ny)
190 1002
format(
' ?herm3ev: yget=',1pe11.4,
' out of range ',
191 > 1pe11.4,
' to ',1pe11.4)
193 if((yget.lt.y(1)-0.5*zytol).or.
194 > (yget.gt.y(ny)+0.5*zytol))
195 >
write(6,1012) yget,y(1),y(ny)
196 1012
format(
' %herm3ev: yget=',1pe15.8,
' beyond range ',
197 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
198 if(yget.lt.y(1))
then
205 if((zget.lt.z(1)).or.(zget.gt.z(nz)))
then
206 zztol=4.0e-7*max(abs(z(1)),abs(z(nz)))
207 if((zget.lt.z(1)-zztol).or.(zget.gt.z(nz)+zztol))
then
209 write(6,1003) zget,z(1),z(nz)
210 1003
format(
' ?herm3ev: zget=',1pe11.4,
' out of range ',
211 > 1pe11.4,
' to ',1pe11.4)
213 if((zget.lt.z(1)-0.5*zztol).or.
214 > (zget.gt.z(nz)+0.5*zztol))
215 >
write(6,1013) zget,z(1),z(nz)
216 1013
format(
' %herm3ev: zget=',1pe15.8,
' beyond range ',
217 > 1pe15.8,
' to ',1pe15.8,
' (fixup applied)')
218 if(zget.lt.z(1))
then
234 ii=1+nxm*(zxget-x(1))/(x(nx)-x(1))
236 if(zxget.lt.x(i))
then
238 else if(zxget.gt.x(i+1))
then
242 if((1.le.i).and.(i.lt.nxm))
then
243 if((x(i).le.zxget).and.(zxget.le.x(i+1)))
then
246 call zonfind(x,nx,zxget,i)
250 call zonfind(x,nx,zxget,i)
255 jj=1+nym*(zyget-y(1))/(y(ny)-y(1))
257 if(zyget.lt.y(j))
then
259 else if(zyget.gt.y(j+1))
then
263 if((1.le.j).and.(j.lt.nym))
then
264 if((y(j).le.zyget).and.(zyget.le.y(j+1)))
then
267 call zonfind(y,ny,zyget,j)
271 call zonfind(y,ny,zyget,j)
276 kk=1+nzm*(zzget-z(1))/(z(nz)-z(1))
278 if(zzget.lt.z(k))
then
280 else if(zzget.gt.z(k+1))
then
284 if((1.le.k).and.(k.lt.nzm))
then
285 if((z(k).le.zzget).and.(zzget.le.z(k+1)))
then
288 call zonfind(z,nz,zzget,k)
292 call zonfind(z,nz,zzget,k)
304 xparam=(zxget-x(i))*hxi
305 yparam=(zyget-y(j))*hyi
306 zparam=(zzget-z(k))*hzi
314 subroutine herm3fcn(ict,ivec,ivecd,
315 > fval,ii,jj,kk,xparam,yparam,zparam,
316 > hx,hxi,hy,hyi,hz,hzi,
323 integer ii(ivec),jj(ivec),kk(ivec)
324 real xparam(ivec),yparam(ivec),zparam(ivec)
327 real hx(ivec),hy(ivec),hz(ivec)
328 real hxi(ivec),hyi(ivec),hzi(ivec)
331 real fin(0:7,inf2,inf3,nz)
411 bxbarp=xpi*(3.0*xpi-2.0)
416 bybarp=ypi*(3.0*ypi-2.0)
421 bzbarp=zpi*(3.0*zpi-2.0)
431 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
432 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
434 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
435 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
439 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
440 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
442 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
443 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
448 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
449 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
451 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
452 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
457 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
458 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
460 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
461 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
464 sum=sum+hx(v)*hy(v)*(
466 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
467 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
469 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
470 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
473 sum=sum+hx(v)*hz(v)*(
475 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
476 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
478 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
479 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
482 sum=sum+hy(v)*hz(v)*(
484 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
485 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
487 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
488 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
491 sum=sum+hx(v)*hy(v)*hz(v)*(
493 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
494 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
496 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
497 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
511 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
512 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
514 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
515 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
520 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
521 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
523 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
524 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
527 sum=sum+hxi(v)*hy(v)*(
529 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
530 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
532 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
533 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
536 sum=sum+hxi(v)*hz(v)*(
538 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
539 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
541 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
542 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
547 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
548 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
550 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
551 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
556 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
557 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
559 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
560 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
563 sum=sum+hxi(v)*hy(v)*hz(v)*(
565 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
566 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
568 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
569 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
572 sum=sum+hy(v)*hz(v)*(
574 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
575 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
577 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
578 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
592 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
593 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
595 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
596 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
599 sum=sum+hyi(v)*hx(v)*(
601 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
602 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
604 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
605 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
610 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
611 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
613 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
614 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
617 sum=sum+hyi(v)*hz(v)*(
619 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
620 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
622 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
623 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
628 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
629 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
631 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
632 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
635 sum=sum+hx(v)*hyi(v)*hz(v)*(
637 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
638 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
640 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
641 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
646 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
647 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
649 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
650 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
653 sum=sum+hx(v)*hz(v)*(
655 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
656 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
658 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
659 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
673 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
674 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
676 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
677 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
680 sum=sum+hzi(v)*hx(v)*(
682 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
683 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
685 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
686 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
689 sum=sum+hzi(v)*hy(v)*(
691 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
692 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
694 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
695 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
700 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
701 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
703 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
704 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
707 sum=sum+hzi(v)*hx(v)*hy(v)*(
709 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
710 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
712 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
713 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
718 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
719 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
721 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
722 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
727 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
728 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
730 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
731 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
734 sum=sum+hx(v)*hy(v)*(
736 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
737 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
739 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
740 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
754 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
755 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
757 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
758 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
763 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
764 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
766 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
767 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
772 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
773 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
775 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
776 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
779 sum=sum+hxi(v)*hyi(v)*hz(v)*(
781 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
782 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
784 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
785 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
790 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
791 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
793 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
794 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
797 sum=sum+hyi(v)*hz(v)*(
799 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
800 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
802 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
803 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
806 sum=sum+hxi(v)*hz(v)*(
808 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
809 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
811 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
812 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
817 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
818 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
820 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
821 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
835 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
836 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
838 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
839 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
844 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
845 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
847 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
848 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
851 sum=sum+hxi(v)*hy(v)*hzi(v)*(
853 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
854 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
856 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
857 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
862 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
863 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
865 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
866 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
869 sum=sum+hy(v)*hzi(v)*(
871 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
872 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
874 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
875 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
880 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
881 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
883 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
884 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
887 sum=sum+hxi(v)*hy(v)*(
889 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
890 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
892 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
893 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
898 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
899 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
901 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
902 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
916 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
917 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
919 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
920 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
923 sum=sum+hyi(v)*hzi(v)*hx(v)*(
925 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
926 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
928 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
929 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
934 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
935 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
937 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
938 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
943 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
944 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
946 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
947 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
950 sum=sum+hx(v)*hzi(v)*(
952 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
953 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
955 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
956 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
959 sum=sum+hx(v)*hyi(v)*(
961 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
962 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
964 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
965 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
970 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
971 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
973 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
974 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
979 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
980 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
982 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
983 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
995 sum=hxi(v)*hyi(v)*hzi(v)*(
997 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
998 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1000 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1001 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1004 sum=sum+hyi(v)*hzi(v)*(
1006 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1007 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1009 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1010 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1013 sum=sum+hxi(v)*hzi(v)*(
1015 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1016 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1018 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1019 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1022 sum=sum+hxi(v)*hyi(v)*(
1024 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1025 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1027 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1028 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1033 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1034 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1036 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1037 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1042 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1043 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1045 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1046 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1051 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1052 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1054 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1055 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1060 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1061 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1063 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1064 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1079 subroutine herm3fcnx(ict,ivec,ivecd,
1080 > fval,ii,jj,kk,xparam,yparam,zparam,
1081 > hx,hxi,hy,hyi,hz,hzi,
1088 integer ii(ivec),jj,kk
1089 real xparam(ivec),yparam,zparam
1093 real hxi(ivec),hyi,hzi
1096 real fin(0:7,inf2,inf3,nz)
1161 bybarp=ypi*(3.0*ypi-2.0)
1166 bzbarp=zpi*(3.0*zpi-2.0)
1189 bxbarp=xpi*(3.0*xpi-2.0)
1193 if(ict(1).eq.1)
then
1199 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1200 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1202 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1203 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1207 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1208 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1210 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1211 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1216 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1217 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1219 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1220 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1225 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1226 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1228 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1229 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1234 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1235 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1237 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1238 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1243 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1244 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1246 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1247 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1252 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1253 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1255 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1256 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1259 sum=sum+hx(v)*hy*hz*(
1261 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1262 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1264 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1265 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1271 if(ict(2).eq.1)
then
1279 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1280 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1282 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1283 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1288 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1289 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1291 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1292 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1297 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1298 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1300 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1301 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1306 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1307 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1309 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1310 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1315 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1316 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1318 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1319 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1324 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1325 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1327 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1328 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1331 sum=sum+hxi(v)*hy*hz*(
1333 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1334 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1336 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1337 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1342 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1343 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1345 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1346 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1352 if(ict(3).eq.1)
then
1360 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1361 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1363 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1364 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1369 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1370 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1372 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1373 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1378 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1379 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1381 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1382 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1387 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1388 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1390 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1391 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1396 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1397 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1399 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1400 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1403 sum=sum+hx(v)*hyi*hz*(
1405 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1406 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1408 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1409 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1414 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1415 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1417 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1418 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1423 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1424 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1426 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1427 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1433 if(ict(4).eq.1)
then
1441 > axbar*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1442 > ax*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1444 > axbar*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1445 > ax*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1450 > bxbar*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1451 > bx*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1453 > bxbar*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1454 > bx*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1459 > axbar*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1460 > ax*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1462 > axbar*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1463 > ax*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1468 > axbar*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1469 > ax*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1471 > axbar*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1472 > ax*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1475 sum=sum+hzi*hx(v)*hy*(
1477 > bxbar*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1478 > bx*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1480 > bxbar*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1481 > bx*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1486 > bxbar*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1487 > bx*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1489 > bxbar*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1490 > bx*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1495 > axbar*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1496 > ax*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1498 > axbar*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1499 > ax*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1504 > bxbar*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1505 > bx*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1507 > bxbar*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1508 > bx*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1514 if(ict(5).eq.1)
then
1522 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1523 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1525 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1526 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1531 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1532 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1534 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1535 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1540 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1541 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1543 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1544 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1547 sum=sum+hxi(v)*hyi*hz*(
1549 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1550 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1552 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1553 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1558 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1559 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1561 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1562 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1567 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1568 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1570 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1571 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1576 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1577 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1579 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1580 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1585 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1586 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1588 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1589 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1595 if(ict(6).eq.1)
then
1603 > axbarp*(aybar*fin(0,i,j,k) +ay*fin(0,i,j+1,k))+
1604 > axp*(aybar*fin(0,i+1,j,k)+ay*fin(0,i+1,j+1,k)))
1606 > axbarp*(aybar*fin(0,i,j,k+1) +ay*fin(0,i,j+1,k+1))+
1607 > axp*(aybar*fin(0,i+1,j,k+1)+ay*fin(0,i+1,j+1,k+1)))
1612 > bxbarp*(aybar*fin(1,i,j,k) +ay*fin(1,i,j+1,k))+
1613 > bxp*(aybar*fin(1,i+1,j,k)+ay*fin(1,i+1,j+1,k)))
1615 > bxbarp*(aybar*fin(1,i,j,k+1) +ay*fin(1,i,j+1,k+1))+
1616 > bxp*(aybar*fin(1,i+1,j,k+1)+ay*fin(1,i+1,j+1,k+1)))
1619 sum=sum+hxi(v)*hy*hzi*(
1621 > axbarp*(bybar*fin(2,i,j,k) +by*fin(2,i,j+1,k))+
1622 > axp*(bybar*fin(2,i+1,j,k)+by*fin(2,i+1,j+1,k)))
1624 > axbarp*(bybar*fin(2,i,j,k+1) +by*fin(2,i,j+1,k+1))+
1625 > axp*(bybar*fin(2,i+1,j,k+1)+by*fin(2,i+1,j+1,k+1)))
1630 > axbarp*(aybar*fin(3,i,j,k) +ay*fin(3,i,j+1,k))+
1631 > axp*(aybar*fin(3,i+1,j,k)+ay*fin(3,i+1,j+1,k)))
1633 > axbarp*(aybar*fin(3,i,j,k+1) +ay*fin(3,i,j+1,k+1))+
1634 > axp*(aybar*fin(3,i+1,j,k+1)+ay*fin(3,i+1,j+1,k+1)))
1639 > bxbarp*(bybar*fin(4,i,j,k) +by*fin(4,i,j+1,k))+
1640 > bxp*(bybar*fin(4,i+1,j,k)+by*fin(4,i+1,j+1,k)))
1642 > bxbarp*(bybar*fin(4,i,j,k+1) +by*fin(4,i,j+1,k+1))+
1643 > bxp*(bybar*fin(4,i+1,j,k+1)+by*fin(4,i+1,j+1,k+1)))
1648 > bxbarp*(aybar*fin(5,i,j,k) +ay*fin(5,i,j+1,k))+
1649 > bxp*(aybar*fin(5,i+1,j,k)+ay*fin(5,i+1,j+1,k)))
1651 > bxbarp*(aybar*fin(5,i,j,k+1) +ay*fin(5,i,j+1,k+1))+
1652 > bxp*(aybar*fin(5,i+1,j,k+1)+ay*fin(5,i+1,j+1,k+1)))
1657 > axbarp*(bybar*fin(6,i,j,k) +by*fin(6,i,j+1,k))+
1658 > axp*(bybar*fin(6,i+1,j,k)+by*fin(6,i+1,j+1,k)))
1660 > axbarp*(bybar*fin(6,i,j,k+1) +by*fin(6,i,j+1,k+1))+
1661 > axp*(bybar*fin(6,i+1,j,k+1)+by*fin(6,i+1,j+1,k+1)))
1666 > bxbarp*(bybar*fin(7,i,j,k) +by*fin(7,i,j+1,k))+
1667 > bxp*(bybar*fin(7,i+1,j,k)+by*fin(7,i+1,j+1,k)))
1669 > bxbarp*(bybar*fin(7,i,j,k+1) +by*fin(7,i,j+1,k+1))+
1670 > bxp*(bybar*fin(7,i+1,j,k+1)+by*fin(7,i+1,j+1,k+1)))
1676 if(ict(7).eq.1)
then
1684 > axbar*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1685 > ax*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1687 > axbar*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1688 > ax*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1691 sum=sum+hyi*hzi*hx(v)*(
1693 > bxbar*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1694 > bx*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1696 > bxbar*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1697 > bx*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1702 > axbar*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1703 > ax*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1705 > axbar*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1706 > ax*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1711 > axbar*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1712 > ax*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1714 > axbar*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1715 > ax*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1720 > bxbar*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1721 > bx*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1723 > bxbar*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1724 > bx*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1729 > bxbar*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1730 > bx*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1732 > bxbar*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1733 > bx*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1738 > axbar*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1739 > ax*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1741 > axbar*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1742 > ax*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1747 > bxbar*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1748 > bx*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1750 > bxbar*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1751 > bx*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))
1757 if(ict(8).eq.1)
then
1763 sum=hxi(v)*hyi*hzi*(
1765 > axbarp*(aybarp*fin(0,i,j,k) +ayp*fin(0,i,j+1,k))+
1766 > axp*(aybarp*fin(0,i+1,j,k)+ayp*fin(0,i+1,j+1,k)))
1768 > axbarp*(aybarp*fin(0,i,j,k+1) +ayp*fin(0,i,j+1,k+1))+
1769 > axp*(aybarp*fin(0,i+1,j,k+1)+ayp*fin(0,i+1,j+1,k+1)))
1774 > bxbarp*(aybarp*fin(1,i,j,k) +ayp*fin(1,i,j+1,k))+
1775 > bxp*(aybarp*fin(1,i+1,j,k)+ayp*fin(1,i+1,j+1,k)))
1777 > bxbarp*(aybarp*fin(1,i,j,k+1) +ayp*fin(1,i,j+1,k+1))+
1778 > bxp*(aybarp*fin(1,i+1,j,k+1)+ayp*fin(1,i+1,j+1,k+1)))
1781 sum=sum+hxi(v)*hzi*(
1783 > axbarp*(bybarp*fin(2,i,j,k) +byp*fin(2,i,j+1,k))+
1784 > axp*(bybarp*fin(2,i+1,j,k)+byp*fin(2,i+1,j+1,k)))
1786 > axbarp*(bybarp*fin(2,i,j,k+1) +byp*fin(2,i,j+1,k+1))+
1787 > axp*(bybarp*fin(2,i+1,j,k+1)+byp*fin(2,i+1,j+1,k+1)))
1790 sum=sum+hxi(v)*hyi*(
1792 > axbarp*(aybarp*fin(3,i,j,k) +ayp*fin(3,i,j+1,k))+
1793 > axp*(aybarp*fin(3,i+1,j,k)+ayp*fin(3,i+1,j+1,k)))
1795 > axbarp*(aybarp*fin(3,i,j,k+1) +ayp*fin(3,i,j+1,k+1))+
1796 > axp*(aybarp*fin(3,i+1,j,k+1)+ayp*fin(3,i+1,j+1,k+1)))
1801 > bxbarp*(bybarp*fin(4,i,j,k) +byp*fin(4,i,j+1,k))+
1802 > bxp*(bybarp*fin(4,i+1,j,k)+byp*fin(4,i+1,j+1,k)))
1804 > bxbarp*(bybarp*fin(4,i,j,k+1) +byp*fin(4,i,j+1,k+1))+
1805 > bxp*(bybarp*fin(4,i+1,j,k+1)+byp*fin(4,i+1,j+1,k+1)))
1810 > bxbarp*(aybarp*fin(5,i,j,k) +ayp*fin(5,i,j+1,k))+
1811 > bxp*(aybarp*fin(5,i+1,j,k)+ayp*fin(5,i+1,j+1,k)))
1813 > bxbarp*(aybarp*fin(5,i,j,k+1) +ayp*fin(5,i,j+1,k+1))+
1814 > bxp*(aybarp*fin(5,i+1,j,k+1)+ayp*fin(5,i+1,j+1,k+1)))
1819 > axbarp*(bybarp*fin(6,i,j,k) +byp*fin(6,i,j+1,k))+
1820 > axp*(bybarp*fin(6,i+1,j,k)+byp*fin(6,i+1,j+1,k)))
1822 > axbarp*(bybarp*fin(6,i,j,k+1) +byp*fin(6,i,j+1,k+1))+
1823 > axp*(bybarp*fin(6,i+1,j,k+1)+byp*fin(6,i+1,j+1,k+1)))
1828 > bxbarp*(bybarp*fin(7,i,j,k) +byp*fin(7,i,j+1,k))+
1829 > bxp*(bybarp*fin(7,i+1,j,k)+byp*fin(7,i+1,j+1,k)))
1831 > bxbarp*(bybarp*fin(7,i,j,k+1) +byp*fin(7,i,j+1,k+1))+
1832 > bxp*(bybarp*fin(7,i+1,j,k+1)+byp*fin(7,i+1,j+1,k+1)))