Changeset 19643
- Timestamp:
- Sep 22, 2008, 12:31:54 PM (18 years ago)
- Location:
- trunk/ppStack/src
- Files:
-
- 2 edited
-
ppStackLoop.c (modified) (12 diffs)
-
ppStackMatch.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ppStack/src/ppStackLoop.c
r19565 r19643 179 179 { 180 180 assert(config); 181 182 psTimerStart("PPSTACK_TOTAL"); 181 183 182 184 psMetadata *recipe = psMetadataLookupMetadata(NULL, config->recipes, PPSTACK_RECIPE); // ppStack recipe … … 429 431 psArray *regions = NULL, *kernels = NULL; // Regions and kernels used in subtraction 430 432 psArray *sources = haveSources ? globalSources : indSources->data[i]; // Sources for matching 433 psTimerStart("PPSTACK_MATCH"); 431 434 if (!ppStackMatch(readout, ®ions, &kernels, &matchChi2->data.F32[i], 432 435 sources, targetPSF, rng, config)) { … … 436 439 continue; 437 440 } 441 442 if (stats) { 443 float stampMean = psMetadataLookupF32(NULL, readout->analysis, 444 PM_SUBTRACTION_ANALYSIS_STAMPS_MEAN); // Mean deviation 445 float stampRMS = psMetadataLookupF32(NULL, readout->analysis, 446 PM_SUBTRACTION_ANALYSIS_STAMPS_RMS); // RMS deviation 447 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_MATCH", PS_META_DUPLICATE_OK, 448 "Time to match PSF", psTimerMark("PPSTACK_MATCH")); 449 psMetadataAddF32(stats, PS_LIST_TAIL, "STAMP.MEAN", PS_META_DUPLICATE_OK, 450 "Mean deviation for stamps", stampMean); 451 psMetadataAddF32(stats, PS_LIST_TAIL, "STAMP.RMS", PS_META_DUPLICATE_OK, 452 "RMS deviation for stamps", stampRMS); 453 454 } 455 psLogMsg("ppStack", PS_LOG_INFO, "Time to match image %d: %f sec", i, psTimerClear("PPSTACK_MATCH")); 438 456 439 457 subRegions->data[i] = regions; … … 477 495 ppStackThreadInit(); 478 496 ppStackThreadData *stack = ppStackThreadDataSetup(cells, imageNames, maskNames, weightNames, config); 497 498 psTimerStart("PPSTACK_INITIAL"); 479 499 480 500 memDump("preinitial"); … … 640 660 } 641 661 662 if (stats) { 663 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_INITIAL", 0, 664 "Time to make initial stack", psTimerMark("PPSTACK_INITIAL")); 665 } 666 psLogMsg("ppStack", PS_LOG_INFO, "Time to make initial stack: %f sec", psTimerClear("PPSTACK_INITIAL")); 667 668 psTimerStart("PPSTACK_REJECT"); 669 642 670 // Pixel rejection 643 671 psArray *rejected = psArrayAlloc(num); … … 696 724 // Reject bad pixels 697 725 for (int i = 0; i < num; i++) { 726 psTimerStart("PPSTACK_REJECT"); 698 727 699 728 #ifdef TESTING … … 751 780 } 752 781 rejected->data[i] = reject; 782 783 if (stats) { 784 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_REJECT", PS_META_DUPLICATE_OK, 785 "Time to perform rejection", psTimerMark("PPSTACK_REJECT")); 786 psMetadataAddS32(stats, PS_LIST_TAIL, "REJECT_PIXELS", PS_META_DUPLICATE_OK, 787 "Number of pixels rejected", reject ? reject->n : 0); 788 } 789 psLogMsg("ppStack", PS_LOG_INFO, "Time to perform rejection on image %d: %f sec", i, 790 psTimerClear("PPSTACK_REJECT")); 753 791 } 754 792 … … 767 805 return false; 768 806 } 769 } 807 808 if (stats) { 809 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_REJECT", PS_META_DUPLICATE_OK, 810 "Time to perform rejection", psTimerMark("PPSTACK_REJECT")); 811 psMetadataAddS32(stats, PS_LIST_TAIL, "REJECT_IMAGES", 0, 812 "Number of images rejected completely", numRejected); 813 } 814 } 815 816 psTimerStart("PPSTACK_FINAL"); 770 817 771 818 memDump("reject"); … … 828 875 829 876 memDump("final"); 877 878 if (stats) { 879 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_FINAL", 0, 880 "Time to make final stack", psTimerMark("PPSTACK_FINAL")); 881 } 882 psLogMsg("ppStack", PS_LOG_INFO, "Time to make final stack: %f sec", psTimerClear("PPSTACK_FINAL")); 830 883 831 884 psTrace("ppStack", 2, "Cleaning up after combination....\n"); … … 904 957 psTrace("ppStack", 1, "Photometering stacked image....\n"); 905 958 959 psTimerStart("PPSTACK_PHOT"); 960 906 961 fileActivation(config, combineFiles, false); 907 962 fileActivation(config, photFiles, true); … … 916 971 917 972 fileActivation(config, combineFiles, true); 973 974 if (stats) { 975 pmFPAfile *photFile = psMetadataLookupPtr(NULL, config->files, "PSPHOT.INPUT"); // File 976 pmReadout *photRO = pmFPAviewThisReadout(view, photFile->fpa); // Readout with the sources 977 psArray *sources = psMetadataLookupPtr(NULL, photRO->analysis, "PSPHOT.SOURCES"); // Sources 978 psMetadataAddS32(stats, PS_LIST_TAIL, "NUM_SOURCES", 0, "Number of sources detected", sources->n); 979 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_PHOT", 0, 980 "Time to do photometry", psTimerMark("PPSTACK_PHOT")); 981 } 982 psLogMsg("ppStack", PS_LOG_INFO, "Time to do photometry: %f sec", psTimerClear("PPSTACK_PHOT")); 918 983 } 919 984 … … 952 1017 // Write out summary statistics 953 1018 if (stats) { 1019 psMetadataAddF32(stats, PS_LIST_TAIL, "TIME_STACK", 0, 1020 "Time to do photometry", psTimerClear("PPSTACK_TOTAL")); 1021 954 1022 const char *statsMDC = psMetadataConfigFormat(stats); 955 1023 if (!statsMDC || strlen(statsMDC) == 0) { -
trunk/ppStack/src/ppStackMatch.c
r19600 r19643 266 266 readout->mask = psMemIncrRefCounter(output->mask); 267 267 readout->weight = psMemIncrRefCounter(output->weight); 268 269 psMetadataCopy(readout->analysis, output->analysis); 268 270 } else { 269 271 // Fake the convolution
Note:
See TracChangeset
for help on using the changeset viewer.
