IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Mar 29, 2015, 6:08:31 AM (11 years ago)
Author:
eugene
Message:

merge changes from trunk

Location:
branches/eam_branches/ipp-20150112/psModules/src/objects
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20150112/psModules/src/objects

  • branches/eam_branches/ipp-20150112/psModules/src/objects/Makefile.am

    r37325 r38058  
    5858        pmSourceIO_CMF_PS1_DV3.c \
    5959        pmSourceIO_CMF_PS1_DV4.c \
     60        pmSourceIO_CMF_PS1_DV5.c \
    6061        pmSourceIO_MatchedRefs.c \
    6162        pmSourcePlots.c \
     
    156157pmSourceIO_CMF_PS1_DV3.c \
    157158pmSourceIO_CMF_PS1_DV4.c \
     159pmSourceIO_CMF_PS1_DV5.c \
    158160pmSourceIO_CMF_PS1_SV1.c \
    159161pmSourceIO_CMF_PS1_SV2.c \
     
    188190        mksource.pl pmSourceIO_CMF.c.in PS1_DV4 pmSourceIO_CMF_PS1_DV4.c
    189191
     192pmSourceIO_CMF_PS1_DV5.c : pmSourceIO_CMF.c.in mksource.pl
     193        mksource.pl pmSourceIO_CMF.c.in PS1_DV5 pmSourceIO_CMF_PS1_DV5.c
     194
    190195pmSourceIO_CMF_PS1_SV1.c : pmSourceIO_CMF.c.in mksource.pl
    191196        mksource.pl pmSourceIO_CMF.c.in PS1_SV1 pmSourceIO_CMF_PS1_SV1.c
  • branches/eam_branches/ipp-20150112/psModules/src/objects/mksource.pl

    r37325 r38058  
    2525                "PS1_DV3", 3,
    2626                "PS1_DV4", 4,
     27                "PS1_DV5", 5,
    2728    );
    2829%cmfmodes_sv = ("PS1_SV1", 1,
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmFootprintAssignPeaks.c

    r31332 r38058  
    5656        const int y = peak->y - row0;
    5757       
    58         if (ids) { assert (x >= 0 && x < numCols && y >= 0 && y < numRows);}
     58        if (ids) { psAssert (x >= 0 && x < numCols && y >= 0 && y < numRows, "out of range");}
    5959        int id = ids ? ids->data.S32[y][x] : 0;
    6060
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmModelFuncs.h

    r36860 r38058  
    3636
    3737typedef enum {
    38     PM_MODEL_STATUS_NONE           = 0x000, ///< model fit not yet attempted, no other info
    39     PM_MODEL_STATUS_FITTED         = 0x001, ///< model fit completed
    40     PM_MODEL_STATUS_NONCONVERGE    = 0x002, ///< model fit did not converge
    41     PM_MODEL_STATUS_OFFIMAGE       = 0x004, ///< model fit drove out of range
    42     PM_MODEL_STATUS_BADARGS        = 0x008, ///< model fit called with invalid args
    43     PM_MODEL_STATUS_LIMITS         = 0x010, ///< model parameters hit limits
    44     PM_MODEL_STATUS_WEAK_FIT       = 0x020, ///< model fit met loose tolerance, but not tight tolerance
    45     PM_MODEL_STATUS_NAN_CHISQ      = 0x040, ///< model fit failed with a NAN chisq
    46     PM_MODEL_SERSIC_PCM_FAIL_GUESS = 0x080, ///< sersic model fit failed on the initial moments-based guess
    47     PM_MODEL_SERSIC_PCM_FAIL_GRID  = 0x100, ///< sersic model fit failed on the grid search
    48     PM_MODEL_PCM_FAIL_GUESS        = 0x200, ///< non-sersic model fit failed on the initial moments-based guess
    49     PM_MODEL_BEST_FIT              = 0x400, ///< this model was the best fit and was subtracted
     38    PM_MODEL_STATUS_NONE           = 0x0000, ///< model fit not yet attempted, no other info
     39    PM_MODEL_STATUS_FITTED         = 0x0001, ///< model fit completed
     40    PM_MODEL_STATUS_NONCONVERGE    = 0x0002, ///< model fit did not converge
     41    PM_MODEL_STATUS_OFFIMAGE       = 0x0004, ///< model fit drove out of range
     42    PM_MODEL_STATUS_BADARGS        = 0x0008, ///< model fit called with invalid args
     43    PM_MODEL_STATUS_LIMITS         = 0x0010, ///< model parameters hit limits
     44    PM_MODEL_STATUS_WEAK_FIT       = 0x0020, ///< model fit met loose tolerance, but not tight tolerance
     45    PM_MODEL_STATUS_NAN_CHISQ      = 0x0040, ///< model fit failed with a NAN chisq
     46    PM_MODEL_SERSIC_PCM_FAIL_GUESS = 0x0080, ///< sersic model fit failed on the initial moments-based guess
     47    PM_MODEL_SERSIC_PCM_FAIL_GRID  = 0x0100, ///< sersic model fit failed on the grid search
     48    PM_MODEL_PCM_FAIL_GUESS        = 0x0200, ///< non-sersic model fit failed on the initial moments-based guess
     49    PM_MODEL_BEST_FIT              = 0x0400, ///< this model was the best fit and was subtracted
     50    PM_MODEL_STATUS_NAN_SHAPE      = 0x0800, ///< model ellipse parameters do not transform to valid ellipse
     51    PM_MODEL_STATUS_NAN_SHAPE_ERR  = 0x1000, ///< model ellipse parameters errors do not transform to valid ellipse
     52    PM_MODEL_STATUS_FAIL_SHAPE_ERR = 0x2000, ///< could not find an MC solution for ellipse parameter errors
    5053} pmModelStatus;
    5154
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceIO.c

    r37325 r38058  
    607607            PM_SOURCES_WRITE("PS1_DV3",   CMF_PS1_DV3);
    608608            PM_SOURCES_WRITE("PS1_DV4",   CMF_PS1_DV4);
     609            PM_SOURCES_WRITE("PS1_DV5",   CMF_PS1_DV5);
    609610
    610611            psFree (outhead);
     
    11301131            PM_SOURCES_READ_PSF("PS1_DV3",   CMF_PS1_DV3);
    11311132            PM_SOURCES_READ_PSF("PS1_DV4",   CMF_PS1_DV4);
     1133            PM_SOURCES_READ_PSF("PS1_DV5",   CMF_PS1_DV5);
    11321134
    11331135            if (!sources) {
     
    14191421        PM_SOURCES_READ_XSRC("PS1_DV3",   CMF_PS1_DV3);
    14201422        PM_SOURCES_READ_XSRC("PS1_DV4",   CMF_PS1_DV4);
     1423        PM_SOURCES_READ_XSRC("PS1_DV5",   CMF_PS1_DV5);
    14211424    }
    14221425    psFree(tableHeader);
     
    14621465        PM_SOURCES_READ_XFIT("PS1_DV3",   CMF_PS1_DV3);
    14631466        PM_SOURCES_READ_XFIT("PS1_DV4",   CMF_PS1_DV4);
     1467        PM_SOURCES_READ_XFIT("PS1_DV5",   CMF_PS1_DV5);
    14641468    }
    14651469    psFree(tableHeader);
     
    15041508        PM_SOURCES_READ_XRAD("PS1_DV3",   CMF_PS1_DV3);
    15051509        PM_SOURCES_READ_XRAD("PS1_DV4",   CMF_PS1_DV4);
     1510        PM_SOURCES_READ_XRAD("PS1_DV5",   CMF_PS1_DV5);
    15061511    }
    15071512    psFree(tableHeader);
     
    15461551        PM_SOURCES_READ_XGAL("PS1_DV3",   CMF_PS1_DV3);
    15471552        PM_SOURCES_READ_XGAL("PS1_DV4",   CMF_PS1_DV4);
     1553        PM_SOURCES_READ_XGAL("PS1_DV5",   CMF_PS1_DV5);
    15481554    }
    15491555    psFree(tableHeader);
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceIO.h

    r37325 r38058  
    4646MK_PROTO(CMF_PS1_DV3);
    4747MK_PROTO(CMF_PS1_DV4);
     48MK_PROTO(CMF_PS1_DV5);
    4849
    4950int pmSourceGetDophotType (pmSource *source);
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceIO_CMF.c.in

    r37837 r38058  
    197197          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_SM_OBJ",   PS_DATA_F32, "smear polarizability element (objects)",     source->lensingOBJ->smear->e2);
    198198        }
    199 
    200199        if (source->lensingOBJ && source->lensingOBJ->shear) {
    201200          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_X11_SH_OBJ",  PS_DATA_F32, "shear polarizability element (objects)",     source->lensingOBJ->shear->X11);
     
    205204          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_SH_OBJ",   PS_DATA_F32, "shear polarizability element (objects)",     source->lensingOBJ->shear->e2);
    206205        }
     206        if (false && source->lensingOBJ) {
     207          // do not bother to save these as they are equivalent to Mxx,Mxy,Myy above
     208          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E1_PSF",      PS_DATA_F32, "shear polarizability element (objects)",     source->lensingOBJ->e1);
     209          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_PSF",      PS_DATA_F32, "shear polarizability element (objects)",     source->lensingOBJ->e2);
     210        }
    207211
    208212        if (source->lensingPSF && source->lensingPSF->smear) {
     
    213217          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_SM_PSF",   PS_DATA_F32, "smear polarizability element (objects)",     source->lensingPSF->smear->e2);
    214218        }
    215 
    216219        if (source->lensingPSF && source->lensingPSF->shear) {
    217220          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_X11_SH_PSF",  PS_DATA_F32, "shear polarizability element (objects)",     source->lensingPSF->shear->X11);
     
    221224          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_SH_PSF",   PS_DATA_F32, "shear polarizability element (objects)",     source->lensingPSF->shear->e2);
    222225        }
     226        if (source->lensingPSF) {
     227          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E1_PSF",      PS_DATA_F32, "shear polarizability element (objects)",     source->lensingPSF->e1);
     228          @>PS1_V4@               psMetadataAdd (row, PS_LIST_TAIL, "LENS_E2_PSF",      PS_DATA_F32, "shear polarizability element (objects)",     source->lensingPSF->e2);
     229        }
    223230
    224231        // if lensing params exist also include the backmapped chipID and chip coordinates
     
    240247        @>PS1_V3@                 psMetadataAdd (row, PS_LIST_TAIL, "SKY_LIMIT_FLUX",   PS_DATA_F32, "Flux / pix where object hits sky",           source->skyFlux);
    241248        @>PS1_V3@                 psMetadataAdd (row, PS_LIST_TAIL, "SKY_LIMIT_SLOPE",  PS_DATA_F32, "d(Flux/pix)/dRadius where object hits sky",  source->skySlope);
     249
     250        @>PS1_DV4@                psMetadataAdd (row, PS_LIST_TAIL, "SRC_CHIP_NUM",     PS_DATA_S16, "id of warp input chip",                      source->chipNum);
     251        @>PS1_DV4@                psMetadataAdd (row, PS_LIST_TAIL, "SRC_CHIP_X",       PS_DATA_S16, "x coord in warp input chip",                 source->chipX);
     252        @>PS1_DV4@                psMetadataAdd (row, PS_LIST_TAIL, "SRC_CHIP_Y",       PS_DATA_S16, "y coord in warp input chip",                 source->chipY);
     253        @>PS1_DV4@                psMetadataAdd (row, PS_LIST_TAIL, "PADDING3",         PS_DATA_S16, "more padding", 0);
    242254
    243255        @PS1_DV?@                 psMetadataAdd (row, PS_LIST_TAIL, "DIFF_NPOS",        PS_DATA_S32, "nPos (n pix > 3 sigma)",                     diffStats.nGood);
     
    481493          @>PS1_V4@ source->lensingPSF->shear->e1  = psMetadataLookupF32 (&status, row, "LENS_E1_SH_PSF");
    482494          @>PS1_V4@ source->lensingPSF->shear->e2  = psMetadataLookupF32 (&status, row, "LENS_E2_SH_PSF");
     495          @>PS1_V4@ source->lensingPSF->e1         = psMetadataLookupF32 (&status, row, "LENS_E1_PSF");
     496          @>PS1_V4@ source->lensingPSF->e2         = psMetadataLookupF32 (&status, row, "LENS_E2_PSF");
    483497        }
    484498
     
    12381252        }
    12391253
    1240         // XXX : make this depend on what is in the cmf
    1241         if (0) {
     1254        // NOTE: we no longer write out the covariance matrix
     1255        if (false) {
    12421256            // read the covariance matrix
    12431257            int nparams = model->params->n;
     
    12521266            model->covar = covar;
    12531267        }
     1268
     1269        // we are only saving the values stored in dPAR[SXX,etc]
     1270        dPAR[PM_PAR_SXX] = psMetadataLookupF32(&status, row, "EXT_WIDTH_MAJ_ERR");
     1271        dPAR[PM_PAR_SYY] = psMetadataLookupF32(&status, row, "EXT_WIDTH_MIN_ERR");
     1272        dPAR[PM_PAR_SXY] = psMetadataLookupF32(&status, row, "EXT_THETA_ERR");
     1273
     1274        // other parameters that we need to read
     1275        PAR[PM_PAR_SKY] = psMetadataLookupF32(&status, row, "SKY_EXT");
    12541276
    12551277        if (modelType == extModelType) {
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceIO_PS1_CAL_0.c

    r36866 r38058  
    376376    psVector *radialBinsLower = psMetadataLookupPtr (&status, recipe, "RADIAL.ANNULAR.BINS.LOWER");
    377377    psVector *radialBinsUpper = psMetadataLookupPtr (&status, recipe, "RADIAL.ANNULAR.BINS.UPPER");
    378     assert (radialBinsLower->n == radialBinsUpper->n);
     378    psAssert (radialBinsLower->n == radialBinsUpper->n, "upper and lower bins must match");
    379379
    380380    // we write out all sources, regardless of quality.  the source flags tell us the state
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceIO_PS1_DEV_1.c

    r36866 r38058  
    322322    psVector *radialBinsLower = psMetadataLookupPtr (&status, recipe, "RADIAL.ANNULAR.BINS.LOWER");
    323323    psVector *radialBinsUpper = psMetadataLookupPtr (&status, recipe, "RADIAL.ANNULAR.BINS.UPPER");
    324     assert (radialBinsLower->n == radialBinsUpper->n);
     324    psAssert (radialBinsLower->n == radialBinsUpper->n, "upper and lower bins must match");
    325325
    326326    // we write out all sources, regardless of quality.  the source flags tell us the state
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceLensing.c

    r36623 r38058  
    5555  tmp->smear = NULL;
    5656  tmp->shear = NULL;
     57  tmp->e1 = NAN;
     58  tmp->e2 = NAN;
    5759
    5860  return tmp;
     
    105107  smear->X12 = R*0.5*s4*(moments->Mxxxy - moments->Mxyyy);
    106108
    107   smear->e1  = R*(s2*(moments->Myy - moments->Mxx) + 0.25*s4 * (moments->Myyyy - moments->Mxxxx));
     109  smear->e1  = R*(s2*(moments->Myy - moments->Mxx) + 0.25*s4 * (moments->Mxxxx - moments->Myyyy));
    108110
    109111  smear->e2  = R*(0.5*s4*(moments->Mxxxy + moments->Mxyyy) - 2.0*s2*moments->Mxy);
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceLensing.h

    r36623 r38058  
    2525  pmLensingPars *smear;
    2626  pmLensingPars *shear;
     27  float e1;
     28  float e2;
    2729} pmSourceLensing;
    2830
  • branches/eam_branches/ipp-20150112/psModules/src/objects/pmSourceOutputs.c

    r36860 r38058  
    6060    // we need a measure of the image quality (FWHM) for this image, in order to get the positional errors
    6161    *fwhmMajor = psMetadataLookupF32(&status1, readout->analysis, "FWHM_MAJ");
    62     if (!status1) {
    63         *fwhmMajor = psMetadataLookupF32(&status1, readout->analysis, "IQ_FW1");
    64         if (!status1) {
    65             *fwhmMajor = 5.0; // XXX just a guess!
    66         }
    67     }
     62    if (status1) goto got_major;
     63
     64    *fwhmMajor = psMetadataLookupF32(&status1, header, "FWHM_MAJ");
     65    if (status1) goto got_major;
     66
     67    *fwhmMajor = psMetadataLookupF32(&status1, readout->analysis, "IQ_FW1");
     68    if (status1) goto got_major;
     69
     70    *fwhmMajor = psMetadataLookupF32(&status1, header, "IQ_FW1");
     71    if (status1) goto got_major;
     72
     73    *fwhmMajor = 5.0; // XXX just a guess!
     74
     75    got_major:
     76
    6877    *fwhmMinor = psMetadataLookupF32(&status1, readout->analysis, "FWHM_MIN");
    69     if (!status1) {
    70         *fwhmMinor = psMetadataLookupF32(&status1, readout->analysis, "IQ_FW2");
    71         if (!status1) {
    72             *fwhmMinor = 5.0; // XXX just a guess!
    73         }
    74     }
    75 
     78    if (status1) goto got_minor;
     79    *fwhmMinor = psMetadataLookupF32(&status1, header, "FWHM_MIN");
     80    if (status1) goto got_minor;
     81
     82    *fwhmMinor = psMetadataLookupF32(&status1, readout->analysis, "IQ_FW2");
     83    if (status1) goto got_minor;
     84    *fwhmMinor = psMetadataLookupF32(&status1, header, "IQ_FW2");
     85    if (status1) goto got_minor;
     86
     87    *fwhmMinor = 5.0; // XXX just a guess!
     88
     89    got_minor:
    7690    return true;
    7791
Note: See TracChangeset for help on using the changeset viewer.