Changeset 36276
- Timestamp:
- Nov 8, 2013, 3:22:59 PM (13 years ago)
- Location:
- branches/eam_branches/ipp-20130904/psModules/src/objects
- Files:
-
- 3 edited
-
pmPCM_MinimizeChisq.c (modified) (3 diffs)
-
pmPCMdata.c (modified) (4 diffs)
-
pmPCMdata.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCM_MinimizeChisq.c
r36240 r36276 477 477 // * threading takes place above this level 478 478 pcm->modelConvFlux = psImageCopy (pcm->modelConvFlux, pcm->modelFlux, pcm->modelFlux->type.type); 479 psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata); 479 480 // hard-wire this for now? 481 psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata1); 482 psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata2); 480 483 } else { 481 484 psImageConvolveKernel (pcm->modelConvFlux, pcm->modelFlux, NULL, 0, pcm->psfFFT); … … 496 499 // * threading takes place above this level 497 500 dmodelConv = psImageCopy (dmodelConv, dmodel, dmodel->type.type); 498 psImageSmoothCache_F32 (dmodelConv, pcm->smdata); 501 psImageSmoothCache_F32 (dmodelConv, pcm->smdata1); 502 psImageSmoothCache_F32 (dmodelConv, pcm->smdata2); 499 503 } else { 500 504 psImageConvolveKernel (dmodelConv, dmodel, NULL, 0, pcm->psfFFT); … … 516 520 // * threading takes place above this level 517 521 dmodelConv = psImageCopy (dmodelConv, dmodel, dmodel->type.type); 518 psImageSmoothCache_F32 (dmodelConv, pcm->smdata); 522 psImageSmoothCache_F32 (dmodelConv, pcm->smdata1); 523 psImageSmoothCache_F32 (dmodelConv, pcm->smdata2); 519 524 } else { 520 525 psImageConvolveFFT (dmodelConv, dmodel, NULL, 0, pcm->psf); -
branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCMdata.c
r36246 r36276 58 58 psFree (pcm->psfFFT); 59 59 psFree (pcm->constraint); 60 psFree (pcm->smdata); // pre-allocated data for psImageSmooth_PreAlloc 60 61 psFree (pcm->smdata1); // pre-allocated data for psImageSmooth_PreAlloc 62 psFree (pcm->smdata2); // pre-allocated data for psImageSmooth_PreAlloc 61 63 return; 62 64 } … … 88 90 } 89 91 90 pcm->smdata = NULL; 92 pcm->smdata1 = NULL; 93 pcm->smdata2 = NULL; 94 91 95 pcm->modelConv = NULL; 92 96 pcm->psf = NULL; … … 284 288 } 285 289 286 psImageSmoothCacheData *psImageSmoothCacheSetKernel (float *sigma, float *kappa, psImage *flux, pmModel *modelPSF) { 290 // set 2 gaussians (extend to more if interesting) 291 psImageSmoothCacheData *psImageSmoothCacheSetKernel (float *sigma1, float *sigma2, psImage *flux, pmModel *modelPSF) { 287 292 288 293 psAssert (modelPSF, "psf model must be defined"); … … 294 299 295 300 float nsigma = 5.0; 296 *sigma = NAN; 297 *kappa = NAN; 298 301 *sigma1 = NAN; 302 *sigma2 = NAN; 303 304 // XXX need to do this more carefully 299 305 if (modelPSF->type == modelType_GAUSS) { 300 306 float FWHM_MAJOR = 2*modelPSF->modelRadius (modelPSF->params, 0.5*PAR[PM_PAR_I0]); 301 307 float FWHM_MINOR = FWHM_MAJOR * (axes.minor / axes.major); 302 *sigma = 0.5 * (FWHM_MAJOR + FWHM_MINOR) / 2.35; 308 *sigma1 = 0.50 * (FWHM_MAJOR + FWHM_MINOR) / 2.35; 309 *sigma2 = 0.25 * (FWHM_MAJOR + FWHM_MINOR) / 2.35; 303 310 } 304 311 if (modelPSF->type == modelType_PS1_V1) { -
branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCMdata.h
r36240 r36276 39 39 40 40 bool use1Dgauss; 41 float sigma;42 41 float kappa; 43 42 float nsigma; 44 43 44 // psArray *smdata; 45 45 psImageSmoothCacheData *smdata; 46 psImageSmooth2dCacheData *smdata2d; 46 47 } pmPCMdata; 47 48
Note:
See TracChangeset
for help on using the changeset viewer.
