Index: trunk/archive/noise_model/simulate.c
===================================================================
--- trunk/archive/noise_model/simulate.c	(revision 28172)
+++ trunk/archive/noise_model/simulate.c	(revision 28173)
@@ -95,10 +95,11 @@
         }
     }
-    psStats *stats = psStatsAlloc(PS_STAT_SAMPLE_STDEV);
+    psStats *stats = psStatsAlloc(PS_STAT_SAMPLE_MEAN | PS_STAT_SAMPLE_STDEV);
     psImageStats(stats, sn, mask, 0xFF);
     float noise = stats->sampleStdev;
+    float offset = stats->sampleMean;
     psFree(stats);
 
-    psHistogram *hist = psHistogramAlloc(-5, +5, 1001);
+    psHistogram *hist = psHistogramAlloc(-5, +5, 101);
     psVector *data = psVectorAlloc(sn->numCols * sn->numRows, PS_TYPE_F32);
     psVector *dataMask = psVectorAlloc(sn->numCols * sn->numRows, PS_TYPE_VECTOR_MASK);
@@ -107,5 +108,5 @@
     for (int y = 0, i = 0; y < sn->numRows; y++) {
         for (int x = 0; x < sn->numCols; x++, i++) {
-            data->data.F32[i] = sn->data.F32[y][x];
+            data->data.F32[i] = sn->data.F32[y][x] - offset;
             if (mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x]) {
                 dataMask->data.PS_TYPE_VECTOR_MASK_DATA[i] = 0xFF;
@@ -126,5 +127,5 @@
     FILE *file = fopen(name, "w");
     psFree(name);
-    fprintf(stderr, "# Sig Frac\n");
+    fprintf(file, "# Sig Frac\n");
     for (int i = 0; i < hist->bounds->n - 1; i++) {
         fprintf(file, "%f %f\n",
@@ -517,4 +518,6 @@
                 psImageCovarianceFactor(diffCovar),
                 meanVar(diffVariance, diffMask, diffCovar));
+
+        phot(diffImage, diffMask, diffVariance, diffCovar);
 
         writeImage(diffImage, "wwdiff.image.fits");
@@ -621,4 +624,6 @@
                 meanVar(diffVariance, diffMask, diffCovar));
 
+        phot(diffImage, diffMask, diffVariance, diffCovar);
+
         writeImage(diffImage, "ssdiff.image.fits");
         writeImage(diffMask, "ssdiff.mask.fits");
@@ -713,4 +718,6 @@
                 meanVar(diffVariance, diffMask, diffCovar));
 
+        phot(diffImage, diffMask, diffVariance, diffCovar);
+
         writeImage(diffImage, "wsdiff.image.fits");
         writeImage(diffMask, "wsdiff.mask.fits");
@@ -718,6 +725,4 @@
         writeImage(diffCovar->image, "wsdiff.covar.fits");
 
-        phot(diffImage, diffMask, diffVariance, diffCovar);
-
         psFree(diffImage);
         psFree(diffMask);
