Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Goals

  • Retire aXe
  • Retire aXeSIM
    • (currently not functional (web form); probably not a huge effort on top of aXe)
  • Leverage the JWST infrastructure
    • just crds, gwcs and asdf?
    • Unclear yet how easy it would be to get HST distortion models for grism into gwcs
      • Distortion is the same as for imaging; trace & dispersion are polynomials (for WFC3)
      • For JWST start in undistorted reference frame for catalog
      • aXe files also include other things like sensitivity
    • stpipe? datamodels? specutils? nddata? specreduce?
  • Enable common "Grismconf" infrastructure for:
    • pyLINEAR
    • grizli
    • EM2D, and Nor's other modules
    • JWST pipeline
    • (WFIRST)
  • Ensure that users can do all the flavors of geometric transformations (and can understand them)
  • Make sure calibration (files) are consistent with the approach to geometry
  • Support the following HST modes:
    • WFC3/IR
    • ACS
    • WFC3/UVIZUVIS?
  • Compatible with JWST pipeline outputs of WFSS modes (NIRISS and NIRCam)

Use-Cases / Workflows

1D spectral extraction for perfectly registered & perfectly calibrated data

Story: As an impatient astronomer, I just want to extract a 1D spectrum for a single source given perfectly registered images and assuming calibrations are correct. I want it fast and I don't want to think about forward modeling.

What do I need as inputs?

  • Direct and slitless images with perfect WCSs
  • Exposure times?
  • Noise model? Or components of the noise model (gain, exptime, read noise, subtracted background)?
    • Or is this already in an uncertainty array?
  • Detector signatures already removed (e.g. CALWEBB_DETECTOR1)
  • Identification of the pixels in the direct image corresponding to "the source" (e.g. from a segmentation map)
  • Identification of any pixels in the direct image corresponding to contaminating sources

What does this step do for me?

  • Maps pixels in the direct image to x,y, wavelength
  • Accumulates the flux at each wavelength (onto some wavelength grid)
    • Perhaps weighted by the flux in the direct image at this cross-dispersion location
  • Accumulates uncertainties at each wavelength
  • Accumulates some kind of contamination flag at each wavelength

Why would I not want to do this?

...

Low-Hanging Fruit?

It would be good to start development work right away during the sprint, if at all possible. Even if we aren't completely certain of the end goals. This will start to get people familiar with the code bases and documentation, and make shake out some subtleties that are difficult to find without looking at the code. So what are some low-hanging fruit coding tasks?

  1. Training – Run the aXe WFC3 Jupyter-notebook Cookbook
  2. Refactor grizli | pyLINEAR | Nor's code to use JWST version of grismconf?
    1. refactor HST reference files / geometric distortion info
    2. refactor XXX to use JWST grismconf
    3. compliant gwcs for all code bases 
  3. All code bases outputs 1D and 2D in formats compatible with specutils
  4. Fork the JWST pipeline as a basis? 
    1. Compare JWST CALWEBB_SPEC2/3 steps to what aXe and grizli, etc are doing.
  5. Assess performance issues of grismconf vs. JWST pipeline version?
  6. Jupyter notebook illustrating how to do the equivalent aXedrizzle without using aXe?
    • E.g. reproduce cell 7 of the WFC3 aXe cookbook without using Astrodrizzle
      • Possibly first converting WCSs to gWCS to include distortion info?
    • Using reproject package (doesn't yet have drizzle algorithm though)
    • Using JWST pipeline version of drizzle
    • JWST pipeline is doing the co-adds in 1D space 
      • not currently in 2D extractions, but this should be possible with the current code
  7. Reproduce steps of aXeprep in a Jupyter notebook using Astropy ecosystem.
    1. There is a prep module in grizli that has a lot of useful functionality that isn't upstream
    2. Look at tools there that could be pushed upstream
      1. e.g. image alignment – not all grism specific
  8. Write a summary of science use-cases for each of the grism packages
    1. exists already in roadmap? SSG webpage? WFC3 web pages?
  9. Illustrate in a Jupyter notebook how to do a WFC3 forward-model simulation without using aXeSIM
    1. E.g. using grizli or SBE, which might eventually be refactored to use a common grismconf
    2. Or using aXeSIM
    3. Or using specutils + synphot?
      1. Does specutils support the full geometric transformation pipeline that the JWST pipeline does, already, since it supports gwcs?
      2. Does synphot in principle support applying the throughput?
  10. Illustrate in a Jupyter notebook how to do flat fielding without using aXe
    1. E.g. using JWST pipeline machinery
  11. Illustrate in a Jupyter notebook how to flag contamination without using aXe.

Use-Cases / Workflows

Children Display
pageAstrogrism User Stories

...

Epics

Identify and match data sets

...

Astrometric registration

Simulations 

aXe and aXeSIM information at - https://www.stsci.edu/scientific-community/software/axe

aXeSIM relevant ISR https://www.spacetelescope.org/static/archives/stecfnewsletters/pdf/hst_stecf_0043.pdf#page=8

Contamination

Background Subtraction

HST ACS sky background

ACS uses the original aXe implementation of 'Master sky image' (global background) and local background subtraction approach.
Basic method is outlined in aXe paper at
https://iopscience.iop.org/article/10.1086/596715/pdf (section 2.6)


HST WFC3 sky background

Master sky images have been provided for both G102 and G141, however the single images used by aXe do not take into account the full complexity of the sky background of grism observations. A more accurate background subtraction can be achieved by using separate images for each of the background components: zodiacal light, He I emission and scattered light (for G141).

More info at
https://www.stsci.edu/hst/instrumentation/wfc3/documentation/grism-resources/ir-grism-master-sky-images

Relevant ISRs
https://www.stsci.edu/files/live/sites/www/files/home/hst/instrumentation/wfc3/documentation/instrument-science-reports-isrs/_documents/2015/WFC3-2015-17.pdf

https://www.stsci.edu/files/live/sites/www/files/home/hst/instrumentation/wfc3/documentation/instrument-science-reports-isrs/_documents/2017/WFC3-2017-05.pdf

Relevant paper
https://iopscience.iop.org/article/10.3847/1538-4357/aa81cc/pdf (section 3.2.6)

Most recent 'WFC3_Back' (Nor's slides)

Flatfielding

1D Spectral Extraction

1-D extraction
non-weighted extraction (section 3.3.2, figure 11)
https://iopscience.iop.org/article/10.3847/1538-4357/aa81cc/pdf
and
optimal extraction (section 3.3.2, figure 12)
https://iopscience.iop.org/article/10.3847/1538-4357/aa81cc/pdf
- original concept from Horne 1986
https://ui.adsabs.harvard.edu/abs/1986PASP...98..609H/abstract

2D Spectral Extraction

2-D extraction
Simulation based extraction (SBE) details in section 3.2.4 (figure 10)
https://iopscience.iop.org/article/10.3847/1538-4357/aa81cc/pdf

1D Forward modeling

2D Forward modeling

...