constr_homol corrections in wham and cluster_wham to match unres energy
[unres.git] / source / cluster / wham / src / readrtns.F
index 037eb1f..ac18e17 100644 (file)
@@ -275,7 +275,7 @@ C Convert sequence to numeric code
       do i=1,nres
         itype(i)=rescode(i,sequence(i),iscode)
       enddo
-      if (itype(2).eq.10) then
+      if (itype(2).eq.10.and.itype(1).eq.ntyp1) then
         write (iout,*)
      &   "Glycine is the first full residue, initial dummy deleted"
         do i=1,nres
@@ -283,7 +283,7 @@ C Convert sequence to numeric code
         enddo
         nres=nres-1
       endif
-      if (itype(nres).eq.10) then
+      if (itype(nres-1).eq.10.and.itype(nres).eq.ntyp1) then
         write (iout,*)
      &   "Glycine is the last full residue, terminal dummy deleted"
         nres=nres-1
@@ -1190,8 +1190,8 @@ c    &                      "rescore(",k,i-1,") =",rescore(k,i-1),
 c    &                      "rescore(",k,i-2,") =",rescore(k,i-2),
 c    &                      "rescore(",k,i-3,") =",rescore(k,i-3)
 
-            sigma_dih(k,i)=rescore(k,i)+rescore(k,i-1)+
-     &                     rescore(k,i-2)+rescore(k,i-3)  !  right expression ?
+            sigma_dih(k,i)=(rescore(k,i)+rescore(k,i-1)+
+     &                     rescore(k,i-2)+rescore(k,i-3))/4.0  !  right expression ?
 c
 c           write (iout,*) "Raw sigmas for dihedral angle restraints"
 c           write (iout,'(i5,10(2f8.2,4x))') i,sigma_dih(k,i)
@@ -1224,8 +1224,8 @@ c            write(iout,*)  "rescore(",k,i,") =",rescore(k,i),
 c    &                      "rescore(",k,i-1,") =",rescore(k,i-1),
 c    &                      "rescore(",k,i-2,") =",rescore(k,i-2)
 c            read (ientin,*) sigma_theta(k,i) ! 1st variant
-             sigma_theta(k,i)=rescore(k,i)+rescore(k,i-1)+
-     &                        rescore(k,i-2) !  right expression ?
+             sigma_theta(k,i)=(rescore(k,i)+rescore(k,i-1)+
+     &                        rescore(k,i-2))/3.0 !  right expression ?
              sigma_theta(k,i)=1.0d0/(sigma_theta(k,i)*sigma_theta(k,i))
 
 c            sigma_theta(k,i)=hmscore(k)*rescore(k,i)*rescore(k,i-1)*