Adam 7/30/2014
[unres.git] / source / wham / src / energy_p_new.F
index e57397b..9b69cf7 100644 (file)
@@ -2869,16 +2869,24 @@ C Evaluate bridge-strain energy and its gradient in virtual-bond and SC vectors.
 C
       implicit real*8 (a-h,o-z)
       include 'DIMENSIONS'
+      include 'DIMENSIONS.ZSCOPT'
       include 'COMMON.SBRIDGE'
       include 'COMMON.CHAIN'
       include 'COMMON.DERIV'
       include 'COMMON.VAR'
       include 'COMMON.INTERACT'
       include 'COMMON.IOUNITS'
+      include 'COMMON.NAMES'
       dimension ggg(3)
       ehpb=0.0D0
+#ifdef DEBUG
+      do i=1,nres
+        write (iout,'(a4,2x,i4,3f10.5,5x,3f10.5)') restyp(itype(i)),i,
+     &      (c(j,i),j=1,3),(c(j,i+nres),j=1,3)
+      enddo
 cd      write(iout,*)'edis: nhpb=',nhpb,' fbr=',fbr
 cd      write(iout,*)'link_start=',link_start,' link_end=',link_end
+#endif
       if (link_end.eq.0) return
       do i=link_start,link_end
 C If ihpb(i) and jhpb(i) > NRES, this is a SC-SC distance, otherwise a
@@ -2893,8 +2901,10 @@ C iii and jjj point to the residues for which the distance is assigned.
           iii=ii
           jjj=jj
         endif
-c        write (iout,*) "i",i," ii",ii," iii",iii," jj",jj," jjj",jjj,
-c     &    dhpb(i),dhpb1(i),forcon(i)
+#ifdef DEBUG
+        write (iout,*) "i",i," ii",ii," iii",iii," jj",jj," jjj",jjj,
+     &    dhpb(i),dhpb1(i),forcon(i)
+#endif
 C 24/11/03 AL: SS bridges handled separately because of introducing a specific
 C    distance and angle dependent SS bond potential.
         if (ii.gt.nres .and. itype(iii).eq.1 .and. itype(jjj).eq.1) then
@@ -2907,8 +2917,10 @@ c Restraints from contact prediction
           if (dhpb1(i).gt.0.0d0) then
             ehpb=ehpb+2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
             fac=forcon(i)*gnmr1prim(dd,dhpb(i),dhpb1(i))/dd
-c            write (iout,*) "beta nmr",
-c     &        dd,2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
+#ifdef DEBUG
+            write (iout,*) "beta nmr",
+     &        dd,2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
+#endif
           else
             dd=dist(ii,jj)
             rdis=dd-dhpb(i)
@@ -2916,7 +2928,9 @@ C Get the force constant corresponding to this distance.
             waga=forcon(i)
 C Calculate the contribution to energy.
             ehpb=ehpb+waga*rdis*rdis
-c            write (iout,*) "beta reg",dd,waga*rdis*rdis
+#ifdef DEBUG
+            write (iout,*) "beta reg",dd,waga*rdis*rdis
+#endif
 C
 C Evaluate gradient.
 C
@@ -2940,15 +2954,19 @@ C target distance.
           if (dhpb1(i).gt.0.0d0) then
             ehpb=ehpb+2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
             fac=forcon(i)*gnmr1prim(dd,dhpb(i),dhpb1(i))/dd
-c            write (iout,*) "alph nmr",
-c     &        dd,2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
+#ifdef DEBUG
+            write (iout,*) "alph nmr",
+     &        dd,2*forcon(i)*gnmr1(dd,dhpb(i),dhpb1(i))
+#endif
           else
             rdis=dd-dhpb(i)
 C Get the force constant corresponding to this distance.
             waga=forcon(i)
 C Calculate the contribution to energy.
             ehpb=ehpb+waga*rdis*rdis
-c            write (iout,*) "alpha reg",dd,waga*rdis*rdis
+#ifdef DEBUG
+            write (iout,*) "alpha reg",dd,waga*rdis*rdis
+#endif
 C
 C Evaluate gradient.
 C
@@ -3100,8 +3118,8 @@ c
           nbi=nbondterm(iti)
           if (nbi.eq.1) then
             diff=vbld(i+nres)-vbldsc0(1,iti)
-            write (iout,*) i,iti,vbld(i+nres),vbldsc0(1,iti),diff,
-     &      AKSC(1,iti),AKSC(1,iti)*diff*diff
+c            write (iout,*) i,iti,vbld(i+nres),vbldsc0(1,iti),diff,
+c     &      AKSC(1,iti),AKSC(1,iti)*diff*diff
             estr=estr+0.5d0*AKSC(1,iti)*diff*diff
             do j=1,3
               gradbx(j,i)=AKSC(1,iti)*diff*dc(j,i+nres)/vbld(i+nres)
@@ -3130,8 +3148,8 @@ c
               usum=usum+uprod1
               usumsqder=usumsqder+ud(j)*uprod2
             enddo
-            write (iout,*) i,iti,vbld(i+nres),(vbldsc0(j,iti),
-     &      AKSC(j,iti),abond0(j,iti),u(j),j=1,nbi)
+c            write (iout,*) i,iti,vbld(i+nres),(vbldsc0(j,iti),
+c     &      AKSC(j,iti),abond0(j,iti),u(j),j=1,nbi)
             estr=estr+uprod/usum
             do j=1,3
              gradbx(j,i)=usumsqder/(usum*usum)*dc(j,i+nres)/vbld(i+nres)