IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 25188


Ignore:
Timestamp:
Aug 25, 2009, 2:00:54 PM (17 years ago)
Author:
Paul Price
Message:

Add trace statements for debugging support. Wasn't added sources without matches to the merged list. Seems to work now. Only current concern is the performance of the PS_TREE_SPHERICAL mode.

Location:
branches/pap_mops/ppMops/src
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branches/pap_mops/ppMops/src/ppMops.c

    r25183 r25188  
    66int main(int argc, char *argv[])
    77{
     8    psLibInit(NULL);
     9
    810    ppMopsArguments *args = ppMopsArgumentsParse(argc, argv); // Parsed arguments
    911    if (!args) {
     
    3234    psFree(merged);
    3335    psFree(args);
     36
     37    psLibFinalize();
    3438
    3539    return PS_EXIT_SUCCESS;
  • branches/pap_mops/ppMops/src/ppMopsArguments.c

    r25162 r25188  
    5757    assert(argv);
    5858
     59    psTrace("ppMops.args", 1, "Parsing command-line arguments\n");
     60
     61    psArgumentVerbosity(&argc, argv);
     62
    5963    psMetadata *arguments = psMetadataAlloc(); // Command-line arguments
    6064    psMetadataAddStr(arguments, PS_LIST_TAIL, "-exp_name", 0, "Exposure name", NULL);
     
    98102    args->rmsAstrom = psMetadataLookupF32(NULL, arguments, "-astrom_rms");
    99103
    100     psTrace("ppMops", 1, "Done reading command-line arguments\n");
     104    psTrace("ppMops.args", 1, "Done parsing command-line arguments\n");
    101105
    102106    return args;
  • branches/pap_mops/ppMops/src/ppMopsDetections.c

    r25187 r25188  
    145145    psVectorAppend(target->naxis2, source->naxis2->data.S32[index]);
    146146    psVectorAppend(target->mask, 0);
     147    target->num++;
    147148    return true;
    148149}
  • branches/pap_mops/ppMops/src/ppMopsMerge.c

    r25186 r25188  
    2727    PS_ASSERT_ARRAY_NON_NULL(detections, NULL);
    2828
     29    psTrace("ppMops.merge", 1, "Merging detections from %ld inputs\n", detections->n);
     30
    2931    ppMopsDetections *merged = psMemIncrRefCounter(detections->data[0]); // Merged list
     32    psTrace("ppMops.merge", 3, "Automatically merging %ld detections from input 0\n", merged->num);
    3033    int num = 1;                                                         // Number of merged files
    3134    for (int i = 1; i < detections->n; i++) {
    3235        ppMopsDetections *det = detections->data[i]; // Detections of interest
    3336        if (!det) {
     37            psTrace("ppMops.merge", 3, "Ignoring NULL input %d\n", i);
    3438            continue;
    3539        }
    3640        num++;
     41        psTrace("ppMops.merge", 3, "Merging %ld detections from input %d\n", det->num, i);
    3742
    3843        // XXX compare exposure properties
     
    106111            }
    107112            if (indices->n == 0) {
     113                psTrace("ppMops.merge", 9, "No matches for source %d in input %d\n", j, i);
    108114                psFree(indices);
     115                ppMopsDetectionsCopySingle(merged, det, j);
    109116                continue;
    110117            }
     118            psTrace("ppMops.merge", 5, "%ld matches for source %d from input %d\n", indices->n, j, i);
    111119
    112120            // Which one do we keep?
     
    124132            float distance = mergeDistance(det, j); // Distance to centre of image
    125133            if (distance < bestDistance) {
     134                psTrace("ppMops.merge", 6, "New source clobbers old sources\n");
    126135                // Blow away existing sources
    127136                for (int k = 0; k < indices->n; k++) {
     
    129138                    merged->mask->data.U8[index] = 0xFF;
    130139                }
    131 
    132140                ppMopsDetectionsCopySingle(merged, det, j);
     141            } else {
     142                psTrace("ppMops.merge", 6, "Old sources clobber new source\n");
    133143            }
    134144            psFree(indices);
    135145        }
    136146
     147        psTrace("ppMops.merge", 3, "Done merging input %d, %ld merged sources\n", i, merged->num);
     148
    137149        psFree(tree);
    138150        ppMopsDetectionsPurge(merged);
    139151    }
     152
     153    psTrace("ppMops.merge", 2, "%ld sources in merged detections list\n", merged->num);
    140154
    141155    merged->seeing /= num;
  • branches/pap_mops/ppMops/src/ppMopsRead.c

    r25187 r25188  
    1010psArray *ppMopsRead(const ppMopsArguments *args)
    1111{
     12    psTrace("ppMops.read", 1, "Reading input detections\n");
     13
    1214    psArray *inNames = args->input;          // Input names
    1315    long num = inNames->n;                   // Number of inputs
     
    4648        }
    4749        ppMopsDetections *det = ppMopsDetectionsAlloc(size);
     50
     51        psTrace("ppMops.read", 3, "Reading %ld rows from %s\n", size, (const char*)inNames->data[i]);
    4852
    4953        det->raBoresight = psMemIncrRefCounter(psMetadataLookupStr(NULL, header, "FPA.RA"));
     
    151155        }
    152156
     157        psTrace("ppMops.read", 2, "Read %ld good rows from %s\n", numGood, (const char*)inNames->data[i]);
     158
    153159        psFree(table);
    154160        detections->data[i] = det;
    155161    }
    156162
     163    psTrace("ppMops.read", 1, "Done reading input detections\n");
    157164
    158165    return detections;
  • branches/pap_mops/ppMops/src/ppMopsWrite.c

    r25186 r25188  
    1010bool ppMopsWrite(const ppMopsDetections *det, const ppMopsArguments *args)
    1111{
     12    psTrace("ppMops.write", 1, "Writing %ld rows to %s", det->num, args->output);
     13
    1214    psFits *fits = psFitsOpen(args->output, "w"); // FITS file
    1315    if (!fits) {
     
    1517        return false;
    1618    }
     19
    1720
    1821    psMetadata *header = psMetadataAlloc(); // Header to write
     
    110113    psFree(header);
    111114    psFitsClose(fits);
     115
     116    psTrace("ppMops.write", 1, "Done writing %ld rows to %s", det->num, args->output);
     117
    112118    return true;
    113119}
Note: See TracChangeset for help on using the changeset viewer.