IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 26227


Ignore:
Timestamp:
Nov 20, 2009, 3:24:18 PM (17 years ago)
Author:
eugene
Message:

add additional statistical measures to astrometry calibration

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/20091113/psastro/src/psastroOneChipFit.c

    r26197 r26227  
    135135        // toSky converts from FPA & TPA units (microns) to sky units (radians)
    136136        float plateScale = 0.5*(fpa->toSky->Xs + fpa->toSky->Ys)*3600.0*PM_DEG_RAD;
    137         // float astError = 0.5*(results->xStats->clippedStdev + results->yStats->clippedStdev) * plateScale;
    138         float astError = 0.5*(results->xStats->robustStdev + results->yStats->robustStdev) * plateScale;
     137
     138        float rawXstdev = psStatsGetValue (results->xStats, psStatsStdevOption(results->xStats->options));
     139        float rawYstdev = psStatsGetValue (results->yStats, psStatsStdevOption(results->yStats->options));
     140
     141        float astError = 0.5*(rawXstdev + rawYstdev) * plateScale;
    139142        int astNstar = results->yStats->clippedNvalues;
    140143        psLogMsg ("psastro", PS_LOG_INFO, "pass %d, error: %f arcsec, Nstars: %d", iter, astError, astNstar);
     
    150153    float plateScale = 0.5*(fpa->toSky->Xs + fpa->toSky->Ys)*3600.0*PM_DEG_RAD;
    151154
     155    float rawXstdev = psStatsGetValue (results->xStats, psStatsStdevOption(results->xStats->options));
     156    float rawYstdev = psStatsGetValue (results->yStats, psStatsStdevOption(results->yStats->options));
     157
    152158    // pixError is the average 1D scatter in pixels ('results' are in FPA units = microns)
    153     // float pixError = 0.5*(results->xStats->clippedStdev + results->yStats->clippedStdev) / pixelScale;
    154     float pixError = 0.5*(results->xStats->robustStdev + results->yStats->robustStdev) / pixelScale;
     159    float pixError = 0.5*(rawXstdev + rawYstdev) / pixelScale;
    155160
    156161    // astError is the average 1D scatter in arcsec ('results' are in FPA units = microns)
    157     // float astError = 0.5*(results->xStats->clippedStdev + results->yStats->clippedStdev) * plateScale;
    158     float astError = 0.5*(results->xStats->robustStdev + results->yStats->robustStdev) * plateScale;
     162    float astError = 0.5*(rawXstdev + rawYstdev) * plateScale;
     163
     164    // x and y are forced to use the same subset of values:
    159165    int astNstar = results->yStats->clippedNvalues;
    160166
     
    184190    psMetadataAddF32 (updates, PS_LIST_TAIL, "EQUINOX",  PS_META_REPLACE, "equinox of ref catalog", 2000.0); // XXX this is bogus: should be defined based on equinox of refstars
    185191
     192    // additional error measurements:
     193    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CDX",   PS_META_REPLACE, "chip astrometry X stdev (arcsec)", rawXstdev * plateScale);
     194    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CSX",   PS_META_REPLACE, "chip astrometry X systematic err (arcsec)", results->dXsys * plateScale);
     195    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CRX",   PS_META_REPLACE, "chip astrometry X 10-90 percentile (arcsec)", results->dXrange * plateScale);
     196
     197    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CDY",   PS_META_REPLACE, "chip astrometry Y stdev (arcsec)", rawYstdev * plateScale);
     198    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CSY",   PS_META_REPLACE, "chip astrometry Y systematic err (arcsec)", results->dYsys * plateScale);
     199    psMetadataAddF32 (updates, PS_LIST_TAIL, "AST_CRY",   PS_META_REPLACE, "chip astrometry Y 10-90 percentile (arcsec)", results->dYrange * plateScale);
     200
    186201    // XXX check if we correctly applied the new transformation:
    187202    if (psTraceGetLevel("psastro.dump") > 0) {
Note: See TracChangeset for help on using the changeset viewer.