Software architecture for OSIRIS: an infrared integral-field spectrograph for the Keck adaptive optics system

OSIRIS is an infrared integral-field spectrograph being built for the Keck AO system. OSIRIS presents novel data reduction and user-interaction challenges which are addressed by software being developed for OSIRIS. The complex raw data frames, containing up to 4096 interleaved spectra, are reduced in real-time and meaningfully displayed for quality-of-observation feedback to observers. Following an observing night, data are optimally reduced to science-quality data cubes in a semi-automated fashion. Further, the software must efficiently coordinate OSIRIS' spectroscopic observations with the SHARC off-axis imager and the AO system. To meet these demands, OSIRIS software is comprehensive and integrates the planning, execution, and reduction of observations. Facilitating this architecture is the formulation of observations into 'datasets', rather than into individual frames. Datasets are functional groups of frames organized by the needs and capabilities of the data reduction software (DRS). A typical dataset consists of dithered OSIRIS observations, coupled with associated off-axis AO PSF imagery from SHARC. A Java-based planning tool enables 'sequences' of datasets to be planned and saved both prior to and during observing sessions. An execution client interprets these XML-based files, and configures the hardware servers for OSIRIS, SHARC, and AO before executing the observations. As observations are completed, extensive information about the instrument and observatory are collated in an archival relational database. The DRS then uses information in the database, as well as archived calibration data and SHARC PSF data to produce a final science-quality data product, which may include differential refraction corrections, 3D PSF modeling/deconvolution, and OH-suppression.