The uves_cal_cd_align recipe
===============================================================

.. data:: uves_cal_cd_align

Synopsis
--------

Measures the reproducability of the cross disperser positioning

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

Given two input frames (CD_ALIGN_xxx where xxx = BLUE or RED) which contain only
one echelle order, this recipe measures the shift in the cross-dispersion 
direction of that order. For RED input frames, only the lower chip is processed.


The recipe produces a CD_ALIGN_TABLE_xxxx (with xxxx = BLUE or REDL) with columns
X:         Column number
YCENi:     Centroid from Gaussian fit (for i = 1,2)
SIGMAi:    Stdev from Gaussian fit
BACKi:     Constant background from Gaussian fit
NORMi:     Normalization constant from Gaussian fit
YDIFF:     Difference YCEN2 - YCEN1 of centroid positions

and the QC-parameters ESO.QC.YDIFF(AVG|MED|RMS), which are the average,
median and root-mean-square of the y-shift, respectively.


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

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

   Create an object for the recipe uves_cal_cd_align.

::

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

Parameters
----------

.. py:attribute:: uves_cal_cd_align.param.debug

    Whether or not to save intermediate results to local directory (bool;  default: False) [default=False].
.. py:attribute:: uves_cal_cd_align.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:: uves_cal_cd_align.param.process_chip

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

    Step size in pixels (int; default: 100) [default=100].
.. py:attribute:: uves_cal_cd_align.param.window

    The half window height used for Gaussian fitting (int; default: 50) [default=50].
.. py:attribute:: uves_cal_cd_align.param.xborder

    Exclude a border region of this size (pixels) (int; default: 200) [default=200].


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

::

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

   uves_cal_cd_align.param.debug = False
   uves_cal_cd_align.param.plotter = "no"
   uves_cal_cd_align.param.process_chip = "both"
   uves_cal_cd_align.param.steps = 100
   uves_cal_cd_align.param.window = 50
   uves_cal_cd_align.param.xborder = 200


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

::

   import cpl
   uves_cal_cd_align = cpl.Recipe("uves_cal_cd_align")
   [...]
   res = uves_cal_cd_align( ..., param = {"debug":False, "plotter":"no"})


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