sinfo_finddist_cfg.h

00001 /*
00002  * This file is part of the ESO SINFONI Pipeline
00003  * Copyright (C) 2004,2005 European Southern Observatory
00004  *
00005  * This program is free software; you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License as published by
00007  * the Free Software Foundation; either version 2 of the License, or
00008  * (at your option) any later version.
00009  *
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  * GNU General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU General Public License
00016  * along with this program; if not, write to the Free Software
00017  * Foundation, 51 Franklin St, Fifth Floor, Boston, MA  02111-1307  USA
00018  */
00019 /*---------------------------------------------------------------------------
00020    
00021    File name     :    sinfo_wavecal_cfg.h
00022    Author         :    Juergen Schreiber
00023    Created on    :    September 2001
00024    Description    :    wavecal_ini definitions + handling prototypes
00025 
00026  ---------------------------------------------------------------------------*/
00027 #ifndef SINFO_FINDDIST_CFG_H
00028 #define SINFO_FINDDIST_CFG_H
00029 /*---------------------------------------------------------------------------
00030                                    Includes
00031  ---------------------------------------------------------------------------*/
00032 #include "sinfo_globals.h"
00033 #include <cpl.h>
00034 /*---------------------------------------------------------------------------
00035                                    Defines
00036  ---------------------------------------------------------------------------*/
00037 /*---------------------------------------------------------------------------
00038                                    New types
00039  ---------------------------------------------------------------------------*/
00040 /*
00041   Wavelength calibration blackboard container
00042 
00043   This structure holds all information related to the wavelength calibration
00044   routine. It is used as a container for the flux of ancillary data,
00045   computed values, and algorithm status. Pixel flux is separated from
00046   the blackboard.
00047   */
00048 
00049 typedef struct finddist_config {
00050 /*-------General---------*/
00051         char inFrame[FILE_NAME_SZ] ; /* input emission line frame */
00052         char lineList[FILE_NAME_SZ] ; /* input wavelength and intensity 
00053                                          line list */
00054         char outName[FILE_NAME_SZ] ; /* output name of resulting fits 
00055                                         wavelength map */
00056         char nsFrame[FILE_NAME_SZ] ; /* input north-south frame */
00057         char mask[FILE_NAME_SZ] ;    /* input north-south frame */
00058         char fitsname[FILE_NAME_SZ] ;  
00059         char drs_setup[FILE_NAME_SZ] ;  
00060 /*------ FindLines ------*/
00061         /* estimated central wavelength of the image */
00062         float guessBeginWavelength ;
00063         /* estimated linear dispersion of emission line frame */
00064         float guessDispersion1 ;
00065         /* estimated square dispersion of emission line frame */
00066         float guessDispersion2 ;
00067         /* minimal difference of mean and sinfo_median column intensity */
00068         float mindiff ;
00069         /* half width of a box within which the line must sit */
00070         int halfWidth ;
00071         /* sigma of Gaussian of artificial model spectra */
00072         float sigma ; 
00073 
00074 /*------ WaveCalib ------*/
00075         /* guess value for fwhm of emission lines */ 
00076         float fwhm ;
00077         /* minimum amplitude of a line to be fitted */
00078         float minAmplitude ;
00079         /* maximal residual value for a valid fit */
00080         float maxResidual ;
00081         /* # of polynomial coefficients used for the dispersion relation */
00082         int nrDispCoefficients ;
00083         /* # of polynomial coefficients used for the fit of the dispersion 
00084              coefficients */
00085         int nrCoefCoefficients ;
00086         /* minimal factor of the standard deviation of the fit coefficients */
00087         float sigmaFactor ;
00088         /* number of slitlets */
00089         int    nslitlets ;
00090         /* minimal pixel distance of slitlets in spectral direction */
00091         int    pixeldist ;
00092         /* allowed pixel position tolerance between estimated and 
00093            fitted line position */
00094         float  pixel_tolerance  ;
00095 
00096 /*------ WaveMap ------*/
00097     /* magnifying factor for FFT */
00098     int magFactor ;
00099 
00100 /*------ FitSlits ------*/
00101     /* pixel length of the row box within which the fit of the 
00102            slitlet positions is carried out*/
00103     int boxLength ;
00104         /* lower row position for the estimate fit */
00105     int loPos ;
00106         /* upper row position for the estimate fit */
00107     int hiPos ;
00108     /* float box half width in spectral direction */
00109         float yBox ;
00110         /* maximal tolerable difference to the expected slitlet positions */
00111         float diffTol ;
00112 /*------ NorthSouthTest ------*/
00113         /* number of slitlets */
00114         int nslits ;      
00115         /* pixel half width of a box within which the spatial 
00116            profile is fitted by a Gaussian */
00117         int nshalfWidth ;
00118         /* first guess of the fwhm of the Gaussian fit function */
00119         float nsfwhm ;
00120         /* minimum amplitude above which the fit is carried out */
00121         float minDiff ;
00122         /* estimated average distance of spectra */
00123         float estimated_dist ;
00124         /* maximal pixel tolerance of the slitlet distances */
00125         float devtol ;
00126 
00127   /*----qg log --------*/
00128   int qc_thresh_min;
00129   int qc_thresh_max;
00130 
00131 
00132 } finddist_config ;
00133 /*---------------------------------------------------------------------------
00134                                Function prototypes
00135  ---------------------------------------------------------------------------*/
00143 finddist_config * 
00144 sinfo_finddist_cfg_create(void);
00145 
00152 void 
00153 sinfo_finddist_cfg_destroy(finddist_config * jc);
00154 
00155 #endif

Generated on 8 Mar 2011 for SINFONI Pipeline Reference Manual by  doxygen 1.6.1