47 SUBROUTINE w3fi59(FIELD,NPTS,NBITS,NWORK,NPFLD,ISCALE,LEN,RMIN)
49 parameter(alog2=0.69314718056,hpeps=0.500001)
62 IF (nbits.LE.0.OR.nbits.GT.32)
GO TO 3000
63 IF (npts.LE.0)
GO TO 3000
70 rmax = amax1(rmax,field(k))
71 rmin = amin1(rmin,field(k))
76 IF (rmax.EQ.rmin)
GO TO 3000
88 iscale=nint(alog(bigdif/(2.**nbits-0.5))/alog2+hpeps)
92 twon = 2.0 ** (-iscale)
94 nwork(k) = nint( (field(k) - rmin) * twon )
104 CALL sbytesc(npfld,nwork,koff,nbits,iskip,npts)
110 CALL sbytec(npfld,kzero,noff,7)
subroutine sbytec(out, in, iskip, nbyte)
This is a wrapper for sbytesc()
subroutine sbytesc(out, in, iskip, nbyte, nskip, n)
Store bytes - pack bits: Put arbitrary size values into a packed bit string, taking the low order bit...
subroutine w3fi59(field, npts, nbits, nwork, npfld, iscale, len, rmin)
Converts an array of single precision real numbers into an array of positive scaled differences (numb...