The fors_extract recipe =============================================================== .. data:: fors_extract Synopsis -------- Extraction of scientific spectra Description ----------- This recipe is used to reduce scientific spectra using the global distortion table created by the recipe fors_calib. The spectra are bias subtracted, flat fielded (if a normalised flat field is specified) and remapped eliminating the optical distortions. The wavelength calibration can be optionally upgraded using a number of sky lines: if no sky lines catalog of wavelengths is specified, an internal one is used instead. If the alignment to the sky lines is performed, the applied dispersion coefficient table is upgraded and saved to disk, and a new CCD wavelengths map is created. This recipe accepts both FORS1 and FORS2 frames. A grism table (typically depending on the instrument mode, and in particular on the grism used) may also be specified: this table contains a default recipe parameter setting to control the way spectra are extracted for a specific instrument mode, as it is used for automatic run of the pipeline on Paranal and in Garching. If this table is specified, it will modify the default recipe parameter setting, with the exception of those parameters which have been explicitly modifyed on the command line. If a grism table is not specified, the input recipe parameters values will always be read from the command line, or from an esorex configuration file if present, or from their generic default values (that are rarely meaningful). In the table below the MXU acronym can be read alternatively as MOS and LSS, depending on the instrument mode of the input data. Either a scientific or a standard star exposure can be specified in input (not both). Input files ^^^^^^^^^^^^ :: DO category: Type: Explanation: Required: SCIENCE_MXU Raw Scientific exposure Y or STANDARD_MXU Raw Standard star exposure Y MASTER_BIAS Calib Master bias Y GRISM_TABLE Calib Grism table . MASTER_SKYLINECAT Calib Sky lines catalog . MASTER_NORM_FLAT_MXU Calib Normalised flat field . MASTER_DISTORTION_TABLE Calib Global distortion model . or, in case of LSS-like MOS/MXU data, MASTER_NORM_FLAT_LONG_MXU Calib Normalised flat field . Output files ^^^^^^^^^^^^ :: DO category: Data type: Explanation: REDUCED_SCI_MXU FITS image Extracted scientific spectra REDUCED_SKY_SCI_MXU FITS image Extracted sky spectra REDUCED_ERROR_SCI_MXU FITS image Errors on extracted spectra UNMAPPED_SCI_MXU FITS image Sky subtracted scientific spectra MAPPED_SCI_MXU FITS image Rectified scientific spectra MAPPED_ALL_SCI_MXU FITS image Rectified science spectra with sky MAPPED_SKY_SCI_MXU FITS image Rectified sky spectra UNMAPPED_SKY_SCI_MXU FITS image Sky on CCD GLOBAL_SKY_SPECTRUM_MXU FITS table Global sky spectrum OBJECT_TABLE_SCI_MXU FITS table Positions of detected objects Only if the sky-alignment of the wavelength solution is requested: SKY_SHIFTS_LONG_SCI_MXU FITS table Sky lines offsets (LSS-like data) or SKY_SHIFTS_SLIT_SCI_MXU FITS table Sky lines offsets (MOS-like data) DISP_COEFF_SCI_MXU FITS table Upgraded dispersion coefficients WAVELENGTH_MAP_SCI_MXU FITS image Upgraded wavelength map Constructor ----------- .. method:: cpl.Recipe("fors_extract") :noindex: Create an object for the recipe fors_extract. :: import cpl fors_extract = cpl.Recipe("fors_extract") Parameters ---------- .. py:attribute:: fors_extract.param.dispersion Resampling step (Angstrom/pixel) (float; default: 0.0) [default=0.0]. .. py:attribute:: fors_extract.param.skyalign Polynomial order for sky lines alignment, or -1 to avoid alignment (int; default: 0) [default=0]. .. py:attribute:: fors_extract.param.wcolumn Name of sky line catalog table column with wavelengths (str; default: 'WLEN') [default="WLEN"]. .. py:attribute:: fors_extract.param.startwavelength Start wavelength in spectral extraction (float; default: 0.0) [default=0.0]. .. py:attribute:: fors_extract.param.endwavelength End wavelength in spectral extraction (float; default: 0.0) [default=0.0]. .. py:attribute:: fors_extract.param.flux Apply flux conservation (bool; default: True) [default=True]. .. py:attribute:: fors_extract.param.flatfield Apply flat field (bool; default: False) [default=False]. .. py:attribute:: fors_extract.param.skyglobal Subtract global sky spectrum from CCD (bool; default: False) [default=False]. .. py:attribute:: fors_extract.param.skymedian Sky subtraction from extracted slit spectra (bool; default: False) [default=False]. .. py:attribute:: fors_extract.param.skylocal Sky subtraction from CCD slit spectra (bool; default: True) [default=True]. .. py:attribute:: fors_extract.param.cosmics Eliminate cosmic rays hits (only if global sky subtraction is also requested) (bool; default: False) [default=False]. .. py:attribute:: fors_extract.param.slit_margin Number of pixels to exclude at each slit in object detection and extraction (int; default: 3) [default=3]. .. py:attribute:: fors_extract.param.ext_radius Maximum extraction radius for detected objects (pixel) (int; default: 6) [default=6]. .. py:attribute:: fors_extract.param.cont_radius Minimum distance at which two objects of equal luminosity do not contaminate each other (pixel) (int; default: 0) [default=0]. .. py:attribute:: fors_extract.param.ext_mode Object extraction method: 0 = aperture, 1 = Horne optimal extraction (int; default: 1) [default=1]. .. py:attribute:: fors_extract.param.time_normalise Normalise output spectra by the exposure time (bool; default: True) [default=True]. The following code snippet shows the default settings for the available parameters. :: import cpl fors_extract = cpl.Recipe("fors_extract") fors_extract.param.dispersion = 0.0 fors_extract.param.skyalign = 0 fors_extract.param.wcolumn = "WLEN" fors_extract.param.startwavelength = 0.0 fors_extract.param.endwavelength = 0.0 fors_extract.param.flux = True fors_extract.param.flatfield = False fors_extract.param.skyglobal = False fors_extract.param.skymedian = False fors_extract.param.skylocal = True fors_extract.param.cosmics = False fors_extract.param.slit_margin = 3 fors_extract.param.ext_radius = 6 fors_extract.param.cont_radius = 0 fors_extract.param.ext_mode = 1 fors_extract.param.time_normalise = True You may also set or overwrite some or all parameters by the recipe parameter `param`, as shown in the following example: :: import cpl fors_extract = cpl.Recipe("fors_extract") [...] res = fors_extract( ..., param = {"dispersion":0.0, "skyalign":0}) .. seealso:: `cpl.Recipe `_ for more information about the recipe object. Bug reports ----------- Please report any problems to `Carlo Izzo `_. Alternatively, you may send a report to the `ESO User Support Department `_. Copyright --------- This file is currently part of the FORS Instrument Pipeline Copyright (C) 2002-2010 European Southern Observatory This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA .. codeauthor:: Carlo Izzo