iris_pipeline Documentation

The IRIS Data Reduction System is based on the stpipe package released by Space Telescope for the James Webb Space Telescope.

With stpipe we can configure each step of a pipeline through one or more text based .INI style files, then we provide one input FITS file or a set of multiple inputs defined in JSON (named Associations). Custom analysis steps and pipelines for IRIS are defined as classes in the current repository iris_pipeline

Then execute the pipeline from the command line using the tmtrun executable or using directly the Python library.

The pipeline also dynamically interfaces to the CRDS the Calibration References Data System, to retrieve the best calibration datasets given the metadata in the headers of the input FITS files. The CRDS client can also load data from a local cache, so for now we do not have a actual CRDS server and we only rely on a local cache.

The CRDS is not under our control, the Thirty Meter Telescope will deliver a database system to replace the CRDS and we can adapt our code to that in the future.

Getting Started

Example run

Design

Calibration and CRDS

Algorithms

Subarrays

Reference/API

iris_pipeline Package

Functions

monkeypatch_jwst_datamodels()

Classes

AssignWcsStep([name, parent, config_file, …])

AssignWcsStep: Create a gWCS object and store it in Model.meta.

BackgroundStep([name, parent, config_file, …])

BackgroundStep: Subtract background exposures from target exposures.

DQInitStep([name, parent, config_file, …])

Initialize the Data Quality extension from the mask reference file.

FlatFieldStep([name, parent, config_file, …])

Flat-field a science image using a flatfield reference image.

MergeSubarraysStep([name, parent, …])

ParseSubarrayMapStep: Parse a subarray map extension, if available, and create header metadata and data quality flag accordingly

NormalizeStep([name, parent, config_file, …])

NormalizeStep: Normalize a frame by dividing by its own mean, median or mode

ParseSubarrayMapStep([name, parent, …])

ParseSubarrayMapStep: Parse a subarray map extension, if available, and create header metadata and data quality flag accordingly

ProcessFlatfieldL2(*args, **kwargs)

ProcessFlatfieldL2: Remove dark and normalize exposure to create a flat field to be later added to the CRDS.

ProcessImagerL2Pipeline(*args, **kwargs)

ProcessImagerL2Pipeline: Processes JWST imaging-mode slope data from Level-2a to Level-2b.

ROPPipeline(*args, **kwargs)

Detector1Pipeline for IRIS

SubtractImagesStep([name, parent, …])

SubtractImagesStep: Subtract two exposures from one another to accomplish background subtraction.

UnsupportedPythonError

Class Inheritance Diagram

Inheritance diagram of iris_pipeline.assign_wcs.assign_wcs_step.AssignWcsStep, iris_pipeline.background.background_step.BackgroundStep, iris_pipeline.dq_init.dq_init_step.DQInitStep, iris_pipeline.flatfield.flat_field_step.FlatFieldStep, iris_pipeline.merge_subarrays.merge_subarrays.MergeSubarraysStep, iris_pipeline.normalize.normalize_step.NormalizeStep, iris_pipeline.parse_subarray_map.parse_subarray_map_step.ParseSubarrayMapStep, iris_pipeline.pipeline.preprocess_flatfield.ProcessFlatfieldL2, iris_pipeline.pipeline.image2.ProcessImagerL2Pipeline, iris_pipeline.pipeline.rop.ROPPipeline, iris_pipeline.background.subtract_images_step.SubtractImagesStep, iris_pipeline.UnsupportedPythonError