00001 #ifndef SLIT_POS_H 00002 #define SLIT_POS_H 00003 /***************************************************************************** 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: slit_pos.h,v 1.2 2005/04/29 12:18:59 amodigli Exp $" 00007 * 00008 * who when what 00009 * -------- -------- ---------------------------------------------- 00010 * amodigli 17/09/03 created 00011 */ 00012 00013 /************************************************************************ 00014 * slit_pos.h 00015 00016 Normal method: 00017 00018 does the wavelength calibration and the fitting of the slitlet edge 00019 positions (ASCII file 32 x 2 values) if wished 00020 produces an array of the bcoefs and of the fit parameters if wished and a 00021 wavelength calibration map input is an emission line frame and a line list 00022 00023 o searching for lines by cross correlation with a line list 00024 o Gaussian fitting of emission lines in each column->positions of the lines-> 00025 resulting fit parameters can be stored in an ASCII file 00026 o Fitting of a polynomial to the line positions for each column 00027 o Smoothing: fitting of each polynomial coefficient by another polynomial 00028 across the whole frame -> resulting polynomial coefficients can be stored 00029 in an ASCII file. 00030 o Wavelength calibration map (micron value for each frame pixel) can be 00031 produced by using these coefficients and a cross correlation to the 00032 original frame 00033 00034 o The slitlet edge positions can be fitted: 00035 1) Automatically (not really stable) or by using guess edge positions 00036 2) By using a Boltzmann or a linear slope function 00037 00038 00039 Slit method: 00040 00041 does the wavelength calibration and the fitting of the slitlet edge 00042 positions (ASCII file 32 x 2 values) if wished produces a list of the fit 00043 parameters and of the smoothed coefficients if wished and a wavelength 00044 calibration map input is an emission line frame and a line list 00045 00046 o Does the same as other method but smoothes the found polynomial 00047 coefficients within each slitlet and not over the whole frame. 00048 00049 o Produces always a wavelength calibration map and does not crosscorrelate. 00050 00051 *---------------------------------------------------------------------- 00052 */ 00053 00054 /* 00055 * header files 00056 */ 00057 00058 /* 00059 #include <stdio.h> 00060 #include <math.h> 00061 #include <cxmessages.h> 00062 00063 #include "eclipse.h" 00064 #include "spiffi.h" 00065 #include "utilities.h" 00066 */ 00067 #include <cpl.h> 00068 00069 /* 00070 #include "sinfoni_dfs.h" 00071 */ 00072 00073 /*---------------------------------------------------------------------------- 00074 * Function ANSI C prototypes 00075 *--------------------------------------------------------------------------*/ 00076 00077 /*---------------------------------------------------------------------------- 00078 Function : slit_pos() 00079 In : ini_file: file name of according .ini file 00080 Out : integer (0 if it worked, -1 if it doesn't) 00081 Job : 00082 00083 00084 Normal method: 00085 00086 does the wavelength calibration and the fitting of the slitlet edge 00087 positions (ASCII file 32 x 2 values) if wished 00088 produces an array of the bcoefs and of the fit parameters if wished and a 00089 wavelength calibration map input is an emission line frame and a line list 00090 00091 00092 o searching for lines by cross correlation with a line list 00093 o Gaussian fitting of emission lines in each column->positions of the lines-> 00094 resulting fit parameters can be stored in an ASCII file 00095 o Fitting of a polynomial to the line positions for each column 00096 o Smoothing: fitting of each polynomial coefficient by another polynomial 00097 across the whole frame -> resulting polynomial coefficients can be stored 00098 in an ASCII file. 00099 o Wavelength calibration map (micron value for each frame pixel) can be 00100 produced by using these coefficients and a cross correlation to the 00101 original frame 00102 00103 o The slitlet edge positions can be fitted: 00104 1) Automatically (not really stable) or by using guess edge positions 00105 2) By using a Boltzmann or a linear slope function 00106 00107 Slit method: 00108 00109 does the wavelength calibration and the fitting of the slitlet edge 00110 positions (ASCII file 32 x 2 values) if wished produces a list of the fit 00111 parameters and of the smoothed coefficients if wished and a wavelength 00112 calibration map input is an emission line frame and a line list 00113 00114 o Does the same as other method but smoothes the found polynomial 00115 coefficients within each slitlet and not over the whole frame. 00116 00117 o Produces always a wavelength calibration map and does not crosscorrelate. 00118 ---------------------------------------------------------------------------*/ 00119 int slit_pos (cpl_parameterlist* config, cpl_frameset* sof) ; 00120 00121 00122 #endif 00123 00124 /*--------------------------------------------------------------------------*/
1.2.13.1 written by Dimitri van Heesch,
© 1997-2001