1 subroutine make_distrib(icl,iprot)
4 include 'DIMENSIONS.ZSCOPT'
5 include 'COMMON.ENERGIES'
6 include 'COMMON.ALLPROT'
7 include 'COMMON.CLASSES'
8 include 'COMMON.WEIGHTDER'
9 include 'COMMON.VMCPAR'
10 include 'COMMON.PROTNAME'
14 double precision emin,emax,erange,binsize,aux,sumpart,fac,
15 & distr(0:1000,maxT,maxbatch)
16 integer i,ind,j,k,nbin,ib,iprot,icl,ibatch
20 print *,"Make_Distrib: iprot",iprot," icl",icl
24 if (iscore(i,0,iprot).eq.icl) then
25 if (emin.gt.e_total(i,iprot)) then
28 if (emax.lt.e_total(i,iprot)) then
33 do ibatch=1,nbatch(iprot)
34 do ib=1,nbeta(ibatch,iprot)
35 fac=betaT(2*ib,ibatch,iprot)
39 print *,"emin",emin," emax",emax," binsize",binsize," nbin",nbin
41 distr(i,ib,ibatch)=0.0D0
45 if (iscore(i,0,iprot).eq.icl) then
46 ind=dint((e_total(i,iprot)-emin)/binsize)
47 aux=fac*(e_total(i,iprot)-emin)
48 if (aux.lt.50.0d0) then
50 distr(ind,ib,ibatch)=distr(ind,ib,ibatch)+aux
56 distr(i,ib,ibatch)=distr(i,ib,ibatch)/sumpart
64 do ibatch=1,nbatch(iprot)
65 do ib=1,nbeta(ibatch,iprot)
66 if (distr(nbin,ib,ibatch).ge.1.0d-5) goto 10
73 write (liczba,'(bz,i6.6)') icl
74 do ibatch=1,nbatch(iprot)
75 write(lbatch,'(bz,i2.2)') ibatch
76 nazwa=protname(iprot)(:ilen(protname(iprot)))
77 & //'.'//lbatch//'.'//liczba//
79 open(88,file=nazwa,status="unknown")
80 write (88,'(a10,20f10.1)') '# Energy',(betaT(ib,ibatch,iprot),
81 & ib=1,nbeta(ibatch,iprot))
83 write (88,'(21f10.3)') binsize*floor(emin/binsize)
84 & +i*binsize,(distr(i,ib,ibatch),ib=1,nbeta(ibatch,iprot))