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
00027
00028 #ifndef SINFO_GLOBALS_H
00029 #define SINFO_GLOBALS_H
00030 #include <cpl.h>
00031
00032
00033
00034 #define SINFO_RESAMP_NROWS 2560
00035 #define PI_NUMB (3.1415926535897932384626433832795)
00036 #define ZERO 0./0.
00037 #define FLAG -1.e+9
00038 #define QC_DID_ID "SINFONI-1.0.0"
00039 #define FILE_NAME_SZ 512
00040 #define MAX_NAME_SIZE 512
00041 #define TELESCOPE_SURFACE 52.8101279
00042
00043 #define NOISE_HSIZE 4
00044 #define NOISE_NSAMPLES 100
00045 #define SINFO_DBL_MIN 1e-37
00046 #define SINFO_DBL_MAX 1e+37
00047
00048 #define IMA_PIX_START 0
00049 #define IMA_PIX_END 2047
00050 #define SIZEX 2048
00051 #define SIZEY 2048
00052 #define DET_PIX_MIN 1
00053 #define DET_PIX_MAX 2048
00054
00055
00056 #define LLX 1350
00057 #define LLY 1000
00058 #define URX 1390
00059 #define URY 1200
00060
00061 #define DISTORTION_LOPOS 974
00062 #define DISTORTION_HIPOS 1074
00063
00064 #define GRAT_VAL1_HK 3997330
00065 #define GRAT_VAL2_HK 3997339
00066 #define GRAT_VAL1_H 2948723
00067 #define GRAT_VAL2_H 2948733
00068 #define GRAT_VAL1_K 1893844
00069 #define GRAT_VAL2_K 1893854
00070 #define GRAT_VAL1_J 849618
00071 #define GRAT_VAL2_J 849628
00072 #define GRAT_VAL_TOL 4
00073
00074 #define SKY_FLUX 0
00075 #define BKG_VARIANCE 9.6
00076 #define GAIN 2.42
00077 #define MAGNITUDE 11
00078
00079 #define MSG_OVER_WRITE_PAR "Using default data reduction parameters"
00080 #define LAMP_ON TRUE
00081 #define LAMP_OFF FALSE
00082
00083 struct amoeba_ {
00084 cpl_vector* vx;
00085 cpl_vector* vy;
00086 cpl_vector* sx;
00087 cpl_vector* sy;
00088 };
00089 typedef struct amoeba_ amoeba_dat;
00090
00091 amoeba_dat* sinfo_amoeba_new(cpl_vector* vx,
00092 cpl_vector* vy,
00093 cpl_vector* sx,
00094 cpl_vector* sy);
00095 void sinfo_amoeba_delete(amoeba_dat** a);
00096
00097 struct qc_log_ {
00098 char name[30];
00099 char type[30];
00100 char s_val[30];
00101 char comm[30];
00102 double n_val;
00103 int n;
00104 };
00105 typedef struct qc_log_ qc_log;
00106
00107 struct fake_ {
00108 char pro_class[FILE_NAME_SZ];
00109 int frm_switch;
00110 int is_fake_sky;
00111 int mask_index;
00112 int ind_index;
00113 int flat_index;
00114 int wfix_index;
00115 double low_rej;
00116 double hig_rej;
00117 };
00118
00119 typedef struct fake_ fake;
00120 fake* sinfo_fake_new(void);
00121 void sinfo_fake_delete(fake** f);
00122
00123
00124 struct wcal_ {
00125 double wstart;
00126 double wgdisp1;
00127 double wgdisp2;
00128 double min_dif;
00129 double fwhm;
00130 double min_amp;
00131 double pixel_tol;
00132 double y_box;
00133 int low_pos;
00134 int hig_pos;
00135 int hw;
00136 int na_coef;
00137 int nb_coef;
00138
00139 };
00140
00141 typedef struct wcal_ wcal;
00142
00143 wcal* sinfo_wcal_new(void);
00144 void sinfo_wcal_delete(wcal* f);
00145
00146
00147 struct stack_ {
00148 char do_class[FILE_NAME_SZ];
00149 char index_list[FILE_NAME_SZ];
00150 int warp_fix_ind;
00151 };
00152
00153 typedef struct stack_ stack;
00154
00155 stack* sinfo_stack_new(void);
00156 void sinfo_stack_delete(stack* s);
00157
00158
00159
00160 struct nst_ {
00161 double min_dif[4];
00162 double fwhm[4];
00163 };
00164
00165 typedef struct nst_ nstpar;
00166
00167 nstpar* sinfo_nstpar_new(void);
00168 void sinfo_nstpar_delete(nstpar* n);
00169
00170 struct dist_ {
00171 double diff_tol[4];
00172 };
00173
00174 typedef struct dist_ distpar;
00175
00176 distpar* sinfo_distpar_new(void);
00177 void sinfo_distpar_delete(distpar* d);
00178
00179
00180 #endif