Changeset 15509 for trunk/Ohana/src/relphot
- Timestamp:
- Nov 7, 2007, 6:28:03 PM (19 years ago)
- Location:
- trunk/Ohana/src/relphot
- Files:
-
- 9 edited
-
include/relphot.h (modified) (1 diff)
-
src/GridOps.c (modified) (3 diffs)
-
src/ImageOps.c (modified) (5 diffs)
-
src/MosaicOps.c (modified) (4 diffs)
-
src/StarOps.c (modified) (12 diffs)
-
src/bcatalog.c (modified) (1 diff)
-
src/plot_scatter.c (modified) (1 diff)
-
src/select_images.c (modified) (1 diff)
-
src/setMrelFinal.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/relphot/include/relphot.h
r12332 r15509 142 142 int gcatalog PROTO((Catalog *catalog, int FINAL)); 143 143 Coords *getCoords PROTO((int meas, int cat)); 144 int getImageEntry PROTO((int meas, int cat)); 144 145 float getMcal PROTO((int meas, int cat)); 145 146 float getMgrid PROTO((int meas, int cat)); -
trunk/Ohana/src/relphot/src/GridOps.c
r15038 r15509 239 239 if (!USE_GRID) return (0); 240 240 i = bin[cat][meas]; 241 if (i == -1) return (N O_MAG);241 if (i == -1) return (NAN); 242 242 243 243 value = gridM[i]; … … 272 272 if (catalog[c].measure[m].dbFlags & MEAS_BAD) continue; 273 273 Mcal = getMcal (m, c); 274 if (Mcal == NO_MAG) continue; 275 if (Mcal == NO_IMAGE) continue; 274 if (isnan(Mcal)) continue; 276 275 Mmos = getMmos (m, c); 277 if ( Mmos == NO_MAG) continue;278 if (Mmos == NO_IMAGE) continue;279 if ( (Mrel = getMrel (catalog, m, c)) == NO_MAG) continue;276 if (isnan(Mmos)) continue; 277 Mrel = getMrel (catalog, m, c); 278 if (isnan(Mrel)) continue; 280 279 281 280 n = catalog[c].measure[m].averef; … … 326 325 } 327 326 Mcal = getMcal (m, c); 328 if (Mcal == NO_MAG) continue; 329 if (Mcal == NO_IMAGE) continue; 327 if (isnan(Mcal)) continue; 330 328 Mmos = getMmos (m, c); 331 if ( Mmos == NO_MAG) continue;332 if (Mmos == NO_IMAGE) continue;333 if ( (Mrel = getMrel (catalog, m, c)) == NO_MAG) continue;329 if (isnan(Mmos)) continue; 330 Mrel = getMrel (catalog, m, c); 331 if (isnan(Mrel)) continue; 334 332 335 333 n = catalog[c].measure[m].averef; -
trunk/Ohana/src/relphot/src/ImageOps.c
r15038 r15509 138 138 } 139 139 140 int getImageEntry (int meas, int cat) { 141 142 int i; 143 144 i = bin[cat][meas]; 145 return (i); 146 } 147 140 148 float getMcal (int meas, int cat) { 141 149 … … 144 152 145 153 i = bin[cat][meas]; 146 if (i == -1) return (N O_IMAGE);147 148 if (image[i].code & IMAGE_BAD) return (NO_MAG);154 if (i == -1) return (NAN); 155 156 if (image[i].code & IMAGE_BAD) return (NAN); 149 157 value = image[i].Mcal; 150 158 return (value); … … 197 205 if (catalog[c].measure[m].dbFlags & MEAS_BAD) continue; 198 206 Mmos = getMmos (m, c); 199 if (Mmos == NO_MAG) continue; 200 if (Mmos == NO_IMAGE) continue; 201 if ((Mgrid = getMgrid (m, c)) == NO_MAG) continue; 202 if ((Mrel = getMrel (catalog, m, c)) == NO_MAG) continue; 207 if (isnan(Mmos)) continue; 208 Mgrid = getMgrid (m, c); 209 if (isnan(Mgrid)) continue; 210 Mrel = getMrel (catalog, m, c); 211 if (isnan(Mrel)) continue; 203 212 204 213 n = catalog[c].measure[m].averef; … … 338 347 int i, j, m, c, n, N; 339 348 double *list, *dlist; 340 float Mcal, Mmos ;349 float Mcal, Mmos, Mgrid; 341 350 StatType stats; 342 351 … … 357 366 c = clist[i][j]; 358 367 359 Mcal = getMcal (m, c); 360 if (Mcal == NO_MAG) continue; 361 if (Mcal == NO_IMAGE) continue; 362 Mmos = getMmos (m, c); 363 if (Mmos == NO_MAG) continue; 364 if (Mmos == NO_IMAGE) continue; 365 if (getMgrid (m, c) == NO_MAG) continue; 368 Mcal = getMcal (m, c); 369 if (isnan(Mcal)) continue; 370 Mmos = getMmos (m, c); 371 if (isnan(Mmos)) continue; 372 Mgrid = getMgrid (m, c); 373 if (isnan(Mgrid)) continue; 366 374 N++; 367 375 } -
trunk/Ohana/src/relphot/src/MosaicOps.c
r15038 r15509 134 134 Dmin = MIN (Dmin, D); 135 135 Dmax = MAX (Dmax, D); 136 Mcal += image[m].Mcal;136 Mcal += image[m].Mcal; 137 137 dMcal += image[m].dMcal; 138 Xm += image[m].Xm;138 Xm += image[m].Xm; 139 139 /* we are using mosaic.Mcal, not image.Mcal. reset image.Mcal */ 140 image[m].Mcal = 0.0; 141 image[m].dMcal = image[m].Xm = NO_MAG; 140 image[m].Mcal = 0.0; 141 image[m].dMcal = NAN; 142 image[m].Xm = NAN_S_SHORT; 142 143 } 143 144 dS /= Nimlist[i]; … … 299 300 if (!MOSAICNAME[0]) return (0); 300 301 i = bin[cat][meas]; 301 if (i == -1) return (N O_IMAGE);302 303 if (mosaic[i].code & IMAGE_BAD) return (N O_MAG);302 if (i == -1) return (NAN); 303 304 if (mosaic[i].code & IMAGE_BAD) return (NAN); 304 305 value = mosaic[i].Mcal; 305 306 return (value); … … 345 346 c = clist[i][j]; 346 347 348 if (catalog[c].measure[m].dbFlags & MEAS_BAD) continue; 347 349 Mcal = getMcal (m, c); 348 if ( Mcal == NO_MAG) continue;349 if (Mcal == NO_IMAGE) continue;350 if ( catalog[c].measure[m].dbFlags & MEAS_BAD) continue;351 if ((Mgrid = getMgrid (m, c)) == NO_MAG) continue;352 if ( (Mrel = getMrel (catalog, m, c)) == NO_MAG) continue;350 if (isnan(Mcal)) continue; 351 Mgrid = getMgrid (m, c); 352 if (isnan(Mgrid)) continue; 353 Mrel = getMrel (catalog, m, c); 354 if (isnan(Mrel)) continue; 353 355 354 356 n = catalog[c].measure[m].averef; … … 469 471 470 472 Mcal = getMcal (m, c); 471 if (Mcal == NO_MAG) continue; 472 if (Mcal == NO_IMAGE) continue; 473 if (getMgrid (m, c) == NO_MAG) continue; 474 if (getMrel (catalog, m, c) == NO_MAG) continue; 473 if (isnan(Mcal)) continue; 474 Mgrid = getMgrid (m, c); 475 if (isnan(Mgrid)) continue; 476 Mrel = getMrel (catalog, m, c); 477 if (isnan(Mrel)) continue; 475 478 N++; 476 479 } -
trunk/Ohana/src/relphot/src/StarOps.c
r15038 r15509 26 26 27 27 ave = catalog[cat].measure[meas].averef; 28 if (catalog[cat].average[ave].code & STAR_BAD) return (N O_MAG);28 if (catalog[cat].average[ave].code & STAR_BAD) return (NAN); 29 29 30 30 value = catalog[cat].secfilt[PhotNsec*ave+PhotSec].M; … … 45 45 m = catalog[i].average[j].offset; 46 46 47 // XXX allow REF stars to be included in the calculation48 // this should be optionally set, and should allow for49 // REF stars to be downweighted by more than their reported50 // errors. how such info is carried is unclear...51 47 N = 0; 52 48 for (k = 0; k < catalog[i].average[j].Nm; k++, m++) { 53 49 if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; 54 Mcal = getMcal (m, i); 55 if (Mcal == NO_MAG) continue; 56 if (Mcal == NO_IMAGE) { 50 // XXX allow REF stars (no Image Entry) to be included in the calculation this 51 // should be optionally set, and should allow for REF stars to be downweighted by 52 // more than their reported errors. how such info is carried is unclear... 53 if (getImageEntry (m, i) < 0) { 57 54 Mcal = Mmos = Mgrid = 0; 58 55 } else { 56 Mcal = getMcal (m, i); 57 if (isnan(Mcal)) continue; 59 58 Mmos = getMmos (m, i); 60 if ( Mmos == NO_MAG) continue;61 if (Mmos == NO_IMAGE) continue;62 if ( (Mgrid = getMgrid (m, i)) == NO_MAG) continue;59 if (isnan(Mmos)) continue; 60 Mgrid = getMgrid (m, i); 61 if (isnan(Mgrid)) continue; 63 62 } 64 63 … … 78 77 catalog[i].secfilt[PhotNsec*j+PhotSec].M = stats.mean; 79 78 catalog[i].secfilt[PhotNsec*j+PhotSec].dM = stats.sigma; 80 catalog[i].secfilt[PhotNsec*j+PhotSec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : N O_MAG;79 catalog[i].secfilt[PhotNsec*j+PhotSec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : NAN_S_SHORT; 81 80 } 82 81 } … … 111 110 for (k = 0; k < catalog[i].average[j].Nm; k++, m++) { 112 111 if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; 113 Mcal = getMcal (m, i); 114 if (Mcal == NO_MAG) continue; 115 if (Mcal == NO_IMAGE) { 112 // XXX allow REF stars (no Image Entry) to be included in the calculation this 113 // should be optionally set, and should allow for REF stars to be downweighted by 114 // more than their reported errors. how such info is carried is unclear... 115 if (getImageEntry (m, i) < 0) { 116 116 Mcal = Mmos = Mgrid = 0; 117 117 } else { 118 Mcal = getMcal (m, i); 119 if (isnan(Mcal)) continue; 118 120 Mmos = getMmos (m, i); 119 if ( Mmos == NO_MAG) continue;120 if (Mmos == NO_IMAGE) continue;121 if ( (Mgrid = getMgrid (m, i)) == NO_MAG) continue;121 if (isnan(Mmos)) continue; 122 Mgrid = getMgrid (m, i); 123 if (isnan(Mgrid)) continue; 122 124 } 123 125 … … 135 137 catalog[i].secfilt[PhotNsec*j+PhotSec].M = stats.mean; 136 138 catalog[i].secfilt[PhotNsec*j+PhotSec].dM = MAX (stats.error, stats.sigma); 137 catalog[i].secfilt[PhotNsec*j+PhotSec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : N O_MAG;139 catalog[i].secfilt[PhotNsec*j+PhotSec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : NAN_S_SHORT; 138 140 } 139 141 } … … 160 162 if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; 161 163 Mcal = getMcal (m, i); 162 if (Mcal == NO_MAG) continue; 163 if (Mcal == NO_IMAGE) continue; 164 if (isnan(Mcal)) continue; 164 165 Mmos = getMmos (m, i); 165 if ( Mmos == NO_MAG) continue;166 if (Mmos == NO_IMAGE) continue;167 if ( (Mgrid = getMgrid (m, i)) == NO_MAG) continue;166 if (isnan(Mmos)) continue; 167 Mgrid = getMgrid (m, i); 168 if (isnan(Mgrid)) continue; 168 169 catalog[i].measure[m].Mcal = Mcal + Mmos + Mgrid; 169 170 } … … 216 217 Xm = catalog[i].secfilt[PhotNsec*j+PhotSec].Xm; 217 218 Chisq = pow (10.0, 0.01*Xm); 218 mark = (dM > MaxScatter) || (Xm == N O_MAG) || (Chisq > MaxChisq);219 mark = (dM > MaxScatter) || (Xm == NAN_S_SHORT) || (Chisq > MaxChisq); 219 220 if (mark) { 220 221 catalog[i].average[j].code |= ID_STAR_POOR; … … 274 275 /* if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; */ 275 276 Mcal = getMcal (m, i); 276 if (Mcal == NO_MAG) continue; 277 if (Mcal == NO_IMAGE) continue; 277 if (isnan(Mcal)) continue; 278 278 Mmos = getMmos (m, i); 279 if ( Mmos == NO_MAG) continue;280 if (Mmos == NO_IMAGE) continue;281 if ( (Mgrid = getMgrid (m, i)) == NO_MAG) continue;279 if (isnan(Mmos)) continue; 280 Mgrid = getMgrid (m, i); 281 if (isnan(Mgrid)) continue; 282 282 283 283 Msys = PhotSys (&catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*PhotNsec]); … … 310 310 /* if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; */ 311 311 Mcal = getMcal (m, i); 312 if (Mcal == NO_MAG) continue; 313 if (Mcal == NO_IMAGE) continue; 312 if (isnan(Mcal)) continue; 314 313 Mmos = getMmos (m, i); 315 if ( Mmos == NO_MAG) continue;316 if (Mmos == NO_IMAGE) continue;317 if ( (Mgrid = getMgrid (m, i)) == NO_MAG) continue;314 if (isnan(Mmos)) continue; 315 Mgrid = getMgrid (m, i); 316 if (isnan(Mgrid)) continue; 318 317 319 318 Msys = PhotSys (&catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*PhotNsec]); … … 368 367 for (k = 0; k < catalog[i].average[j].Nm; k++, m++) { 369 368 Mcal = getMcal (m, i); 370 if (Mcal == NO_MAG) continue; 371 if (Mcal == NO_IMAGE) continue; 369 if (isnan(Mcal)) continue; 372 370 Mmos = getMmos (m, i); 373 if ( Mmos == NO_MAG) continue;374 if (Mmos == NO_IMAGE) continue;375 if ( getMgrid (m, i) == NO_MAG) continue;371 if (isnan(Mmos)) continue; 372 Mgrid = getMgrid (m, i); 373 if (isnan(Mgrid)) continue; 376 374 N++; 377 375 } … … 411 409 412 410 Xm = catalog[i].secfilt[PhotNsec*j+PhotSec].Xm; 413 if (Xm == N O_MAG) continue;411 if (Xm == NAN_S_SHORT) continue; 414 412 list[n] = pow (10.0, 0.01*Xm); 415 413 dlist[n] = 1; … … 508 506 xlist[N] = catalog[i].secfilt[PhotNsec*j+PhotSec].M; 509 507 value = catalog[i].secfilt[PhotNsec*j+PhotSec].Xm; 510 if (value == N O_MAG) continue;508 if (value == NAN_S_SHORT) continue; 511 509 ylist[N] = 0.01*value; 512 510 N++; -
trunk/Ohana/src/relphot/src/bcatalog.c
r15038 r15509 27 27 28 28 if (RESET) { 29 subcatalog[0].secfilt[PhotNsec*Naverage+PhotSec].M = N O_MAG;30 subcatalog[0].secfilt[PhotNsec*Naverage+PhotSec].dM = N O_MAG;29 subcatalog[0].secfilt[PhotNsec*Naverage+PhotSec].M = NAN; 30 subcatalog[0].secfilt[PhotNsec*Naverage+PhotSec].dM = NAN; 31 31 subcatalog[0].average[Naverage].code &= ~ID_STAR_FEW; 32 32 subcatalog[0].average[Naverage].code &= ~ID_STAR_POOR; -
trunk/Ohana/src/relphot/src/plot_scatter.c
r15038 r15509 28 28 for (k = 0; k < catalog[i].average[j].Nm; k++, m++) { 29 29 if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue; 30 Mcal = getMcal (m, i); 31 if (Mcal == NO_MAG) continue; 32 if (Mcal == NO_IMAGE) continue; 33 Mmos = getMmos (m, i); 34 if (Mmos == NO_MAG) continue; 35 if (Mmos == NO_IMAGE) continue; 36 if ((Mgrid = getMgrid (m, i)) == NO_MAG) continue; 30 Mcal = getMcal (m, i); 31 if (isnan(Mcal)) continue; 32 Mmos = getMmos (m, i); 33 if (isnan(Mmos)) continue; 34 Mgrid = getMgrid (m, i); 35 if (isnan(Mgrid)) continue; 37 36 38 37 Mrel = catalog[i].secfilt[PhotNsec*j+PhotSec].M; -
trunk/Ohana/src/relphot/src/select_images.c
r12726 r15509 138 138 if (RESET) { 139 139 assignMcal (&image[nimage], (double *) NULL, -1); 140 image[nimage].dMcal = N O_MAG;140 image[nimage].dMcal = NAN; 141 141 image[nimage].code &= ~ID_IMAGE_POOR; 142 142 } -
trunk/Ohana/src/relphot/src/setMrelFinal.c
r15038 r15509 9 9 10 10 for (i = 0; i < catalog[0].Naverage; i++) { 11 catalog[0].secfilt[PhotNsec*i+PhotSec].M = NO_MAG;12 catalog[0].secfilt[PhotNsec*i+PhotSec].dM = N O_MAG;13 catalog[0].secfilt[PhotNsec*i+PhotSec].Xm = N O_MAG;11 catalog[0].secfilt[PhotNsec*i+PhotSec].M = NAN; 12 catalog[0].secfilt[PhotNsec*i+PhotSec].dM = NAN; 13 catalog[0].secfilt[PhotNsec*i+PhotSec].Xm = NAN_S_SHORT; 14 14 15 15 m = catalog[0].average[i].offset; … … 106 106 /* skip measurements from BAD images and mosaics */ 107 107 /* do NOT skip measurements without a matching image */ 108 if ( (getMcal (m, 0)) == NO_MAG) goto skip;109 if ( (getMmos (m, 0)) == NO_MAG) goto skip;108 if (isnan(getMcal (m, 0))) goto skip; 109 if (isnan(getMmos (m, 0))) goto skip; 110 110 111 111 /* skip measurements by inst mag limit */
Note:
See TracChangeset
for help on using the changeset viewer.
