corrections in wham and clust
[unres.git] / source / wham / src-M / enecalc1.F
index a5d25b3..9347cfa 100644 (file)
@@ -743,11 +743,36 @@ c------------------------------------------------------------------------------
       endif
       call int_from_cart1(.false.)
       do j=nnt+1,nct
+        if (wliptran.gt.0d0) then
+        if (itype(j-1).ne.ntyp1 .and. itype(j).ne.ntyp1 .and.
+     &    (vbld(j).lt.2.0d0 .or. vbld(j).gt.5.3d0)) then
+          if (iprint.gt.0)
+     &    write (iout,*) "Bad CA-CA bond length",j," ",vbld(j),
+     &      " for conformation",ii,wliptran
+          if (iprint.gt.1) then
+            write (iout,*) "The Cartesian geometry is:"
+            write (iout,'(8f10.5)') ((c(l,k),l=1,3),k=1,nres)
+            write (iout,'(8f10.5)') ((c(l,k+nres),l=1,3),k=nnt,nct)
+            write (iout,*) "The internal geometry is:"
+            write (iout,'(8f10.4)') (vbld(k),k=nnt+1,nct)
+            write (iout,'(8f10.4)') (vbld(k),k=nres+nnt,nres+nct)
+            write (iout,'(8f10.4)') (rad2deg*theta(k),k=3,nres)
+            write (iout,'(8f10.4)') (rad2deg*phi(k),k=4,nres)
+            write (iout,'(8f10.4)') (rad2deg*alph(k),k=2,nres-1)
+            write (iout,'(8f10.4)') (rad2deg*omeg(k),k=2,nres-1)
+          endif
+          if (iprint.gt.0) write (iout,*)
+     &      "This conformation WILL NOT be added to the database."
+          conf_check=.false.
+          return
+        endif
+
+        else
         if (itype(j-1).ne.ntyp1 .and. itype(j).ne.ntyp1 .and. 
      &    (vbld(j).lt.2.0d0 .or. vbld(j).gt.5.0d0)) then
           if (iprint.gt.0) 
      &    write (iout,*) "Bad CA-CA bond length",j," ",vbld(j),
-     &      " for conformation",ii
+     &      " for conformation",ii,wliptran
           if (iprint.gt.1) then
             write (iout,*) "The Cartesian geometry is:"
             write (iout,'(8f10.5)') ((c(l,k),l=1,3),k=1,nres)
@@ -765,6 +790,7 @@ c------------------------------------------------------------------------------
           conf_check=.false.
           return
         endif
+        endif
       enddo
       do j=nnt,nct
         itj=itype(j)