Skip to content
P. L. Lim edited this page Feb 10, 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)
  • 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.
  • 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.
  • Also implement IRAF replacements, as tabulated below.
IRAF task Python equivalent Notes
sensfunc TBD Spectral flat-fielding
identify (1) TBD Arc line detection
reidentify TBD Take an existing dispersion solution and adjusts it based on a close-but-not-quite-the-same arc (see "2D dispersion solution" above)
standard TBD Calibrating a spectrum given a standard star, usually the very last step
  1. This should be script-able/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