Index: trunk/archive/noise_model/simulate.c
===================================================================
--- trunk/archive/noise_model/simulate.c	(revision 28669)
+++ trunk/archive/noise_model/simulate.c	(revision 28670)
@@ -629,4 +629,14 @@
                 psImageCovarianceFactor(stackCovar2),
                 meanVar(stackVariance2, stackMask2, stackCovar2));
+
+        writeImage(stackImage1, "stack1.image.fits");
+        writeImage(stackMask1, "stack1.mask.fits");
+        writeImage(stackVariance1, "stack1.variance.fits");
+        writeImage(stackCovar1->image, "stack1.covar.fits");
+        writeImage(stackImage2, "stack2.image.fits");
+        writeImage(stackMask2, "stack2.mask.fits");
+        writeImage(stackVariance2, "stack2.variance.fits");
+        writeImage(stackCovar2->image, "stack2.covar.fits");
+
         phot(stackImage1, stackMask1, stackVariance1, stackCovar1);
         phot(stackImage2, stackMask2, stackVariance2, stackCovar2);
@@ -651,4 +661,12 @@
         kernel->yMax = SKY_SIZE;
 
+        int normIndex = PM_SUBTRACTION_INDEX_NORM(kernel);
+        int bgIndex = PM_SUBTRACTION_INDEX_BG(kernel);
+#if 1
+//        kernel->solution1->data.F64[normIndex] += 1.0;
+        kernel->solution1->data.F64[bgIndex] = 0.0;
+#endif
+        fprintf(stderr, "Norm: %f BG: %f\n", kernel->solution1->data.F64[normIndex], kernel->solution1->data.F64[bgIndex]);
+
         pmReadout *convStack1 = pmReadoutAlloc(NULL);
         pmReadout *convStack2 = pmReadoutAlloc(NULL);
@@ -661,5 +679,5 @@
 
         if (!pmSubtractionMatchPrecalc(convStack1, convStack2, stack1, stack2, stack1->analysis,
-                                       32, 0.0, 0.001, 0xFF, 0xF0, 0x0F, 0.1, 1.0)) {
+                                       2 * kernel->size + 1, 0.0, 0.001, 0xFF, 0xF0, 0x0F, 0.1, 1.0)) {
             psErrorStackPrint(stderr, "Error:");
             exit(1);
@@ -667,4 +685,13 @@
         psFree(stack1);
         psFree(stack2);
+
+        writeImage(convStack1->image, "stack1.conv.image.fits");
+        writeImage(convStack1->mask, "stack1.conv.mask.fits");
+        writeImage(convStack1->variance, "stack1.conv.variance.fits");
+        writeImage(convStack1->covariance->image, "stack1.conv.covar.fits");
+        writeImage(convStack2->image, "stack2.conv.image.fits");
+        writeImage(convStack2->mask, "stack2.conv.mask.fits");
+        writeImage(convStack2->variance, "stack2.conv.variance.fits");
+        writeImage(convStack2->covariance->image, "stack2.conv.covar.fits");
 
         psImageCovarianceTransfer(convStack1->variance, convStack1->covariance);
@@ -739,4 +766,12 @@
         kernel->xMax = SKY_SIZE;
         kernel->yMax = SKY_SIZE;
+
+        int normIndex = PM_SUBTRACTION_INDEX_NORM(kernel);
+        int bgIndex = PM_SUBTRACTION_INDEX_BG(kernel);
+#if 1
+//        kernel->solution1->data.F64[normIndex] += 1.0;
+        kernel->solution1->data.F64[bgIndex] = 0.0;
+#endif
+        fprintf(stderr, "Norm: %f BG: %f\n", kernel->solution1->data.F64[normIndex], kernel->solution1->data.F64[bgIndex]);
 
         pmReadout *warp = readouts->data[readouts->n - 1];
