DOI: 10.5281/zenodo.8010817
title: Data and software: 'Survey Operations for the Dark Energy Spectroscopic Instrument'

description: Supplementary material to the DESI publication "Survey Operations for the Dark Energy Spectroscopic Instrument".
The main "figures.py" script generates the figures in the paper from the included data files.  The software relies on the DESI software stack available at github.com/desihub, and conveniently available at NERSC in the default DESI environment.
Some documentation on the code implementing the survey and for running the survey simulations is available here:

https://desisurvey.readthedocs.io/en/latest/
https://surveysim.readthedocs.io/en/latest/
Contents:

Configuration files

config-main-actual.yaml: a yaml file giving the configuration for the survey simulation software (https://github.com/desihub/surveysim/releases/tag/0.12.5), specifying things like interexposure times and downtime, using the actual long shutdowns we had.
config-main-nominal.yaml: a yaml file giving the configuration for the survey simulation software, using the nominal long shutdowns we planned for.
config-main.yaml: same as config-main-nominal.yaml, except with the default name looked for by the survey simulation software.
rules-main.yaml: configuration rules file controlling how the next tile selector selects files for observation, implementing our depth-first strategy.
Software files

figures.py: main routines for generating the plots in this publication.  Running `python figures.py` will create all of the figures used in this paper.
precess.py: set of routines implementing the precession of the Earth's pole used by figures.py for accurate airmass calculations.
downtime.py: routines used by figures.py for computing statistics about DESI's time usage, in particular the downtime.
util_efs.py: utility routines, primarily for making plots used by figures.py
util_efs_c.pyx: cython routines used by util_efs.py
margincomputations.py: routines for computing survey margin; i.e., how well we did relative to how much time was available.
Data files

Survey

exposures-daily-main-20220614.ecsv: list of main survey exposures taken through 2022-06-14, following processing by the offline pipeline.
exposures-20220614.ecsv: list of main survey exposures taken through 2022-06-14, before processing by the offline pipeline.  This largely duplicates exposures-daily, but contains much less information and contains more records for rare cases when exposures cannot be processed by the offline pipeline.
tiles-4112-packing-20210405-decorated-fixed.fits: file giving the geometry of DESI tile centers on the sky, plus associated information, like the extinction and stellar density at those locations.
tiles-daily.csv
Simulation

ephem_2019-01-01_2027-12-31.fits: ephemerides for DESI site for 2019 through 2027, generated by the desisurvey software ephemerides module.  https://github.com/desihub/desisurvey
desi-status-end-nominal.ecsv: tile file giving completion of each DESI tile, for a survey simulation using the nominal configuration file.
desi-status-end-actual-noslew.ecsv: tile file giving completion of each DESI tile, for a survey simulation using the actual configuration file, without slew optimization
desi-status-end-actual.ecsv: tile file giving the completion of each DESI tile, for a survey simulation using the actual configuration file.
exposures_actual-noslew.fits: exposures generated by survey simulation software using the 'actual' configuration, with slew optimization disabled.
exposures_actual.fits: exposures file generated by survey simulation software using the 'actual' configuration.
exposures_nominal.fits: exposures file generated by survey simulation software using the 'nominal' configuration.
stats_actual.fits: statistics file generated by survey simulation software using the 'actual' configuration, containing information about DESI time usage.
stats_actual-noslew.fits: same as stats_actual.fits, except with slew time optimization disabled.
stats_nominal.fits: same as stats_actual.fits, except with the nominal survey sim configuration file.
tiles-daily.csv: tile file with detailed information on all tiles completed by the survey
tiles-main-20220614.ecsv: tile file with tile completeness information on 20220614
tiles-main.ecsv: tile file with completeness information on tiles in the survey
performance_current.csv.gz: performance information detailing state of DESI instrument every second, used for tracking downtime statistics.
Dependencies: The included software uses the 'surveysim,' 'desisurvey,' and 'desimodel' packages, available on github through the desihub organization.  Otherwise it depends on the usual astronomy software stack: numpy scipy matplotlib astropy.  Alternatively, people with access to NERSC can load the default DESI environment and pull in all needed dependencies.