Index: branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.c
===================================================================
--- branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.c	(revision 39651)
+++ branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.c	(revision 39653)
@@ -252,5 +252,5 @@
         y->data.F32[i] = refStar->FP->y;
 
-        wt->data.F32[i] = 1.0;
+        wt->data.F32[i] = 1.01 - exp(-10.0*PS_SQR(refStar->magCal - rawStar->magCal)); // sigma = 0.22 mag
     }
 
@@ -657,4 +657,5 @@
     obj->Color= 0;
     obj->dMag = 0;
+    obj->magCal = 0;
 
     return (obj);
@@ -685,4 +686,5 @@
     obj->Color =  old->Color;
     obj->dMag  =  old->dMag;
+    obj->magCal =  old->magCal;
 
     return(obj);
@@ -816,9 +818,11 @@
             }
 
+	    int Npts = 10 * exp(-10.0*PS_SQR(ob1->magCal - ob2->magCal));  // sigma = 0.22 mag
+
             // accumulate bin stats
-            NP[iY][iX] ++;
-            DX[iY][iX] += dX;
-            DY[iY][iX] += dY;
-            D2[iY][iX] += PS_SQR(dX) + PS_SQR(dY);
+            NP[iY][iX] += Npts;
+            DX[iY][iX] += dX*Npts;
+            DY[iY][iX] += dY*Npts;
+            D2[iY][iX] += PS_SQR(dX*Npts) + PS_SQR(dY*Npts);
         }
     }
@@ -1079,6 +1083,8 @@
                 continue;
 
-            xHist->data.F32[xBin] += 1.0;
-            yHist->data.F32[yBin] += 1.0;
+	    int Npts = 10 * exp(-10.0*PS_SQR(ob1->magCal - ob2->magCal));  // sigma = 0.22 mag
+
+            xHist->data.F32[xBin] += Npts;
+            yHist->data.F32[yBin] += Npts;
         }
     }
Index: branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.h
===================================================================
--- branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.h	(revision 39651)
+++ branches/czw_branch/20160809/psModules/src/astrom/pmAstrometryObjects.h	(revision 39653)
@@ -43,4 +43,5 @@
     float dMag;				///< error on object magnitude
     float SBinst;			///< surface brightness, used for Koppenhoefer correction
+    float magCal;		        ///< object calibrated magnitude in extracted filter
 }
 pmAstromObj;
