00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef XSH_EFFICIENCY_RESPONSE_H_
00027 #define XSH_EFFICIENCY_RESPONSE_H_
00028 #include <xsh_data_instrument.h>
00029 static const double STAR_MATCH_DEPSILON=0.0166667;
00030
00031
00032
00033
00034
00035 typedef struct {
00036 double lambda_min ;
00037 double lambda_max ;
00038 } HIGH_ABS_REGION ;
00039
00040 HIGH_ABS_REGION *
00041 xsh_fill_high_abs_regions(
00042 xsh_instrument* instrument,
00043 cpl_frame* high_abs_frame);
00044
00045 HIGH_ABS_REGION *
00046 xsh_fill_tell_fit_regions(
00047 xsh_instrument* instrument,
00048 cpl_frame* high_abs_frame);
00049
00050 HIGH_ABS_REGION *
00051 xsh_fill_tell_compute_resid_regions(
00052 xsh_instrument* instrument,
00053 cpl_frame* high_abs_frame);
00054
00055
00056
00057
00058 double *
00059 xsh_bspline_fit_data(double* lambda, double* flux,const int size,
00060 HIGH_ABS_REGION * phigh,xsh_instrument* inst,const int fit_region);
00061
00062 double *
00063 xsh_bspline_fit_data2(double* lambda, double* flux,const int size,
00064 HIGH_ABS_REGION * phigh,xsh_instrument* inst,const int fit_region);
00065 double *
00066 xsh_bspline_interpolate_data_at_pos(double* wave, double* flux,const int size,
00067 double* pos, const int size_pos);
00068
00069 #endif