Skip to content
Erik Tollerud edited this page Feb 9, 2018 · 6 revisions

An initial brainstorm of ideas for what needs to be in specreduce

Note that this is not for analysis or 1D spectral manipulation tools. That belongs in specutils.

Some of this may already be implemented in the current specreduce, but can still be included here to have a complete list.

  • High-level functions to do the ccdproc basic workflow
  • data objects for "2D" spectra (possibly including easy ways to put a WCS into the image post-hoc after a dispersion solution is found)
  • Spectral flat-fielding (i.e. IRAF "sensfunc" equivalent)
  • Boxcar extraction -> specutils Spectrum1D objects.
  • "Optimal" (e.g., Horne) extraction of 2D spectra -> specutils Spectrum1D objects. Stretch goal: make it accept arbitrary PSFs (using the photutils.psf data objects) to adapt the Horne approach to non-Gaussian PSFs.
  • Tools to reproduce the IRAF "identify" task: Arc line detection (although this should be scriptable/able to be folded into a larger pipeline), ability to compute dispersion solutions given arc line locations and a line list/atlas, and some documentation showing how to glue it together into an "identify"-like workflow
  • Workflow (possibly as a high-level function, possibly as a documented example) to use the tools for the above point to make a 2D dispersion solution.