double precision tole /1.0d-1/
integer i,itj,ii,iii,j,k,l,licz
integer ir,ib,ipar,iparm
- integer iscor,islice
+ integer iscor,islice,scount_buff(0:99)
real*4 csingle(3,maxres2)
double precision energ
double precision temp
enddo
enddo
enddo
+ write (iout,*) "indstart(me1),indend(me1)"
+ &,indstart(me1),indend(me1)
do i=indstart(me1),indend(me1)
#else
do iparm=1,nParmSet
enddo
do i=1,ntot
#endif
+
read(ientout,rec=i,err=101)
& ((csingle(l,k),l=1,3),k=1,nres),
& ((csingle(l,k+nres),l=1,3),k=nnt,nct),
& wcorr,wcorr5,wcorr6,wturn4,wturn3,wturn6,wel_loc,
& wtor_d,wsccor,wbond
#endif
+C write (iout,*) "tuz przed energia"
call etotal(energia(0),fT)
+C write (iout,*) "tuz za energia"
+
#ifdef DEBUG
write (iout,*) "Conformation",i
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)
call enerprint(energia(0),fT)
write (iout,'(2i5,21f8.2)') i,iparm,(energia(k),k=1,21)
- write (iout,*) "ftors",ftors
+ write (iout,*) "ftors(1)",ftors(1)
call briefout(i,energia(0))
temp=1.0d0/(beta_h(ib,ipar)*1.987D-3)
write (iout,*) "temp", temp
endif
endif
endif
+C write (iout,*) "Czy tu dochodze"
potE(iii+1,iparm)=energia(0)
- do k=1,21
+ do k=1,22
enetb(k,iii+1,iparm)=energia(k)
enddo
#ifdef DEBUG
121 continue
enddo
#ifdef MPI
- scount(me)=iii
- write (iout,*) "Me",me," scount",scount(me)
+ scount_buff(me)=iii
+ write (iout,*) "Me",me," scount_buff",scount_buff(me)
call flush(iout)
c Master gathers updated numbers of conformations written by all procs.
- call MPI_AllGather( scount(me), 1, MPI_INTEGER, scount(0), 1,
+c call MPI_AllGather(MPI_IN_PLACE,1,MPI_DATATYPE_NULL,scount(0),1,
+c & MPI_INTEGER, WHAM_COMM, IERROR)
+ call MPI_AllGather( scount_buff(me), 1, MPI_INTEGER, scount(0), 1,
& MPI_INTEGER, WHAM_COMM, IERROR)
+
indstart(0)=1
indend(0)=scount(0)
do i=1, Nprocs-1
double precision energ
integer ilen,iroof
external ilen,iroof
- integer ir,ib,iparm
+ integer ir,ib,iparm, scount_buff(0:99)
integer isecstr(maxres)
write (licz2,'(bz,i2.2)') islice
call opentmp(islice,ientout,bprotfile_temp)
c call flush(iout)
call xdrfint_(ixdrf, nss, iret)
do j=1,nss
- call xdrfint_(ixdrf, ihpb(j), iret)
- call xdrfint_(ixdrf, jhpb(j), iret)
+ if (dyn_ss) then
+ call xdrfint(ixdrf, idssb(j)+nres, iret)
+ call xdrfint(ixdrf, jdssb(j)+nres, iret)
+ else
+ call xdrfint_(ixdrf, ihpb(j), iret)
+ call xdrfint_(ixdrf, jhpb(j), iret)
+ endif
enddo
call xdrffloat_(ixdrf,real(eini),iret)
call xdrffloat_(ixdrf,real(efree),iret)
call xdrfint(ixdrf, nss, iret)
do j=1,nss
- call xdrfint(ixdrf, ihpb(j), iret)
- call xdrfint(ixdrf, jhpb(j), iret)
+ if (dyn_ss) then
+ call xdrfint(ixdrf, idssb(j)+nres, iret)
+ call xdrfint(ixdrf, jdssb(j)+nres, iret)
+ else
+ call xdrfint(ixdrf, ihpb(j), iret)
+ call xdrfint(ixdrf, jhpb(j), iret)
+ endif
enddo
call xdrffloat(ixdrf,real(eini),iret)
call xdrffloat(ixdrf,real(efree),iret)