10 subroutine kwhisti(h, ixmin, ibin, dummy, itklg )
43 h.tklg = ( itklg-(itklg/2)*2 ) .ne. 0
44 h.cent = ( (itklg/2)*2 - (itklg/4)*4)/2
45 h.ufl = ( (itklg/4)*4 - (itklg/8)*8 ) .ne. 0
46 h.ofl = ( (itklg/8)*8 - (itklg/16)*16 ) .ne. 0
49 asmax = ( (itklg/16)*16 - (itklg/32)*32 ) .ne. 0
51 if(ixmin .ge. ibin)
then 52 write(0,*)
' ibin is regarded as ixmax but <= ixmin' 55 if( h.cent .eq. 1 )
then 61 h.
bin = log10(ibin/ixmin)/ndiv
63 h.
bin = (ibin - ixmin )/ndiv
75 *
'("min must be > 0 for log option")')
78 h.xm = log10(ixmin) - h.cent * h.
bin/2.
81 h.xm = ixmin - h.cent * h.
bin/2.
99 if( h.tklg .and. x .le. 0.)
then 107 i = ( xx-h.xm ) / h.
bin + 1
108 if(i .le. 0 .and. h.ufl )
then 110 elseif(i .gt. h.nhist .and. h.ofl )
then 113 if(i .ge. 1 .and. i .le. h.nhist )
then 114 h.dn(i) = h.dn(i) + 1
115 h.dnw(i) = h.dnw(i) + w
116 h.mean(i) = h.mean(i) + x*w
127 do while(h.imin .lt. h.nhist .and. h.dn(h.imin) .eq. 0)
132 do while ( h.imax .gt. 1 .and. h.dn(h.imax) .eq. 0)
137 do i = h.imin, h.imax
138 h.sum = h.sum + h.dn(i)
142 do i = h.imin, h.imax
143 h.sumw = h.sumw + h.dnw(i)
147 xx = 10.**( h.xm + h.
bin/2.) * h.inc**(h.imin-1)
149 xx = h.xm + h.
bin/2. + h.inc*(h.imin-1)
154 if(h.
norm .eq. 0. .and. h.sumw .gt. 0.)
then 156 else(h.
norm .eq. 0. )
then 160 do i = h.imin, h.imax
162 dx = 10.0**(h.xm + i * h.
bin) - 10.0**(h.xm + (i-1)*h.
bin)
164 if(h.dnw(i) .eq. 0)
then 167 h.mean(i) = h.mean(i)/h.dnw(i)
169 h.dndx(i) = h.dnw(i)/dx/h.
norm 185 xx =10.0**( h.xm + h.
bin/2) * h.inc**(h.imin-1)
187 xx = (h.xm + h.
bin/2) + h.inc*(h.imin-1)
190 do i = h.imin, h.imax
191 write(*,
'(a, " ", i5, 4g14.4, i10, i10, g14.4)') id, i,
192 * xx, h.dndx(i), h.dnw(i), isumw, h.dn(i), isum, h.mean(i)
193 isum = isum - h.dn(i)
194 isumw = isumw - h.dnw(i)
integer nsites ! max real bin
void kwhistp(struct histogram1 *h, FILE *fno)
void kwhisti(struct histogram1 *h, float ixmin, float ibinORxmax, int inbin, int itklg)
void kwhist(struct histogram1 *h, float x, float w)
void kwhistc(struct histogram1 *h)
void kwhists(struct histogram1 *h, float inorm)