Priority To Do Items
- Image / ctr processing..
- saving/restoring data - single hdf file for ctr object. (see notes below)
- Make fcns for correcting 'bad pixels'. Add option on file reading to correct based on bad pixel map.
- Speed up backgrounds
- Add image hkl indexing
- Add tracking for miscuts and auto rotate images
- Polygon image rois?
- Two image rois - one for bgr, 2nd for integration?
- Add ave funcs (plane groups) to CTR data
- Attenuation factors
- Rocking scan integrations (peak module)
Detailed To Do List for tdl/modules
modules/fmtfiles
- work on simple file IO (column, xcel, etc.).
- generic interface for reading files from zip archive
modules/mpcutil
- more options for minimize function
modules/xray/ana
general
- specfile: function to list spec scans to screen (ie actual scans)
- Someplace we need methods for attenuator calcs ~ similar to deadtime...
- background: Add smoothing / rebin option for backgrounds and rewrite the slow part of in c to speed up
- create a peak module/class (move from mpcutils):
- add fit method in python, make very similar to xrf.
- then connect to c-library version, ie speed up fitting. would be great if c-code was generic enough so we could use it in peak module and swap out code in xrf modules to speed up fits there too!
- numerical peak integrations
- use background.background
scan_data
- work on append - especially sorting and combining data that is not of len = npts
- work on merge/average
work on __set_item__
note make some rules: - add_scans / subtract_scans: * scalers, images, meds etc are added and subtracted (all must be same len) * might want to set rule so only unprocessed images/xrfs can be added and subtracted... * positioners are stored as list scan_data.x = [x1,x2] - concat_scans * sort by scan axis
image_data
- read in bad pixel map file to apply to images (apply in reader)
- make roi box from arbitrary points (not just rectangle)
- convert images to recip space coordinates
- therefore can calc rot angle to keep L projection along horizontal and model peak widths in order to improve automation of integration.
- To do correctly need detector distance, pixel spacing, pitch, yaw and roll.
- Generate an algo for solving detector parameters:
- Define pixel center at 0del and 0nu. then give direct beam pixel position at 4 different del and nu settings. From these refine distance and 3 angles. (note if do with diffraction peaks from known sample can also refine lambda and axis offsets...)
ctr_data
- incorporate ave functionality
- integrate / correct rocking scan data
save_data
- Save / restore methods for specific classes. (using pytables)
scandata or list of scandata objs -> saves scandata (and images etc) to a single hdf
ctr data -> incl scandata objects all in single file
- xrf
- gimodel
- etc...
- note with scandata or ctr (etc), when restore, dont read images/spectra - rather use the file as archive.
- note with images etc... held by scandata object - if the object is deleted, we can delete the images from the archive file. if the file is empty, delete the file.
- Also need an 'archive' option. (zip archive)
- add and remove files
- auto add files when update (ie monitor a directory and auto add files)
does normal 'open' work on files in zip? or should use FileOpen class??
- The 'reader' class should deal with these archives... ie build a 'reader_archive' then ask the reader to read a file from the archive and give back a scan data object (or group of scan data objects as a data_group).
modules/xray/xrf
- work on xrf_plot (and med plot)
- error bars for xrf data / peaks
- use background.background in xrf
- note no reason to opt bgr params....
- speed up fits (use different lsq - see scipy.optimize lots of options)
modules/xray/xrd
- Structure Factor calcs
- CTR calcs
modules/xray/xrr
in compiled code
- Output penetration depth
- Note include thin film and transmission cell modes
python calcs
- Add routine that will step through theta and build matrix of I, etc, for plotting. i.e. make 3D plot like matlab code
- Fitting interface models, linking paramters, fit mult data sets etc...
modules/xray/xtab
Interface for f',f'' and mu's
modules/xtal
- gonio calcs - more geometries... and calc angles given constraints...
- lsq optimize of lattice params (and axis offsets)
- dictionary of space groups from international tables
- dictionary of transforms from international tables
- plane groups
- etc....
- read cif files.