IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Sep 27, 2022, 5:08:10 PM (4 years ago)
Author:
tdeboer
Message:

adding CTE detection functionality and new CTE source flag

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/objects/pmSourcePhotometry.c

    r41705 r42293  
    5353
    5454// make this a bit more clever and dynamic
    55 static psImageMaskType maskSuspect  = 0;
    56 static psImageMaskType maskSpike    = 0;
    57 static psImageMaskType maskStarCore = 0;
    58 static psImageMaskType maskBurntool = 0;
    59 static psImageMaskType maskConvPoor = 0;
    60 static psImageMaskType maskGhost    = 0;
    61 static psImageMaskType maskGlint    = 0;
    62 static psImageMaskType maskCrosstalk    = 0;
     55static psImageMaskType maskSuspect   = 0;
     56static psImageMaskType maskSpike     = 0;
     57static psImageMaskType maskStarCore  = 0;
     58static psImageMaskType maskBurntool  = 0;
     59static psImageMaskType maskConvPoor  = 0;
     60static psImageMaskType maskGhost     = 0;
     61static psImageMaskType maskGlint     = 0;
     62static psImageMaskType maskCrosstalk = 0;
     63static psImageMaskType maskCTE       = 0;
    6364
    6465bool pmSourceMagnitudesInit (pmConfig *config, psMetadata *recipe)
     
    6970    // we are going to test specially against these poor values
    7071    if (config) {
    71         maskSpike    = pmConfigMaskGet("SPIKE", config);
    72         maskStarCore = pmConfigMaskGet("STARCORE", config);
    73         maskBurntool = pmConfigMaskGet("BURNTOOL", config);
    74         maskConvPoor = pmConfigMaskGet("CONV.POOR", config);
    75         maskGhost    = pmConfigMaskGet("GHOST", config);
    76         maskGlint    = pmConfigMaskGet("GHOST", config);
    77         maskCrosstalk    = pmConfigMaskGet("CROSSTALK", config);
    78         maskSuspect  = maskSpike | maskStarCore | maskBurntool | maskConvPoor;
     72        maskSpike     = pmConfigMaskGet("SPIKE", config);
     73        maskStarCore  = pmConfigMaskGet("STARCORE", config);
     74        maskBurntool  = pmConfigMaskGet("BURNTOOL", config);
     75        maskConvPoor  = pmConfigMaskGet("CONV.POOR", config);
     76        maskGhost     = pmConfigMaskGet("GHOST", config);
     77        maskGlint     = pmConfigMaskGet("GHOST", config);
     78        maskCrosstalk = pmConfigMaskGet("CROSSTALK", config);
     79        maskCTE       = pmConfigMaskGet("CTE", config);
     80        maskSuspect   = maskSpike | maskStarCore | maskBurntool | maskConvPoor;
    7981    }
    8082
     
    440442    float convpoorSum = 0;
    441443    float ghostSum = 0;
     444    float cteSum = 0;
    442445
    443446    int Xo, Yo, dP;
     
    534537                convpoorSum += value;
    535538            }
     539            // count pixels which are masked with an mask bit (bad or poor)
     540            if (mask->data.PS_TYPE_IMAGE_MASK_DATA[my][mx] & maskCTE) {
     541                cteSum += value;
     542            }
     543
    536544        }
    537545    }
     
    555563    if ((convpoorSum/modelSum) > 0.25) {
    556564        source->mode2 |= PM_SOURCE_MODE2_ON_CONVPOOR;
     565    }
     566    if ((cteSum/modelSum) > 0.25) {
     567        source->mode2 |= PM_SOURCE_MODE2_ON_CTE;
    557568    }
    558569
     
    614625    float convpoorSum = 0;
    615626    float ghostSum = 0;
     627    float cteSum = 0;
    616628
    617629    int Xo, Yo, dP;
     
    683695                convpoorSum += 1.;
    684696            }
     697            // count pixels which are masked with an mask bit (bad or poor)
     698            if (mask->data.PS_TYPE_IMAGE_MASK_DATA[my][mx] & maskCTE) {
     699                cteSum += 1.;
     700            }
    685701        }
    686702    }
     
    701717    if ((convpoorSum/modelSum) > 0.25) {
    702718        source->mode2 |= PM_SOURCE_MODE2_ON_CONVPOOR;
     719    }
     720    if ((cteSum/modelSum) > 0.25) {
     721        source->mode2 |= PM_SOURCE_MODE2_ON_CTE;
    703722    }
    704723
Note: See TracChangeset for help on using the changeset viewer.