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