JWST ETC Downloads

The JWST Exposure Time Calculator provides an option to download the final and intermediate output products, along with input data used for an ETC calculation. The data products are available for downloads as FITS files.

On this page

        Video Tutorial:  ETC General Overview

The JWST ETC outputs 2-D images and line plots as well as scalar values for every ETC calculation that is performed using the scene and sources, background spectrum, instrument configuration, observing setup, and extraction strategy selected by the user.

All the final output products and intermediate products from the ETC calculations are available for download using the link provided under the download tab. The tarball contains FITS files of the 3-D data cube for the IFU calculation, and 2-D images that may be used for more detailed and specific analysis as desired by the ETC user. The extracted flux, backgrounds, contamination, and SNR used for the line plots are available as FITS tables.

Image directories


"backgrounds.fits" contains background flux for the field of view at the time of observation requested. Background components are assumed to be uniform across the field, dependent on wavelength. The "background.fits" file has an array in its second header (hdu 1) which has 5 records: the first column is wavelength (μm), the second column is the total combined background (MJy/str), and the last 3 columns are the thermal, stray light, and infield components of the total combined background, respectively.


  • 3d/cube_flux.fits
  • 3d/cube_flux_plus_background.fits

These contain the scene "observed" by the ETC, with sources convolved by instrument PSFs. It is the scene cube incident on the detector, in units of millijanskies. The difference between the 2 files is that "cube_flux_plus_background.fits" contains additive background noise (scaled to the wavelength-dependent fluxes in "backgrounds.fits").

First header (hdu 0) contains a 3-dimensional array whose dimensions are wavelength, then x, then y. Pulling out a single slice of the array will provide the scene at a particular wavelength. The values of CRVAL1 and CDELT1, CRVAL2 and CDELT2 are referring to the spatial position of the (0, 0) pixel and scale (in arcseconds) of each of those slices.

Second header (hdu 1) has 2 fields: wavelength (in μm), and index number. Those index numbers map the wavelengths to the slices of the 3-D array in the first header.

If you have used an IFU mode, you will have different 3-D output files:

  • "3d/cube_reconstructed.fits" - a cube of the reconstructed flux, in units of e/s
  • "3d/cube_reconstructed_noise.fits" - a cube of the noise (including all noise sources), in e/s
  • "3d/cube_reconstructed_snr.fits" - the above 2 cubes divided by each other
  • "3d/cube_reconstructed_saturation.fits" - 3-D saturation map, where 1 = partially saturated, and 2 = fully saturated

These files represent the scene as reconstructed from the "observation." All files have a single header containing a 3-dimensional array with the axes in order wavelength, x, and y. All information for reconstituting the coordinates and wavelengths is given in the single header. Note that the header is for a linear wavelength scale, while the actual wavelength scale may not be linear (see "lineplots/lineplots_wave_pix.fits" for the actual wavelength scale).

There will also be files in the "model" directory.

  • 3d/model/cube_flux_n.fits
  • 3d/model/cube_flux_plus_background_n.fits

These files are equivalent in format and content to the "3d/cube_flux.fits" and "3d/cube_flux_plus_background.fits" files obtained from the other modes and described above, with the difference that each of the files is a y-axis slice through the input scene cube. Within each file, only 2 y-axis locations in the array are populated for all values of x and wavelength, corresponding to one IFU element. The rest of the cube is zeroes.


  • "image/image_detector.fits" - the signal, in e/s
  • "image/image_saturation.fits"- the SNR
  • "image/image_snr.fits" - the saturation, where 1 = partially saturated and 2 = fully saturated
  • "image/image_ngroups_map.fits" - a map giving the number of groups before a given pixel will saturate

These are the 2-D images displayed by the ETC. First header (hdu 0) contains a 2-dimensional array of all of the values. As with the scene cubes, the header contains the spatial information for the scene.

For coronagraphic imaging, these files correspond to the chosen PSF subtraction strategy.

Plot directories


All of these files have 2 FITS headers, with an array of data (and explanatory headers) in the second header (hdu 1):

  • "wave_calc" - 1-dimensional wavelengths (in μm), corresponding to the spectra (whether input from the user or from the ETC library) input into the calculation.
  • "wave_pix" - 1-dimensional wavelength (in μm), corresponding to the output of the calculation. Unless a spectroscopic mode is specified, this file will have a single record with a single entry, which is the wavelength of the requested observation.

Some of these correspond to the line plots displayed in the ETC, but many do not.

These files contain inputs to the calculated observation, and have 2 records, wavelength (equivalent to "wave_calc") and the specified value, in their second header (hdu 1):

  • "target" - combined flux of all the targets in the scene re-sampled onto the calculation's input wavelength grid, in mJy (as a function of wavelength)
  • "fp" - the combined flux in e/s incident on the detector focal plane
  • "bg" - the (assumed uniform) background flux input into the calculation, in MJy/steradian
  • "bg_rate" - the background flux input into the calculation in e/s

Words in bold italics are also buttons 
or parameters in GUI tools. Bold 
style represents GUI menus/
panels & data software packages.

The following files are extracted from the calculation observation. The data are stored in the second header (hdu 1), and consist of 2 records: wavelength (equivalent to "wave_pix") and value. Unless a spectroscopic mode is used, the records will only have one entry—for the wavelength of the observation—in each. The values correspond to the scalar values displayed in the Reports pane of the ETC. For spectroscopic modes, the ETC reports the value at the reference wavelength in the Reports pane.

  • "total_flux" - the total flux onto the detector extracted from the calculation, in e/s
  • "extracted_flux_plus_bg" - the flux of the target extracted from the calculation, in e/s
  • "extracted_flux" - the flux of the target extracted from the calculation, with background subtracted, in e/s
  • "extracted_noise" - the extracted noise (incorporating all instrumental noise sources), in e/s
  • "sn" - the extracted SNR (calculated as extracted_flux/extracted_noise)
  • "extracted_bg_only" - the background flux extracted from the output of the calculation, in e/s
  • "extracted_bg_total" - the background plus contamination from sources in the scene, in e/s
  • "extracted_bg_contamination" - just the background contamination, in e/s
  • "n_partial_saturated" - number of partially saturated pixels in the output, as a function of wavelength
  • "n_full_saturated" - number of fully saturated pixels in the output, as a function of wavelength
  • "contrast" -  (coronagraphic imaging only) companion-to-host flux ratio, as a function of wavelength

Input data

"input.json" - a JSON-formatted text file containing a complete record of the inputs to the ETC. This can be used as input to the ETC when run as a script-able Python program.

Latest updates
    Updated for ETC v1.5. Video link added.

  • Updated for ETC v1.3. Added description of coronagraphy-only lineplot.
Originally published