Changeset 5672 for trunk/psphot/src/psphotMarkPSF.c
- Timestamp:
- Dec 4, 2005, 5:33:32 AM (21 years ago)
- File:
-
- 1 edited
-
trunk/psphot/src/psphotMarkPSF.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psphot/src/psphotMarkPSF.c
r5058 r5672 30 30 float nSx, nSy, Chi; 31 31 32 if (source->modelPSF == NULL) return (false);32 pmModel *model = source->modelPSF; 33 33 34 // if object has fitted peak above saturation, label as SATSTAR 34 // do we actually have a valid PSF model? 35 if (model == NULL) return (false); 36 37 // did the model fit fail for one or another reason? 38 switch (model->status) { 39 case PM_MODEL_BADARGS: 40 case PM_MODEL_UNTRIED: 41 source->type = PM_SOURCE_FAIL_FIT_PSF; // better choice? 42 return false; 43 case PM_MODEL_SUCCESS: 44 break; 45 case PM_MODEL_NONCONVERGE: 46 case PM_MODEL_OFFIMAGE: 47 psLogMsg ("psphot", 5, "PSF fit failed for %f, %f (%d iterations)\n", model->params->data.F32[2], model->params->data.F32[3], model->nIter); 48 source->type = PM_SOURCE_FAIL_FIT_PSF; // better choice? 49 return false; 50 default: 51 return false; 52 } 53 54 // if the object has fitted peak above saturation, label as SATSTAR 55 // this is a valid PSF object, but ignore the other quality tests 35 56 // remember: fit does not use saturated pixels (masked) 36 if ( source->modelPSF->params->data.F32[1] >= SATURATE) {57 if (model->params->data.F32[1] >= SATURATE) { 37 58 if (source->type == PM_SOURCE_PSFSTAR) { 38 59 psLogMsg ("psphot", 5, "PSFSTAR marked SATSTAR\n"); … … 41 62 return (true); 42 63 } 64 65 // if the object has a fitted peak below 0, the fit did not converge cleanly 66 if (model->params->data.F32[1] < 0) { 67 source->type = PM_SOURCE_FAIL_FIT_PSF; 68 return (false); 69 } 70 71 // if the source was predicted to be a SATSTAR, but it fitted below saturation, 72 // make a note to the user 43 73 if (source->type == PM_SOURCE_SATSTAR) { 44 74 psLogMsg ("psphot", 5, "SATSTAR marked GOODSTAR (fitted peak below saturation)\n"); … … 46 76 } 47 77 48 SN = source->modelPSF->params->data.F32[1]/source->modelPSF->dparams->data.F32[1];49 SX = source->modelPSF->params->data.F32[4];50 SY = source->modelPSF->params->data.F32[5];51 dSX = source->modelPSF->dparams->data.F32[4];52 dSY = source->modelPSF->dparams->data.F32[5];53 Chi = source->modelPSF->chisq / source->modelPSF->nDOF;78 SN = model->params->data.F32[1]/model->dparams->data.F32[1]; 79 SX = model->params->data.F32[4]; 80 SY = model->params->data.F32[5]; 81 dSX = model->dparams->data.F32[4]; 82 dSY = model->dparams->data.F32[5]; 83 Chi = model->chisq / model->nDOF; 54 84 55 85 // swing of sigma_x,y in sigmas
Note:
See TracChangeset
for help on using the changeset viewer.
