enddo
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
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
cost=dcos(omicron(1,i))
cost1=dcos(theta(i-1))
cosg=dcos(tauangle(2,i))
-c do j=1,3
-c dc_norm2(j,i-1+nres)=-dc_norm(j,i-1+nres)
-c enddo
+C do j=1,3
+C dc_norm2(j,i-1+nres)=-dc_norm(j,i-1+nres)
+C enddo
scalp=scalar(dc_norm(1,i-3),dc_norm(1,i-1+nres))
fac0=1.0d0/(sint1*sint)
fac1=cost*fac0
call vecpr(dc_norm2(1,i-1+nres),dc_norm(1,i-2),vp1)
call vecpr(dc_norm(1,i-3),dc_norm(1,i-1+nres),vp2)
call vecpr(dc_norm(1,i-3),dc_norm(1,i-2),vp3)
+C print *,"chuj"
do j=1,3
ctgt=cost/sint
ctgt1=cost1/sint1
cosg_inv=1.0d0/cosg
dsintau(j,2,1,i)=-sing*ctgt1*dtheta(j,1,i-1)
& +(fac0*vp1(j)-sing*dc_norm(j,i-3))*vbld_inv(i-2)
-c write(iout,*) i,j,dsintau(j,2,1,i),sing*ctgt1*dtheta(j,1,i-1),
-c &fac0*vp1(j),sing*dc_norm(j,i-3),vbld_inv(i-2),"dsintau(2,1)"
+
+C write(12,*) i,j,dc_norm2(1,i-1+nres),dc_norm(1,i-2)
+
dtauangle(j,2,1,i)=cosg_inv*dsintau(j,2,1,i)
+
dsintau(j,2,2,i)=
& -sing*(ctgt1*dtheta(j,2,i-1)+ctgt*domicron(j,1,1,i))
& -(fac0*vp2(j)+sing*dc_norm(j,i-2))*vbld_inv(i-1)
-c write(iout,*) "sprawdzenie",i,j,sing*ctgt1*dtheta(j,2,i-1),
-c & sing*ctgt*domicron(j,1,2,i),
-c & (fac0*vp2(j)+sing*dc_norm(j,i-2))*vbld_inv(i-1)
+
dtauangle(j,2,2,i)=cosg_inv*dsintau(j,2,2,i)
-c Bug fixed 3/24/05 (AL)
+
dsintau(j,2,3,i)=-sing*ctgt*domicron(j,1,2,i)
& +(fac0*vp3(j)-sing*dc_norm(j,i-1+nres))*vbld_inv(i-1+nres)
+
c & +(fac0*vp3(j)-sing*dc_norm(j,i-1))*vbld_inv(i-1)
dtauangle(j,2,3,i)=cosg_inv*dsintau(j,2,3,i)
+
+
+
enddo
c Obtaining the gamma derivatives from cosine derivative
else
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 dc_norm2(j,i-1+nres)=-dc_norm(j,i-1+nres)
- enddo
+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)
+C enddo
scalp=scalar(dc_norm2(1,i-2+nres),dc_norm(1,i-1+nres))
fac0=1.0d0/(sint1*sint)
fac1=cost*fac0
& *vbld_inv(i-1+nres)
c & +(fac0*vp3(j)-sing*dc_norm(j,i-1))*vbld_inv(i-1)
dtauangle(j,3,3,i)=cosg_inv*dsintau(j,3,3,i)
+
+
enddo
c Obtaining the gamma derivatives from cosine derivative
else
vbld(i+1)=dist(i,i+1)
vbld_inv(i+1)=1.0d0/vbld(i+1)
if (i.gt.1) theta(i+1)=alpha(i-1,i,i+1)
- if (i.gt.2) then
- if (i.le.nres) phi(i+1)=beta(i-2,i-1,i,i+1)
- if ((itype(i).ne.10).and.(itype(i-1).ne.10)) then
- tauangle(3,i+1)=beta(i+nres-1,i-1,i,i+nres)
- endif
- if (itype(i-1).ne.10) then
- tauangle(1,i+1)=beta(i-1+nres,i-1,i,i+1)
- omicron(1,i)=alpha(i-2,i-1,i-1+nres)
- omicron(2,i)=alpha(i-1+nres,i-1,i)
- endif
- if (itype(i).ne.10) then
- tauangle(2,i+1)=beta(i-2,i-1,i,i+nres)
- endif
- endif
+ if (i.gt.2) phi(i+1)=beta(i-2,i-1,i,i+1)
enddo
c if (unres_pdb) then
c if (itype(1).eq.21) then