Changeset 33106
- Timestamp:
- Jan 16, 2012, 12:07:00 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/loadwise_star_full.c
r33105 r33106 15 15 ptr = line; 16 16 17 // I can assign dRA and dDEC to dX and dY if I can consistently set posangle and pltscale 18 star[0][0].measure.posangle = 0.0; 19 star[0][0].measure.pltscale = 1.0; 20 17 21 ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: desig, ra, dec, 18 star[0][0].measure. FWx= ToShortPixels(strtod (ptr, NULL)); // sig_ra22 star[0][0].measure.dXccd = ToShortPixels(strtod (ptr, NULL)); // sig_ra 19 23 ptr = nextWISEfield (ptr); 20 star[0][0].measure. FWy= ToShortPixels(strtod (ptr, NULL)); // sig_dec24 star[0][0].measure.dYccd = ToShortPixels(strtod (ptr, NULL)); // sig_dec 21 25 ptr = nextWISEfield (ptr); 22 star[0][0].measure.theta = ToShortPixels(strtod (ptr, NULL)); // sig_radec 23 24 star[1][0].measure.FWx = star[0][0].measure.FWx; 25 star[1][0].measure.FWy = star[0][0].measure.FWy; 26 star[1][0].measure.theta = star[0][0].measure.theta; 27 star[2][0].measure.FWx = star[0][0].measure.FWx; 28 star[2][0].measure.FWy = star[0][0].measure.FWy; 29 star[2][0].measure.theta = star[0][0].measure.theta; 30 star[3][0].measure.FWx = star[0][0].measure.FWx; 31 star[3][0].measure.FWy = star[0][0].measure.FWy; 32 star[3][0].measure.theta = star[0][0].measure.theta; 33 34 ptr = skipNbounds (ptr, '|', 11, Nmax); // skip: sig_radec, glon, glat, elon, elat, wx, wy, cntr, source_id, coadd_id, src 26 27 // we only know a single set of values for all 4 bands 28 for (i = 1; i < 4; i++) { 29 star[i][0].measure.dXccd = star[0][0].measure.dXccd; 30 star[i][0].measure.dYccd = star[0][0].measure.dYccd; 31 star[i][0].measure.posangle = star[0][0].measure.posangle; 32 star[i][0].measure.pltscale = star[0][0].measure.pltscale; 33 } 34 ptr = skipNbounds (ptr, '|', 5, Nmax); // skip: sig_radec, glon, glat, elon, elat 35 36 star[0][0].measure.Xccd = strtod (ptr, NULL); // wx 37 ptr = nextWISEfield (ptr); // skip wx 38 star[0][0].measure.Yccd = strtod (ptr, NULL); // wy 39 ptr = nextWISEfield (ptr); // skip wy 40 41 for (i = 1; i < 4; i++) { 42 star[i][0].measure.Xccd = star[0][0].measure.Xccd; 43 star[i][0].measure.Yccd = star[0][0].measure.Yccd; 44 } 45 ptr = skipNbounds (ptr, '|', 4, Nmax); // skip: cntr, source_id, coadd_id, src 35 46 36 47 // W1 37 star[0][0].measure.M = strtod (ptr, NULL); // w1mpro 38 ptr = nextWISEfield (ptr); 39 star[0][0].measure.dM = strtod (ptr, NULL); // w1sigmpro 40 ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: w1sigmpro, w1snr, w1rchi2 41 42 // W2 43 star[1][0].measure.M = strtod (ptr, NULL); // w1mpro 44 ptr = nextWISEfield (ptr); 45 star[1][0].measure.dM = strtod (ptr, NULL); // w1sigmpro 46 ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: w2sigmpro, w2snr, w2rchi2 47 48 // W3 49 star[2][0].measure.M = strtod (ptr, NULL); // w1mpro 50 ptr = nextWISEfield (ptr); 51 star[2][0].measure.dM = strtod (ptr, NULL); // w1sigmpro 52 ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: w3sigmpro, w3snr, w3rchi2 53 54 // W4 55 star[3][0].measure.M = strtod (ptr, NULL); // w1mpro 56 ptr = nextWISEfield (ptr); 57 star[3][0].measure.dM = strtod (ptr, NULL); // w1sigmpro 58 ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: w4sigmpro, w4snr, w4rchi2 59 60 star[0][0].measure.photFlags = 0; 61 star[1][0].measure.photFlags = 0; 62 star[2][0].measure.photFlags = 0; 63 star[3][0].measure.photFlags = 0; 64 ptr = nextWISEfield (ptr); // skip: rchi2, nb, na 48 for (i = 0; i < 4; i++) { 49 star[0][0].measure.M = strtod (ptr, NULL); // w?mpro 50 ptr = nextWISEfield (ptr); 51 star[0][0].measure.dM = strtod (ptr, NULL); // w?sigmpro 52 ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w?sigmpro, w?snr 53 star[0][0].measure.psfChisq = strtod (ptr, NULL); // w?rchi2 54 ptr = nextWISEfield (ptr); // skip : w1rchi2 55 56 // init the photFlags field 57 star[i][0].measure.photFlags = 0; 58 } 59 60 ptr = nextWISEfield (ptr); // skip: rchi2 65 61 66 62 // set blend flags for all 4 measures 67 setWISE_blend_flag (star [0], ptr); // nb & na both used here63 setWISE_blend_flag (star, ptr); // nb & na both used here 68 64 ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: nb, na 69 65 70 setWISE_sat_flag (star[0], ptr); // w1sat 71 ptr = nextWISEfield (ptr); 72 73 setWISE_sat_flag (star[1], ptr); // w2sat 74 ptr = nextWISEfield (ptr); 75 76 setWISE_sat_flag (star[2], ptr); // w3sat 77 ptr = nextWISEfield (ptr); 78 79 setWISE_sat_flag (star[3], ptr); // w4sat 80 ptr = nextWISEfield (ptr); 66 for (i = 0; i < 4; i++) { 67 setWISE_sat_flag (star[i], ptr); // w1sat 68 ptr = nextWISEfield (ptr); 69 } 81 70 ptr = nextWISEfield (ptr); // skip satnum 82 71 83 setWISE_cc_flag (star[0], ptr[0]); // cc_flg 84 setWISE_cc_flag (star[1], ptr[1]); // cc_flg 85 setWISE_cc_flag (star[2], ptr[2]); // cc_flg 86 setWISE_cc_flag (star[3], ptr[3]); // cc_flg 72 for (i = 0; i < 4; i++) { 73 setWISE_cc_flag (star[i], ptr[i]); // cc_flg 74 } 87 75 ptr = nextWISEfield (ptr); // skip cc_flags 88 76 … … 91 79 ptr = nextWISEfield (ptr); // skip ext_flags 92 80 93 setWISE_var_flag (star[0], ptr[0]); // var_flg 94 setWISE_var_flag (star[1], ptr[1]); // var_flg 95 setWISE_var_flag (star[2], ptr[2]); // var_flg 96 setWISE_var_flag (star[3], ptr[3]); // var_flg 81 for (i = 0; i < 4; i++) { 82 setWISE_var_flag (star[i], ptr[i]); // var_flg 83 } 97 84 ptr = nextWISEfield (ptr); // skip var_flags 98 85 99 setWISE_ph_qual (star[0], ptr[0]); // ph_qual 100 setWISE_ph_qual (star[1], ptr[1]); // ph_qual 101 setWISE_ph_qual (star[2], ptr[2]); // ph_qual 102 setWISE_ph_qual (star[3], ptr[3]); // ph_qual 103 104 // setWISE_rd_flag (star[0], ptr[0]); 105 // setWISE_bl_flag (star[0], ptr[0]); 106 // setWISE_gal_flag (star[0], ptr[0]); 107 // setWISE_mp_flag (star[0], ptr[0]); 86 for (i = 0; i < 4; i++) { 87 setWISE_ph_qual (star[i], ptr[i]); // ph_qual 88 } 89 108 90 109 91 // ptr = nextWISEfield (ptr); // x_scan … … 182 164 if (*p == 0) return (NULL); 183 165 return (p); 166 } 167 168 int setWISE_blend_flag (Stars **star, char *ptr) { 169 170 int nb = atoi (ptr); 171 if (nb == 1) return TRUE; 172 173 ptr = nextWISEfield (ptr); // skip to na 174 int na = atoi (ptr); 175 176 if (na == 0) { 177 star[0][0].measure.photFlags |= 0x00100000; 178 star[1][0].measure.photFlags |= 0x00100000; 179 star[2][0].measure.photFlags |= 0x00100000; 180 star[3][0].measure.photFlags |= 0x00100000; 181 } else { 182 star[0][0].measure.photFlags |= 0x00200000; 183 star[1][0].measure.photFlags |= 0x00200000; 184 star[2][0].measure.photFlags |= 0x00200000; 185 star[3][0].measure.photFlags |= 0x00200000; 186 } 187 return TRUE; 188 } 189 190 int setWISE_ext_flag (Stars **star, char *ptr) { 191 192 int ext = atoi (ptr); 193 if (ext == 1) { 194 star[0][0].measure.photFlags |= 0x01000000; 195 star[1][0].measure.photFlags |= 0x01000000; 196 star[2][0].measure.photFlags |= 0x01000000; 197 star[3][0].measure.photFlags |= 0x01000000; 198 } 199 return TRUE; 200 } 201 202 int setWISE_sat_flag (Stars *star, char *ptr) { 203 204 float sat = strtod (ptr, NULL); 205 if (sat > 0.0) { 206 star[0].measure.photFlags |= 0x00000100; 207 } 208 return TRUE; 209 } 210 211 int setWISE_var_flag (Stars *star, char qual) { 212 213 int value = qual = '0'; 214 assert (value >= 0); 215 assert (value <= 9); 216 if (value == 0) return TRUE; 217 if (value < 5) { 218 star[0].measure.photFlags |= 0x10000000; 219 return TRUE; 220 } 221 if (value < 8) { 222 star[0].measure.photFlags |= 0x20000000; 223 return TRUE; 224 } 225 star[0].measure.photFlags |= 0x40000000; 226 return TRUE; 184 227 } 185 228
Note:
See TracChangeset
for help on using the changeset viewer.
