34 2 SPBUF ,ITAB ,PLD ,BUFMAT ,BUFGEO ,
35 3 PARTSAV ,FSAV ,DT2T ,IPARG ,NPC ,
36 4 KXSP ,IXSP ,NOD2SP ,NELTST ,ITYPTST ,
37 5 IPART ,IPARTSP ,ISPCOND ,XFRAME ,ISPSYM ,
38 6 XSPSYM ,VSPSYM ,WA ,WASIGSM ,WACOMP ,
39 7 WSMCOMP ,WASPACT ,WAR ,STAB ,WFEXT)
47#include "implicit_f.inc"
52#include "vect01_c.inc"
63 INTEGER KXSP(NISP,*),(KVOISPH,*),NOD2SP(*),
64 . IPART(LIPART1,*) ,IPARTSP(*), NPC(*), IPARG(NPARG,*),
65 . NELTST,ITYPTST,ITAB(*) ,ISPCOND(NISPCOND,*),
66 . ISPSYM(NSPCOND,*), WASPACT(*)
68 . X(3,*) ,V(3,*) ,MS(*) ,
69 . PM(NPROPM,*), GEO(NPROPG,*),
70 . bufmat(*) ,bufgeo(*) ,pld(*) ,fsav(nthvki,*) ,
71 . spbuf(nspbuf,*) ,partsav(npsav,*) ,dt2t ,
72 . xframe(nxframe,*) ,xspsym(3,*) ,vspsym(3,*), wa(kwasph,*),
73 . wasigsm(6,*), wacomp(16,*), wsmcomp(6,*), war(10,*), stab(7,*)
74 DOUBLE PRECISION,
INTENT(INOUT) ::
78 INTEGER N,INOD,JNOD,J,NVOIS,M,IPRT,IPROP,IMAT,I,
79 . NVOISS,IC,NC,IS,SM,JS,ISLIDE,SS,NSTAB,NN,KS,NR,
80 . K,JPERM(KVOISPH),IERROR
82 . xi,yi,zi,di,rhoi,xj,yj,zj,dj,rhoj,
83 . sxx,sxy,sxz,syy,syz,szz,
84 . txx,txy,txz,tyy,tyz,tzz,
85 . ax,ay,az,bx,by,bz,fx,fy,fz,
88 . vxi,vyi,vzi,vxj,vyj,vzj,muij,muij2,pij,ssp,
90 . ox,oy,oz,ux,uy,uz,vx,vy,vz,wx,wy,wz,
91 . uxx,uxy,uxz,uyx,uyy,uyz,uzx,uzy,uzz,
92 . vxx,vxy,vxz,vyy,vyz,vzz,
93 . divvi,divvj,rotvi,rotvj,fi,fj,
95 . stif,pj,stij,sfac,dldt,l,cij,dzeta,wnorm,
97 . drhoi,drhoj,ssp2i,ssp2j,stii,drhoidr,drhojdr,
98 . alphai,alphaxi,alphayi,alphazi,
99 . betaxi,betayi,betazi,
100 . betaxxi,betayxi,betazxi,
101 . betaxyi,betayyi,betazyi,
102 . betaxzi,betayzi,betazzi,
103 . alphaj,alphaxj,alphayj,alphazj,
104 . betaxj,betayj,betazj,
105 . betaxxj,betayxj,betazxj,
106 . betaxyj,betayyj,betazyj,
107 . betaxzj,betayzj,betazzj,
108 . betax,wgrdx,wgrdy,wgrdz,wgrd(3),
109 . voli,volj,dxij,nxij,
110 . cx,cy,cz,dx,dy,dz,tx,ty,tz,wfextt, ww, wi, wr, zstab
115 IF(kxsp(2,n)<=0.AND.isph2sol==0)
GOTO 10
116 IF(kxsp(2,n)==0.AND.isph2sol/=0)
GOTO 10
141 fi =divvi/
max(em20,divvi+rotvi)
169 IF(kxsp(2,n)<=0.AND.kxsp(2,m)<=0)cycle
186 CALL weight1(xi,yi,zi,xj,yj,zj,dij,wght,wgrad)
190 wgrad(1)=wgrdx*alphai+wght*alphaxi
191 . +wgrdx*betaxxi+wgrdy*betaxyi+wgrdz*betaxzi
192 wgrad(2)=wgrdy*alphai+wght*alphayi
193 . +wgrdx*betayxi+wgrdy*betayyi+wgrdz*betayzi
194 wgrad(3)=wgrdz*alphai+wght*alphazi
195 . +wgrdx*betazxi+wgrdy*betazyi+wgrdz*betazzi
226 wgrd(1)=-wgrdx*alphaj+wght*alphaxj
227 . -wgrdx*betaxxj-wgrdy*betaxyj-wgrdz*betaxzj
228 wgrd(2)=-wgrdy*alphaj+wght*alphayj
229 . -wgrdx*betayxj-wgrdy*betayyj-wgrdz*betayzj
230 wgrd(3)=-wgrdz*alphaj+wght*alphazj
231 . -wgrdx*betazxj-wgrdy*betazyj-wgrdz*betazzj
245 ax=sxx*wgrad(1)+sxy*wgrad(2)+sxz*wgrad(3)
246 ay=sxy*wgrad(1)+syy*wgrad(2)+syz*wgrad(3)
247 az=sxz*wgrad(1)+syz*wgrad(2)+szz*wgrad(3)
251 bx=-(txx*wgrd(1)+txy*wgrd(2)+txz*wgrd(3))
252 by=-(txy*wgrd(1)+tyy*wgrd(2)+tyz*wgrd(3))
253 bz=-(txz*wgrd(1)+tyz*wgrd(2)+tzz*wgrd(3))
254 mm=spbuf(12,n)*spbuf(12,m)
256 vi =spbuf(12,n)/
max(em20,rhoi)
257 vj =spbuf(12,m)/
max(em20,rhoj)
264 IF(stab(7,n)/=zero.AND.stab(7,m)/=zero)
THEN
265 cx=stab(1,n)*wgrad(1)+stab(4,n)*wgrad(2)+stab(6,n)*wgrad(3)
266 cy=stab(4,n)*wgrad(1)+stab(2,n)*wgrad(2)+stab(5,n)*wgrad(3)
267 cz=stab(6,n)*wgrad(1)+stab(5,n)*wgrad(2)+stab(3,n)*wgrad(3)
270 dz=-(stab(6,m)*wgrd(1)+stab(5,m)*wgrd(2)+stab
273 wr=half*(stab(7,n)+stab
281 wfextt=wfextt+(tx*v(1,inod)+ty*v(2,inod)+tz*v(3,inod))*dt1
285 dxij=(vxi-vxj)*(xi-xj)
291 muij=dij*dxij/(nxij+em02*dij*dij)
294 fj =divvj/
max(em20,divvj+rotvj)
296 muij=muij*(fi+fj)*half
297 ssp=(wa(8,n)+wa(8,m))*half
299 pij =(qa*muij2-qb*ssp*muij)*two/
max(em20,rhoi+rhoj)
303 wgrdx=(wgrad(1)-wgrd(1))*half
304 wgrdy=(wgrad(2)-wgrd(2))*half
305 wgrdz=(wgrad(3)-wgrd(3))*half
310 IF((nodadt/=0).OR.(i7kglo/=0))
THEN
315 dldt=
max(em20,dldt/
max(em20,l))
317 volj=spbuf(12,m)/
max(em20,rhoj)
319 . * (wgrad(1)*wgrad(1)+wgrad(2)*wgrad(2)+wgrad(3)*wgrad(3))
320 ssp2i=wa(9,n)*wa(9,n)
321 stii = volj*spbuf(12,n)*ssp2i*drhoidr
323 voli =spbuf(12,n)/
max(em20,rhoi)
325 . * (wgrd(1)*wgrd(1)+wgrd(2)*wgrd(2)+wgrd(3)*wgrd(3))
326 ssp2j=wa(9,m)*wa(9,m)
327 stij = voli*spbuf(12,m)*ssp2j*drhojdr
332 wnorm=sqrt(wgrdx*wgrdx+wgrdy*wgrdy
333 cij =mm*abs(pij)*wnorm/dldt
334 dzeta=cij/
max(em20,sqrt(two*stij*spbuf(12,n)))
335 sfac =sqrt(1.+dzeta*dzeta)-dzeta
336 stij =stij/
max(em20,sfac*sfac)
337 wa(7,n)=wa(7,n)+stij*(one+wi)
343 IF(kxsp(2,n)<=0.AND.xsphr(13,nn)<=0)cycle
359 CALL weight1(xi,yi,zi,xj,yj,zj,dij,wght,wgrad)
363 wgrad(1)=wgrdx*alphai+wght*alphaxi
364 . +wgrdx*betaxxi+wgrdy*betaxyi+wgrdz*betaxzi
365 wgrad(2)=wgrdy*alphai+wght*alphayi
366 . +wgrdx*betayxi+wgrdy*betayyi+wgrdz*betayzi
367 wgrad(3)=wgrdz*alphai+wght*alphazi
368 . +wgrdx*betazxi+wgrdy*betazyi+wgrdz*betazzi
373! . (betaxxi*(xi-xj)+betayxi*(yi-yj)+betazxi*(zi-zj)+betaxi))
386 alphaxj=wacompr( 5,nn)
387 alphayj=wacompr( 6,nn)
388 alphazj=wacompr( 7,nn)
389 betaxxj=wacompr( 8,nn)
390 betayxj=wacompr( 9,nn)
391 betazxj=wacompr(10,nn)
392 betaxyj=wacompr(11,nn)
393 betayyj=wacompr(12,nn)
394 betazyj=wacompr(13,nn)
395 betaxzj=wacompr(14,nn)
396 betayzj=wacompr(15,nn)
397 betazzj=wacompr(16,nn)
399 wgrd(1)=-wgrdx*alphaj+wght*alphaxj
400 . -wgrdx*betaxxj-wgrdy*betaxyj-wgrdz*betaxzj
401 wgrd(2)=-wgrdy*alphaj+wght*alphayj
402 . -wgrdx*betayxj-wgrdy*betayyj-wgrdz*betayzj
403 wgrd(3)=-wgrdz*alphaj+wght*alphazj
404 . -wgrdx*betazxj-wgrdy*betazyj-wgrdz*betazzj
417 ax=sxx*wgrad(1)+sxy*wgrad(2)+sxz*wgrad(3)
418 ay=sxy*wgrad(1)+syy*wgrad(2)+syz*wgrad(3)
419 az=sxz*wgrad(1)+syz*wgrad(2)+szz*wgrad(3)
423 bx=-(txx*wgrd(1)+txy*wgrd(2)+txz*wgrd(3))
424 by=-(txy*wgrd(1)+tyy*wgrd(2)+tyz*wgrd(3))
425 bz=-(txz*wgrd(1)+tyz*wgrd(2)+tzz*wgrd(3))
426 mm=spbuf(12,n)*xsphr(8,nn)
428 vi =spbuf(12,n)/
max(em20,rhoi)
429 vj =xsphr(8,nn)/
max(em20,rhoj)
436 IF(stab(7,n)/=zero.AND.stab(7,numsph+nn)/=zero)
THEN
437 cx=stab(1,n)*wgrad(1)+stab(4,n)*wgrad(2)+stab(6,n)*wgrad(3)
438 cy=stab(4,n)*wgrad(1)+stab(2,n)*wgrad(2)+stab(5,n)*wgrad(3)
439 cz=stab(6,n)*wgrad(1)+stab(5,n)*wgrad(2)+stab(3,n)*wgrad(3)
441 dx=-(stab(1,nr)*wgrd(1)+stab(4,nr)*wgrd(2)+stab(6,nr)*wgrd(3))
442 dy=-(stab(4,nr)*wgrd(1)+stab(2,nr)*wgrd(2)+stab(5,nr)*wgrd(3))
443 dz=-(stab(6,nr)*wgrd(1)+stab(5,nr)*wgrd(2)+stab(3,nr)*wgrd(3))
446 wr=half*(stab(7,n)+stab(7,numsph+nn))
454 wfextt=wfextt+(tx*v(1,inod)+ty*v(2,inod)+tz*v(3,inod))*dt1
458 dxij=(vxi-vxj)*(xi-xj)
464 muij=dij*dxij/(nxij+em02*dij*dij)
468 fj =divvj/
max(em20,divvj+rotvj)
470 muij=muij*(fi+fj)*half
472 ssp=(wa(8,n)+war(7,nn))*half
474 pij =(qa*muij2-qb*ssp*muij)*two/
max(em20,rhoi+rhoj)
478 wgrdx=(wgrad(1)-wgrd(1))*half
479 wgrdy=(wgrad(2)-wgrd(2))*half
480 wgrdz=(wgrad(3)-wgrd(3))*half
484 IF((nodadt/=0).OR.(i7kglo/=0))
THEN
489 dldt=
max(em20,dldt/
max(em20,l))
491 volj=xsphr(8,nn)/
max(em20,rhoj)
493 . * (wgrad(1)*wgrad(1)+wgrad(2)*wgrad(2)+wgrad(3)*wgrad(3))
494 ssp2i=wa(9,n)*wa(9,n)
495 stii = volj*spbuf(12,n)*ssp2i*drhoidr
497 voli =spbuf(12,n)/
max(em20,rhoi)
499 . * (wgrd(1)*wgrd(1)+wgrd(2)*wgrd(2)+wgrd(3)*wgrd(3))
501 ssp2j=war(8,nn)*war(8,nn)
502 stij = voli*xsphr(8,nn)*ssp2j*drhojdr
507 wnorm=sqrt(wgrdx*wgrdx+wgrdy*wgrdy+wgrdz*wgrdz)
508 cij =mm*abs(pij)*wnorm/dldt
509 dzeta=cij/
max(em20,sqrt(two*stij*spbuf(12,n)))
510 sfac =sqrt(1.+dzeta*dzeta)-dzeta
511 stij =stij/
max(em20,sfac*sfac)
512 wa(7,n)=wa(7,n)+stij*(one+wi)
525 . half*(fvx*(vxi-vxj)+fvy*(vyi-vyj)+fvz*(vzi-vzj)))
526 spbuf(11,n)=spbuf(11,n)+wvis
530 DO 200 j=kxsp(5,n)+1,kxsp(5,n)+nvoiss
536 IF(kxsp(2,n)<=0.AND.kxsp(2,sm)<=0)cycle
557 CALL weight1(xi,yi,zi,xj,yj,zj,dij,wght,wgrad)
561 wgrad(1)=wgrdx*alphai+wght*alphaxi
562 . +wgrdx*betaxxi+wgrdy*betaxyi+wgrdz*betaxzi
563 wgrad(2)=wgrdy*alphai+wght*alphayi
564 . +wgrdx*betayxi+wgrdy*betayyi+wgrdz*betayzi
565 wgrad(3)=wgrdz*alphai+wght*alphazi
566 . +wgrdx*betazxi+wgrdy*betazyi+wgrdz*betazzi
590 alphaxj=wsmcomp( 4,js)
591 alphayj=wsmcomp( 5,js)
592 alphazj=wsmcomp( 6,js)
593 betaxxj=wacomp( 8,sm)
594 betayxj=wacomp( 9,sm)
595 betazxj=wacomp(10,sm)
596 betaxyj=wacomp(11,sm)
597 betayyj=wacomp(12,sm)
598 betazyj=wacomp(13,sm)
599 betaxzj=wacomp(14,sm)
600 betayzj=wacomp(15,sm)
601 betazzj=wacomp(16,sm)
602 wgrd(1)=-wgrdx*alphaj+wght*alphaxj
603 . -wgrdx*betaxxj-wgrdy*betaxyj-wgrdz*betaxzj
604 wgrd(2)=-wgrdy*alphaj+wght*alphayj
605 . -wgrdx*betayxj-wgrdy*betayyj-wgrdz*betayzj
606 wgrd(3)=-wgrdz*alphaj+wght*alphazj
607 . -wgrdx*betazxj-wgrdy*betazyj-wgrdz*betazzj
618! . (betaxzj*(xj-xi)+betayzj*(yj-yi)+betazzj*(zj-zi)+betazj))
619 ax=sxx*wgrad(1)+sxy*wgrad(2)+sxz*wgrad(3)
620 ay=sxy*wgrad(1)+syy*wgrad(2)+syz*wgrad(3)
621 az=sxz*wgrad(1)+syz*wgrad(2)+szz*wgrad(3)
622 bx=-(txx*wgrd(1)+txy*wgrd(2)+txz*wgrd(3))
623 by=-(txy*wgrd(1)+tyy*wgrd(2)+tyz*wgrd(3))
624 bz=-(txz*wgrd(1)+tyz*wgrd(2)+tzz*wgrd(3))
625 mm=spbuf(12,n)*spbuf(12,sm)
627 vi =spbuf(12,n)/
max(em20,rhoi)
628 vj =spbuf(12,sm)/
max(em20,rhoj)
634 IF(stab(7,n)/=zero.AND.stab(7,sm)/=zero)
THEN
635 cx=stab(1,n)*wgrad(1)+stab(4,n)*wgrad(2)+stab(6,n)*wgrad(3)
636 cy=stab(4,n)*wgrad(1)+stab(2,n)*wgrad(2)+stab(5,n)*wgrad(3)
637 cz=stab(6,n)*wgrad(1)+stab(5,n)*wgrad(2)+stab(3,n)*wgrad(3)
639 dx=-(stab(1,ks)*wgrd(1)+stab(4,ks)*wgrd(2)+stab(6,ks)*wgrd(3))
640 dy=-(stab(4,ks)*wgrd(1)+stab(2,ks)*wgrd(2)+stab(5,ks)*wgrd(3))
641 dz=-(stab(6,ks)*wgrd(1)+stab(5,ks)*wgrd(2)+stab(3,ks)*wgrd(3))
644 wr=half*(stab(7,n)+stab(7,sm))
652 wfextt=wfextt+(tx*v(1,inod)+ty*v(2,inod)+tz*v(3,inod))*dt1
656 dxij=(vxi-vxj)*(xi-xj)
662 muij=dij*dxij/(nxij+em02*dij*dij)
665 fj=divvj/
max(em20,divvj+rotvj)
667 muij=muij*(fi+fj)*half
668 ssp=(wa(8,n)+wa(8,sm))*half
670 pij =(qa*muij2-qb*ssp*muij)*two/
max(em20,rhoi+rhoj)
673 wgrdx=(wgrad(1)-wgrd(1))*half
674 wgrdy=(wgrad(2)-wgrd(2))*half
675 wgrdz=(wgrad(3)-wgrd(3))*half
679 IF((nodadt/=0).OR.(i7kglo/=0))
THEN
683 dldt=
max(em20,dldt/
max(em20,l))
685 volj=spbuf(12,sm)/
max(em20,rhoj)
687 . * (wgrad(1)*wgrad(1)+wgrad(2)*wgrad(2)+wgrad(3)*wgrad(3))
688 ssp2i=wa(9,n)*wa(9,n)
689 stii = volj*spbuf(12,n)*ssp2i*drhoidr
691 voli =spbuf(12,n)/
max(em20,rhoi)
693 . * (wgrd(1)*wgrd(1)+wgrd(2)*wgrd(2)+wgrd(3)*wgrd(3))
694 ssp2j=wa(9,sm)*wa(9,sm)
695 stij = voli*spbuf(12,sm)*ssp2j*drhojdr
700 wnorm=sqrt(wgrdx*wgrdx+wgrdy*wgrdy+wgrdz*wgrdz)
701 cij =mm*abs(pij)*wnorm/dldt
702 dzeta=cij/
max(em20,sqrt(two*stij*spbuf(12,n)))
703 sfac =sqrt(one +dzeta*dzeta)-dzeta
704 stij =stij/
max(em20,sfac*sfac)
705 wa(7,n)=wa(7,n)+stij*(one+wi)
716 . half*(fvx*(vxi-vxj)+fvy*(vyi-vyj)+fvz*(vzi-vzj)))
717 spbuf(11,n)=spbuf(11,n)+wvis
722 IF(kxsp(2,n)<=0.AND.xsphr(13,sm)<=0)cycle
723 nc=mod(-js,nspcond+1)
741 CALL weight1(xi,yi,zi,xj,yj,zj,dij,wght,wgrad)
745 wgrad(1)=wgrdx*alphai+wght*alphaxi
746 . +wgrdx*betaxxi+wgrdy*betaxyi+wgrdz*betaxzi
747 wgrad(2)=wgrdy*alphai+wght*alphayi
748 . +wgrdx*betayxi+wgrdy*betayyi+wgrdz*betayzi
749 wgrad(3)=wgrdz*alphai+wght*alphazi
750 . +wgrdx*betazxi+wgrdy*betazyi+wgrdz*betazzi
774 alphaxj=wsmcomp( 4,js)
775 alphayj=wsmcomp( 5,js)
776 alphazj=wsmcomp( 6,js)
777 betaxxj=wacompr( 8,sm)
778 betayxj=wacompr( 9,sm)
779 betazxj=wacompr(10,sm)
780 betaxyj=wacompr(11,sm)
781 betayyj=wacompr(12,sm)
782 betazyj=wacompr(13,sm)
783 betaxzj=wacompr(14,sm)
784 betayzj=wacompr(15,sm)
785 betazzj=wacompr(16,sm)
787 wgrd(1)=-wgrdx*alphaj+wght*alphaxj
788 . -wgrdx*betaxxj-wgrdy*betaxyj-wgrdz*betaxzj
789 wgrd(2)=-wgrdy*alphaj+wght*alphayj
790 . -wgrdx*betayxj-wgrdy*betayyj-wgrdz*betayzj
791 wgrd(3)=-wgrdz*alphaj+wght*alphazj
792 . -wgrdx*betazxj-wgrdy*betazyj-wgrdz*betazzj
804 ax=sxx*wgrad(1)+sxy*wgrad(2)+sxz*wgrad(3)
805 ay=sxy*wgrad(1)+syy*wgrad(2)+syz*wgrad(3)
806 az=sxz*wgrad(1)+syz*wgrad(2)+szz*wgrad(3)
807 bx=-(txx*wgrd(1)+txy*wgrd(2)+txz*wgrd(3))
808 by=-(txy*wgrd(1)+tyy*wgrd(2)+tyz*wgrd(3))
809 bz=-(txz*wgrd(1)+tyz*wgrd(2)+tzz*wgrd(3))
810 mm=spbuf(12,n)*xsphr(8,sm)
812 vi =spbuf(12,n)/
max(em20,rhoi)
813 vj =xsphr(8,sm)/
max(em20,rhoj)
819 IF(stab(7,n)/=zero.AND.stab(7,numsph+sm)/=zero)
THEN
820 cx=stab(1,n)*wgrad(1)+stab(4,n)*wgrad
821 cy=stab(4,n)*wgrad(1)+stab(2,n)*wgrad(2)+stab
822 cz=stab(6,n)*wgrad(1)+stab(5,n)*wgrad(2)+stab(3,n)*wgrad(3)
824 dx=-(stab(1,ks)*wgrd(1)+stab(4,ks)*wgrd(2)+stab(6,ks)*wgrd(3))
825 dy=-(stab(4,ks)*wgrd(1)+stab(2,ks)*wgrd(2)+stab(5,ks)*wgrd(3))
826 dz=-(stab(6,ks)*wgrd(1)+stab(5,ks)*wgrd(2)+stab(3,ks)*wgrd(3))
829 wr=half*(stab(7,n)+stab(7,numsph+sm))
837 wfextt=wfextt+(tx*v(1,inod)+ty*v(2,inod)+tz*v(3,inod))*dt1
841 dxij=(vxi-vxj)*(xi-xj)
847 muij=dij*dxij/(nxij+em02*dij*dij)
851 fj=divvj/
max(em20,divvj+rotvj)
853 muij=muij*(fi+fj)*half
855 ssp=(wa(8,n)+war(7,sm))*half
857 pij =(qa*muij2-qb*ssp*muij)*two/
max(em20,rhoi+rhoj)
860 wgrdx=(wgrad(1)-wgrd(1))*half
861 wgrdy=(wgrad(2)-wgrd(2))*half
862 wgrdz=(wgrad(3)-wgrd(3))*half
866 IF((nodadt/=0).OR.(i7kglo/=0))
THEN
870 dldt=
max(em20,dldt/
max(em20,l))
872 volj=xsphr(8,sm)/
max(em20,rhoj)
874 . * (wgrad(1)*wgrad(1)+wgrad(2)*wgrad(2)+wgrad(3)*wgrad(3))
875 ssp2i=wa(9,n)*wa(9,n)
876 stii = volj*spbuf(12,n)*ssp2i*drhoidr
878 voli =spbuf(12,n)/
max(em20,rhoi)
880 . * (wgrd(1)*wgrd(1)+wgrd(2)*wgrd(2)+wgrd(3)*wgrd(3))
882 ssp2j=war(8,sm)*war(8,sm)
883 stij = voli*xsphr(8,sm)*ssp2j*drhojdr
888 wnorm=sqrt(wgrdx*wgrdx+wgrdy*wgrdy+wgrdz*wgrdz)
889 cij =mm*abs(pij)*wnorm/dldt
890 dzeta=cij/
max(em20,sqrt(two*stij*spbuf(12,n)))
891 sfac =sqrt(one +dzeta*dzeta)-dzeta
892 stij =stij/
max(em20,sfac*sfac)
893 wa(7,n)=wa(7,n)+stij*(one+wi)
904 . half*(fvx*(vxi-vxj)+fvy*(vyi-vyj)+fvz*(vzi-vzj)))
905 spbuf(11,n)=spbuf(11,n)+wvis
912#include "lockoff.inc"