Index: /branches/eam_02_branch/psModules/src/camera/pmFPAfileIO.c
===================================================================
--- /branches/eam_02_branch/psModules/src/camera/pmFPAfileIO.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/camera/pmFPAfileIO.c	(revision 12931)
@@ -28,4 +28,5 @@
 #include "pmSourceIO.h"
 #include "pmGrowthCurve.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmPSF_IO.h"
Index: /branches/eam_02_branch/psModules/src/objects/Makefile.am
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/Makefile.am	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/Makefile.am	(revision 12931)
@@ -23,4 +23,5 @@
      pmSourcePlotPSFModel.c \
      pmSourcePlotMoments.c \
+     pmResiduals.c \
      pmPSF.c \
      pmPSF_IO.c \
@@ -46,4 +47,5 @@
      pmSourceIO.h \
      pmSourcePlots.h \
+     pmResiduals.h \
      pmPSF.h \
      pmPSF_IO.h \
Index: /branches/eam_02_branch/psModules/src/objects/pmGrowthCurve.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmGrowthCurve.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmGrowthCurve.c	(revision 12931)
@@ -5,6 +5,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-30 21:12:56 $
+ *  @version $Revision: 1.9.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -25,4 +25,5 @@
 #include "pmSource.h"
 #include "pmGrowthCurve.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "psVectorBracket.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmModelGroup.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmModelGroup.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmModelGroup.c	(revision 12931)
@@ -6,6 +6,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-11-29 02:35:45 $
+ *  @version $Revision: 1.12.6.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -27,4 +27,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmPSF.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmPSF.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmPSF.c	(revision 12931)
@@ -6,6 +6,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.19 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-12 18:56:37 $
+ *  @version $Revision: 1.19.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -30,4 +30,5 @@
 #include "pmSource.h"
 #include "pmGrowthCurve.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmModelGroup.h"
@@ -73,4 +74,5 @@
     psFree (psf->growth);
     psFree (psf->params_NEW);
+    psFree (psf->residuals);
     return;
 }
@@ -117,4 +119,7 @@
     // don't define a growth curve : user needs to choose radius bins
     psf->growth = NULL;
+
+    // by default, we do not construct the residual image
+    psf->residuals = NULL;
 
     Nparams = pmModelParameterCount (type);
Index: /branches/eam_02_branch/psModules/src/objects/pmPSF.h
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmPSF.h	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmPSF.h	(revision 12931)
@@ -6,6 +6,6 @@
  * @author EAM, IfA
  *
- * @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-24 02:54:15 $
+ * @version $Revision: 1.11.6.1 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-04-20 02:31:41 $
  * Copyright 2004 Maui High Performance Computing Center, University of Hawaii
  */
@@ -49,16 +49,16 @@
     // unfitted elements (So, Io, Xo, Yo) and leave them as NULL
     // I am using a new name to catch all refs to params with gcc
-    psPolynomial1D *ChiTrend;  ///< Chisq vs flux fit (correction for systematic errors)
-    psPolynomial4D *ApTrend;  ///< ApResid vs (x,y,rflux) (rflux = ten(0.4*mInst))
-    //pmGrowthCurve *growth;  ///< apMag vs Radius // move to end as gdb is confused by it here
-    float ApResid;   ///< apMag - psfMag (for PSF stars)
-    float dApResid;   ///< scatter of ApResid
-    float skyBias;   ///< implied residual sky offset from ApResid fit
-    float skySat;   ///< roll-over of ApResid fit
-    float chisq;   ///< PSF goodness statistic (unused??)
-    int nPSFstars;   ///< number of stars used to measure PSF
-    int nApResid;   ///< number of stars used to measure ApResid
+    psPolynomial1D *ChiTrend;	      ///< Chisq vs flux fit (correction for systematic errors)
+    psPolynomial4D *ApTrend;		///< ApResid vs (x,y,rflux) (rflux = ten(0.4*mInst))
+    float ApResid;			///< apMag - psfMag (for PSF stars)
+    float dApResid;			///< scatter of ApResid
+    float skyBias;			///< implied residual sky offset from ApResid fit
+    float skySat;			///< roll-over of ApResid fit
+    float chisq;			///< PSF goodness statistic (unused??)
+    int nPSFstars;			///< number of stars used to measure PSF
+    int nApResid;			///< number of stars used to measure ApResid
     bool poissonErrors;
-    pmGrowthCurve *growth;  ///< apMag vs Radius
+    pmGrowthCurve *growth;		///< apMag vs Radius
+    pmResiduals *residuals;		///< normalized residual image (no spatial variation)
 }
 pmPSF;
Index: /branches/eam_02_branch/psModules/src/objects/pmPSF_IO.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmPSF_IO.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmPSF_IO.c	(revision 12931)
@@ -6,6 +6,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-14 03:22:48 $
+ *  @version $Revision: 1.13.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -37,4 +37,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmPSF_IO.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmPSFtry.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmPSFtry.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmPSFtry.c	(revision 12931)
@@ -5,6 +5,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.34 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-01-19 04:35:53 $
+ *  @version $Revision: 1.34.6.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -25,4 +25,5 @@
 #include "pmSource.h"
 #include "pmGrowthCurve.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmPSFtry.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmResiduals.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmResiduals.c	(revision 12931)
+++ /branches/eam_02_branch/psModules/src/objects/pmResiduals.c	(revision 12931)
@@ -0,0 +1,48 @@
+/** @file pmResiduals.c
+ *
+ * Functions to manipulate the residual tables (data - model).
+ *
+ * @author EAM, IfA
+ * @version $Revision: 1.1.2.1 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-04-20 02:31:41 $
+ * Copyright 2004 IfA, University of Hawaii
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <pslib.h>
+#include "pmResiduals.h"
+
+static void pmResidualsFree (pmResiduals *resid) {
+
+    if (resid == NULL) return;
+
+    psFree (resid->image);
+    psFree (resid->weight);
+    psFree (resid->mask);
+    return;
+}
+
+pmResiduals *pmResidualsAlloc (int xSize, int ySize, int xBin, int yBin) {
+
+    pmResiduals *resid = (pmResiduals *) psAlloc(sizeof(pmResiduals));
+    psMemSetDeallocator(resid, (psFreeFunc) pmResidualsFree);
+
+    int nX = xSize * xBin;
+    int nY = ySize * yBin;
+
+    nX = (nX % 2) ? nX : nX + 1;
+    nY = (nY % 2) ? nY : nY + 1;
+
+    resid->image  = psImageAlloc (nX, nY, PS_TYPE_F32);
+    resid->weight = psImageAlloc (nX, nY, PS_TYPE_F32);
+    resid->mask   = psImageAlloc (nX, nY, PS_TYPE_U8);
+
+    resid->xBin = xBin;
+    resid->yBin = yBin;
+    resid->xCenter = 0.5*(nX - 1); 
+    resid->yCenter = 0.5*(nY - 1);
+    return resid;
+}
Index: /branches/eam_02_branch/psModules/src/objects/pmResiduals.h
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmResiduals.h	(revision 12931)
+++ /branches/eam_02_branch/psModules/src/objects/pmResiduals.h	(revision 12931)
@@ -0,0 +1,31 @@
+/** @file pmResiduals.h
+ *
+ * Functions to manipulate the residual tables (data - model).
+ *
+ * @author EAM, IfA
+ * @version $Revision: 1.1.2.1 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-04-20 02:31:41 $
+ * Copyright 2004 IfA, University of Hawaii
+ */
+
+# ifndef PM_RESIDUALS_H
+# define PM_RESIDUALS_H
+/// @addtogroup Objects Object Detection / Analysis Functions
+/// @{
+
+/** residual tables for sources 
+ */
+typedef struct {
+    psImage *image;
+    psImage *weight;
+    psImage *mask;
+    int xBin;
+    int yBin;
+    int xCenter;
+    int yCenter;
+} pmResiduals;
+
+pmResiduals *pmResidualsAlloc (int xSize, int ySize, int xBin, int yBin);
+
+/// @}
+# endif
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceFitModel.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceFitModel.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceFitModel.c	(revision 12931)
@@ -6,6 +6,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.19 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-07 23:58:17 $
+ *  @version $Revision: 1.19.4.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -27,4 +27,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.35 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-18 19:42:37 $
+ *  @version $Revision: 1.35.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -34,4 +34,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMF.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMF.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMF.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.18 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-30 21:12:56 $
+ *  @version $Revision: 1.18.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -28,4 +28,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMP.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMP.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_CMP.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.25 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-18 19:40:57 $
+ *  @version $Revision: 1.25.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_OBJ.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_OBJ.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_OBJ.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-30 21:12:56 $
+ *  @version $Revision: 1.9.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_PS1_DEV_0.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_PS1_DEV_0.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_PS1_DEV_0.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.6 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-31 03:02:05 $
+ *  @version $Revision: 1.6.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_RAW.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_RAW.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_RAW.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-30 21:12:56 $
+ *  @version $Revision: 1.14.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SMPDATA.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SMPDATA.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SMPDATA.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.5 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-18 19:36:01 $
+ *  @version $Revision: 1.5.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SX.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SX.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourceIO_SX.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-30 21:12:56 $
+ *  @version $Revision: 1.8.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourcePhotometry.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourcePhotometry.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourcePhotometry.c	(revision 12931)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA; GLG, MHPCC
  *
- *  @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-07 23:58:17 $
+ *  @version $Revision: 1.22.4.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -25,4 +25,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourcePlotMoments.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourcePlotMoments.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourcePlotMoments.c	(revision 12931)
@@ -5,6 +5,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.4 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-14 03:22:48 $
+ *  @version $Revision: 1.4.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2006 IfA, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/objects/pmSourcePlotPSFModel.c
===================================================================
--- /branches/eam_02_branch/psModules/src/objects/pmSourcePlotPSFModel.c	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/objects/pmSourcePlotPSFModel.c	(revision 12931)
@@ -5,6 +5,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.5 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-04-14 03:22:48 $
+ *  @version $Revision: 1.5.2.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-20 02:31:41 $
  *
  *  Copyright 2006 IfA, University of Hawaii
@@ -32,4 +32,5 @@
 #include "pmGrowthCurve.h"
 #include "pmModel.h"
+#include "pmResiduals.h"
 #include "pmPSF.h"
 #include "pmSource.h"
Index: /branches/eam_02_branch/psModules/src/psmodules.h
===================================================================
--- /branches/eam_02_branch/psModules/src/psmodules.h	(revision 12930)
+++ /branches/eam_02_branch/psModules/src/psmodules.h	(revision 12931)
@@ -81,4 +81,5 @@
 #include <pmSourcePlots.h>
 #include <pmGrowthCurve.h>
+#include <pmResiduals.h>
 #include <pmPSF.h>
 #include <pmPSF_IO.h>
