IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 26964 for trunk/psModules


Ignore:
Timestamp:
Feb 16, 2010, 3:36:17 PM (16 years ago)
Author:
Paul Price
Message:

Make zero point a 'concept' so that it is easily passed from stage to stage. Checked that this results in calibrated magnitudes out of ppSub.

Location:
trunk/psModules/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/concepts/pmConcepts.c

    r26002 r26964  
    292292        conceptRegisterF32("FPA.FOCUS", "Telescope focus", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    293293        conceptRegisterF32("FPA.AIRMASS", "Airmass at boresight", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    294         // XXX p_pmConceptParse_FPA_FILTER -> p_pmConceptParse_FPA_FILTERID (and Format as well)?
     294        // XXX p_pmConceptParse_FPA_FILTER -> p_pmConceptParse_FPA_FILTERID (and Format as well)?
    295295        conceptRegisterStr("FPA.FILTERID", "Filter used (parsed, abstract name)", p_pmConceptParse_FPA_FILTER, p_pmConceptFormat_FPA_FILTER, NULL, false, PM_FPA_LEVEL_FPA);
    296296        conceptRegisterStr("FPA.FILTER", "Filter used (instrument name)", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
     
    334334        conceptRegisterF32("FPA.TELTEMP.EXTRA", "Telescope Temperatures: extra", p_pmConceptParse_TELTEMPS, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    335335        conceptRegisterF32("FPA.PON.TIME", "Power On Time", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    336         conceptRegisterS32("FPA.BURNTOOL.APPLIED", "[T=applied] Burn streaks applied to image data", p_pmConceptParse_BTOOLAPP,p_pmConceptFormat_BTOOLAPP,NULL,false,PM_FPA_LEVEL_FPA);
    337         //      conceptRegisterBool("FPA.BURNTOOL.APPLIED", "Status of burntool processing", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
     336        conceptRegisterS32("FPA.BURNTOOL.APPLIED", "[T=applied] Burn streaks applied to image data", p_pmConceptParse_BTOOLAPP,p_pmConceptFormat_BTOOLAPP,NULL,false,PM_FPA_LEVEL_FPA);
     337        //      conceptRegisterBool("FPA.BURNTOOL.APPLIED", "Status of burntool processing", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    338338        conceptRegisterF32("FPA.EXPOSURE", "Exposure time (sec)", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
     339        conceptRegisterF32("FPA.ZP", "Magnitude zero point", NULL, NULL, NULL, false, PM_FPA_LEVEL_FPA);
    339340    }
    340341    if (!conceptsChip) {
  • trunk/psModules/src/concepts/pmConceptsAverage.c

    r22706 r26964  
    3636
    3737    double time      = 0.0;             // Time of observation
     38    double zp        = 0.0;             // Zero point
    3839    psTimeType timeSys = 0;             // Time system
    3940    char *filter     = NULL;            // Filter
     
    6364        psTimeConvert(fpaTime, PS_TIME_TAI);
    6465        time       += psTimeToMJD(fpaTime);
     66
     67        zp += psMetadataLookupF32(NULL, fpa->concepts, "FPA.ZP");
     68
    6569        if (num == 1) {
    6670            timeSys = psMetadataLookupS32(NULL, fpa->concepts, "FPA.TIMESYS");
     
    8589
    8690    time /= (double)num;
     91    zp /= (double)num;
    8792
    8893    MD_UPDATE(target->concepts, "FPA.TIMESYS", S32, timeSys);
     
    9297    MD_UPDATE_STR(target->concepts, "FPA.INSTRUMENT", instrument);
    9398    MD_UPDATE_STR(target->concepts, "FPA.DETECTOR", detector);
     99    MD_UPDATE(target->concepts, "FPA.ZP", F32, zp);
    94100
    95101    // FPA.TIME needs special care
  • trunk/psModules/src/objects/pmSourceIO_CMF_PS1_V1.c

    r25754 r26964  
    6969    float magOffset = NAN;
    7070    float exptime   = psMetadataLookupF32 (&status1, fpa->concepts, "FPA.EXPOSURE");
    71     float zeropt    = psMetadataLookupF32 (&status2, imageHeader, "ZPT_OBS");
    72     float zeroptErr = psMetadataLookupF32 (&status2, imageHeader, "ZPT_ERR");
     71    float zeropt    = psMetadataLookupF32(&status2, fpa->concepts, "FPA.ZP");
     72    if (!isfinite(zeropt)) {
     73        zeropt    = psMetadataLookupF32 (&status2, imageHeader, "ZPT_OBS");
     74    }
    7375    if (status1 && status2 && (exptime > 0.0)) {
    7476        magOffset = zeropt + 2.5*log10(exptime);
    7577    }
     78    float zeroptErr = psMetadataLookupF32 (&status2, imageHeader, "ZPT_ERR");
    7679
    7780    // if the sequence is defined, write these in seq order; otherwise
     
    477480        }
    478481
    479 # endif 
     482# endif
    480483        psArrayAdd (table, 100, row);
    481484        psFree (row);
  • trunk/psModules/src/objects/pmSourceIO_CMF_PS1_V2.c

    r26893 r26964  
    6969    float magOffset = NAN;
    7070    float exptime   = psMetadataLookupF32 (&status1, fpa->concepts, "FPA.EXPOSURE");
    71     float zeropt    = psMetadataLookupF32 (&status2, imageHeader, "ZPT_OBS");
    72     float zeroptErr = psMetadataLookupF32 (&status2, imageHeader, "ZPT_ERR");
     71    float zeropt    = psMetadataLookupF32(&status2, fpa->concepts, "FPA.ZP");
     72    if (!isfinite(zeropt)) {
     73        zeropt    = psMetadataLookupF32 (&status2, imageHeader, "ZPT_OBS");
     74    }
    7375    if (status1 && status2 && (exptime > 0.0)) {
    7476        magOffset = zeropt + 2.5*log10(exptime);
    7577    }
     78    float zeroptErr = psMetadataLookupF32 (&status2, imageHeader, "ZPT_ERR");
    7679
    7780    // if the sequence is defined, write these in seq order; otherwise
Note: See TracChangeset for help on using the changeset viewer.