cccccccccccccccccccccccccccccccccc subroutine get_diff12(aarray,barray,diff) implicit real*8 (a-h,o-z) include 'DIMENSIONS' include 'COMMON.CSA' include 'COMMON.BANK' include 'COMMON.CHAIN' include 'COMMON.GEO' include 'COMMON.INTERACT' include 'COMMON.VAR' dimension aarray(mxang,maxres,mxch), & barray(mxang,maxres,mxch) real x1(maxres),y1(maxres),z1(maxres) integer n_1(maxres),L1 real x2(maxres),y2(maxres),z2(maxres) integer n_2(maxres),L2 real TM,Rcomm integer Lcomm IF(tm_score) THEN do k=1,numch do j=2,nres-1 theta(j+1)=barray(1,j,k) phi(j+2)=barray(2,j,k) alph(j)=barray(3,j,k) omeg(j)=barray(4,j,k) enddo enddo call chainbuild L1=0 do i=nnt,nct L1=L1+1 n_1(L1)=L1 x1(L1)=c(1,i) y1(L1)=c(2,i) z1(L1)=c(3,i) enddo do k=1,numch do j=2,nres-1 theta(j+1)=aarray(1,j,k) phi(j+2)=aarray(2,j,k) alph(j)=aarray(3,j,k) omeg(j)=aarray(4,j,k) enddo enddo call chainbuild L2=0 do i=nnt,nct L2=L2+1 n_2(L2)=L2 x2(L2)=c(1,i) y2(L2)=c(2,i) z2(L2)=c(3,i) enddo call TMscore(L1,x1,y1,z1,n_1,L2,x2,y2,z2,n_2,TM,Rcomm,Lcomm) diff=1.0d0-TM cd write(*,*)'TMscore=',TM,diff cd write(*,*)'Number of residues in common=',Lcomm cd write(*,*)'RMSD of the common residues=',Rcomm ELSE diff=0.d0 do k=1,numch do j=2,nres-1 c do i=1,4 c do i=1,2 do i=1,ndiff dif=rad2deg*dabs(aarray(i,j,k)-barray(i,j,k)) if(dif.gt.180.) dif=360.-dif if (dif.gt.diffcut) diff=diff+dif enddo enddo enddo ENDIF return end ccccccccccccccccccccccccccccccccccccccccccccccccc