IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 31262


Ignore:
Timestamp:
Apr 11, 2011, 8:15:41 AM (15 years ago)
Author:
eugene
Message:

fix seg fault; still getting the wrong answers

Location:
branches/eam_branches/ipp-20110404/Ohana/src/relphot
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20110404/Ohana/src/relphot/include/relphot.h

    r31261 r31262  
    218218StatType      statsMosaicX        PROTO((Catalog *catalog));
    219219StatType      statsMosaicdM       PROTO((Catalog *catalog));
    220 StatType      statsStarN          PROTO((Catalog *catalog, int Ncatalog));
    221 StatType      statsStarS          PROTO((Catalog *catalog, int Ncatalog));
    222 StatType      statsStarX          PROTO((Catalog *catalog, int Ncatalog));
     220StatType      statsStarN          PROTO((Catalog *catalog, int Ncatalog, int seccode));
     221StatType      statsStarS          PROTO((Catalog *catalog, int Ncatalog, int Nsec));
     222StatType      statsStarX          PROTO((Catalog *catalog, int Ncatalog, int Nsec));
    223223void          wcatalog            PROTO((Catalog *catalog));
    224224void          wimages             PROTO((void));
  • branches/eam_branches/ipp-20110404/Ohana/src/relphot/src/StarOps.c

    r31261 r31262  
    582582}
    583583
    584 StatType statsStarN (Catalog *catalog, int Ncatalog) {
     584StatType statsStarN (Catalog *catalog, int Ncatalog, int seccode) {
    585585
    586586  off_t j, k, m, Ntot;
     
    605605      if (catalog[i].average[j].flags & STAR_BAD) continue; 
    606606      m = catalog[i].average[j].measureOffset;
     607
     608      int ecode = GetPhotcodeEquivCodebyCode (catalog[i].measure[m].photcode);
     609      if (ecode == seccode) continue;
    607610
    608611      N = 0;
     
    629632}
    630633
    631 // XXXX do this for all secfilt at once or one at a time?
    632 StatType statsStarX (Catalog *catalog, int Ncatalog) {
     634// stats for a single secfilt at a time
     635StatType statsStarX (Catalog *catalog, int Ncatalog, int Nsec) {
    633636
    634637  off_t j, Ntot;
     
    651654    for (j = 0; j < catalog[i].Naverage; j++) {
    652655
    653       int Ns;
    654       for (Ns = 0; Ns < Nphotcodes; Ns++) {
    655 
    656         int thisCode = photcodes[Ns][0].code;
    657         int Nsec = GetPhotcodeNsec(thisCode);
    658 
    659         /* calculate the average value for a single star */
    660         if (catalog[i].average[j].flags & STAR_BAD) continue; 
     656      /* calculate the average value for a single star */
     657      if (catalog[i].average[j].flags & STAR_BAD) continue; 
    661658       
    662         Xm = catalog[i].secfilt[Nsecfilt*j+Nsec].Xm;
    663         if (Xm == NAN_S_SHORT) continue;
    664         list[n] = pow (10.0, 0.01*Xm);
    665         dlist[n] = 1;
    666         n++;
    667       }
     659      Xm = catalog[i].secfilt[Nsecfilt*j+Nsec].Xm;
     660      if (Xm == NAN_S_SHORT) continue;
     661      list[n] = pow (10.0, 0.01*Xm);
     662      dlist[n] = 1;
     663      n++;
    668664    }
    669665  }
     
    675671}
    676672
    677 StatType statsStarS (Catalog *catalog, int Ncatalog) {
     673StatType statsStarS (Catalog *catalog, int Ncatalog, int Nsec) {
    678674
    679675  int i, n;
     
    697693    for (j = 0; j < catalog[i].Naverage; j++) {
    698694
    699       int Ns;
    700       for (Ns = 0; Ns < Nphotcodes; Ns++) {
    701 
    702         int thisCode = photcodes[Ns][0].code;
    703         int Nsec = GetPhotcodeNsec(thisCode);
    704 
    705         /* calculate the average value for a single star */
    706         if (catalog[i].average[j].flags & STAR_BAD) continue; 
    707 
    708         dM = catalog[i].secfilt[Nsecfilt*j+Nsec].dM;
    709         list[n] = dM;
    710         dlist[n] = 1;
    711         n++;
    712       }
     695      /* calculate the average value for a single star */
     696      if (catalog[i].average[j].flags & STAR_BAD) continue; 
     697
     698      dM = catalog[i].secfilt[Nsecfilt*j+Nsec].dM;
     699      list[n] = dM;
     700      dlist[n] = 1;
     701      n++;
    713702    }
    714703  }
  • branches/eam_branches/ipp-20110404/Ohana/src/relphot/src/global_stats.c

    r5143 r31262  
    77  initstats ("MEAN");
    88
    9   stN = statsStarN (catalog, Ncatalog);
    10   stX = statsStarX (catalog, Ncatalog);
    11   stS = statsStarS (catalog, Ncatalog);
     9  fprintf (stderr, "STATS            median     mean    sigma      min      max   Nmeas\n");
    1210
     11  int Ns;
     12  for (Ns = 0; Ns < Nphotcodes; Ns++) {
     13
     14    int thisCode = photcodes[Ns][0].code;
     15    int Nsec = GetPhotcodeNsec(thisCode);
     16    int seccode = photcodes[Ns][0].code;
     17
     18    stN = statsStarN (catalog, Ncatalog, seccode);
     19    stX = statsStarX (catalog, Ncatalog, Nsec);
     20    stS = statsStarS (catalog, Ncatalog, Nsec);
     21 
     22    fprintf (stderr, "   --- stats for %s ---\n", photcodes[Ns][0].name);
     23    fprintf (stderr, "meas / image:   %7.0f  %7.0f  %7.0f  %7.0f  %7.0f  %6d\n",   imN.median, imN.mean, imN.sigma, imN.min, imN.max, imN.Nmeas);
     24    fprintf (stderr, "meas / mosaic:  %7.0f  %7.0f  %7.0f  %7.0f  %7.0f  %6d\n",   msN.median, msN.mean, msN.sigma, msN.min, msN.max, msN.Nmeas);
     25    fprintf (stderr, "meas / star:    %7.0f  %7.1f  %7.1f  %7.0f  %7.0f  %6d\n",   stN.median, stN.mean, stN.sigma, stN.min, stN.max, stN.Nmeas);
     26  }
     27 
    1328  imN = statsImageN (catalog);
    1429  imX = statsImageX (catalog);
    1530  imM = statsImageM (catalog);
    1631  imD = statsImagedM (catalog);
    17 
     32 
    1833  msN = statsMosaicN (catalog);
    1934  msM = statsMosaicM (catalog);
    2035  msD = statsMosaicdM (catalog);
    2136  msX = statsMosaicX (catalog);
    22 
    23   fprintf (stderr, "STATS            median     mean    sigma      min      max   Nmeas\n");
    24   fprintf (stderr, "meas / image:   %7.0f  %7.0f  %7.0f  %7.0f  %7.0f  %6d\n",   imN.median, imN.mean, imN.sigma, imN.min, imN.max, imN.Nmeas);
    25   fprintf (stderr, "meas / mosaic:  %7.0f  %7.0f  %7.0f  %7.0f  %7.0f  %6d\n",   msN.median, msN.mean, msN.sigma, msN.min, msN.max, msN.Nmeas);
    26   fprintf (stderr, "meas / star:    %7.0f  %7.1f  %7.1f  %7.0f  %7.0f  %6d\n",   stN.median, stN.mean, stN.sigma, stN.min, stN.max, stN.Nmeas);
    27 
     37 
    2838  fprintf (stderr, "chisq image:    %7.1f  %7.1f  %7.1f  %7.1f  %7.1f  %6d\n",   imX.median, imX.mean, imX.sigma, imX.min, imX.max, imX.Nmeas);
    2939  fprintf (stderr, "chisq mosaic:   %7.1f  %7.1f  %7.1f  %7.1f  %7.1f  %6d\n",   msX.median, msX.mean, msX.sigma, msX.min, msX.max, msX.Nmeas);
    3040  fprintf (stderr, "chisq star:     %7.1f  %7.1f  %7.1f  %7.1f  %7.1f  %6d\n",   stX.median, stX.mean, stX.sigma, stX.min, stX.max, stX.Nmeas);
    31 
     41 
    3242  fprintf (stderr, "Mcal image:     %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n",   imM.median, imM.mean, imM.sigma, imM.min, imM.max, imM.Nmeas);
    3343  fprintf (stderr, "dMcal image:    %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n",   imD.median, imD.mean, imD.sigma, imD.min, imD.max, imD.Nmeas);
    34 
     44 
    3545  fprintf (stderr, "Mcal mosaic:    %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n",   msM.median, msM.mean, msM.sigma, msM.min, msM.max, msM.Nmeas);
    3646  fprintf (stderr, "dMcal mosaic:   %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n",   msD.median, msD.mean, msD.sigma, msD.min, msD.max, msD.Nmeas);
    37 
     47 
    3848  fprintf (stderr, "dMrel star:     %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n\n", stS.median, stS.mean, stS.sigma, stS.min, stS.max, stS.Nmeas);
    3949
Note: See TracChangeset for help on using the changeset viewer.