The flames_cal_prep_sff_ofpos recipe
===============================================================

.. data:: flames_cal_prep_sff_ofpos

Synopsis
--------

Determines order and fibre postions

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

Fibre & order position determination procedure:

You should feed the recipe with:

- even, odd, all fibre images (FIB_FF_EVEN_RED, FIB_FF_ODD_RED, FIB_FF_ALL_RED)
- single fibre images, FIB_ORDEF_(REDL|REDU)
- master bias frames, MASTER_BIAS_(REDL|REDU)
- master slit flatfield frames, MASTER_SFLAT_(REDL|REDU)
- order guess tables, FIB_ORD_GUE_(REDL|REDU).


Products are:

- Fibre order table (FIB_ORDEF_TABLE_chip)
- All fibre info table (FIB_FF_ALL_INFO_TAB)
- Odd fibre info table (FIB_FF_ODD_INFO_TAB)
- Even fibre info table (FIB_FF_EVEN_INFO_TAB)
- Slit flatfield common (SLIT_FF_COM_chip)
- Slit flatfield norm (SLIT_FF_NOR_chip)
- Slit flatfield data (SLIT_FF_DTC_chip)
- Slit flatfield sigma (SLIT_FF_SGC_chip)
- Slit flatfield bad pixel (SLIT_FF_BPC_chip)
- Slit flatfield boundary (SLIT_FF_BNC_chip)
- Fibre flatfield common (FIB_FF_COM_chip)
- Fibre flatfield norm (FIB_FF_NOR_chip)
- Fibre flatfield norm sigma (FIB_FF_NSG_chip)
chip=REDL and REDU

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

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

   Create an object for the recipe flames_cal_prep_sff_ofpos.

::

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

Parameters
----------

.. py:attribute:: flames_cal_prep_sff_ofpos.param.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_cal_prep_sff_ofpos.param.bias_value

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

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

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

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

    Extraction method (str; default: 'opt') [default="opt"].
.. py:attribute:: flames_cal_prep_sff_ofpos.param.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_cal_prep_sff_ofpos.param.filter_switch

    Filter switch (str; default: 'none') [default="none"].
.. py:attribute:: flames_cal_prep_sff_ofpos.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_cal_prep_sff_ofpos.param.process_chip

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

    Saturation threshold (int; default: 55000) [default=55000].
.. py:attribute:: flames_cal_prep_sff_ofpos.param.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].


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

::

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

   flames_cal_prep_sff_ofpos.param.bias_method = "M"
   flames_cal_prep_sff_ofpos.param.bias_value = 200
   flames_cal_prep_sff_ofpos.param.clean_tmp_products = False
   flames_cal_prep_sff_ofpos.param.cubify = True
   flames_cal_prep_sff_ofpos.param.debug = False
   flames_cal_prep_sff_ofpos.param.ext_method = "opt"
   flames_cal_prep_sff_ofpos.param.fileprep = True
   flames_cal_prep_sff_ofpos.param.filter_switch = "none"
   flames_cal_prep_sff_ofpos.param.plotter = "no"
   flames_cal_prep_sff_ofpos.param.process_chip = "both"
   flames_cal_prep_sff_ofpos.param.sat_thr = 55000
   flames_cal_prep_sff_ofpos.param.save_flat_size = -1


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

::

   import cpl
   flames_cal_prep_sff_ofpos = cpl.Recipe("flames_cal_prep_sff_ofpos")
   [...]
   res = flames_cal_prep_sff_ofpos( ..., param = {"bias_method":"M", "bias_value":200})


.. 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>
