IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Apr 24, 2021, 2:28:09 PM (5 years ago)
Author:
eugene
Message:

add function to measure the residual stats for each chip, fix resets and flags on resets; fix update of image mcal from tgroup and mosaic; improved determination of bad nights and bad mosaics; allow tgroups to fit only zero points without airmass terms; clean up the test detection dumps; soften the errors to avoid overweighting extreme outliers with high S/N; more careful sequencing of fitting modes; add manual iteration option

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/relphot/src/liststats.c

    r41462 r41555  
    2626  stats->Upper80 = NAN;
    2727  stats->Lower20 = NAN;
     28  stats->Upper90 = NAN;
     29  stats->Lower10 = NAN;
    2830  stats->total   = NAN;
    2931  stats->Nmeas = 0;
     
    4951  if (N < 1) return (FALSE);
    5052
     53  int N90 = MIN (N-1, 0.9*N);
    5154  int N80 = MIN (N-1, 0.8*N);
    5255  int N20 = MAX (0, 0.2*N);
     56  int N10 = MAX (0, 0.1*N);
    5357
    5458  if (weight) {
     
    6872  stats[0].Upper80 = value[N80];
    6973  stats[0].Lower20 = value[N20];
     74  stats[0].Upper90 = value[N90];
     75  stats[0].Lower10 = value[N10];
    7076
    7177  switch (stats->statmode) {
     
    116122  WeightedMean |= (stats->statmode == STATS_INNER_WTMEAN);
    117123  WeightedMean |= (stats->statmode == STATS_CHI_INNER_WTMEAN);
     124  if (!dvalue) WeightedMean = FALSE;  // warn the user?
    118125
    119126  /* calculating the per-star offset based on the desired weighting scheme */
     
    137144        M  += value[i] * weight[i];
    138145        W  +=            weight[i];
    139         dM += SQ (weight[i] * dvalue[i]);
     146        dM += dvalue ? SQ (weight[i] * dvalue[i]) : 0.0;
    140147        R  += weight[i];
    141148        Nm += 1.0; 
    142149      }
    143150      Mo  = M / W;
    144       dMo = sqrt (dM) / R;
     151      dMo = dvalue ? sqrt (dM) / R : NAN;
    145152    }
    146153  } else {
     
    159166      for (i = ks; i < ke; i++) {
    160167        M   += value[i];
    161         dM  += SQ (dvalue[i]);
     168        dM  += dvalue ? SQ (dvalue[i]) : 0.0;
    162169        Nm  += 1.0; 
    163170      }
    164171      Mo = M / Nm;
    165       dMo = sqrt (dM) / Nm;
     172      dMo = dvalue ? sqrt (dM) / Nm : NAN;
    166173    }
    167174  }
Note: See TracChangeset for help on using the changeset viewer.