double precision tt
integer snk_p(MaxR,MaxT_h,Max_parm)
logical lerr
- character*64 bprotfile_temp
+ integer ncont,icont(2,maxcont),isecstr(maxres)
+ character*256 bprotfile_temp
+ double precision totlength
call opentmp(islice,ientout,bprotfile_temp)
iii=0
ii=0
errmsg_count=0
c write (iout,*) "enecalc: nparmset ",nparmset
c write (iout,*) "enecalc: tormode ",tor_mode
+ write (iout,*) "ns",ns," dyn_ss",dyn_ss,(iss(i),i=1,ns)
+ if (ns.gt.0.and.dyn_ss) then
+ do i=nss+1,nhpb
+ ihpb(i-nss)=ihpb(i)
+ jhpb(i-nss)=jhpb(i)
+ forcon(i-nss)=forcon(i)
+ dhpb(i-nss)=dhpb(i)
+ enddo
+ nhpb=nhpb-nss
+ nss=0
+ call hpb_partition
+ do i=1,ns
+ dyn_ss_mask(iss(i))=.true.
+ enddo
+ endif
+ write (iout,*) "dyn_ss_mask",(dyn_ss_mask(i),i=1,nres)
#ifdef MPI
do iparm=1,nParmSet
do ib=1,nT_h(iparm)
anatemp= 1.0d0/(beta_h(ib,ipar)*1.987D-3)
q(nQ+1,iii+1)=rmsnat(iii+1,ipermin)
endif
- q(nQ+2,iii+1)=gyrate(iii+1)
+c write (iout,*) iii+1,q(nQ+3,iii+1),q(nQ+4,iii+1),q(nQ+5,iii+1)
c fT=T0*beta_h(ib,ipar)*1.987D-3
c ft=2.0d0/(1.0d0+1.0d0/(T0*beta_h(ib,ipar)*1.987D-3))
if (rescale_mode.eq.1) then
& wcorr,wcorr5,wcorr6,wturn4,wturn3,wturn6,wel_loc,
& wtor_d,wsccor,wbond
#endif
-C write (iout,*) "tuz przed energia"
+c write (iout,*) "tuz przed energia"
call etotal(energia(0),fT)
-C write (iout,*) "tuz za energia"
+c write (iout,*) "tuz za energia"
#ifdef DEBUG
write (iout,*) "Conformation",i
-c write (iout,'(8f10.5)') ((c(l,k),l=1,3),k=1,nres),
-c & ((c(l,k+nres),l=1,3),k=nnt,nct)
+ write (iout,'(8f10.5)') ((c(l,k),l=1,3),k=1,nres),
+ & ((c(l,k+nres),l=1,3),k=nnt,nct)
call enerprint(energia(0),fT)
c write (iout,'(2i5,21f8.2)') i,iparm,(energia(k),k=1,21)
c write (iout,*) "ftors(1)",ftors(1)
if (ipar.eq.iparm) write (iout,*) i,iparm,
& 1.0d0/(beta_h(ib,ipar)*1.987D-3),eini,energia(0)
#endif
+c write (iout,*) "eini",eini,"energia(0)",energia(0)," diff",
+c & eini-energia(0)
if (ipar.eq.iparm .and. einicheck.gt.0 .and.
! & dabs(eini-energia(0)-energia(27)).gt.tole) then
& dabs(eini-energia(0)).gt.tole) then
write (iout,'(8f10.5)') ((c(l,k),l=1,3),k=1,nres),
& ((c(l,k+nres),l=1,3),k=nnt,nct)
c call intout
- call pdbout(indstart(me1)+iii,
- & 1.0d0/(1.987D-3*beta_h(ib,ipar)),energia(0),eini,0.0d0,0.0d0)
+c call pdbout(indstart(me1)+iii,
+c & 1.0d0/(1.987D-3*beta_h(ib,ipar)),energia(0),eini,0.0d0,0.0d0)
call enerprint(energia(0),fT)
errmsg_count=errmsg_count+1
if (errmsg_count.gt.maxerrmsg_count)
endif
enddo ! iparm
+ q(nQ+2,iii+1)=gyrate(iii+1)
+c 8/28/2020 Adam - determine the fraction of secondary structures.
+ call elecont(.false.,ncont,icont,nnt,nct-1,1)
+ call secondary2(.false.,.false.,ncont,icont,isecstr)
+#ifdef DEBUG
+ write (iout,*) "secondary structure"
+ write (iout,'(80i1)') (isecstr(k),k=1,nres)
+#endif
+ q(nQ+3,iii+1)=0.0d0
+ q(nQ+4,iii+1)=0.0d0
+ q(nQ+5,iii+1)=0.0d0
+ totlength=0.0d0
+ do k=nnt,nct
+ if (itype(k).eq.ntyp1) cycle
+ totlength=totlength+1.0d0
+ l=isecstr(k)
+ q(nQ+3+l,iii+1)=q(nQ+3+l,iii+1)+1.0d0
+ enddo
+ q(nQ+3,iii+1)=q(nQ+3,iii+1)/totlength
+ q(nQ+4,iii+1)=q(nQ+4,iii+1)/totlength
+ q(nQ+5,iii+1)=q(nQ+5,iii+1)/totlength
+c write (iout,*) "iii",iii," nssbond",nssbond,nss
+c q(nQ+6,iii+1)=nssbond
+ q(nQ+6,iii+1)=nss
iii=iii+1
if (q(1,iii).le.0.0d0 .and. indpdb.gt.0)
& q(1,iii)=qwolynes(0,0,ipermin)
+c write (iout,*) "iii",iii," q",q(1,iii)
write (ientout,rec=iii)
& ((csingle(l,k),l=1,3),k=1,nres),
& ((csingle(l,k+nres),l=1,3),k=nnt,nct),
include "COMMON.CONTACTS1"
character*64 nazwa
character*80 bxname,cxname
- character*64 bprotfile_temp
+ character*256 bprotfile_temp
character*3 liczba,licz
character*2 licz2
integer i,itj,ii,iii,j,k,l
call xdrfint_(ixdrf, nss, iret)
do j=1,nss
if (dyn_ss) then
- call xdrfint(ixdrf, idssb(j)+nres, iret)
- call xdrfint(ixdrf, jdssb(j)+nres, iret)
+ call xdrfint(ixdrf, idssb(j), iret)
+ call xdrfint(ixdrf, jdssb(j), iret)
else
call xdrfint_(ixdrf, ihpb(j), iret)
call xdrfint_(ixdrf, jhpb(j), iret)