pmSourcePhotometry.h

Go to the documentation of this file.
00001 /* @file  pmSourcePhotometry.h
00002  * @brief functions to measure source photometry
00003  *
00004  * @author EAM, IfA; GLG, MHPCC
00005  *
00006  * @version $Revision: 1.8 $ $Name:  $
00007  * @date $Date: 2007/01/24 02:54:15 $
00008  * Copyright 2004 Maui High Performance Computing Center, University of Hawaii
00009  */
00010 
00011 # ifndef PM_SOURCE_PHOTOMETRY_H
00012 # define PM_SOURCE_PHOTOMETRY_H
00013 
00014 /// @addtogroup Objects Object Detection / Analysis Functions
00015 /// @{
00016 
00017 /**
00018  *
00019  * The function returns both the magnitude of the fit, defined as -2.5log(flux),
00020  * where the flux is integrated under the model, theoretically from a radius of 0
00021  * to infinity. In practice, we integrate the model beyond 50sigma.  The aperture magnitude is
00022  * defined as -2.5log(flux) , where the flux is summed for all pixels which are
00023  * not excluded by the aperture mask. The model flux is calculated by calling the
00024  * model-specific function provided by pmModelFlux_GetFunction.
00025  *
00026  * XXX: must code this.
00027  *
00028  */
00029 
00030 typedef enum {
00031     PM_SOURCE_PHOT_NONE   = 0x0000,
00032     PM_SOURCE_PHOT_GROWTH = 0x0001,
00033     PM_SOURCE_PHOT_APCORR = 0x0002,
00034     PM_SOURCE_PHOT_WEIGHT = 0x0004,
00035     PM_SOURCE_PHOT_INTERP = 0x0008,
00036 } pmSourcePhotometryMode;
00037 
00038 bool pmSourcePhotometryModel(
00039     float *fitMag,                      ///< integrated fit magnitude
00040     pmModel *model                      ///< model used for photometry
00041 );
00042 
00043 bool pmSourcePhotometryAper(
00044     float   *apMag,                     ///< aperture flux magnitude
00045     pmModel *model,                     ///< model used for photometry
00046     psImage *image,                     ///< image pixels to be used
00047     psImage *mask                       ///< mask of pixels to ignore
00048 );
00049 
00050 bool pmSourceMagnitudesInit (psMetadata *config);
00051 bool pmSourceMagnitudes (pmSource *source, pmPSF *psf, pmSourcePhotometryMode mode);
00052 double pmSourceCrossProduct(const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum);
00053 double pmSourceCrossWeight(const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum);
00054 bool pmSourcePixelWeight (float *pixWeight, pmModel *model, psImage *image, psImage *mask);
00055 bool pmSourceChisq (pmModel *model, psImage *image, psImage *mask, psImage *weight);
00056 pmModel *pmSourceGetModel (bool *isPSF, const pmSource *source);
00057 
00058 double pmSourceWeight(const pmSource *Mi, int term, const bool unweighted_sum);
00059 
00060 /// @}
00061 # endif /* PM_SOURCE_PHOTOMETRY_H */

Generated on Fri Feb 2 22:35:28 2007 for Pan-STARRS Module Library by  doxygen 1.5.1