The flames_obs_redchain recipe
===============================================================

.. data:: flames_obs_redchain

Synopsis
--------

Runs the full UVES-FIBRE reduction chain

Description
-----------

This recipe does a complete science reduction. It runs all necessary
calibration recipes depending on the availability of raw/processed
calibration frames.

Input frames are all UVES-FIBER raw and reference frames:

formatchecks, FIB_ARC_LAMP_FORM_RED,
order definition frames, FIB_ORDER_FLAT_RED,
biases, BIAS_RED,
darks, DARK_RED,
flats, SFLAT_RED,
arc lamps, FIB_ARC_LAMP_RED,
standard stars, FIB_STANDARD_RED
a wavelength catalogue table,LINE_REFER_TABLE, 
and optionally a wavelength table of bright lines,LINE_INTMON_TABLE, 
used only for computing Quality Control parameters.

a reference standard star flux table, FLUX_STD_TABLE, 
a table describing the atmospheric extintion,EXTCOEFF_TABLE.

Optionally, science frames, SCIENCE_xxx, or UVES_SCI_POINT_xxx, 
or UVES_SCI_EXTND_xxx, or UVES_SCI_SLICER_xxx.

For further details on the data reduction and the input frame types
refer to the man page of the individual recipes.


Constructor
-----------

.. method:: cpl.Recipe("flames_obs_redchain")
   :noindex:

   Create an object for the recipe flames_obs_redchain.

::

   import cpl
   flames_obs_redchain = cpl.Recipe("flames_obs_redchain")

Parameters
----------

.. py:attribute:: flames_obs_redchain.param.debug

    Whether or not to save intermediate results to local directory (bool;  default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.backsubdegx

    Degree (in x) of polynomial used to estimate the background  (mode=poly). (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.backsubdegy

    Degree (in y) of polynomial used to estimate the background  (mode=poly). (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.backsubgrid

    Number of grid points (in x- and y-direction) used to estimate the  background (mode=poly). (int; default: 50) [default=50].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.backsubkappa

    The value of kappa in the one-sided kappa-sigma clipping used to  estimate the background (mode=poly). (float; default: 4.0) [default=4.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.backsubradiusy

    The height (in pixels) of the background sampling window is (2*radiusy  + 1). This parameter is not corrected for binning. (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.defpol1

    The degree of the bivarite fit (cross dispersion direction). If  negative, the degree is optimized to give the best fit (int; default:  -1) [default=-1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.defpol2

    The degree of the bivarite fit (order number). If negative, the degree  is optimized to give the best fit (int; default: -1) [default=-1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.kappa

    Used for kappa-sigma clipping of the final polynomial fit. If  negative, no clipping is done (float; default: 4.0) [default=4.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.maxgap

    If the order line drops below detection threshold, the order tracing  algorithm will try to jump a gap of maximum size 'maxgap' multiplied  by the image width (float; default: 0.2) [default=0.2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.maxrms

    When fitting the orders with straight lines, this is the maximum  allowed RMS relative to the median RMS of all orders (float; default:  100.0) [default=100.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.maxslope

    Maximum possible line slope (float; default: 0.2) [default=0.2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.minslope

    Minimum possible line slope. This should be the 'physical' slope on  the chip, i.e. not taking binning factors into account, which is  handled by the recipe (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.minthresh

    The minimum threshold value is (min + minthres*(max - min)). Here  'min' and 'max' are the lowest and highest pixel values in the central  bin of the order (float; default: 0.2) [default=0.2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.mmethod

    Background subtraction method. If equal to 'median' the background is  sampled using the median of a sub-window. If 'minimum', the minimum  sub-window value is used. If 'no', no background subtraction is done.  (str; default: 'median') [default="median"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.pthres

    In automatic mode, or if the number of orders to detect is read from a  guess table, the detection of new lines stops when the intensity of a  candidate line drops to less than 'pthres' times the intensity of the  previous detection.  (float; default: 0.2) [default=0.2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.radx

    Half X size of median filtering window (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.rady

    Half Y size of median filtering window (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.samplewidth

    Separation of sample traces (used by Hough transform) in input image  (int; default: 50) [default=50].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.sloperes

    Resolution (width in pixels) of Hough space (int; default: 120) [default=120].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.tracestep

    The step size used when tracing the orders (int; default: 10) [default=10].
.. py:attribute:: flames_obs_redchain.param.flames_cal_orderpos.use_guess_tab

    If a Guess order table is provided this parameter set how it is  used:0: No usage, 1: use it to set lower/upper Y raws where order are  searched 2: the order table try to fully match the guess (int;  default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.ccd_rot_angle_off

    Offset on CCD rotation angle (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.cd_angle_off

    Offset on cross disperser angle (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.compute_regression_sw

    Compute regression? (bool; default: True) [default=True].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.def_pol1

    Polynomial X deg (int; default: 4) [default=4].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.def_pol2

    Polynomial Y deg (int; default: 5) [default=5].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.ech_angle_off

    Offset on echelle angle (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.kappa

    Kappa value in kappa sigma clipping on RESIDUAL between YFIT and Y  columns (float; default: 4.5) [default=4.5].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.mbox_x

    Match box X size (int; default: 40) [default=40].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.mbox_y

    Match box Y size (int; default: 40) [default=40].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.tol

    Tolerance in kappa sigma clipping on RESIDUAL between YFIT and Y  columns (float; default: 2.0) [default=2.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.trans_x

    Detector translation along X (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_predict.trans_y

    Detector translation along Y (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.bias_method

    Bias subtraction method, M for master bias frame, N for no bias  subtraction, V to subtract a constant bias level defined by the  parameter bias_value (str; default: 'M') [default="M"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.bias_value

    Bias value (only if bias_method = V) (int; default: 200) [default=200].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.clean_tmp_products

    Input data format (bool; default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.cubify

    Cubify switch (bool; default: True) [default=True].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.ext_method

    Extraction method (str; default: 'opt') [default="opt"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.fileprep

    Slitff* and Fibreff* file preparation. If fast extraction method is  used it should be set to FALSE (bool; default: True) [default=True].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.filter_switch

    Filter switch (str; default: 'none') [default="none"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.sat_thr

    Saturation threshold (int; default: 55000) [default=55000].
.. py:attribute:: flames_obs_redchain.param.flames_cal_prep_sff_ofpos.save_flat_size

    To be sure to use the flat part of a slit flatsone may need to  subtract this bit. The default value -1, is used for automatic  setting: if WCEN=520 save_flat_size=0, else save_flat_size=2. Values  explicitly set by user overwrite this rule. (int; default: -1) [default=-1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.alpha

    The parameter that controls the distance to the nearest neighbours  (float; default: 0.1) [default=0.1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.degree

    Degrees of the global 2d dispersion polynomial. If a negative number  is specified, the polynomial degrees are automatically selected by  starting from (1, 1) and inreasing the degrees as long as the RMS  residual decreases significantly (int; default: 4) [default=4].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.best

    (optimal extraction only) If false (fastest), the spectrum is  extracted only once. If true (best), the spectrum is extracted twice,  the second time using improved variance estimates based on the first  iteration. Better variance estimates slightly improve the obtained  signal to noise but at the cost of increased execution time (bool;  default: True) [default=True].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.chunk

    In optimal extraction mode, the chunk size (in pixels) used for  fitting the analytical profile (a fit of the analytical profile to  single bins would suffer from low statistics). (int; default: 32) [default=32].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.kappa

    In optimal extraction mode, this is the threshold for bad (i.e.  hot/cold) pixel rejection. If a pixel deviates more than kappa*sigma  (where sigma is the uncertainty of the pixel flux) from the inferred  spatial profile, its weight is set to zero. Range: [-1,100]. If this  parameter is negative, no rejection is performed. (float; default:  10.0) [default=10.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.method

    Extraction method. (2d/optimal not supported by uves_cal_wavecal,  weighted supported only by uves_cal_wavecal, 2d not supported by  uves_cal_response) (str; default: 'average') [default="average"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.oversample

    The oversampling factor used for the virtual resampling algorithm. If  negative, the value 5 is used for S/N <=200, and the value 10 is used  if the estimated S/N is > 200 (int; default: -1) [default=-1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.profile

    In optimal extraction mode, the kind of profile to use. 'gauss' gives  a Gaussian profile, 'moffat' gives a Moffat profile with beta=4 and a  possible linear sky contribution. 'virtual' uses a virtual resampling  algorithm (i.e. measures and uses the actual object profile).  'constant' assumes a constant spatial profile and allows optimal  extraction of wavelength calibration frames. 'auto' will automatically  select the best method based on the estimated S/N of the object. For  low S/N, 'moffat' or 'gauss' are recommended (for robustness). For  high S/N, 'virtual' is recommended (for accuracy). In the case of  virtual resampling, a precise determination of the order positions is  required; therefore the order-definition is repeated using the  (assumed non-low S/N) science frame (str; default: 'auto') [default="auto"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.extract.skymethod

    In optimal extraction mode, the sky subtraction method to use.  'median' estimates the sky as the median of pixels along the slit  (ignoring pixels close to the object), whereas 'optimal' does a chi  square minimization along the slit to obtain the best combined object  and sky levels. The optimal method gives the most accurate sky  determination but is also a bit slower than the median method (str;  default: 'optimal') [default="optimal"].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.kappa

    Lines with residuals more then kappa stdev are rejected from the final  fit (float; default: 4.0) [default=4.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.length

    Length (in pixels) of each extraction window. This parameter is also  equal to the seperation of adjacent window centers, causing the  extraction windows to always be aligned. The parameter is  automatically adjusted according to the binning of the input raw  frame. If negative, the extraction window length is determined  automatically to cover the full slit (float; default: 7.0) [default=7.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.maxerror

    This parameter controls the graceful exit of the identification loop.  If the RMS of the global fit exceeds this value (pix) the iteration  stops (float; default: 20.0) [default=20.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.maxlines

    Maximum number of lines to detect. If zero, the default value (1600  for BLUE/REDL chip; 1400 for REDU chip) is used. (int; default: 0) [default=0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.minlines

    Minimum number of lines to detect. If zero, the default value (1100  for BLUE/REDL chips; 1000 for REDU chip) is used. (int; default: 0) [default=0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.nwindows

    Number of extraction windows per trace. The windows will be aligned  (i.e. no overlap and no spacing between adjacent windows). Unless an  offset is specified, the middle window(s) is centered on the trace  (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.offset

    A global offset (in pixels) of all extraction windows (float; default:  0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.range

    Width (pix) of search window is 2*range + 1. This parameter is  automatically adjusted according to binning. (int; default: 8) [default=8].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.rebin.scale

    Whether or not to multiply by the factor dx/dlambda (pixels per  wavelength) during the rebinning. This option is disabled as default  in concordance with the method used in the MIDAS pipeline. This option  should be set to true to convert the observed flux (in pixel-space) to  a flux per wavelength (in wavelength-space). (bool; default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.rebin.wavestep

    The bin size used for REDU data (in w.l.u.) in wavelength space. If  negative, a step size of 2/3 * ( average pixel size ) is used. (float;  default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.rebin.wavestep_redu

    The bin size used for REDU data (in w.l.u.) in wavelength space. If  negative, a step size of 2/3 * ( average pixel size ) is used. (float;  default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.shiftmax

    The maximum shift (pix) in either direction compared to guess  solution. This parameter is automatically corrected for binning  (float; default: 10.0) [default=10.0].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.shiftstep

    The step size (pix) used when searching for the optimum shift. This  parameter is automatically corrected for binning (float; default: 0.1) [default=0.1].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.shifttoler

    Tolerance (pix) when matching shifted lines. This parameter is not  adjusted according to binning (float; default: 0.05) [default=0.05].
.. py:attribute:: flames_obs_redchain.param.flames_cal_wavecal.tolerance

    Tolerance of fit. If positive, the tolerance is in pixel units. If  negative, abs(tolerance) is in wavelength units. Lines with residuals  worse than the tolerance are excluded from the final fit. Unlike in  previous versions, this parameter is not corrected for CCD binning.  This rejection based on the absolute residual in pixel can be  effectively disabled by setting the tolerance to a very large number  (e.g. 9999). In that case outliers will be rejected using only kappa  sigma clipping. (float; default: 0.6) [default=0.6].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.bias_method

    Bias subtraction method (str; default: 'M') [default="M"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.bias_value

    Bias value (only if bias_method = V) (int; default: 200) [default=200].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.bkg_max_io_win

    Background window number in each full inter order (int; default: 500) [default=500].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.bkg_xy_win_sz_x

    x maximum size of each background window:  (int; default: 6) [default=6].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.bkg_xy_win_sz_y

    y maximum size of each background window:  (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.clean_tmp_products

    Input data format (bool; default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.cor_def_off

    Correlation center offset? (float; default: 0.0) [default=0.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.cor_def_pnt

    Correlation sampling points? (int; default: 25) [default=25].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.cor_def_rng

    Correlation range size? (float; default: 6.0) [default=6.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.cor_max_fnd

    Find correlation maximum? (str; default: 'Y') [default="Y"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.corvel_iter

    Velocity correlation iteration number (SimCal) (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.cubify_sw

    Cubify switch (str; default: 'N') [default="N"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.drs_base_name

    Base name for science products (str; default: 'fxb') [default="fxb"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.drs_ext_w_siz

    Integration window size good: 10 (if fibre deconvolution works fine)  (float; default: 10.0) [default=10.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.drs_k_s_thre

    Kappa sigma threshold (float; default: 10.0) [default=10.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.drs_maxyshift

    Half width of the interval to scan for correlation, when determining y  shift (float; default: 3.0) [default=3.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.ext_method

    Extraction method (str; default: 'opt') [default="opt"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.filt_sw

    Filter switch (str; default: 'none') [default="none"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.merge

    Order merging method. If 'optimal', the flux in the overlapping region  is set to the (optimally computed, using the uncertainties) average of  single order spectra. If 'sum', the flux in the overlapping region is  computed as the sum of the single order spectra. If flat-fielding is  done, method 'optimal' is recommended, otherwise 'sum'. (str; default:  'optimal') [default="optimal"].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.merge_delt1

    Order merging left hand (short wavelength) cut. To reduce the amount  of order overlapping regions we allow to cut short and long wavelength  ranges. This may reduce the ripple possibly introduced by the order  merging. Suggested values are: 10 (W<=390), 12 (390<W<=437,  520<W<=564), 14 (437<W<=520, 564<W<860), 4 (W>=860)  (float; default:  -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.merge_delt2

    Order merging right hand (long wavelength) cut. To reduce the amount  of order overlapping regions we allow to cut short and long wavelength  ranges. This may reduce the ripple possibly introduced by the order  merging. Suggested values is 4 for W<860, else 0 (float; default:  -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.pixel_thresh_max

    Pixel saturation threshold max (int; default: 55000) [default=55000].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.pixel_thresh_min

    Pixel saturation threshold min (int; default: -20) [default=-20].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.rebin.scale

    Whether or not to multiply by the factor dx/dlambda (pixels per  wavelength) during the rebinning. This option is disabled as default  in concordance with the method used in the MIDAS pipeline. This option  should be set to true to convert the observed flux (in pixel-space) to  a flux per wavelength (in wavelength-space). (bool; default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.rebin.wavestep

    The bin size used for REDU data (in w.l.u.) in wavelength space. If  negative, a step size of 2/3 * ( average pixel size ) is used. (float;  default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.flames_obs_scired.rebin.wavestep_redu

    The bin size used for REDU data (in w.l.u.) in wavelength space. If  negative, a step size of 2/3 * ( average pixel size ) is used. (float;  default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.plotter

    Any plots produced by the recipe are redirected to the command  specified by this parameter. The plotting command must contain the  substring 'gnuplot' and must be able to parse gnuplot syntax on its  standard input. Valid examples of such a command may include 'gnuplot  -persist' and 'cat > mygnuplot$$.gp'. A finer control of the plotting  options can be obtained by writing an executable script, e.g.  my_gnuplot.pl, that executes gnuplot after setting the desired gnuplot  options (e.g. set terminal pslatex color). To turn off plotting, set  this parameter to 'no' (str; default: 'no') [default="no"].
.. py:attribute:: flames_obs_redchain.param.process_chip

    For RED arm data process the redl, redu, or both chip(s) (str;  default: 'both') [default="both"].
.. py:attribute:: flames_obs_redchain.param.scired

    Whether or not to do science reduction. If false, only master  calibration frames are created. If false, either zero or all necessary  calibration frames must be provided for each arm (bool; default: True) [default=True].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.clean_traps

    Clean detector traps. If TRUE detector traps are interpolated.The bad  pixels are replaced by the average of thenearest good pixels in the  same column, or simply marked as bad. The positions of bad pixels are  hard-coded (as function of UVES chip). (bool; default: False) [default=False].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.dc_mask_x

    x-size (pixel) of the mask starting at (x,y) = (1,1) (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.dc_mask_y

    y-size (pixel) of the mask starting at (x,y) = (1,1) (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.khigh

    Kappa used to clip high level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.klow

    Kappa used to clip low level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.niter

    Number of kappa sigma iterations, when method is set to 'mean'  (int;  default: 5) [default=5].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.pd_compute

    Determine Fixed Pattern Noise. If TRUE the Fixed Patter Noise power  spectrum is determined.(as function of UVES chip). (bool; default:  False) [default=False].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mbias.stack_method

    Method used to build master frame  (str; default: 'median') [default="median"].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.khigh

    Kappa used to clip high level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.khigh

    Kappa used to clip high level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.klow

    Kappa used to clip low level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.klow

    Kappa used to clip low level values, when method is set to 'mean'  (float; default: 5.0) [default=5.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.niter

    Number of kappa sigma iterations, when method is set to 'mean'  (int;  default: 5) [default=5].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.niter

    Number of kappa sigma iterations, when method is set to 'mean'  (int;  default: 5) [default=5].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.border_x

    X distance between the left hand side of the detector and the left  hand side of the region [pix] (int; default: 100) [default=100].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.border_y

    X distance between the left hand side of the detector and the left  hand side of the region [pix] (int; default: 100) [default=100].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.box_sx

    Region X size [pix] (int; default: 100) [default=100].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.box_sy

    Region Y size [pix] (int; default: 100) [default=100].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.num_x

    Number of regions along the X axis (where mean/med/rms are computed).  (int; default: 4) [default=4].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.num_y

    Number of regions along the Y axis(where mean/med/rms are computed).  (int; default: 4) [default=4].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.when

    When QC analysis is performed. 0: on each raw frame or 1: on the  master frame (int; default: 0) [default=0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.stack_method

    Method used to build master frame  (str; default: 'median') [default="median"].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mdark.stack_method

    Method used to build master frame  (str; default: 'median') [default="median"].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.mmethod

    Background measuring method. If equal to 'median' the background is  sampled using the median of a subwindow. If 'minimum', the subwindow  minimum value is used. If 'no', no background subtraction is done.  (str; default: 'median') [default="median"].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.npoints

    This is the number of columns in interorder space used to sample the  background. (int; default: 82) [default=82].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.radiusy

    The height (in pixels) of the background sampling window is (2*radiusy  + 1). This parameter is not corrected for binning. (int; default: 2) [default=2].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.sdegree

    Degree of interpolating splines. Currently only degree = 1 is  supported (int; default: 1) [default=1].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.smoothx

    If spline interpolation is used to measure the background, the  x-radius of the post-smoothing window is (smoothx * image_width).  Here, 'image_width' is the image width after binning. If negative, the  default values are used: (25.0/4096) for blue flat-field frames,  (50.0/4096) for red flat-field frames, (300.0/4096) for blue science  frames and (300.0/4096) for red science frames. (float; default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.backsub.smoothy

    If spline interpolation is used to measure the background, the  y-radius of the post-smoothing window is (smoothy * image_height).  Here, 'image_height' is the image height after binning. If negative,  the default values are used: (100.0/2048) for blue flat-field frames,  (300.0/2048) for red flat-field frames, (200.0/2048) for blue science  frames and (500.0/2048) for red science frames. (float; default: -1.0) [default=-1.0].
.. py:attribute:: flames_obs_redchain.param.uves_cal_mflat.norm_method

    Method used to build master frame  (str; default: 'explevel') [default="explevel"].


The following code snippet shows the default settings for the available 
parameters.

::

   import cpl
   flames_obs_redchain = cpl.Recipe("flames_obs_redchain")

   flames_obs_redchain.param.debug = False
   flames_obs_redchain.param.flames_cal_orderpos.backsubdegx = 2
   flames_obs_redchain.param.flames_cal_orderpos.backsubdegy = 2
   flames_obs_redchain.param.flames_cal_orderpos.backsubgrid = 50
   flames_obs_redchain.param.flames_cal_orderpos.backsubkappa = 4.0
   flames_obs_redchain.param.flames_cal_orderpos.backsubradiusy = 2
   flames_obs_redchain.param.flames_cal_orderpos.defpol1 = -1
   flames_obs_redchain.param.flames_cal_orderpos.defpol2 = -1
   flames_obs_redchain.param.flames_cal_orderpos.kappa = 4.0
   flames_obs_redchain.param.flames_cal_orderpos.maxgap = 0.2
   flames_obs_redchain.param.flames_cal_orderpos.maxrms = 100.0
   flames_obs_redchain.param.flames_cal_orderpos.maxslope = 0.2
   flames_obs_redchain.param.flames_cal_orderpos.minslope = 0.0
   flames_obs_redchain.param.flames_cal_orderpos.minthresh = 0.2
   flames_obs_redchain.param.flames_cal_orderpos.mmethod = "median"
   flames_obs_redchain.param.flames_cal_orderpos.pthres = 0.2
   flames_obs_redchain.param.flames_cal_orderpos.radx = 2
   flames_obs_redchain.param.flames_cal_orderpos.rady = 1
   flames_obs_redchain.param.flames_cal_orderpos.samplewidth = 50
   flames_obs_redchain.param.flames_cal_orderpos.sloperes = 120
   flames_obs_redchain.param.flames_cal_orderpos.tracestep = 10
   flames_obs_redchain.param.flames_cal_orderpos.use_guess_tab = 1
   flames_obs_redchain.param.flames_cal_predict.ccd_rot_angle_off = 0.0
   flames_obs_redchain.param.flames_cal_predict.cd_angle_off = 0.0
   flames_obs_redchain.param.flames_cal_predict.compute_regression_sw = True
   flames_obs_redchain.param.flames_cal_predict.def_pol1 = 4
   flames_obs_redchain.param.flames_cal_predict.def_pol2 = 5
   flames_obs_redchain.param.flames_cal_predict.ech_angle_off = 0.0
   flames_obs_redchain.param.flames_cal_predict.kappa = 4.5
   flames_obs_redchain.param.flames_cal_predict.mbox_x = 40
   flames_obs_redchain.param.flames_cal_predict.mbox_y = 40
   flames_obs_redchain.param.flames_cal_predict.tol = 2.0
   flames_obs_redchain.param.flames_cal_predict.trans_x = 0.0
   flames_obs_redchain.param.flames_cal_predict.trans_y = 0.0
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.bias_method = "M"
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.bias_value = 200
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.clean_tmp_products = False
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.cubify = True
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.ext_method = "opt"
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.fileprep = True
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.filter_switch = "none"
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.sat_thr = 55000
   flames_obs_redchain.param.flames_cal_prep_sff_ofpos.save_flat_size = -1
   flames_obs_redchain.param.flames_cal_wavecal.alpha = 0.1
   flames_obs_redchain.param.flames_cal_wavecal.degree = 4
   flames_obs_redchain.param.flames_cal_wavecal.extract.best = True
   flames_obs_redchain.param.flames_cal_wavecal.extract.chunk = 32
   flames_obs_redchain.param.flames_cal_wavecal.extract.kappa = 10.0
   flames_obs_redchain.param.flames_cal_wavecal.extract.method = "average"
   flames_obs_redchain.param.flames_cal_wavecal.extract.oversample = -1
   flames_obs_redchain.param.flames_cal_wavecal.extract.profile = "auto"
   flames_obs_redchain.param.flames_cal_wavecal.extract.skymethod = "optimal"
   flames_obs_redchain.param.flames_cal_wavecal.kappa = 4.0
   flames_obs_redchain.param.flames_cal_wavecal.length = 7.0
   flames_obs_redchain.param.flames_cal_wavecal.maxerror = 20.0
   flames_obs_redchain.param.flames_cal_wavecal.maxlines = 0
   flames_obs_redchain.param.flames_cal_wavecal.minlines = 0
   flames_obs_redchain.param.flames_cal_wavecal.nwindows = 1
   flames_obs_redchain.param.flames_cal_wavecal.offset = 0.0
   flames_obs_redchain.param.flames_cal_wavecal.range = 8
   flames_obs_redchain.param.flames_cal_wavecal.rebin.scale = False
   flames_obs_redchain.param.flames_cal_wavecal.rebin.wavestep = -1.0
   flames_obs_redchain.param.flames_cal_wavecal.rebin.wavestep_redu = -1.0
   flames_obs_redchain.param.flames_cal_wavecal.shiftmax = 10.0
   flames_obs_redchain.param.flames_cal_wavecal.shiftstep = 0.1
   flames_obs_redchain.param.flames_cal_wavecal.shifttoler = 0.05
   flames_obs_redchain.param.flames_cal_wavecal.tolerance = 0.6
   flames_obs_redchain.param.flames_obs_scired.bias_method = "M"
   flames_obs_redchain.param.flames_obs_scired.bias_value = 200
   flames_obs_redchain.param.flames_obs_scired.bkg_max_io_win = 500
   flames_obs_redchain.param.flames_obs_scired.bkg_xy_win_sz_x = 6
   flames_obs_redchain.param.flames_obs_scired.bkg_xy_win_sz_y = 2
   flames_obs_redchain.param.flames_obs_scired.clean_tmp_products = False
   flames_obs_redchain.param.flames_obs_scired.cor_def_off = 0.0
   flames_obs_redchain.param.flames_obs_scired.cor_def_pnt = 25
   flames_obs_redchain.param.flames_obs_scired.cor_def_rng = 6.0
   flames_obs_redchain.param.flames_obs_scired.cor_max_fnd = "Y"
   flames_obs_redchain.param.flames_obs_scired.corvel_iter = 1
   flames_obs_redchain.param.flames_obs_scired.cubify_sw = "N"
   flames_obs_redchain.param.flames_obs_scired.drs_base_name = "fxb"
   flames_obs_redchain.param.flames_obs_scired.drs_ext_w_siz = 10.0
   flames_obs_redchain.param.flames_obs_scired.drs_k_s_thre = 10.0
   flames_obs_redchain.param.flames_obs_scired.drs_maxyshift = 3.0
   flames_obs_redchain.param.flames_obs_scired.ext_method = "opt"
   flames_obs_redchain.param.flames_obs_scired.filt_sw = "none"
   flames_obs_redchain.param.flames_obs_scired.merge = "optimal"
   flames_obs_redchain.param.flames_obs_scired.merge_delt1 = -1.0
   flames_obs_redchain.param.flames_obs_scired.merge_delt2 = -1.0
   flames_obs_redchain.param.flames_obs_scired.pixel_thresh_max = 55000
   flames_obs_redchain.param.flames_obs_scired.pixel_thresh_min = -20
   flames_obs_redchain.param.flames_obs_scired.rebin.scale = False
   flames_obs_redchain.param.flames_obs_scired.rebin.wavestep = -1.0
   flames_obs_redchain.param.flames_obs_scired.rebin.wavestep_redu = -1.0
   flames_obs_redchain.param.plotter = "no"
   flames_obs_redchain.param.process_chip = "both"
   flames_obs_redchain.param.scired = True
   flames_obs_redchain.param.uves_cal_mbias.clean_traps = False
   flames_obs_redchain.param.uves_cal_mbias.dc_mask_x = 1
   flames_obs_redchain.param.uves_cal_mbias.dc_mask_y = 1
   flames_obs_redchain.param.uves_cal_mbias.khigh = 5.0
   flames_obs_redchain.param.uves_cal_mbias.klow = 5.0
   flames_obs_redchain.param.uves_cal_mbias.niter = 5
   flames_obs_redchain.param.uves_cal_mbias.pd_compute = False
   flames_obs_redchain.param.uves_cal_mbias.stack_method = "median"
   flames_obs_redchain.param.uves_cal_mdark.khigh = 5.0
   flames_obs_redchain.param.uves_cal_mdark.khigh = 5.0
   flames_obs_redchain.param.uves_cal_mdark.klow = 5.0
   flames_obs_redchain.param.uves_cal_mdark.klow = 5.0
   flames_obs_redchain.param.uves_cal_mdark.niter = 5
   flames_obs_redchain.param.uves_cal_mdark.niter = 5
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.border_x = 100
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.border_y = 100
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.box_sx = 100
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.box_sy = 100
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.num_x = 4
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.num_y = 4
   flames_obs_redchain.param.uves_cal_mdark.qc_dark.reg.when = 0
   flames_obs_redchain.param.uves_cal_mdark.stack_method = "median"
   flames_obs_redchain.param.uves_cal_mdark.stack_method = "median"
   flames_obs_redchain.param.uves_cal_mflat.backsub.mmethod = "median"
   flames_obs_redchain.param.uves_cal_mflat.backsub.npoints = 82
   flames_obs_redchain.param.uves_cal_mflat.backsub.radiusy = 2
   flames_obs_redchain.param.uves_cal_mflat.backsub.sdegree = 1
   flames_obs_redchain.param.uves_cal_mflat.backsub.smoothx = -1.0
   flames_obs_redchain.param.uves_cal_mflat.backsub.smoothy = -1.0
   flames_obs_redchain.param.uves_cal_mflat.norm_method = "explevel"


You may also set or overwrite some or all parameters by the recipe 
parameter `param`, as shown in the following example:

::

   import cpl
   flames_obs_redchain = cpl.Recipe("flames_obs_redchain")
   [...]
   res = flames_obs_redchain( ..., param = {"debug":False, "flames_cal_orderpos.backsubdegx":2})


.. seealso:: `cpl.Recipe <https://packages.python.org/python-cpl/recipe.html>`_
   for more information about the recipe object.

Bug reports
-----------

Please report any problems to `Jonas M. Larsen <cpl@eso.org>`_. Alternatively, you may 
send a report to the `ESO User Support Department <usd-help@eso.org>`_.

Copyright
---------

This file is part of the FLAMES/UVES Pipeline
Copyright (C) 2004, 2005, 2006, 2007 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  02111-1307  USA

.. codeauthor:: Jonas M. Larsen <cpl@eso.org>
