Changeset 36884 for branches/eam_branches/ipp-20140610/psphot
- Timestamp:
- Jun 17, 2014, 5:58:38 AM (12 years ago)
- Location:
- branches/eam_branches/ipp-20140610
- Files:
-
- 14 edited
-
. (modified) (1 prop)
-
psphot/src/psphotChoosePSF.c (modified) (1 diff)
-
psphot/src/psphotEfficiency.c (modified) (2 diffs)
-
psphot/src/psphotEvalFLT.c (modified) (1 diff)
-
psphot/src/psphotFullForceSummaryReadout.c (modified) (2 diffs)
-
psphot/src/psphotGalaxyShape.c (modified) (4 diffs)
-
psphot/src/psphotLensing.c (modified) (3 diffs)
-
psphot/src/psphotLoadSRCTEXT.c (modified) (1 diff)
-
psphot/src/psphotMakeFluxScale.c (modified) (1 diff)
-
psphot/src/psphotRadiusChecks.c (modified) (3 diffs)
-
psphot/src/psphotSersicModelClass.c (modified) (1 diff)
-
psphot/src/psphotSourceFits.c (modified) (3 diffs)
-
psphot/src/psphotVisual.c (modified) (1 diff)
-
psphot/test/tap_psphot_galaxies.pro (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20140610
- Property svn:mergeinfo changed
/trunk (added) merged: 36846-36871,36874,36879,36882
- Property svn:mergeinfo changed
-
branches/eam_branches/ipp-20140610/psphot/src/psphotChoosePSF.c
r36623 r36884 448 448 449 449 // get the model full-width at half-max 450 float FWHM_MAJOR = 2*modelPSF-> modelRadius (modelPSF->params, 0.5);450 float FWHM_MAJOR = 2*modelPSF->class->modelRadius (modelPSF->params, 0.5); 451 451 452 452 // XXX make sure this is consistent with the re-definition of PM_PAR_SXX -
branches/eam_branches/ipp-20140610/psphot/src/psphotEfficiency.c
r34353 r36884 71 71 continue; 72 72 } 73 float flux = normModel-> modelFlux(normModel->params); // Total flux for peak of 1.073 float flux = normModel->class->modelFlux(normModel->params); // Total flux for peak of 1.0 74 74 psFree(normModel); 75 75 if (!isfinite(flux)) { … … 424 424 continue; 425 425 } 426 float sourceRadius = PS_MAX(radius, model-> modelRadius(model->params, minFlux)); // Radius for source426 float sourceRadius = PS_MAX(radius, model->class->modelRadius(model->params, minFlux)); // Radius for source 427 427 psFree(model); 428 428 if (!isfinite(sourceRadius)) { -
branches/eam_branches/ipp-20140610/psphot/src/psphotEvalFLT.c
r17396 r36884 53 53 } 54 54 55 keep = model-> modelFitStatus(model);55 keep = model->class->modelFitStatus(model); 56 56 if (keep) return true; 57 57 -
branches/eam_branches/ipp-20140610/psphot/src/psphotFullForceSummaryReadout.c
r36759 r36884 425 425 // copy the best fit params to the model 426 426 // fractional radii with the lowest chisq 427 psEllipseAxes axes = pmPSF_ModelToAxes(model->params->data.F32, model-> type);427 psEllipseAxes axes = pmPSF_ModelToAxes(model->params->data.F32, model->class->useReff); 428 428 429 429 // examine the params for the trial with minimum chisq. … … 637 637 // now save the model parameters in the model structure 638 638 639 pmPSF_AxesToModel (model->params->data.F32, axes, model Type);639 pmPSF_AxesToModel (model->params->data.F32, axes, model->class->useReff); 640 640 641 641 model->mag = -2.5 * log10(flux0); -
branches/eam_branches/ipp-20140610/psphot/src/psphotGalaxyShape.c
r36757 r36884 283 283 284 284 // I have some source guess (e0, e1, e2) 285 psEllipseAxes guessAxes = pmPSF_ModelToAxes (PAR, model Type);285 psEllipseAxes guessAxes = pmPSF_ModelToAxes (PAR, model->class->useReff); 286 286 287 287 float fRmajorBest = NAN; … … 295 295 testAxes.minor = guessAxes.minor * fRminor; 296 296 297 pmPSF_AxesToModel (PAR, testAxes, model Type);297 pmPSF_AxesToModel (PAR, testAxes, model->class->useReff); 298 298 299 299 psphotGalaxyShapeSource (pcm, source, galaxyFits, maskVal, psfSize, true); … … 324 324 #endif 325 325 326 pmPSF_AxesToModel (PAR, testAxes, model Type);326 pmPSF_AxesToModel (PAR, testAxes, model->class->useReff); 327 327 328 328 psphotGalaxyShapeSource (pcm, source, galaxyFits, maskVal, psfSize, false); … … 400 400 401 401 pcm->modelConv->params->data.F32[PM_PAR_I0] = Io; 402 float flux = pcm->modelConv-> modelFlux (pcm->modelConv->params);402 float flux = pcm->modelConv->class->modelFlux (pcm->modelConv->params); 403 403 float dflux = flux * (dIo / Io); 404 404 -
branches/eam_branches/ipp-20140610/psphot/src/psphotLensing.c
r36662 r36884 12 12 psMetadata *recipe = psMetadataLookupPtr (&status, config->recipes, PSPHOT_RECIPE); 13 13 psAssert (recipe, "missing recipe?"); 14 15 // perform full extended source non-linear fits? 16 if (!psMetadataLookupBool (&status, recipe, "LENSING_PARAMETERS")) { 17 psLogMsg ("psphot", PS_LOG_INFO, "skipping extended source fits\n"); 18 return true; 19 } 14 20 15 21 int num = psphotFileruleCount(config, filerule); … … 87 93 } 88 94 95 psMetadataAddBool(readout->analysis, PS_LIST_TAIL, "LENS_OBJ", PS_META_REPLACE, "per-object lensing stats measured", true); 89 96 psLogMsg ("psphot.lensing", PS_LOG_DETAIL, "calculate lensing parameters for %d objects\n", (int) sources->n); 90 97 … … 317 324 psFree (stats); 318 325 326 psMetadataAddBool(readout->analysis, PS_LIST_TAIL, "LENS_PSF", PS_META_REPLACE, "psf-trend lensing stats measured", true); 319 327 psLogMsg ("psphot.lensing", PS_LOG_DETAIL, "calculate lensing parameters for %d objects: %f sec\n", (int) sources->n, psTimerMark ("psphot.lensing")); 320 328 -
branches/eam_branches/ipp-20140610/psphot/src/psphotLoadSRCTEXT.c
r32348 r36884 73 73 dPAR[PM_PAR_I0] = 0.0; 74 74 75 pmPSF_AxesToModel (PAR, axes, model Type);75 pmPSF_AxesToModel (PAR, axes, model->class->useReff); 76 76 77 77 float peakFlux = 1.0; -
branches/eam_branches/ipp-20140610/psphot/src/psphotMakeFluxScale.c
r30624 r36884 38 38 } else { 39 39 // measure the fitMag for this model 40 fitSum = model-> modelFlux (model->params);40 fitSum = model->class->modelFlux (model->params); 41 41 } 42 42 if (fitSum < 1.e-6) continue; -
branches/eam_branches/ipp-20140610/psphot/src/psphotRadiusChecks.c
r36086 r36884 60 60 if (radiusFit <= 0) { // use fixed radius 61 61 if (moments == NULL) { 62 radiusFit = model-> modelRadius(model->params, PSF_FIT_NSIGMA*moments->dSky);62 radiusFit = model->class->modelRadius(model->params, PSF_FIT_NSIGMA*moments->dSky); 63 63 } else { 64 radiusFit = model-> modelRadius(model->params, 1.0);64 radiusFit = model->class->modelRadius(model->params, 1.0); 65 65 } 66 66 model->fitRadius = (RADIUS_TYPE)(radiusFit + PSF_FIT_PADDING); … … 95 95 if (radiusFit <= 0) { // use fixed radius 96 96 if (moments == NULL) { 97 radiusFit = model-> modelRadius(model->params, PSF_FIT_NSIGMA*moments->dSky);97 radiusFit = model->class->modelRadius(model->params, PSF_FIT_NSIGMA*moments->dSky); 98 98 } else { 99 radiusFit = model-> modelRadius(model->params, 1.0);99 radiusFit = model->class->modelRadius(model->params, 1.0); 100 100 } 101 101 model->fitRadius = (RADIUS_TYPE)(radiusFit + PSF_FIT_PADDING); … … 294 294 float flux = deep ? EXT_FIT_NSIGMA*EXT_FIT_SKY_SIG : 0.1 * model->params->data.F32[PM_PAR_I0]; 295 295 296 float rawRadius = model-> modelRadius (model->params, flux);296 float rawRadius = model->class->modelRadius (model->params, flux); 297 297 if (isnan(rawRadius)) return false; 298 298 -
branches/eam_branches/ipp-20140610/psphot/src/psphotSersicModelClass.c
r33410 r36884 586 586 coord->data.F32[1] = (psF32) (i + source->pixels->row0); 587 587 588 pcm->modelConvFlux->data.F32[i][j] = pcm->modelConv-> modelFunc (NULL, params, coord);588 pcm->modelConvFlux->data.F32[i][j] = pcm->modelConv->class->modelFunc (NULL, params, coord); 589 589 } 590 590 } -
branches/eam_branches/ipp-20140610/psphot/src/psphotSourceFits.c
r36375 r36884 700 700 model->params->data.F32[PM_PAR_7] = 0.5/indexGuess[i]; 701 701 702 if (!model-> modelGuess(model, source, maskVal, markVal)) {702 if (!model->class->modelGuess(model, source, maskVal, markVal)) { 703 703 model->flags |= PM_MODEL_STATUS_BADARGS; 704 704 return false; … … 723 723 model->flags = PM_MODEL_STATUS_NONE; // do not attempt to handle failures here, let the next iteration deal with it 724 724 model->params->data.F32[PM_PAR_7] = 0.5/indexGuess[iMin]; 725 model-> modelGuess(model, source, maskVal, markVal);725 model->class->modelGuess(model, source, maskVal, markVal); 726 726 727 727 return true; … … 752 752 model->params->data.F32[PM_PAR_7] = indexGuess[i]; 753 753 754 if (!model-> modelGuess(model, source, maskVal, markVal)) {754 if (!model->class->modelGuess(model, source, maskVal, markVal)) { 755 755 model->flags |= PM_MODEL_STATUS_BADARGS; 756 756 return false; -
branches/eam_branches/ipp-20140610/psphot/src/psphotVisual.c
r35769 r36884 1444 1444 coord->data.F32[1] = r; 1445 1445 coord->data.F32[0] = 0.0; 1446 fmaj->data.F32[i] = log10(source->modelPSF-> modelFunc (NULL, params, coord));1446 fmaj->data.F32[i] = log10(source->modelPSF->class->modelFunc (NULL, params, coord)); 1447 1447 1448 1448 coord->data.F32[0] = r; 1449 1449 coord->data.F32[1] = 0.0; 1450 fmin->data.F32[i] = log10(source->modelPSF-> modelFunc (NULL, params, coord));1450 fmin->data.F32[i] = log10(source->modelPSF->class->modelFunc (NULL, params, coord)); 1451 1451 } 1452 1452 psFree (coord); 1453 1453 psFree (params); 1454 1454 1455 float FWHM_MAJOR = 2.0*source->modelPSF-> modelRadius (source->modelPSF->params, 0.5*source->modelPSF->params->data.F32[PM_PAR_I0]);1455 float FWHM_MAJOR = 2.0*source->modelPSF->class->modelRadius (source->modelPSF->params, 0.5*source->modelPSF->params->data.F32[PM_PAR_I0]); 1456 1456 float FWHM_MINOR = FWHM_MAJOR * (axes.minor / axes.major); 1457 1457 if (FWHM_MAJOR < FWHM_MINOR) PS_SWAP (FWHM_MAJOR, FWHM_MINOR); -
branches/eam_branches/ipp-20140610/psphot/test/tap_psphot_galaxies.pro
r35769 r36884 32 32 $FakeOptions = $BaseOptions 33 33 $FakeOptions = $FakeOptions -exptime 30.0 34 # $FakeOptions = $FakeOptions -D PSF.MODEL PS_MODEL_PS1_V1 34 35 $FakeOptions = $FakeOptions -D PSF.MODEL PS_MODEL_GAUSS 35 36 … … 44 45 45 46 # basic config for ppSim with randomly distributed stars and gridded galaxies 46 $FakeConfig = -camera SIMTEST 47 $FakeConfig = $FakeConfig -recipe PPSIM STACKTEST.RUN 48 $FakeConfig = $FakeConfig -D PSASTRO:PSASTRO.CATDIR catdir.ref 49 $FakeConfig = $FakeConfig -Db STARS.FAKE F ; # only use stars from catdir.ref 50 $FakeConfig = $FakeConfig -Db MATCH.DENSITY F 51 $FakeConfig = $FakeConfig -Db PSF.CONVOLVE T 52 $FakeConfig = $FakeConfig -Db GALAXY.FAKE T ; # generate a "realistic" distribution of galaxies 53 $FakeConfig = $FakeConfig -Df GALAXY.MAG 17.0 54 $FakeConfig = $FakeConfig -Db GALAXY.GRID T ; # generate a grid of galaxies (constant mag) 55 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_GAUSS 56 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_EXP 57 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_SERSIC 58 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_DEV 59 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MIN 10.0 60 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MAX 10.0 61 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MIN 0.25 62 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MAX 0.25 63 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MIN 0 64 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MAX 180 65 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MIN 1.66 66 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MAX 1.66 67 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DX 120 68 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DY 120 47 if (1) 48 $FakeConfig = -camera SIMTEST 49 $FakeConfig = $FakeConfig -recipe PPSIM STACKTEST.RUN 50 $FakeConfig = $FakeConfig -D PSASTRO:PSASTRO.CATDIR catdir.ref 51 $FakeConfig = $FakeConfig -Db STARS.FAKE F ; # only use stars from catdir.ref 52 $FakeConfig = $FakeConfig -Db MATCH.DENSITY F 53 $FakeConfig = $FakeConfig -Db PSF.CONVOLVE T 54 $FakeConfig = $FakeConfig -Db GALAXY.FAKE T ; # generate a "realistic" distribution of galaxies 55 $FakeConfig = $FakeConfig -Df GALAXY.MAG 17.0 56 $FakeConfig = $FakeConfig -Db GALAXY.GRID F ; # generate a grid of galaxies (constant mag) 57 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_GAUSS 58 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_EXP 59 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_SERSIC 60 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_DEV 61 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MIN 10.0 62 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MAX 1.0 63 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MIN 0.25 64 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MAX 1.00 65 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MIN 0 66 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MAX 180 67 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MIN 1.66 68 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MAX 1.66 69 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DX 120 70 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DY 120 71 end 72 73 # basic config for ppSim with randomly distributed stars and gridded galaxies 74 if (0) 75 $FakeConfig = -camera SIMTEST 76 $FakeConfig = $FakeConfig -recipe PPSIM STACKTEST.RUN 77 $FakeConfig = $FakeConfig -D PSASTRO:PSASTRO.CATDIR catdir.ref 78 $FakeConfig = $FakeConfig -Db STARS.FAKE F ; # only use stars from catdir.ref 79 $FakeConfig = $FakeConfig -Db MATCH.DENSITY F 80 $FakeConfig = $FakeConfig -Db PSF.CONVOLVE T 81 $FakeConfig = $FakeConfig -Db GALAXY.FAKE T ; # generate a "realistic" distribution of galaxies 82 $FakeConfig = $FakeConfig -Df GALAXY.MAG 17.0 83 $FakeConfig = $FakeConfig -Db GALAXY.GRID T ; # generate a grid of galaxies (constant mag) 84 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_GAUSS 85 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_EXP 86 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_SERSIC 87 #$FakeConfig = $FakeConfig -D GALAXY.MODEL PS_MODEL_DEV 88 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MIN 10.0 89 $FakeConfig = $FakeConfig -Df GALAXY.RMAJOR.MAX 10.0 90 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MIN 0.25 91 $FakeConfig = $FakeConfig -Df GALAXY.ARATIO.MAX 0.25 92 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MIN 0 93 $FakeConfig = $FakeConfig -Df GALAXY.THETA.MAX 180 94 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MIN 1.66 95 $FakeConfig = $FakeConfig -Df GALAXY.INDEX.MAX 1.66 96 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DX 120 97 $FakeConfig = $FakeConfig -Di GALAXY.GRID.DY 120 98 end 69 99 70 100 list fwhm … … 164 194 $psphotConfig = $psphotConfig -Di PSPHOT:LMM_FIT_GAIN_FACTOR_MODE 2 165 195 $psphotConfig = $psphotConfig -Db PSPHOT:SAVE.RESID T 196 # $psphotConfig = $psphotConfig -D PSPHOT:PSF_MODEL PS_MODEL_PS1_V1 197 $psphotConfig = $psphotConfig -D PSPHOT:PSF_MODEL PS_MODEL_GAUSS 166 198 $psphotConfig = $psphotConfig -D PSPHOT:EXTENDED_SOURCE_MODELS_SELECTION $fitModel 199 $psphotConfig = $psphotConfig -D PSPHOT:OUTPUT.FORMAT PS1_V5 167 200 168 201 # ppImage / psphot on the output … … 217 250 218 251 # plot (input - output) vs mag 252 end 253 254 macro ck.poserrors 255 reindex X_raw_m = X_raw using index2 256 reindex X_out_m = X_PSF_out using index1 257 reindex dX_out_m = X_PSF_SIG_out using index1 258 set Xoff = X_raw_m - X_out_m 259 reindex M_raw_m = PSF_INST_MAG_raw using index2 260 261 # lim M_raw_m Xoff; clear; box; plot M_raw_m Xoff 262 set dC = Xoff^2 / dX_out_m^2 263 lim M_raw_m dX_out_m; clear; box; plot M_raw_m dX_out_m 219 264 end 220 265
Note:
See TracChangeset
for help on using the changeset viewer.
