APS-USAXS / livedata

live data from the APS USAXS instrument
https://usaxslive.xray.aps.anl.gov/
0 stars 0 forks source link

livedata: center of fly scans is off #35

Closed prjemian closed 4 years ago

prjemian commented 4 years ago

On the livedata plot of USAXS + SAXS + WAXS, the USAXS data from fly scans often misses the peak center, as reported in the bluesky ipython repo.

Investigation there showed that improvement is possible, replacing the choice of beam center from previous tune_ar() scan with direct computation of peak centroid using only the R(ar) data close to the main peak.

Revise (and test) the computation of peak center for fly scans according to the code described in the link.

prjemian commented 4 years ago

HDF5 output (non-NeXus) looks like:

livedata/testdata/Blank_0016_center_calc.h5
  R:float64[22] = [498.17274830320724, 622.6336379540764, 735.712351278984, '...', 640.6268637416084]
  ar:float64[22] = [8.886316102899887, 8.88628891549514, 8.886261777564735, '...', 8.885756251844054]
  cen:float64 = 8.886022840783497
prjemian commented 4 years ago

NeXus HDF5 output (after changesets 985addf049d278078892d263f690f5bde8892c04 and b768b03) looks like:

livedata/testdata/Blank_0016_center_calc.h5 : NeXus data file
  @default = entry
  entry:NXentry
    @NX_class = NXentry
    @default = data
    data:NXdata
      @NX_class = NXdata
      @axes = ar
      @signal = R
      R:NX_FLOAT64[22] = [498.17274830320724, 622.6336379540764, 735.712351278984, '...', 640.6268637416084]
        @units = not applicable
      ar:NX_FLOAT64[22] = [8.886316102899887, 8.88628891549514, 8.886261777564735, '...', 8.885756251844054]
        @units = degrees
      cen:NX_FLOAT64 = 8.886022840783497
        @units = degrees