author: | Sergio Pascual <sergiopr@fis.ucm.es>, Nicolás Cardiel <cardiel@fis.ucm.es> |
---|---|
date: | 2012-03-02 |
version: | 1 |
Recipes have different execution environments. Some recipes are designed to process observing modes required while observing at the telescope. These modes are related to visualization, acquisition and focusing. The corresponding Recipes are integrated in the GTC environment. We call these recipes the Data Factory Pipeline, (DFP).
Other group of recipes are devoted to scientific observing modes: imaging, spectroscopy and auxiliary calibrations. These Recipes constitute the Data Reduction Pipeline, (DRP). The software is meant to be standalone, users shall download the software and run it in their own computers, with reduction parameters and calibrations provided by the instrument team.
Users of the DRP may use the simple Numina CLI (Command Line Interface) or the higher level, database-driven Pontifex. Users of the DFP shall interact with the software through the GTC Inspector.
EMIR Recipes based on Numina have a list of required parameters needed to properly configure the Recipe. The Recipe announces the required parameters with the following syntax (the syntax is subject to changes).
class SomeRecipeInput(RecipeInput):
master_dark = DataProductParameter(MasterDark, 'Master dark image')
some_numeric_value = Parameter(0.45, 'Some numeric value'),
@define_input(SomeRecipeInput)
class SomeRecipe(RecipeBase):
...
When the reduction is run from the command line using Numina CLI, the program checks that the required values are provided or have default values. When the reduction is automatically executed using Pontifex, the program searches the operation database looking for the most appropriated data products (in this case, a MasterDark frame).
When the Recipe is properly configured, it is executed with an observing block data structure as input. When run using Numina CLI, this data structure is created from a text file. When run with Pontifex, the observing block data structure is created from the contents of the database.
Recipes based on Numina provide a list of products created by the recipe. The Recipe announces the required parameters with the following syntax (the syntax is subject to changes).
class SomeRecipeInput(RecipeInput):
master_dark = DataProductParameter(MasterDark, 'Master dark image')
some_numeric_value = Parameter(0.45, 'Some numeric value'),
class SomeRecipeResult(RecipeResult):
master_flat = Product(MasterDark)
@define_input(SomeRecipeInput)
@define_result(SomeRecipeResult)
class SomeRecipe(RecipeBase):
...
In the following two sections, we list the Reduction Recipes for the DRP and for the DFP. The format is: name of the Python class of the recipe, name of the observing mode, required parameters and data products provided. From the fully quallified name of the recipe we have removed the initial emir.recipes..
The name of the parameters are prefixed with Product if the parameter is the result provided by another Recipe. If not, the value is a Parameter, or an OptionalParameter that will be ignored if not present.
class: | focus.TelescopeRoughFocusRecipe |
---|---|
mode: | TS rough focus |
requires: |
|
provides: | TelescopeFocus |
class: | focus.TelescopeFineFocusRecipe |
---|---|
mode: | TS fine focus |
requires: |
|
provides: | TelescopeFocus |
class: | focus.DTUFocusRecipe |
---|---|
mode: | EMIR focus control |
requires: |
|
provides: | DTUFocus |
class: | acquisition.MaskCheckRecipe |
---|---|
mode: | Target acquisition |
requires: |
|
provides: | TelescopeOffset |
class: | acquisition.MaskImagingRecipe |
---|---|
mode: | Mask image |
requires: |
|
provides: | MSMPositions |
class: | acquisition.MaskCheckRecipe |
---|---|
mode: | MSM and LSM check |
requires: |
|
provides: | TelescopeOffset, MSMPositions |
class: | auxiliary.BiasRecipe |
---|---|
mode: | Bias image |
requires: | |
provides: | MasterBias |
class: | auxiliary.DarkRecipe |
---|---|
mode: | Dark image |
requires: | Product: MasterBias |
provides: | MasterDark |
class: | auxiliary.IntensityFlatRecipe |
---|---|
mode: | Intensity flat-field |
requires: |
|
provides: | MasterIntensityFlat |
class: | auxiliary.SpectralFlatRecipe |
---|---|
mode: | MSM spectral flat-field |
requires: |
|
provides: | MasterSpectralFlat |
class: | auxiliary.SlitTransmissionRecipe |
---|---|
mode: | Slit transmission calibration |
requires: |
|
provides: | SlitTransmissionCalibration |
class: | auxiliary.WavelengthCalibrationRecipe |
---|---|
mode: | Wavelength calibration |
requires: |
|
provides: | WavelengthCalibration |
class: | image.StareImageRecipe |
---|---|
mode: | Stare image |
requires: |
|
provides: | Image, SourcesCatalog |
class: | image.NBImageRecipe |
---|---|
mode: | Nodded/Beamswitched images |
requires: |
|
provides: | Image, SourcesCatalog |
class: | image.DitheredImageRecipe |
---|---|
mode: | Dithered images |
requires: |
|
provides: | Image, SourcesCatalog |
class: | image.MicroditheredImageRecipe |
---|---|
mode: | Micro-dithered images |
requires: |
|
provides: | Image, SourcesCatalog |
class: | image.MosaicRecipe |
---|---|
mode: | Mosaiced images |
requires: | |
provides: | Image, SourcesCatalog |
class: | mos.StareSpectraRecipe |
---|---|
mode: | Stare spectra |
requires: |
|
provides: | Spectra, LinesCatalog |
class: | mos.DNSpectraRecipe |
---|---|
mode: | Dithered/Nodded spectra along the slit |
requires: |
|
provides: | Spectra, LinesCatalog |
class: | mos.OffsetSpectraRecipe |
---|---|
mode: | Offset spectra beyond the slit |
requires: |
|
provides: | Spectra, LinesCatalog |
class: | mos.RasterSpectraRecipe |
---|---|
mode: | Raster spectra |
requires: |
|
provides: | DataCube |
class: | engineering.DTU_XY_CalibrationRecipe |
---|---|
mode: | DTU X_Y calibration |
requires: |
|
provides: | DTU_XY_Calibration |
class: | engineering.DTU_Z_CalibrationRecipe |
---|---|
mode: | DTU Z calibration |
requires: | Parameter: dtu_range |
provides: | DTU_Z_Calibration |
class: | engineering.DTUFlexureRecipe |
---|---|
mode: | DTU Flexure compensation |
requires: | |
provides: | DTUFlexureCalibration |
class: | engineering.CSU2DetectorRecipe |
---|---|
mode: | CSU2Detector calibration |
requires: | Parameter: dtu_range |
provides: | DTU_XY_Calibration |
class: | engineering.FocalPlaneCalibrationRecipe |
---|---|
mode: | Lateral colour |
requires: | |
provides: | PointingOriginCalibration |
class: | engineering.SpectralCharacterizationRecipe |
---|---|
mode: | Spectral characterization |
requires: | |
provides: | WavelengthCalibration |
class: | engineering.RotationCenterRecipe |
---|---|
mode: | Centre of rotation |
requires: | |
provides: | PointingOriginCalibration |
class: | engineering.AstrometricCalibrationRecipe |
---|---|
mode: | Astrometric calibration |
requires: | |
provides: | Image |
class: | engineering.PhotometricCalibrationRecipe |
---|---|
mode: | Photometric calibration |
requires: | Parameter: phot |
provides: | PhotometricCalibration |
class: | engineering.SpectroPhotometricCalibrationRecipe |
---|---|
mode: | Spectrophotometric calibration |
requires: | Parameter: sphot |
provides: | SpectroPhotometricCalibration |