SINFONI Pipeline Reference Manual  2.5.2
sinfo_absolute.h
1 /*
2  * This file is part of the ESO SINFONI Pipeline
3  * Copyright (C) 2004,2005 European Southern Observatory
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
18  */
19 /*****************************************************************************
20 * E.S.O. - VLT project
21 *
22 * "@(#) $Id: sinfo_absolute.h,v 1.3 2007-08-20 10:01:05 amodigli Exp $"
23 *
24 * who when what
25 * -------- -------- ----------------------------------------------
26 * schreib 14/11/00 created
27 */
28 #ifndef SINFO_ABSOLUTE_H
29 #define SINFO_ABSOLUTE_H
30 
34 /*----------------------------------------------------------------------------*/
35 
36 
37 /************************************************************************
38  * absolute.h
39  * routines to determine the absolute positions of the slitlets out of
40  * an emission line frame
41  *----------------------------------------------------------------------
42  */
43 
44 /*
45  * header files
46  */
47 
48 #include <cpl.h>
49 #include "sinfo_spectrum_ops.h"
50 #include "sinfo_msg.h"
51 #include "sinfo_recipes.h"
52 /*----------------------------------------------------------------------------
53  * Function ANSI C prototypes
54  *--------------------------------------------------------------------------*/
55 
74 float
75 sinfo_new_edge(float * xdat, float * parlist/*, int * npar, int * ndat */) ;
76 
90 float
91 sinfo_new_boltz ( float * xdat, float * parlist ) ;
92 
111 void
112 sinfo_new_edge_deriv(float * xdat,
113  float * parlist, float * dervs/*, int * npar */) ;
114 
132 void
133 sinfo_new_boltz_deriv( float * xdat, float * parlist, float * dervs ) ;
134 
182 int sinfo_new_lsqfit ( float * xdat,
183  int * xdim,
184  float * ydat,
185  float * wdat,
186  int * ndat,
187  float * fpar,
188  float * epar,
189  int * mpar,
190  int * npar,
191  float * tol ,
192  int * its ,
193  float * lab ) ;
194 
240 int
241 sinfo_new_lsqfit_edge ( float * xdat,
242  int * xdim,
243  float * ydat,
244  float * wdat,
245  int * ndat,
246  float * fpar,
247  float * epar,
248  int * mpar,
249  int * npar,
250  float * tol ,
251  int * its ,
252  float * lab ) ;
253 
288 int
289 sinfo_new_fit_slits_edge( cpl_image * lineImage,
290  FitParams ** par,
291  float ** sinfo_slit_pos,
292  int box_length,
293  float y_box,
294  float diff_tol ) ;
295 
329 int
330 sinfo_new_fit_slits_boltz( cpl_image * lineImage,
331  FitParams ** par,
332  float ** sinfo_slit_pos,
333  int box_length,
334  float y_box,
335  float diff_tol ) ;
336 
358 int
359 sinfo_new_fit_slits_boltz_single_line ( cpl_image * lineImage,
360  float ** sinfo_slit_pos,
361  int box_length,
362  float y_box,
363  int low_pos,
364  int high_pos ) ;
365 
366 
388 int
389 sinfo_new_fit_slits_boltz_with_estimate ( cpl_image * lineImage,
390  float ** sinfo_slit_pos,
391  int box_length,
392  float y_box,
393  float diff_tol,
394  int low_pos,
395  int high_pos ) ;
396 
397 
420 int
421 sinfo_new_fit_slits_edge_with_estimate ( cpl_image * lineImage,
422  float ** sinfo_slit_pos,
423  int box_length,
424  float y_box,
425  float diff_tol,
426  int low_pos,
427  int high_pos ) ;
428 
429 
430 
431 #endif