corrections to numerical and sccor analytical gradient
[unres.git] / source / unres / src_MD / intcartderiv.F
index c220540..e3ae39d 100644 (file)
@@ -149,6 +149,11 @@ c   Obtaining the gamma derivatives from cosine derivative
         endif                                                                                           
       enddo
 
+      do i=1,nres-1
+       do j=1,3
+        dc_norm2(j,i+nres)=-dc_norm(j,i+nres)
+       enddo
+      enddo
 Calculate derivative of Tauangle
 #ifdef PARINTDER
       do i=itau_start,itau_end
@@ -165,10 +170,10 @@ c the conventional case
         cost=dcos(theta(i))
         cost1=dcos(omicron(2,i-1))
         cosg=dcos(tauangle(1,i))
-        do j=1,3
-        dc_norm2(j,i-2+nres)=-dc_norm(j,i-2+nres)
+C        do j=1,3
+C        dc_norm2(j,i-2+nres)=-dc_norm(j,i-2+nres)
 cc       write(iout,*) dc_norm2(j,i-2+nres),"dcnorm"
-        enddo
+C        enddo
         scalp=scalar(dc_norm2(1,i-2+nres),dc_norm(1,i-1))
         fac0=1.0d0/(sint1*sint)
         fac1=cost*fac0
@@ -194,7 +199,7 @@ c    Obtaining the gamma derivatives from sine derivative
             dsintau(j,1,2,i)=
      &        -sing*(ctgt1*domicron(j,2,1,i-1)+ctgt*dtheta(j,1,i))
      &        -(fac0*vp2(j)+sing*dc_norm(j,i-2))*vbld_inv(i-1)
-c            write(iout,*) "dsintau", dsintau(j,1,2,i)
+c            write(iout,*) "dsintau", dsintau(j,1,1,i),dsintau(j,1,2,i)
             dtauangle(j,1,2,i)=cosg_inv*dsintau(j,1,2,i)
 c Bug fixed 3/24/05 (AL)
             dsintau(j,1,3,i)=-sing*ctgt*dtheta(j,2,i)
@@ -221,7 +226,9 @@ c         write (iout,*) "else",i
          enddo
         endif
 c        do k=1,3                 
-c        write(iout,*) "tu",i,k,(dtauangle(j,1,k,i),j=1,3)        
+c        write(iout,*) "tu",1,i,k,(dtauangle(j,1,k,i),j=1,3)        
+c        write(iout,*) "tu",2,i,k,(dtauangle(j,2,k,i),j=1,3)        
+c        write(iout,*) "tu",3,i,k,(dtauangle(j,3,k,i),j=1,3)        
 c        enddo                
       enddo
 CC Second case Ca...Ca...Ca...SC
@@ -313,10 +320,10 @@ c the conventional case
         cost=dcos(omicron(1,i))
         cost1=dcos(omicron(2,i-1))
         cosg=dcos(tauangle(3,i))
-        do j=1,3
-        dc_norm2(j,i-2+nres)=-dc_norm(j,i-2+nres)
+C        do j=1,3
+C        dc_norm2(j,i-2+nres)=-dc_norm(j,i-2+nres)
 c        dc_norm2(j,i-1+nres)=-dc_norm(j,i-1+nres)
-        enddo
+C        enddo
         scalp=scalar(dc_norm2(1,i-2+nres),dc_norm(1,i-1+nres))
         fac0=1.0d0/(sint1*sint)
         fac1=cost*fac0