An Introduction to soxspipe

soxspipe is an open-source Python package that can be installed via pip or conda (via the community-maintained conda-forge channel). The code is hosted on GitHub, where users can report feature requests or bugs via GitHub issues. More adventurous Python-literate users are encouraged to fork the code, add features or fix bugs, and then issue a pull request for the soxspipe development team to consider.

Purpose

The purpose of the SOXS Data Reduction pipeline (soxspipe) is to remove all instrument signatures from SOXS scientific data frames using the appropriate calibration data. soxspipe supports reducing data taken in each available observation mode, converting this data into physical units, and delivering them with their associated error bars to the ESO SAF. The pipeline also generates QC metrics to monitor telescope, instrument, and detector health. Errors are propagated through each data reduction stage and delivered within the final data products.

Running at the summit in La Silla, soxspipe delivers science-ready, fully reduced data products immediately after an exposure completes. The target users of soxspipe are the ESO Data Products and Quality Control Group (DPQC), the La Silla Science Operators (to be used as a quick look tool), the SOXS consortium and the general user community that may want to perform tailored processing of SOXS data.

Terminology

soxspipe employs a ‘recipes’ concept to describe each discrete, modular data-reduction step. Each of these ‘recipes’ accepts a set of files (SOF) file containing a list of the input files, or ingredients, required by the recipe. The recipes are then strung together to form a complete data-reduction cascade (or cookbook if you like), which converts raw science frames into ESO Phase 3-compliant science data products.

The term ‘utility’ defines the reusable functions called from multiple recipes. Recipes are named with the prefix ‘soxs’ followed by a succinct recipe description (e.g. soxs_mbias).