IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Sep 6, 2011, 1:32:31 PM (15 years ago)
Author:
eugene
Message:
  • clarified the output to show the stages and their timing more clearly
  • psphotStackReadout now uses the same functions as psphotReadout (deprecated FitLinearStack, ExtendedAnalysisByObject, RadialAnalysisByObject, etc)
  • psphotStack now does 2nd (5 sigma) detection pass and radial photometry of the un-matched image (as well as the matched images)
  • for speed, fitting uses a smaller subset of pixels than subtraction: the model is extended when the subtraction is performed to avoid a discontinuity
  • extended source analysis (petrosians) is threaded
  • iterative kron radius / magnitude analysis with down-weighted neighbors replaces the masked neighbor kron analysis. the result of this analysis is used by fitting guesses and is the value written to the PSF and XFIT tables.
  • the target matched PSFs are determined in advance and the 0 element of this array is always the unmatched image (with target PSF of NAN)
  • dQ, the difference between the upper and lower quartile, is measured (but not yet used to adjust the sky level. sky should be FITTED_MEAN - 2.5*dQ
  • fake sources inserted for the efficiency analysis are removed at the end of the analysis
  • radial apertures is now threaded
  • edge case petrosian mags are now handled without aborts (may still have a problem with the measured error of the petrosian radius)
  • new sersic model guess based on the psf size, the moments, and the kron flux. the psf - kron mag is used to guess the index, then the index is used to convert measured moments into model guess parameters. this uses empirical relationships between the quantities generated from fake images.
  • define the fit region and window region based on the 1st radial moments
  • use the kron S/N to determine if analysis is performed for extended sources, not the psf S/N
  • remove the old 'basic deblend' which did not really do any deblending and is superceeded by the deblending in KronIterate and the footprint analysis
Location:
trunk/psphot
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/psphot

  • trunk/psphot/src

    • Property svn:ignore
      •  

        old new  
        2222psphotMakePSF
        2323psphotStack
         24psphotModelTest
  • trunk/psphot/src/psphot.h

    r31452 r32348  
    1919    PSPHOT_FORCED,
    2020    PSPHOT_MAKE_PSF,
     21    PSPHOT_MODEL_TEST,
    2122} psphotImageLoopMode;
    2223
     
    117118bool            psphotExtendedSourceAnalysis (pmConfig *config, const pmFPAview *view, const char *filerule);
    118119bool            psphotExtendedSourceAnalysisReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index, psMetadata *recipe);
     120bool            psphotExtendedSourceAnalysis_Threaded (psThreadJob *job);
    119121
    120122bool            psphotExtendedSourceFits (pmConfig *config, const pmFPAview *view, const char *filerule);
     
    327329bool psphotMakePSFReadout(pmConfig *config, const pmFPAview *view, const char *filerule);
    328330
     331pmConfig *psphotModelTestArguments(int argc, char **argv);
     332bool psphotModelTestReadout(pmConfig *config, const pmFPAview *view, const char *filerule);
     333
    329334int psphotFileruleCount(const pmConfig *config, const char *filerule);
    330335bool psphotFileruleCountSet(const pmConfig *config, const char *filerule, int num);
     
    372377    bool convolve;                      // Convolve images?
    373378    psphotStackConvolveSource convolveSource;
    374     // psArray *convImages, *convMasks, *convVariances; // Filenames for the temporary convolved images
    375 
    376     // bool matchZPs;                      // Adjust relative fluxes based on transparency analysis?
    377     // bool photometry;                    // Perform photometry?
    378     // psMetadata *stats;                  // Statistics for output
    379     // FILE *statsFile;                    // File to which to write statistics
    380     // psArray *origImages, *origMasks, *origVariances; // Filenames of the original images
    381     // psArray *origCovars;                // Original covariances matrices
    382     // int quality;                        // Bad data quality flag
    383379
    384380    // Prepare
     
    387383    psVector *inputMask;                // Mask for inputs
    388384
    389     float targetSeeing;                 // Target seeing FWHM
     385    psVector *targetSeeing;             // Target seeing FWHMs
    390386    psArray *sourceLists;               // Individual lists of sources for matching
    391387    psVector *norm;                     // Normalisation for each image
    392388    psArray *psfs;
    393 
    394     // psVector *exposures;                // Exposure times
    395     // float sumExposure;                  // Sum of exposure times
    396     // float zp;                           // Zero point for output
    397     // psVector *inputMask;                // Mask for inputs
    398     // psArray *sources;                   // Matched sources
    399389
    400390    // Convolve
     
    402392    psArray *regions;                   // PSF-matching regions --- required in the stacking
    403393    psVector *matchChi2;                // chi^2 for stamps from matching
    404     psVector *weightings;               // Combination weightings for images (1/noise^2)
    405     // psArray *cells;                     // Cells for convolved images --- a handle for reading again
    406     // int numCols, numRows;               // Size of image
    407     // psArray *convCovars;                // Convolved covariance matrices
    408 
    409     // Combine initial
    410     // pmReadout *outRO;                   // Output readout
    411     // pmReadout *expRO;                   // Exposure readout
    412     // psArray *inspect;                   // Array of arrays of pixels to inspect
    413 
    414     // Rejection
    415     // psArray *rejected;                  // Rejected pixels
    416394} psphotStackOptions;
    417395
     
    420398bool psphotStackMatchPSFsReadout (pmConfig *config, const pmFPAview *view, psphotStackOptions *options, int index);
    421399bool psphotStackMatchPSFsPrepare (pmConfig *config, const pmFPAview *view, psphotStackOptions *options, int index);
    422 bool psphotStackMatchPSFsNext (bool *smoothAgain, pmConfig *config, const pmFPAview *view, const char *filerule, int lastSize);
    423 bool psphotStackMatchPSFsNextReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index, psMetadata *recipe, psVector *fwhmValues, int lastSize);
     400
     401bool psphotStackMatchPSFsNext (pmConfig *config, const pmFPAview *view, const char *filerule, int lastSize);
     402bool psphotStackMatchPSFsNextReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index, int lastSize);
     403int psphotStackMatchPSFsEntries (pmConfig *config, const pmFPAview *view, const char *filerule);
    424404
    425405// psphotStackMatchPSFsUtils
    426 psVector *SetOptWidths (bool *optimum, psMetadata *recipe);
    427 pmReadout *makeFakeReadout(pmConfig *config, pmReadout *raw, psArray *sources, pmPSF *psf, psImageMaskType maskVal, int fullSize);
    428 bool rescaleData(pmReadout *readout, pmConfig *config, psphotStackOptions *options, int index);
    429 bool renormKernel(pmReadout *readout, psphotStackOptions *options, int index);
     406// psVector *SetOptWidths (bool *optimum, psMetadata *recipe);
     407// pmReadout *makeFakeReadout(pmConfig *config, pmReadout *raw, psArray *sources, pmPSF *psf, psImageMaskType maskVal, int fullSize);
     408// bool rescaleData(pmReadout *readout, pmConfig *config, psphotStackOptions *options, int index);
     409// bool renormKernel(pmReadout *readout, psphotStackOptions *options, int index);
    430410bool saveMatchData (pmReadout *readout, psphotStackOptions *options, int index);
    431411bool matchKernel(pmConfig *config, pmReadout *cnv, pmReadout *raw, psphotStackOptions *options, int index);
    432 bool dumpImageDiff(pmReadout *readoutConv, pmReadout *readoutFake, pmReadout *readoutRef, int index, char *rootname);
    433 bool dumpImage(pmReadout *readoutOut, pmReadout *readoutRef, int index, char *rootname);
    434 bool loadKernel (pmConfig *config, pmReadout *readoutCnv, psphotStackOptions *options, int index);
    435 
    436 pmPSF *psphotStackPSF(const pmConfig *config, int numCols, int numRows, const psArray *psfs, const psVector *inputMask);
     412// bool dumpImageDiff(pmReadout *readoutConv, pmReadout *readoutFake, pmReadout *readoutRef, int index, char *rootname);
     413// bool dumpImage(pmReadout *readoutOut, pmReadout *readoutRef, int index, char *rootname);
     414// bool loadKernel (pmConfig *config, pmReadout *readoutCnv, psphotStackOptions *options, int index);
     415
     416bool psphotStackRenormaliseVariance(const pmConfig *config, pmReadout *readout);
     417
     418bool psphotStackPSF(const pmConfig *config, psphotStackOptions *options);
    437419
    438420psphotStackOptions *psphotStackOptionsAlloc (int num);
     
    443425bool psphotCopySourcesReadout (pmConfig *config, const pmFPAview *view, const char *ruleOut, const char *ruleSrc, int index);
    444426
    445 bool psphotRadialApertures (pmConfig *config, const pmFPAview *view, const char *filerule);
    446 bool psphotRadialAperturesReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index, psMetadata *recipe);
     427bool psphotRadialApertures (pmConfig *config, const pmFPAview *view, const char *filerule, int entry);
     428bool psphotRadialAperturesReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index, psMetadata *recipe, int entry);
     429bool psphotRadialApertures_Threaded (psThreadJob *job);
    447430bool psphotRadialApertureSource (pmSource *source, psMetadata *recipe, psImageMaskType maskVal, const psVector *radMax, int entry);
    448431
     
    469452psArray *psphotSourceChildrenByObject (pmConfig *config, const pmFPAview *view, const char *filerule, psArray *objectsSrc);
    470453
     454bool psphotSersicModelClassGuessPCM (pmPCMdata *pcm, pmSource *source);
     455void psphotSersicModelClassInit ();
     456void psphotSersicModelClassCleanup ();
     457
     458bool psphotSetRadiusMoments (float *fitRadius, float *windowRadius, pmReadout *readout, pmSource *source, psImageMaskType markVal);
     459bool psphotSetRadiusMomentsExact (float *fitRadius, float *windowRadius, pmReadout *readout, pmSource *source, psImageMaskType markVal);
     460
     461bool psphotFootprintSaddles(pmReadout *readout, psArray *footprints);
     462bool psphotMaskFootprint (pmReadout *readout, pmSource *source, psImageMaskType markVal);
     463
     464bool psphotKronIterate (pmConfig *config, const pmFPAview *view, const char *filerule);
     465bool psphotKronIterateReadout(pmConfig *config, psMetadata *recipe, const pmFPAview *view, pmReadout *readout, psArray *sources, pmPSF *psf);
     466bool psphotKronIterate_Threaded (psThreadJob *job);
     467
     468bool psphotStackObjectsSelectForAnalysis (pmConfig *config, const pmFPAview *view, const char *filerule, psArray *objects);
     469
    471470#endif
Note: See TracChangeset for help on using the changeset viewer.