small chanegs in nanotube + working wham for lipid
[unres.git] / source / wham / src-M / energy_p_new.F
index 378eaae..a36e177 100644 (file)
@@ -2398,8 +2398,12 @@ C          fac_shield(j)=0.6
           fac_shield(j)=1.0
           eesij=(el1+el2)
           ees=ees+eesij
+     &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           endif
           evdw1=evdw1+evdwij*sss
+     &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
 c             write (iout,'(a6,2i5,0pf7.3,2i5,2e11.3)') 
 c     &'evdw1',i,j,evdwij
 c     &,iteli,itelj,aaa,evdw1
@@ -2414,7 +2418,11 @@ C Calculate contributions to the Cartesian gradient.
 C
 #ifdef SPLITELE
           facvdw=-6*rrmij*(ev1+evdwij)*sss
+     &    *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           facel=-3*rrmij*(el1+eesij)
+     &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           fac1=fac
           erij(1)=xj*rmij
           erij(2)=yj*rmij
@@ -2498,8 +2506,13 @@ C          ggg(2)=facvdw*yj
 C          ggg(3)=facvdw*zj
           if (sss.gt.0.0) then
           ggg(1)=facvdw*xj+sssgrad*rmij*evdwij*xj
+     &    *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
           ggg(2)=facvdw*yj+sssgrad*rmij*evdwij*yj
+     &    *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           ggg(3)=facvdw*zj+sssgrad*rmij*evdwij*zj
+     &    *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           else
           ggg(1)=0.0
           ggg(2)=0.0
@@ -2510,6 +2523,11 @@ C          ggg(3)=facvdw*zj
             gvdwpp(k,i)=gvdwpp(k,i)+ghalf
             gvdwpp(k,j)=gvdwpp(k,j)+ghalf
           enddo
+           gvdwpp(3,j)=gvdwpp(3,j)+
+     &     sss*ssgradlipj*evdwij/2.0d0*lipscale**2
+           gvdwpp(3,i)=gvdwpp(3,i)+
+     &     sss*ssgradlipi*evdwij/2.0d0*lipscale**2
+
 *
 * Loop over residues i+1 thru j-1.
 *
@@ -2520,6 +2538,8 @@ C          ggg(3)=facvdw*zj
           enddo
 #else
           facvdw=(ev1+evdwij)*sss
+     &    *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           facel=el1+eesij  
           fac1=fac
           fac=-3*rrmij*(facvdw+facvdw+facel)
@@ -2564,6 +2584,8 @@ cd   &          (dcosg(k),k=1,3)
           do k=1,3
             ggg(k)=ecosb*dcosb(k)+ecosg*dcosg(k) 
      &      *fac_shield(i)**2*fac_shield(j)**2
+     &      *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           enddo
           do k=1,3
             ghalf=0.5D0*ggg(k)
@@ -2571,11 +2593,15 @@ cd   &          (dcosg(k),k=1,3)
      &               +(ecosa*(dc_norm(k,j)-cosa*dc_norm(k,i))
      &               + ecosb*(erij(k)-cosb*dc_norm(k,i)))*vbld_inv(i+1)
      &           *fac_shield(i)**2*fac_shield(j)**2
+     &      *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
 
             gelc(k,j)=gelc(k,j)+ghalf
      &               +(ecosa*(dc_norm(k,i)-cosa*dc_norm(k,j))
      &               + ecosg*(erij(k)-cosg*dc_norm(k,j)))*vbld_inv(j+1)
      &           *fac_shield(i)**2*fac_shield(j)**2
+     &      *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0)
+
           enddo
           do k=i+1,j-1
             do l=1,3
@@ -2831,9 +2857,11 @@ C           fac_shield(j)=0.6
           eel_loc_ij=eel_loc_ij
      &    *fac_shield(i)*fac_shield(j)
      &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0)
-c          write (iout,*) 'i',i,' j',j,' eel_loc_ij',eel_loc_ij
-C          write (iout,'(a6,2i5,0pf7.3)')
-C     &            'eelloc',i,j,eel_loc_ij
+C          write (iout,'(a3,i4,a3,i4,a8,4f8.3)') 
+C     & 'i',i,' j',j,' eel_loc_ij',eel_loc_ij,sslipi,
+C     & sslipj,lipscale
+C          write (iout,'(a6,2i5,0pf7.3,2f7.3)')
+C     &            'eelloc',i,j,eel_loc_ij,a22*muij(1),a23*muij(2)
 C          write(iout,*) 'muije=',i,j,muij(1),muij(2),muij(3),muij(4)
 c          write (iout,*) a22,muij(1),a23,muij(2),a32,muij(3)
 C          eel_loc=eel_loc+eel_loc_ij
@@ -3272,7 +3300,9 @@ C        fac_shield(j)=0.6
         eello_t3=0.5d0*(pizda(1,1)+pizda(2,2))
      &  *fac_shield(i)*fac_shield(j)
      &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0)
-
+          write (iout,'(a3,i4,a3,i4,a8,4f8.3)') 
+     & 'i',i,' j',j,' eturn3',eello_t3,sslipi,
+     & sslipj,lipscale
 cd        write (2,*) 'i,',i,' j',j,'eello_turn3',
 cd     &    0.5d0*(pizda(1,1)+pizda(2,2)),
 cd     &    ' eello_turn3_num',4*eello_turn3_num
@@ -3431,6 +3461,8 @@ C        fac_shield(j)=0.6
 
         eello_turn4=eello_turn4-(s1+s2+s3)
      &  *fac_shield(i)*fac_shield(j)
+     &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0)
+
         eello_t4=-(s1+s2+s3)
      &  *fac_shield(i)*fac_shield(j)