Changeset 37435
- Timestamp:
- Sep 25, 2014, 3:16:20 PM (12 years ago)
- Location:
- branches/eam_branches/ipp-20140904/Ohana/src
- Files:
-
- 9 edited
-
libdvo/include/dvo.h (modified) (1 diff)
-
libdvo/include/dvodb.h (modified) (5 diffs)
-
libdvo/src/dbExtractAverages.c (modified) (4 diffs)
-
libdvo/src/dbExtractMeasures.c (modified) (1 diff)
-
libdvo/src/dbFields.c (modified) (5 diffs)
-
libdvo/src/dvo_convert.c (modified) (1 diff)
-
libdvo/src/dvo_photcode_ops.c (modified) (1 diff)
-
opihi/dvo/avextract.c (modified) (5 diffs)
-
opihi/dvo/avmatch.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/include/dvo.h
r37395 r37435 1018 1018 int RegionHostFindNeighbors (RegionHostTable *table, int Nhost); 1019 1019 1020 # define LENSFIELD(NAME) float LensValue_##NAME (PhotCode *code, Lensobj *lensobj); 1021 1022 LENSFIELD(X11_sm_obj); 1023 LENSFIELD(X12_sm_obj); 1024 LENSFIELD(X22_sm_obj); 1025 LENSFIELD(E1_sm_obj); 1026 LENSFIELD(E2_sm_obj); 1027 1028 LENSFIELD(X11_sh_obj); 1029 LENSFIELD(X12_sh_obj); 1030 LENSFIELD(X22_sh_obj); 1031 LENSFIELD(E1_sh_obj); 1032 LENSFIELD(E2_sh_obj); 1033 1034 LENSFIELD(X11_sm_psf); 1035 LENSFIELD(X12_sm_psf); 1036 LENSFIELD(X22_sm_psf); 1037 LENSFIELD(E1_sm_psf); 1038 LENSFIELD(E2_sm_psf); 1039 1040 LENSFIELD(X11_sh_psf); 1041 LENSFIELD(X12_sh_psf); 1042 LENSFIELD(X22_sh_psf); 1043 LENSFIELD(E1_sh_psf); 1044 LENSFIELD(E2_sh_psf); 1045 1046 # undef LENSFIELD 1047 1020 1048 # endif // DVO_H -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/include/dvodb.h
r37116 r37435 55 55 MAG_OPTION_UC_DIST, 56 56 MAG_OPTION_FLAGS, 57 58 MAG_OPTION_X11_SM_OBJ, 59 MAG_OPTION_X12_SM_OBJ, 60 MAG_OPTION_X22_SM_OBJ, 61 MAG_OPTION_E1_SM_OBJ, 62 MAG_OPTION_E2_SM_OBJ, 63 64 MAG_OPTION_X11_SH_OBJ, 65 MAG_OPTION_X12_SH_OBJ, 66 MAG_OPTION_X22_SH_OBJ, 67 MAG_OPTION_E1_SH_OBJ, 68 MAG_OPTION_E2_SH_OBJ, 69 70 MAG_OPTION_X11_SM_PSF, 71 MAG_OPTION_X12_SM_PSF, 72 MAG_OPTION_X22_SM_PSF, 73 MAG_OPTION_E1_SM_PSF, 74 MAG_OPTION_E2_SM_PSF, 75 76 MAG_OPTION_X11_SH_PSF, 77 MAG_OPTION_X12_SH_PSF, 78 MAG_OPTION_X22_SH_PSF, 79 MAG_OPTION_E1_SH_PSF, 80 MAG_OPTION_E2_SH_PSF, 81 82 MAG_OPTION_F_AP_R5, 83 MAG_OPTION_F_ERR_AP_R5, 84 MAG_OPTION_F_STDEV_AP_R5, 85 MAG_OPTION_F_FILL_AP_R5, 86 87 MAG_OPTION_F_AP_R6, 88 MAG_OPTION_F_ERR_AP_R6, 89 MAG_OPTION_F_STDEV_AP_R6, 90 MAG_OPTION_F_FILL_AP_R6, 57 91 } dvoMagOptionType; 58 92 … … 163 197 MEAS_CENTER_OFFSET, 164 198 MEAS_REF_COLOR, 199 MEAS_X11_SM_OBJ, 200 MEAS_X12_SM_OBJ, 201 MEAS_X22_SM_OBJ, 202 MEAS_E1_SM_OBJ, 203 MEAS_E2_SM_OBJ, 204 MEAS_X11_SH_OBJ, 205 MEAS_X12_SH_OBJ, 206 MEAS_X22_SH_OBJ, 207 MEAS_E1_SH_OBJ, 208 MEAS_E2_SH_OBJ, 209 MEAS_X11_SM_PSF, 210 MEAS_X12_SM_PSF, 211 MEAS_X22_SM_PSF, 212 MEAS_E1_SM_PSF, 213 MEAS_E2_SM_PSF, 214 MEAS_X11_SH_PSF, 215 MEAS_X12_SH_PSF, 216 MEAS_X22_SH_PSF, 217 MEAS_E1_SH_PSF, 218 MEAS_E2_SH_PSF, 165 219 }; 166 220 … … 202 256 AVE_REF_COLOR, 203 257 AVE_PHOT, // photometry class of values 258 AVE_E_BV, // extinction (mags) 259 AVE_E_BV_ERR, 260 AVE_DISTANCE_MOD, // distance modulus (mags) 261 AVE_DISTANCE_MOD_ERR, 262 AVE_M_R, // absolute mag in r-band 263 AVE_M_R_ERR, 264 AVE_FEH, // metallicity 265 AVE_FEH_ERR, 266 AVE_URA_GALMODEL, // model pm prediction 267 AVE_UDEC_GALMODEL, // model pm prediction 204 268 }; 205 269 … … 368 432 int ParseImageField PROTO((dbField *field, char *fieldName)); 369 433 370 dbValue dbExtractAverages PROTO((Average *average, SecFilt *secfilt, Measure *measure, dbField *field));434 dbValue dbExtractAverages PROTO((Average *average, SecFilt *secfilt, Measure *measure, Lensobj *lensobj, StarPar *starpar, dbField *field)); 371 435 dbValue dbExtractMeasures PROTO((Average *average, SecFilt *secfilt, Measure *measure, dbField *field)); 372 436 dbValue dbExtractImages PROTO((Image *image, off_t Nimage, off_t N, dbField *field)); … … 376 440 int dbAstroRegionLimits PROTO((dbStack **stack, int *nstack, SkyRegionSelection *selection, int table)); 377 441 char *strfloat PROTO((float value)); 442 443 int dbFieldNeedMeasure (dbField *fields, int Nfields); 444 int dbFieldNeedLensobj (dbField *fields, int Nfields); 445 int dbFieldNeedStarpar (dbField *fields, int Nfields); 378 446 379 447 void FreeImageSelection (void); -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/dbExtractAverages.c
r37116 r37435 50 50 51 51 /* return average.field based on the selection */ 52 dbValue dbExtractAverages (Average *average, SecFilt *secfilt, Measure *measure, dbField *field) {52 dbValue dbExtractAverages (Average *average, SecFilt *secfilt, Measure *measure, Lensobj *lensobj, StarPar *starpar, dbField *field) { 53 53 54 54 // off_t i; … … 306 306 value.Flt = PhotUCdist (field->photcode, average, secfilt); 307 307 break; 308 // XX case MAG_OPTION_STACK_DET_ID:309 // XX value.Int = PhotStackID (field->photcode, average, secfilt);310 // XX break;311 308 case MAG_OPTION_FLAGS: { 312 309 int Nsec = GetPhotcodeNsec (field->photcode->code); … … 315 312 break; 316 313 } 314 315 // g:X11_SM_OBJ, etc, are only valid for average 316 case MAG_OPTION_X11_SM_OBJ: { value.Flt = LensValue_X11_sm_obj (field->photcode, lensobj); break; } 317 case MAG_OPTION_X12_SM_OBJ: { value.Flt = LensValue_X12_sm_obj (field->photcode, lensobj); break; } 318 case MAG_OPTION_X22_SM_OBJ: { value.Flt = LensValue_X22_sm_obj (field->photcode, lensobj); break; } 319 case MAG_OPTION_E1_SM_OBJ: { value.Flt = LensValue_E1_sm_obj (field->photcode, lensobj); break; } 320 case MAG_OPTION_E2_SM_OBJ: { value.Flt = LensValue_E2_sm_obj (field->photcode, lensobj); break; } 321 322 case MAG_OPTION_X11_SH_OBJ: { value.Flt = LensValue_X11_sh_obj (field->photcode, lensobj); break; } 323 case MAG_OPTION_X12_SH_OBJ: { value.Flt = LensValue_X12_sh_obj (field->photcode, lensobj); break; } 324 case MAG_OPTION_X22_SH_OBJ: { value.Flt = LensValue_X22_sh_obj (field->photcode, lensobj); break; } 325 case MAG_OPTION_E1_SH_OBJ: { value.Flt = LensValue_E1_sh_obj (field->photcode, lensobj); break; } 326 case MAG_OPTION_E2_SH_OBJ: { value.Flt = LensValue_E2_sh_obj (field->photcode, lensobj); break; } 327 328 case MAG_OPTION_X11_SM_PSF: { value.Flt = LensValue_X11_sm_psf (field->photcode, lensobj); break; } 329 case MAG_OPTION_X12_SM_PSF: { value.Flt = LensValue_X12_sm_psf (field->photcode, lensobj); break; } 330 case MAG_OPTION_X22_SM_PSF: { value.Flt = LensValue_X22_sm_psf (field->photcode, lensobj); break; } 331 case MAG_OPTION_E1_SM_PSF: { value.Flt = LensValue_E1_sm_psf (field->photcode, lensobj); break; } 332 case MAG_OPTION_E2_SM_PSF: { value.Flt = LensValue_E2_sm_psf (field->photcode, lensobj); break; } 333 334 case MAG_OPTION_X11_SH_PSF: { value.Flt = LensValue_X11_sh_psf (field->photcode, lensobj); break; } 335 case MAG_OPTION_X12_SH_PSF: { value.Flt = LensValue_X12_sh_psf (field->photcode, lensobj); break; } 336 case MAG_OPTION_X22_SH_PSF: { value.Flt = LensValue_X22_sh_psf (field->photcode, lensobj); break; } 337 case MAG_OPTION_E1_SH_PSF: { value.Flt = LensValue_E1_sh_psf (field->photcode, lensobj); break; } 338 case MAG_OPTION_E2_SH_PSF: { value.Flt = LensValue_E2_sh_psf (field->photcode, lensobj); break; } 339 317 340 case MAG_OPTION_NONE: 318 341 break; 319 } 320 break; 342 343 default: 344 break; 345 } 346 break; 347 348 case AVE_E_BV: { value.Flt = starpar->Ebv; break; } 349 case AVE_E_BV_ERR: { value.Flt = starpar->dEbv; break; } 350 case AVE_DISTANCE_MOD: { value.Flt = starpar->DistMag; break; } 351 case AVE_DISTANCE_MOD_ERR: { value.Flt = starpar->dDistMag; break; } 352 case AVE_M_R: { value.Flt = starpar->M_r; break; } 353 case AVE_M_R_ERR: { value.Flt = starpar->dM_r; break; } 354 case AVE_FEH: { value.Flt = starpar->FeH; break; } 355 case AVE_FEH_ERR: { value.Flt = starpar->dFeH; break; } 356 case AVE_URA_GALMODEL: { value.Flt = starpar->uRA; break; } 357 case AVE_UDEC_GALMODEL: { value.Flt = starpar->uDEC; break; } 321 358 322 359 case AVE_TYPE: … … 324 361 case AVE_TYPEFRAC: 325 362 break; 363 364 326 365 } 327 366 return (value); -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/dbExtractMeasures.c
r37377 r37435 249 249 case MAG_OPTION_UC_DIST: 250 250 case MAG_OPTION_FLAGS: 251 case MAG_OPTION_X11_SM_OBJ: 252 case MAG_OPTION_X12_SM_OBJ: 253 case MAG_OPTION_X22_SM_OBJ: 254 case MAG_OPTION_E1_SM_OBJ: 255 case MAG_OPTION_E2_SM_OBJ: 256 case MAG_OPTION_X11_SH_OBJ: 257 case MAG_OPTION_X12_SH_OBJ: 258 case MAG_OPTION_X22_SH_OBJ: 259 case MAG_OPTION_E1_SH_OBJ: 260 case MAG_OPTION_E2_SH_OBJ: 261 case MAG_OPTION_X11_SM_PSF: 262 case MAG_OPTION_X12_SM_PSF: 263 case MAG_OPTION_X22_SM_PSF: 264 case MAG_OPTION_E1_SM_PSF: 265 case MAG_OPTION_E2_SM_PSF: 266 case MAG_OPTION_X11_SH_PSF: 267 case MAG_OPTION_X12_SH_PSF: 268 case MAG_OPTION_X22_SH_PSF: 269 case MAG_OPTION_E1_SH_PSF: 270 case MAG_OPTION_E2_SH_PSF: 271 case MAG_OPTION_F_AP_R5: 272 case MAG_OPTION_F_ERR_AP_R5: 273 case MAG_OPTION_F_STDEV_AP_R5: 274 case MAG_OPTION_F_FILL_AP_R5: 275 case MAG_OPTION_F_AP_R6: 276 case MAG_OPTION_F_ERR_AP_R6: 277 case MAG_OPTION_F_STDEV_AP_R6: 278 case MAG_OPTION_F_FILL_AP_R6: 279 251 280 case MAG_OPTION_NONE: 252 281 break; -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/dbFields.c
r37116 r37435 28 28 } 29 29 30 int dbFieldNeedMeasure (dbField *fields, int Nfields) { 31 int i; 32 for (i = 0; i < Nfields; i++) { 33 if (fields[i].photcode == NULL) continue; // non-measure fields do not have a photcode 34 if (fields[i].photcode[0].type == PHOT_REF) return TRUE; 35 if (fields[i].photcode[0].type == PHOT_DEP) return TRUE; 36 } 37 return FALSE; 38 } 39 40 int dbFieldNeedLensobj (dbField *fields, int Nfields) { 41 int i; 42 for (i = 0; i < Nfields; i++) { 43 if (fields[i].magOption == MAG_OPTION_NONE) continue; // non-measure fields do not have a photcode 44 45 if (fields[i].magOption == MAG_OPTION_X11_SM_OBJ) return TRUE; 46 if (fields[i].magOption == MAG_OPTION_X12_SM_OBJ) return TRUE; 47 if (fields[i].magOption == MAG_OPTION_X22_SM_OBJ) return TRUE; 48 if (fields[i].magOption == MAG_OPTION_E1_SM_OBJ) return TRUE; 49 if (fields[i].magOption == MAG_OPTION_E2_SM_OBJ) return TRUE; 50 if (fields[i].magOption == MAG_OPTION_X11_SH_OBJ) return TRUE; 51 if (fields[i].magOption == MAG_OPTION_X12_SH_OBJ) return TRUE; 52 if (fields[i].magOption == MAG_OPTION_X22_SH_OBJ) return TRUE; 53 if (fields[i].magOption == MAG_OPTION_E1_SH_OBJ) return TRUE; 54 if (fields[i].magOption == MAG_OPTION_E2_SH_OBJ) return TRUE; 55 if (fields[i].magOption == MAG_OPTION_X11_SM_PSF) return TRUE; 56 if (fields[i].magOption == MAG_OPTION_X12_SM_PSF) return TRUE; 57 if (fields[i].magOption == MAG_OPTION_X22_SM_PSF) return TRUE; 58 if (fields[i].magOption == MAG_OPTION_E1_SM_PSF) return TRUE; 59 if (fields[i].magOption == MAG_OPTION_E2_SM_PSF) return TRUE; 60 if (fields[i].magOption == MAG_OPTION_X11_SH_PSF) return TRUE; 61 if (fields[i].magOption == MAG_OPTION_X12_SH_PSF) return TRUE; 62 if (fields[i].magOption == MAG_OPTION_X22_SH_PSF) return TRUE; 63 if (fields[i].magOption == MAG_OPTION_E1_SH_PSF) return TRUE; 64 if (fields[i].magOption == MAG_OPTION_E2_SH_PSF) return TRUE; 65 } 66 return FALSE; 67 } 68 69 int dbFieldNeedStarpar (dbField *fields, int Nfields) { 70 int i; 71 for (i = 0; i < Nfields; i++) { 72 if (fields[i].ID == AVE_E_BV) return TRUE; 73 if (fields[i].ID == AVE_E_BV_ERR) return TRUE; 74 if (fields[i].ID == AVE_DISTANCE_MOD) return TRUE; 75 if (fields[i].ID == AVE_DISTANCE_MOD_ERR) return TRUE; 76 if (fields[i].ID == AVE_M_R) return TRUE; 77 if (fields[i].ID == AVE_M_R_ERR) return TRUE; 78 if (fields[i].ID == AVE_FEH) return TRUE; 79 if (fields[i].ID == AVE_FEH_ERR) return TRUE; 80 if (fields[i].ID == AVE_URA_GALMODEL) return TRUE; 81 if (fields[i].ID == AVE_UDEC_GALMODEL) return TRUE; 82 } 83 return FALSE; 84 } 85 30 86 dvoMagSourceType GetMagSource (char *string) { 31 87 32 if (!strcasecmp (string, "chip")) return (MAG_SRC_CHP);33 if (!strcasecmp (string, "warp")) return (MAG_SRC_WRP);88 if (!strcasecmp (string, "chip")) return (MAG_SRC_CHP); 89 if (!strcasecmp (string, "warp")) return (MAG_SRC_WRP); 34 90 if (!strcasecmp (string, "stack")) return (MAG_SRC_STK); 35 91 … … 66 122 dvoMagOptionType GetMagOption (char *string) { 67 123 68 if (!strcasecmp (string, "mag")) return (MAG_OPTION_MAG); 69 if (!strcasecmp (string, "err")) return (MAG_OPTION_ERR); 70 if (!strcasecmp (string, "magerr")) return (MAG_OPTION_ERR); 71 if (!strcasecmp (string, "flux")) return (MAG_OPTION_FLUX); 72 if (!strcasecmp (string, "fluxerr")) return (MAG_OPTION_FLUX_ERR); 73 if (!strcasecmp (string, "stdev")) return (MAG_OPTION_STDEV); 74 if (!strcasecmp (string, "chisq")) return (MAG_OPTION_CHISQ); 75 if (!strcasecmp (string, "min")) return (MAG_OPTION_MIN); 76 if (!strcasecmp (string, "max")) return (MAG_OPTION_MAX); 77 if (!strcasecmp (string, "ncode")) return (MAG_OPTION_NCODE); 78 if (!strcasecmp (string, "nphot")) return (MAG_OPTION_NPHOT); 79 if (!strcasecmp (string, "uc_dist")) return (MAG_OPTION_UC_DIST); 80 if (!strcasecmp (string, "flags")) return (MAG_OPTION_FLAGS); 124 if (!strcasecmp (string, "mag")) return MAG_OPTION_MAG; 125 if (!strcasecmp (string, "err")) return MAG_OPTION_ERR; 126 if (!strcasecmp (string, "magerr")) return MAG_OPTION_ERR; 127 if (!strcasecmp (string, "flux")) return MAG_OPTION_FLUX; 128 if (!strcasecmp (string, "fluxerr")) return MAG_OPTION_FLUX_ERR; 129 if (!strcasecmp (string, "stdev")) return MAG_OPTION_STDEV; 130 if (!strcasecmp (string, "chisq")) return MAG_OPTION_CHISQ; 131 if (!strcasecmp (string, "min")) return MAG_OPTION_MIN; 132 if (!strcasecmp (string, "max")) return MAG_OPTION_MAX; 133 if (!strcasecmp (string, "ncode")) return MAG_OPTION_NCODE; 134 if (!strcasecmp (string, "nphot")) return MAG_OPTION_NPHOT; 135 if (!strcasecmp (string, "uc_dist")) return MAG_OPTION_UC_DIST; 136 if (!strcasecmp (string, "flags")) return MAG_OPTION_FLAGS; 137 if (!strcasecmp (string, "X11_SM_OBJ")) return MAG_OPTION_X11_SM_OBJ; 138 if (!strcasecmp (string, "X12_SM_OBJ")) return MAG_OPTION_X12_SM_OBJ; 139 if (!strcasecmp (string, "X22_SM_OBJ")) return MAG_OPTION_X22_SM_OBJ; 140 if (!strcasecmp (string, "E1_SM_OBJ")) return MAG_OPTION_E1_SM_OBJ; 141 if (!strcasecmp (string, "E2_SM_OBJ")) return MAG_OPTION_E2_SM_OBJ; 142 if (!strcasecmp (string, "X11_SH_OBJ")) return MAG_OPTION_X11_SH_OBJ; 143 if (!strcasecmp (string, "X12_SH_OBJ")) return MAG_OPTION_X12_SH_OBJ; 144 if (!strcasecmp (string, "X22_SH_OBJ")) return MAG_OPTION_X22_SH_OBJ; 145 if (!strcasecmp (string, "E1_SH_OBJ")) return MAG_OPTION_E1_SH_OBJ; 146 if (!strcasecmp (string, "E2_SH_OBJ")) return MAG_OPTION_E2_SH_OBJ; 147 if (!strcasecmp (string, "X11_SM_PSF")) return MAG_OPTION_X11_SM_PSF; 148 if (!strcasecmp (string, "X12_SM_PSF")) return MAG_OPTION_X12_SM_PSF; 149 if (!strcasecmp (string, "X22_SM_PSF")) return MAG_OPTION_X22_SM_PSF; 150 if (!strcasecmp (string, "E1_SM_PSF")) return MAG_OPTION_E1_SM_PSF; 151 if (!strcasecmp (string, "E2_SM_PSF")) return MAG_OPTION_E2_SM_PSF; 152 if (!strcasecmp (string, "X11_SH_PSF")) return MAG_OPTION_X11_SH_PSF; 153 if (!strcasecmp (string, "X12_SH_PSF")) return MAG_OPTION_X12_SH_PSF; 154 if (!strcasecmp (string, "X22_SH_PSF")) return MAG_OPTION_X22_SH_PSF; 155 if (!strcasecmp (string, "E1_SH_PSF")) return MAG_OPTION_E1_SH_PSF; 156 if (!strcasecmp (string, "E2_SH_PSF")) return MAG_OPTION_E2_SH_PSF; 157 // if (!strcasecmp (string, "F_AP_R5")) return MAG_OPTION_F_AP_R5; 158 // if (!strcasecmp (string, "F_ERR_AP_R5")) return MAG_OPTION_F_ERR_AP_R5; 159 // if (!strcasecmp (string, "F_STDEV_AP_R5")) return MAG_OPTION_F_STDEV_AP_R5; 160 // if (!strcasecmp (string, "F_FILL_AP_R5")) return MAG_OPTION_F_FILL_AP_R5; 161 // if (!strcasecmp (string, "F_AP_R6")) return MAG_OPTION_F_AP_R6; 162 // if (!strcasecmp (string, "F_ERR_AP_R6")) return MAG_OPTION_F_ERR_AP_R6; 163 // if (!strcasecmp (string, "F_STDEV_AP_R6")) return MAG_OPTION_F_STDEV_AP_R6; 164 // if (!strcasecmp (string, "F_FILL_AP_R6")) return MAG_OPTION_F_FILL_AP_R6; 81 165 82 166 return MAG_OPTION_NONE; 83 167 } 84 85 # if (0)86 int GetMagMode (char *string) {87 88 // these all imply PSF mags:89 if (!strcasecmp (string, "inst")) return (MAG_INST);90 if (!strcasecmp (string, "cat")) return (MAG_CAT);91 if (!strcasecmp (string, "sys")) return (MAG_SYS);92 if (!strcasecmp (string, "rel")) return (MAG_REL);93 if (!strcasecmp (string, "cal")) return (MAG_CAL);94 if (!strcasecmp (string, "ave")) return (MAG_AVE);95 if (!strcasecmp (string, "ref")) return (MAG_REF);96 if (!strcasecmp (string, "err")) return (MAG_ERR);97 if (!strcasecmp (string, "aveerr")) return (MAG_AVE_ERR);98 99 // these are explicit PSF mags:100 if (!strcasecmp (string, "psf_inst")) return (MAG_INST);101 if (!strcasecmp (string, "psf_cat")) return (MAG_CAT);102 if (!strcasecmp (string, "psf_sys")) return (MAG_SYS);103 if (!strcasecmp (string, "psf_rel")) return (MAG_REL);104 if (!strcasecmp (string, "psf_cal")) return (MAG_CAL);105 if (!strcasecmp (string, "psf_ave")) return (MAG_AVE);106 if (!strcasecmp (string, "psf_ref")) return (MAG_REF);107 if (!strcasecmp (string, "psf_err")) return (MAG_ERR);108 if (!strcasecmp (string, "psf_aveerr")) return (MAG_AVE_ERR);109 110 // these are aper mags:111 if (!strcasecmp (string, "ap")) return (MAG_APER);112 if (!strcasecmp (string, "aper")) return (MAG_APER);113 if (!strcasecmp (string, "aperinst")) return (MAG_APER_INST);114 if (!strcasecmp (string, "aper_inst")) return (MAG_APER_INST);115 if (!strcasecmp (string, "aper_cat")) return (MAG_APER_CAT);116 if (!strcasecmp (string, "aper_sys")) return (MAG_APER_SYS);117 if (!strcasecmp (string, "aper_rel")) return (MAG_APER_REL);118 if (!strcasecmp (string, "aper_cal")) return (MAG_APER_CAL);119 if (!strcasecmp (string, "aper_ave")) return (MAG_APER_AVE);120 if (!strcasecmp (string, "aper_ref")) return (MAG_APER_REF);121 if (!strcasecmp (string, "aper_err")) return (MAG_APER_ERR);122 123 // these are kron mags:124 if (!strcasecmp (string, "kron")) return (MAG_KRON);125 if (!strcasecmp (string, "kron_inst")) return (MAG_KRON_INST);126 if (!strcasecmp (string, "kron_cat")) return (MAG_KRON_CAT);127 if (!strcasecmp (string, "kron_sys")) return (MAG_KRON_SYS);128 if (!strcasecmp (string, "kron_rel")) return (MAG_KRON_REL);129 if (!strcasecmp (string, "kron_cal")) return (MAG_KRON_CAL);130 if (!strcasecmp (string, "kron_ave")) return (MAG_KRON_AVE);131 if (!strcasecmp (string, "kron_ref")) return (MAG_KRON_REF);132 if (!strcasecmp (string, "kron_err")) return (MAG_KRON_ERR);133 if (!strcasecmp (string, "kroninst")) return (MAG_KRON_INST);134 if (!strcasecmp (string, "kronerr")) return (MAG_KRON_ERR);135 136 // other fields:137 if (!strcasecmp (string, "photflags")) return (MAG_PHOT_FLAGS);138 if (!strcasecmp (string, "flags")) return (MAG_PHOT_FLAGS);139 if (!strcasecmp (string, "chisq")) return (MAG_CHISQ);140 if (!strcasecmp (string, "ncode")) return (MAG_NCODE);141 if (!strcasecmp (string, "nphot")) return (MAG_NPHOT);142 if (!strcasecmp (string, "stdev")) return (MAG_STDEV);143 if (!strcasecmp (string, "min")) return (MAG_MIN);144 if (!strcasecmp (string, "max")) return (MAG_MAX);145 if (!strcasecmp (string, "ucdist")) return (MAG_UC_DIST);146 if (!strcasecmp (string, "fluxpsf")) return (MAG_FLUX_PSF);147 if (!strcasecmp (string, "fluxpsferr")) return (MAG_FLUX_PSF_ERR);148 if (!strcasecmp (string, "fluxkron")) return (MAG_FLUX_KRON);149 if (!strcasecmp (string, "fluxkronerr")) return (MAG_FLUX_KRON_ERR);150 return (MAG_NONE);151 }152 # endif153 168 154 169 // field may be of the form mag:psf:inst:wrp. except for the first subword, … … 285 300 fprintf (stderr, "ERROR: unknown mag/photocode argument %s\n", word); 286 301 free (word); 302 return FALSE; 287 303 } 288 304 … … 441 457 if (!strcasecmp (fieldName, "FLAT")) ESCAPE (MEAS_FLAT, OPIHI_FLT); 442 458 if (!strcasecmp (fieldName, "CENTER_OFFSET")) ESCAPE (MEAS_CENTER_OFFSET, OPIHI_FLT); 443 // if (!strcasecmp (fieldName, "FLUX")) ESCAPE (MEAS_FLUX_PSF, OPIHI_FLT); 459 460 // individual lensing measurements are not grouped by photcode: 461 if (!strcasecmp (fieldName, "X11_SM_OBJ")) ESCAPE (MEAS_X11_SM_OBJ, OPIHI_FLT); 462 if (!strcasecmp (fieldName, "X12_SM_OBJ")) ESCAPE (MEAS_X12_SM_OBJ, OPIHI_FLT); 463 if (!strcasecmp (fieldName, "X22_SM_OBJ")) ESCAPE (MEAS_X22_SM_OBJ, OPIHI_FLT); 464 if (!strcasecmp (fieldName, "E1_SM_OBJ")) ESCAPE (MEAS_E1_SM_OBJ, OPIHI_FLT); 465 if (!strcasecmp (fieldName, "E2_SM_OBJ")) ESCAPE (MEAS_E2_SM_OBJ, OPIHI_FLT); 466 if (!strcasecmp (fieldName, "X11_SH_OBJ")) ESCAPE (MEAS_X11_SH_OBJ, OPIHI_FLT); 467 if (!strcasecmp (fieldName, "X12_SH_OBJ")) ESCAPE (MEAS_X12_SH_OBJ, OPIHI_FLT); 468 if (!strcasecmp (fieldName, "X22_SH_OBJ")) ESCAPE (MEAS_X22_SH_OBJ, OPIHI_FLT); 469 if (!strcasecmp (fieldName, "E1_SH_OBJ")) ESCAPE (MEAS_E1_SH_OBJ, OPIHI_FLT); 470 if (!strcasecmp (fieldName, "E2_SH_OBJ")) ESCAPE (MEAS_E2_SH_OBJ, OPIHI_FLT); 471 if (!strcasecmp (fieldName, "X11_SM_PSF")) ESCAPE (MEAS_X11_SM_PSF, OPIHI_FLT); 472 if (!strcasecmp (fieldName, "X12_SM_PSF")) ESCAPE (MEAS_X12_SM_PSF, OPIHI_FLT); 473 if (!strcasecmp (fieldName, "X22_SM_PSF")) ESCAPE (MEAS_X22_SM_PSF, OPIHI_FLT); 474 if (!strcasecmp (fieldName, "E1_SM_PSF")) ESCAPE (MEAS_E1_SM_PSF, OPIHI_FLT); 475 if (!strcasecmp (fieldName, "E2_SM_PSF")) ESCAPE (MEAS_E2_SM_PSF, OPIHI_FLT); 476 if (!strcasecmp (fieldName, "X11_SH_PSF")) ESCAPE (MEAS_X11_SH_PSF, OPIHI_FLT); 477 if (!strcasecmp (fieldName, "X12_SH_PSF")) ESCAPE (MEAS_X12_SH_PSF, OPIHI_FLT); 478 if (!strcasecmp (fieldName, "X22_SH_PSF")) ESCAPE (MEAS_X22_SH_PSF, OPIHI_FLT); 479 if (!strcasecmp (fieldName, "E1_SH_PSF")) ESCAPE (MEAS_E1_SH_PSF, OPIHI_FLT); 480 if (!strcasecmp (fieldName, "E2_SH_PSF")) ESCAPE (MEAS_E2_SH_PSF, OPIHI_FLT); 481 482 // if (!strcasecmp (fieldName, "FLUX")) ESCAPE (MEAS_FLUX_PSF, OPIHI_FLT); 444 483 // if (!strcasecmp (fieldName, "FLUX_ERR")) ESCAPE (MEAS_FLUX_PSF_ERR, OPIHI_FLT); 445 484 // if (!strcasecmp (fieldName, "FLUX_PSF")) ESCAPE (MEAS_FLUX_PSF, OPIHI_FLT); … … 524 563 if (!strcasecmp (fieldName, "REF_COLOR")) ESCAPE (AVE_REF_COLOR, OPIHI_FLT); 525 564 565 if (!strcasecmp (fieldName, "E_BV")) ESCAPE (AVE_E_BV , OPIHI_FLT); 566 if (!strcasecmp (fieldName, "E_BV_ERR")) ESCAPE (AVE_E_BV_ERR , OPIHI_FLT); 567 if (!strcasecmp (fieldName, "DISTANCE_MOD")) ESCAPE (AVE_DISTANCE_MOD , OPIHI_FLT); 568 if (!strcasecmp (fieldName, "DISTANCE_MOD_ERR")) ESCAPE (AVE_DISTANCE_MOD_ERR, OPIHI_FLT); 569 if (!strcasecmp (fieldName, "M_R")) ESCAPE (AVE_M_R , OPIHI_FLT); 570 if (!strcasecmp (fieldName, "M_R_ERR")) ESCAPE (AVE_M_R_ERR , OPIHI_FLT); 571 if (!strcasecmp (fieldName, "FEH")) ESCAPE (AVE_FEH , OPIHI_FLT); 572 if (!strcasecmp (fieldName, "FEH_ERR")) ESCAPE (AVE_FEH_ERR , OPIHI_FLT); 573 if (!strcasecmp (fieldName, "URA_GALMODEL")) ESCAPE (AVE_URA_GALMODEL , OPIHI_FLT); 574 if (!strcasecmp (fieldName, "UDEC_GALMODEL")) ESCAPE (AVE_UDEC_GALMODEL , OPIHI_FLT); 575 576 526 577 // check for code:mode in photcode name 527 578 if (!ParsePhotcodeField (field, fieldName, AVE_PHOT)) { -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/dvo_convert.c
r37390 r37435 638 638 // CONVERT_FORMAT ("DVO_STARPAR_PS1_V4", PS1_V4, PS1_V4); 639 639 CONVERT_FORMAT ("DVO_STARPAR_PS1_V5", PS1_V5, PS1_V5); 640 // CONVERT_FORMAT ("DVO_STELLAR_PARAMS_PS1_V5", PS1_V5, PS1_V5); 641 // XXX fix in libauto: STELLAR_PARAMS to STARPAR 640 642 # undef CONVERT_FORMAT 641 643 -
branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/dvo_photcode_ops.c
r37116 r37435 1788 1788 m2 = (Ns2 == -1) ? average[0].M : secfilt[Ns2].M; 1789 1789 */ 1790 1791 /*** lensing *********************************************************************************/ 1792 1793 # define LENSFIELD(NAME) \ 1794 float LensValue_##NAME (PhotCode *code, Lensobj *lensobj) { \ 1795 if (code == NULL) return NAN; \ 1796 int Ns = photcodes->hashNsec[code->code]; \ 1797 float value = (Ns == -1) ? NAN : lensobj[Ns].NAME; \ 1798 return (value); \ 1799 } 1800 1801 LENSFIELD(X11_sm_obj); 1802 LENSFIELD(X12_sm_obj); 1803 LENSFIELD(X22_sm_obj); 1804 LENSFIELD(E1_sm_obj); 1805 LENSFIELD(E2_sm_obj); 1806 1807 LENSFIELD(X11_sh_obj); 1808 LENSFIELD(X12_sh_obj); 1809 LENSFIELD(X22_sh_obj); 1810 LENSFIELD(E1_sh_obj); 1811 LENSFIELD(E2_sh_obj); 1812 1813 LENSFIELD(X11_sm_psf); 1814 LENSFIELD(X12_sm_psf); 1815 LENSFIELD(X22_sm_psf); 1816 LENSFIELD(E1_sm_psf); 1817 LENSFIELD(E2_sm_psf); 1818 1819 LENSFIELD(X11_sh_psf); 1820 LENSFIELD(X12_sh_psf); 1821 LENSFIELD(X22_sh_psf); 1822 LENSFIELD(E1_sh_psf); 1823 LENSFIELD(E2_sh_psf); -
branches/eam_branches/ipp-20140904/Ohana/src/opihi/dvo/avextract.c
r37049 r37435 5 5 off_t i, j, n, m; 6 6 int N, Npts, NPTS, last, next, state, Nfields, Nreturn, Ncstack, Nstack; 7 int Nsecfilt, VERBOSE , needMeasures;7 int Nsecfilt, VERBOSE; 8 8 char **cstack, name[1024]; 9 9 void *Signal; … … 137 137 // this does all the work of re-packaging the command, calling it on the remote machines, then loading in the results 138 138 if (PARALLEL && !HOST_ID) { 139 int status = HostTableParallelOps (skylist, argc, argv, RESULT_FILE, TRUE, 0, VERBOSE);139 int status = HostTableParallelOps (skylist, argc, argv, RESULT_FILE, TRUE, 0, VERBOSE); 140 140 141 141 dbFreeFields (fields, Nfields); … … 163 163 } 164 164 165 // check the requested fields : are all average/secfilt entries, or do we need measures? 166 needMeasures = FALSE; 167 for (i = 0; !needMeasures && (i < Nfields); i++) { 168 if (fields[i].photcode == NULL) continue; // non-measure fields do not have a photcode 169 if (fields[i].photcode[0].type == PHOT_REF) needMeasures = TRUE; 170 if (fields[i].photcode[0].type == PHOT_DEP) needMeasures = TRUE; 171 } 165 // check the requested fields 166 int needMeasure = dbFieldNeedMeasure (fields, Nfields); 167 int needLensobj = dbFieldNeedLensobj (fields, Nfields); 168 int needStarpar = dbFieldNeedStarpar (fields, Nfields); 172 169 173 170 // grab data from all selected sky regions … … 189 186 catalog.filename = (HOST_ID || PARALLEL_LOCAL) ? hostfile : skylist[0].filename[i]; 190 187 catalog.catflags = LOAD_AVES | LOAD_SECF; 191 catalog.catflags |= needMeasures ? LOAD_MEAS : SKIP_MEAS; 188 catalog.catflags |= needMeasure ? LOAD_MEAS : SKIP_MEAS; 189 catalog.catflags |= needLensobj ? LOAD_LENSOBJ : SKIP_LENSOBJ; 190 catalog.catflags |= needStarpar ? LOAD_STARPAR : SKIP_STARPAR; 192 191 catalog.Nsecfilt = 0; 193 192 … … 205 204 // XXX for measure values, this could be optimized for one loop over measures... 206 205 207 m = catalog.average[j].measureOffset;208 209 206 dbExtractAveragesInitAve (); // reset counters for saved fields (costs very little) 210 207 208 Average *average = &catalog.average[j]; 209 210 m = average->measureOffset; 211 Measure *measure = needMeasure ? &catalog.measure[m] : NULL; 212 213 m = average->lensobjOffset; 214 Lensobj *lensobj = needLensobj ? &catalog.lensobj[m] : NULL; 215 216 m = average->starparOffset; 217 StarPar *starpar = needStarpar ? &catalog.starpar[m] : NULL; 218 219 m = j*Nsecfilt; 220 SecFilt *secfilt = &catalog.secfilt[j*Nsecfilt]; 221 211 222 for (n = 0; n < Nfields; n++) { 212 values[n] = dbExtractAverages ( &catalog.average[j], &catalog.secfilt[j*Nsecfilt], &catalog.measure[m], &fields[n]);223 values[n] = dbExtractAverages (average, secfilt, measure, lensobj, starpar, &fields[n]); 213 224 } 214 225 -
branches/eam_branches/ipp-20140904/Ohana/src/opihi/dvo/avmatch.c
r37049 r37435 149 149 } 150 150 151 // check the requested fields : are all average/secfilt entries, or do we need measures? 152 int needMeasures = FALSE; 153 for (i = 0; !needMeasures && (i < Nfields); i++) { 154 if (fields[i].photcode == NULL) continue; // assert this? 155 if (fields[i].photcode[0].type == PHOT_REF) needMeasures = TRUE; 156 if (fields[i].photcode[0].type == PHOT_DEP) needMeasures = TRUE; 157 } 151 // check the requested fields 152 int needMeasure = dbFieldNeedMeasure (fields, Nfields); 153 int needLensobj = dbFieldNeedLensobj (fields, Nfields); 154 int needStarpar = dbFieldNeedStarpar (fields, Nfields); 158 155 159 156 /* create output storage vectors */ … … 194 191 catalog.filename = HOST_ID ? hostfile : skylist[0].filename[i]; 195 192 catalog.catflags = LOAD_AVES | LOAD_SECF; 196 catalog.catflags |= needMeasures ? LOAD_MEAS : SKIP_MEAS; 193 catalog.catflags |= needMeasure ? LOAD_MEAS : SKIP_MEAS; 194 catalog.catflags |= needLensobj ? LOAD_LENSOBJ : SKIP_LENSOBJ; 195 catalog.catflags |= needStarpar ? LOAD_STARPAR : SKIP_STARPAR; 197 196 catalog.Nsecfilt = 0; 198 197 … … 219 218 if (Ncat == -2) continue; // no matches to this point 220 219 221 m = catalog.average[Ncat].measureOffset; 220 Average *average = &catalog.average[Ncat]; 221 222 m = average->measureOffset; 223 Measure *measure = needMeasure ? &catalog.measure[m] : NULL; 224 225 m = average->lensobjOffset; 226 Lensobj *lensobj = needLensobj ? &catalog.lensobj[m] : NULL; 227 228 m = average->starparOffset; 229 StarPar *starpar = needStarpar ? &catalog.starpar[m] : NULL; 230 231 m = j*Nsecfilt; 232 SecFilt *secfilt = &catalog.secfilt[j*Nsecfilt]; 222 233 223 234 // reset counters for saved fields, extract fields 224 235 dbExtractAveragesInitAve (); 225 236 for (n = 0; n < Nfields; n++) { 226 values[n] = dbExtractAverages ( &catalog.average[Ncat], &catalog.secfilt[Ncat*Nsecfilt], &catalog.measure[m], &fields[n]);237 values[n] = dbExtractAverages (average, secfilt, measure, lensobj, starpar, &fields[n]); 227 238 } 228 239
Note:
See TracChangeset
for help on using the changeset viewer.
