1c 2c $Id$ 3c 4 5 SUBROUTINE ewald_excl(iii,rij,rijsq,jbeg,jend,ewald3) 6 7 implicit none 8 9 include 'p_array.inc' 10 include 'p_const.inc' 11 include 'cm_atom.inc' 12 include 'cm_ewld.inc' 13 include 'cm_cuto.inc' 14 include 'cm_elst.inc' 15 16 integer iii,i,j,k 17 integer jbeg,jend,iatm,jatm 18 19 real*8 rij,drij,arij,rijsq 20 real*8 ewald3,erfxc,force 21 22 dimension rij(mxnlist,3),rijsq(mxnlist) 23 24 ewald3=0.0 25 k=0 26 iatm=atmtype(iii) 27 28 do i=jbeg,jend 29 30 j=elist(i) 31 jatm=atmtype(j) 32 k=k+1 33 34 if(rijsq(k).lt.rcutsq)then 35 36 drij=sqrt(rijsq(k)) 37 arij=alpha*drij 38 39 ewald3=ewald3-convfct1*typchge(iatm)*typchge(jatm) 40 $ *(1-erfxc(arij))/drij 41 42 force=-convfct1*typchge(iatm)*typchge(jatm)* 43 $ ((1-erfxc(arij))-2*arij/sqrpi*exp(-arij*arij)) 44 $ /(drij*rijsq(k)) 45 46 fff(iii,1)=fff(iii,1)+convfct2*force*rij(k,1) 47 fff(iii,2)=fff(iii,2)+convfct2*force*rij(k,2) 48 fff(iii,3)=fff(iii,3)+convfct2*force*rij(k,3) 49 50 fff(j,1)=fff(j,1)-convfct2*force*rij(k,1) 51 fff(j,2)=fff(j,2)-convfct2*force*rij(k,2) 52 fff(j,3)=fff(j,3)-convfct2*force*rij(k,3) 53 54 endif 55 56 enddo 57 58 return 59 60 END 61