- Timestamp:
- Mar 3, 2011, 3:11:09 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20110213/psphot/src/psphotSourceFits.c
r30624 r30784 101 101 if (!isfinite(PSF->params->data.F32[PM_PAR_I0])) psAbort("nan in fit"); 102 102 103 // correct model chisq for flux trend104 double chiTrend = psPolynomial1DEval (psf->ChiTrend, PSF->params->data.F32[PM_PAR_I0]);105 PSF->chisqNorm = PSF->chisq / chiTrend;106 107 103 // evaluate the blend objects, subtract if good, free otherwise 108 104 for (int i = 1; i < modelSet->n; i++) { … … 111 107 112 108 if (!isfinite(model->params->data.F32[PM_PAR_I0])) psAbort("nan in fit"); 113 114 // correct model chisq for flux trend115 chiTrend = psPolynomial1DEval (psf->ChiTrend, model->params->data.F32[PM_PAR_I0]);116 model->chisqNorm = model->chisq / chiTrend;117 109 118 110 // if this one failed, skip it … … 159 151 bool psphotFitPSF (pmReadout *readout, pmSource *source, pmPSF *psf, pmSourceFitOptions *fitOptions, psImageMaskType maskVal, psImageMaskType markVal) { 160 152 161 double chiTrend;162 153 pmSourceFitOptions options = *fitOptions; 163 154 … … 182 173 // clear the circular mask 183 174 psImageMaskPixels (source->maskObj, "AND", PS_NOT_IMAGE_MASK(markVal)); 184 185 // correct model chisq for flux trend186 chiTrend = psPolynomial1DEval (psf->ChiTrend, PSF->params->data.F32[PM_PAR_I0]);187 PSF->chisqNorm = PSF->chisq / chiTrend;188 175 189 176 // does the PSF model succeed? … … 225 212 bool okEXT, okDBL; 226 213 float chiEXT, chiDBL; 227 double chiTrend;228 214 pmModel *ONE = NULL; 229 215 pmSource *tmpSrc = NULL; … … 271 257 272 258 // correct first model chisqs for flux trend 273 chiDBL = NAN;274 259 ONE = DBL->data[0]; 275 260 if (ONE) { 276 261 if (!isfinite(ONE->params->data.F32[PM_PAR_I0])) psAbort("nan in fit"); 277 chiTrend = psPolynomial1DEval (psf->ChiTrend, ONE->params->data.F32[1]); 278 ONE->chisqNorm = ONE->chisq / chiTrend; 279 chiDBL = ONE->chisq / ONE->nDOF; // save chisq for double-star/galaxy comparison 262 chiDBL = ONE->chisqNorm; // save chisq for double-star/galaxy comparison 280 263 ONE->fitRadius = radius; 281 264 } … … 285 268 if (ONE) { 286 269 if (!isfinite(ONE->params->data.F32[PM_PAR_I0])) psAbort("nan in fit"); 287 chiTrend = psPolynomial1DEval (psf->ChiTrend, ONE->params->data.F32[1]);288 ONE->chisqNorm = ONE->chisq / chiTrend;289 270 ONE->fitRadius = radius; 290 271 } … … 298 279 299 280 okEXT = psphotEvalEXT (tmpSrc, EXT); 300 chiEXT = EXT ? EXT->chisq / EXT->nDOF: NAN;281 chiEXT = EXT ? EXT->chisqNorm : NAN; 301 282 } 302 283
Note:
See TracChangeset
for help on using the changeset viewer.
