Index: trunk/psModules/src/objects/pmSourceFitModel.c
===================================================================
--- trunk/psModules/src/objects/pmSourceFitModel.c	(revision 23989)
+++ trunk/psModules/src/objects/pmSourceFitModel.c	(revision 25754)
@@ -96,6 +96,7 @@
 
             // Convert i/j to image space:
-            coord->data.F32[0] = (psF32) (j + source->pixels->col0);
-            coord->data.F32[1] = (psF32) (i + source->pixels->row0);
+	    // 0.5 PIX: the coordinate values must be in pixel coords, not index	    
+            coord->data.F32[0] = (psF32) (j + 0.5 + source->pixels->col0);
+            coord->data.F32[1] = (psF32) (i + 0.5 + source->pixels->row0);
             x->data[nPix] = (psPtr *) coord;
             y->data.F32[nPix] = source->pixels->data.F32[i][j];
@@ -175,7 +176,5 @@
             continue;
         dparams->data.F32[i] = sqrt(covar->data.F32[i][i]);
-        if (psTraceGetLevel("psModules.objects") >= 4) {
-            fprintf (stderr, "%f +/- %f\n", params->data.F32[i], dparams->data.F32[i]);
-        }
+        psTrace ("psModules.objects", 4, "%f +/- %f", params->data.F32[i], dparams->data.F32[i]);
     }
     psTrace ("psModules.objects", 4, "niter: %d, chisq: %f", myMin->iter, myMin->value);
@@ -186,4 +185,5 @@
     model->nPix  = y->n;
     model->nDOF  = y->n - nParams;
+    model->chisqNorm = model->chisq / model->nDOF;
     model->flags |= PM_MODEL_STATUS_FITTED;
     if (!fitStatus) model->flags |= PM_MODEL_STATUS_NONCONVERGE;
