Index: /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/ReadStarsFITS.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/ReadStarsFITS.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/ReadStarsFITS.c	(revision 34382)
@@ -120,5 +120,5 @@
 
     stars[i].measure.psfChisq 	= NAN;	     // not provided by SMPDATA:
-    stars[i].measure.psfQual  	= NAN;	     // not provided by SMPDATA:
+    stars[i].measure.psfQF  	= NAN;	     // not provided by SMPDATA:
     stars[i].measure.psfNdof    = NAN_S_INT; // not provided by SMPDATA:
     stars[i].measure.psfNpix    = NAN_S_INT; // not provided by SMPDATA:
@@ -189,5 +189,5 @@
 
     stars[i].measure.psfChisq 	= ps1data[i].psfChisq;
-    stars[i].measure.psfQual  	= ps1data[i].psfQual;
+    stars[i].measure.psfQF  	= ps1data[i].psfQF;
     stars[i].measure.psfNdof    = NAN_S_INT; // not provided by PS1_DEV_0:
     stars[i].measure.psfNpix    = NAN_S_INT; // not provided by PS1_DEV_0:
@@ -261,5 +261,5 @@
 
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = NAN_S_INT; // not provided by PS1_DEV_1:
     stars[i].measure.psfNpix    = NAN_S_INT; // not provided by PS1_DEV_1:
@@ -345,5 +345,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
@@ -430,5 +430,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
@@ -507,5 +507,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
@@ -584,5 +584,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
@@ -669,5 +669,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
@@ -748,5 +748,5 @@
                         
     stars[i].measure.psfChisq   = ps1data[i].psfChisq;
-    stars[i].measure.psfQual    = ps1data[i].psfQual;
+    stars[i].measure.psfQF      = ps1data[i].psfQF;
     stars[i].measure.psfNdof    = ps1data[i].psfNdof;
     stars[i].measure.psfNpix    = ps1data[i].psfNpix;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/SEDfit.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/SEDfit.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/SEDfit.c	(revision 34382)
@@ -147,27 +147,10 @@
     // construct an average object for this object
     // XXX for now, the output objects will have limited astrometric interpretation...
+    dvo_average_init (&outcat[0].average[Nave]);
     outcat[0].average[Nave].R         = incat[0].average[i].R;
     outcat[0].average[Nave].D         = incat[0].average[i].D;
-    outcat[0].average[Nave].dR    = 0;
-    outcat[0].average[Nave].dD    = 0;
-    outcat[0].average[Nave].uR    = 0;
-    outcat[0].average[Nave].uD    = 0;
-    outcat[0].average[Nave].duR   = 0;
-    outcat[0].average[Nave].duD   = 0;
-    outcat[0].average[Nave].P     = 0;
-    outcat[0].average[Nave].dP    = 0;
-
-    // XXX for now, set the average mag data to NULL
-    outcat[0].average[Nave].Nmeasure  	  = 0;
-    outcat[0].average[Nave].Nmissing  	  = 0;
-    outcat[0].average[Nave].Xp        	  = NAN_S_SHORT;
-    outcat[0].average[Nave].measureOffset = Nmeas;
-    outcat[0].average[Nave].missingOffset = -1;
-    outcat[0].average[Nave].flags         = 0;
 
     for (j = 0; j < Nsec; j++) {
-      outcat[0].secfilt[Nave*Nsec+j].M  = NAN;
-      outcat[0].secfilt[Nave*Nsec+j].dM = NAN;
-      outcat[0].secfilt[Nave*Nsec+j].Xm = NAN_S_SHORT;
+      dvo_secfilt_init (&outcat[0].secfilt[Nave*Nsec+j]);
     }
 
@@ -181,4 +164,5 @@
     for (j = 0; valid && (j < Nmodel); j++) {
       n = modelRow[j];
+      dvo_measure_init (&outcat[0].measure[Nmeas]);
       outcat[0].measure[Nmeas].dR        = 0.0;
       outcat[0].measure[Nmeas].dD        = 0.0;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/load2mass_catalog.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/load2mass_catalog.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/load2mass_catalog.c	(revision 34382)
@@ -34,5 +34,5 @@
     catalog[0].average[Nave].Nmeasure  	   = 0;
     catalog[0].average[Nave].Nmissing  	   = 0;
-    catalog[0].average[Nave].Xp        	   = NAN_S_SHORT;
+    catalog[0].average[Nave].ChiSqAve  	   = NAN_S_SHORT;
     catalog[0].average[Nave].measureOffset = Nmeas;
     catalog[0].average[Nave].missingOffset = -1;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/mkcmf.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/mkcmf.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/mkcmf.c	(revision 34382)
@@ -419,5 +419,5 @@
     stars[i].fy        = FY;
     stars[i].df        = DF;
-    stars[i].psfQual   = PSFQUAL;
+    stars[i].psfQF   = PSFQUAL;
     stars[i].nFrames   = 1;
   }
@@ -466,5 +466,5 @@
     stars[i].fy        = FY;
     stars[i].df        = DF;
-    stars[i].psfQual   = PSFQUAL;
+    stars[i].psfQF   = PSFQUAL;
     stars[i].nFrames   = 1;
     stars[i].flags     = FLAGS;
@@ -514,5 +514,5 @@
     stars[i].fy        = FY;
     stars[i].df        = DF;
-    stars[i].psfQual   = PSFQUAL;
+    stars[i].psfQF   = PSFQUAL;
     stars[i].nFrames   = 1;
     stars[i].flags     = FLAGS;
@@ -551,7 +551,7 @@
     // randomly give poor PSFQF values
     if ((BAD_PSFQF_FRAC > 0.0) && (drand48() < BAD_PSFQF_FRAC)) {
-      stars[i].psfQual   = 0.25;
+      stars[i].psfQF   = 0.25;
     } else {
-      stars[i].psfQual   = PSFQUAL;
+      stars[i].psfQF   = PSFQUAL;
     }
     
@@ -606,7 +606,7 @@
     // randomly give poor PSFQF values
     if ((BAD_PSFQF_FRAC > 0.0) && (drand48() < BAD_PSFQF_FRAC)) {
-      stars[i].psfQual   = 0.25;
+      stars[i].psfQF   = 0.25;
     } else {
-      stars[i].psfQual   = PSFQUAL;
+      stars[i].psfQF   = PSFQUAL;
     }
     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/update_coords.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/update_coords.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/addstar/src/update_coords.c	(revision 34382)
@@ -47,6 +47,6 @@
   dR2 = r2 / Npt - r*r;
   dD2 = d2 / Npt - d*d;
-  average[0].Xp = sqrt (dD2 + dR2 / SQ(cos(d*RAD_DEG)));
-  /* Xp is scatter in position in hundredths of arcsec */
+  average[0].ChiSqAve = sqrt (dD2 + dR2 / SQ(cos(d*RAD_DEG)));
+  /* ChiSqAve is supposed to be a chisq */
 
   return;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/dvomerge/src/merge_catalogs_old.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 34382)
@@ -320,5 +320,5 @@
     output[0].average[Nave].dP        	   = 0;
 
-    output[0].average[Nave].Xp        	   = 0;
+    output[0].average[Nave].stargal   	   = 0;
     output[0].average[Nave].ChiSqAve   	   = 0.0;
     output[0].average[Nave].ChiSqPM   	   = 0.0;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/Makefile.Targets
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/Makefile.Targets	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/Makefile.Targets	(revision 34382)
@@ -70,5 +70,7 @@
 $(ASRC)/cmf-ps1-v2.$(ARCH).o \
 $(ASRC)/cmf-ps1-v3.$(ARCH).o \
+$(ASRC)/cmf-ps1-v4.$(ARCH).o \
 $(ASRC)/cmf-ps1-sv1.$(ARCH).o \
+$(ASRC)/cmf-ps1-sv2.$(ARCH).o \
 $(ASRC)/cmf-smpdata.$(ARCH).o \
 $(ASRC)/getstar-ps1-dev-0.$(ARCH).o \
@@ -154,5 +156,7 @@
 $(AINC)/cmf-ps1-v2.h \
 $(AINC)/cmf-ps1-v3.h \
+$(AINC)/cmf-ps1-v4.h \
 $(AINC)/cmf-ps1-sv1.h \
+$(AINC)/cmf-ps1-sv2.h \
 $(AINC)/cmf-smpdata.h \
 $(AINC)/getstar-ps1-dev-0.h \
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/Stars.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/Stars.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/Stars.d	(revision 34382)
@@ -1,2 +1,5 @@
+*** note that this file / structure has been deprecated
+
+
 STRUCT  Stars
 EXTNAME STARS
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average-ps1-v4.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average-ps1-v4.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average-ps1-v4.d	(revision 34382)
@@ -2,5 +2,5 @@
 EXTNAME      DVO_AVERAGE_PS1_V4
 TYPE         BINTABLE
-SIZE         120
+SIZE         128
 DESCRIPTION  DVO Average Object Table
 
@@ -25,5 +25,8 @@
 FIELD Trange,         TIME_RANGE,  int,   	    mean epoch (PM,PAR ref),       unix time seconds
 
-FIELD Xp,             SIGMA_POS,   float, 	    position scatter,   	  1/100 arcsec
+FIELD psfQF,          PSF_QF,      float,           psf coverage (bad masks)
+FIELD psfQFperf,      PSF_QF_PERF, float,           psf coverage (all masks)
+
+FIELD stargal,        STARGAL_SEP, float,           star / galaxy separator,       1/100 arcsec
 FIELD Npos,           NUMBER_POS,  unsigned short,  number of detections used for astrometry
 
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/average.d	(revision 34382)
@@ -2,5 +2,5 @@
 EXTNAME      DVO_AVERAGE
 TYPE         BINTABLE
-SIZE         120
+SIZE         128
 DESCRIPTION  DVO Average Object Table
 
@@ -25,5 +25,8 @@
 FIELD Trange,         TIME_RANGE,  int,   	    mean epoch (PM,PAR ref),       unix time seconds
 
-FIELD Xp,             SIGMA_POS,   float,           position scatter,             1/100 arcsec
+FIELD psfQF,          PSF_QF,      float,           psf coverage (bad masks)
+FIELD psfQFperf,      PSF_QF_PERF, float,           psf coverage (all masks)
+
+FIELD stargal,        STARGAL_SEP, float,           star / galaxy separator,       1/100 arcsec
 FIELD Npos,           NUMBER_POS,  unsigned short,  number of detections used for astrometry
 
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-0.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-0.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-0.d	(revision 34382)
@@ -20,5 +20,5 @@
 FIELD fy,     	PSF_WIDTH_Y,      float,    semi-minor,           pixels
 FIELD df,     	PSF_THETA,        float,    ellipse angle,        degrees
-FIELD psfQual, 	PSF_QF,           float,    quality factor
+FIELD psfQF, 	PSF_QF,           float,    quality factor
 FIELD nFrames, 	N_FRAMES,         short,    images overlapping peak
 FIELD dummy,  	DUMMY,            short,    padding
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-dev-1.d	(revision 34382)
@@ -22,5 +22,5 @@
 FIELD fy,     	 PSF_WIDTH_Y,      float,    semi-minor,           pixels
 FIELD df,     	 PSF_THETA,        float,    ellipse angle,        degrees
-FIELD psfQual, 	 PSF_QF,           float,    quality factor
+FIELD psfQF, 	 PSF_QF,           float,    quality factor
 FIELD nFrames, 	 N_FRAMES,         short,    images overlapping peak
 FIELD flags,  	 FLAGS,            short,    padding
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-sv1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-sv1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-sv1.d	(revision 34382)
@@ -51,6 +51,6 @@
 
 FIELD df,             PSF_THETA,         float,    ellipse angle,         degrees
-FIELD psfQual,        PSF_QF,            float,    quality factor
-FIELD psfQualPerfect, PSF_QF_PERFECT,    float,    quality factor perfect
+FIELD psfQF,          PSF_QF,            float,    quality factor
+FIELD psfQFperf,      PSF_QF_PERFECT,    float,    quality factor perfect
 FIELD psfNdof,        PSF_NDOF,          int,      psf degrees of freedom
 
@@ -112,6 +112,6 @@
 # FIELD fy,             PSF_MINOR,         PSF_MINOR          1E      float,    psf fit minor axis,    pixels
 # FIELD df,             PSF_THETA,         PSF_THETA          1E      float,    ellipse angle,         degrees
-# FIELD psfQual,        PSF_QF,            PSF_QF             1E      float,    quality factor
-# FIELD psfQualPerfect, PSF_QF_PERFECT,    PSF_QF_PERFECT     1E      float,    quality factor perfect
+# FIELD psfQF,          PSF_QF,            PSF_QF             1E      float,    quality factor
+# FIELD psfQFperf,      PSF_QF_PERFECT,    PSF_QF_PERFECT     1E      float,    quality factor perfect
 # FIELD psfNdof,        PSF_NDOF,          PSF_NDOF           1J      int,      psf degrees of freedom
 # FIELD psfNpix,        PSF_NPIX,          PSF_NPIX           1J      int,      psf number of pixels
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v1.d	(revision 34382)
@@ -30,5 +30,5 @@
 FIELD fy,     	 PSF_MINOR,        float,    psf fit minor axis,    pixels
 FIELD df,     	 PSF_THETA,        float,    ellipse angle,         degrees
-FIELD psfQual, 	 PSF_QF,           float,    quality factor
+FIELD psfQF, 	 PSF_QF,           float,    quality factor
 FIELD psfNdof, 	 PSF_NDOF,         int,      psf degrees of freedom
 FIELD psfNpix, 	 PSF_NPIX,         int,      psf number of pixels
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v2.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v2.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v2.d	(revision 34382)
@@ -30,5 +30,5 @@
 FIELD fy,     	 PSF_MINOR,        float,    psf fit minor axis,    pixels
 FIELD df,     	 PSF_THETA,        float,    ellipse angle,         degrees
-FIELD psfQual, 	 PSF_QF,           float,    quality factor
+FIELD psfQF, 	 PSF_QF,           float,    quality factor
 FIELD psfNdof, 	 PSF_NDOF,         int,      psf degrees of freedom
 FIELD psfNpix, 	 PSF_NPIX,         int,      psf number of pixels
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v3.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v3.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/cmf-ps1-v3.d	(revision 34382)
@@ -36,6 +36,6 @@
 FIELD fy,             PSF_MINOR,         float,    psf fit minor axis,    pixels
 FIELD df,             PSF_THETA,         float,    ellipse angle,         degrees
-FIELD psfQual,        PSF_QF,            float,    quality factor
-FIELD psfQualPerfect, PSF_QF_PERFECT,    float,    quality factor perfect
+FIELD psfQF,          PSF_QF,            float,    quality factor
+FIELD psfQFperf,      PSF_QF_PERFECT,    float,    quality factor perfect
 FIELD psfNdof,        PSF_NDOF,          int,      psf degrees of freedom
 FIELD psfNpix,        PSF_NPIX,          int,      psf number of pixels
@@ -68,5 +68,5 @@
 # FIELD dFlux,          PSF_INST_FLUX_SIG, float,    psf flux error,        counts      
 # FIELD MapRaw,         AP_MAG_RAW,        float,    raw aperture mag,      mags
-# FIELD psfQualPerfect, PSF_QF_PERFECT,    float,    quality factor perfect
+# FIELD psfQFperf,      PSF_QF_PERFECT,    float,    quality factor perfect
 # FIELD M3c,            MOMENTS_M3C,       float,    third moment cos(t),   pixels^3
 # FIELD M3s,            MOMENTS_M3S,       float,    third moment sin(t),   pixels^3
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-0.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-0.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-0.d	(revision 34382)
@@ -46,5 +46,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       short,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       short,          psf coverage/quality factor
 
 FIELD dophot,         DOPHOT,       char,           dophot type
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-panstarrs-dev-1.d	(revision 34382)
@@ -46,5 +46,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       short,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       short,          psf coverage/quality factor
 
 FIELD dophot,         DOPHOT,       char,           dophot type
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-1.d	(revision 34382)
@@ -33,5 +33,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       float,          psf coverage/quality factor
 FIELD psfChisq,       PSF_CHISQ,    float,          psf coverage/quality factor
 FIELD crNsigma,       CR_NSIGMA,    float,          psf coverage/quality factor
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-2.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-2.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-dev-2.d	(revision 34382)
@@ -34,5 +34,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       float,          psf coverage/quality factor
 FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
 FIELD crNsigma,       CR_NSIGMA,    float,          Nsigma deviation towards CR
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v1.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v1.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v1.d	(revision 34382)
@@ -39,5 +39,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       float,          psf coverage/quality factor
 FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
 FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v2.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v2.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v2.d	(revision 34382)
@@ -39,5 +39,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       float,          psf coverage/quality factor
 FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
 FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v3.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v3.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v3.d	(revision 34382)
@@ -39,5 +39,5 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfQF,          PSF_QF,       float,          psf coverage/quality factor
 FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
 FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v4.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v4.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure-ps1-v4.d	(revision 34382)
@@ -47,10 +47,12 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
-FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
-FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
-FIELD psfNpix,        PSF_NPIX,     int,            psf number of pixels
-FIELD crNsigma,       CR_NSIGMA,    float,          Nsigma deviation towards CR
-FIELD extNsigma,      EXT_NSIGMA,   float,          Nsigma deviation towards EXT
+FIELD psfQF,          PSF_QF,        float,          psf coverage/quality factor
+FIELD psfQFPerf,      PSF_QF_PEFECT, float,          psf coverage / quality factor (all mask bits)
+FIELD psfChisq,       PSF_CHISQ,     float,          psf fit chisq
+
+FIELD psfNdof,        PSF_NDOF,      int,            psf degrees of freedom
+FIELD psfNpix,        PSF_NPIX,      int,            psf number of pixels
+FIELD crNsigma,       CR_NSIGMA,     float,          Nsigma deviation towards CR
+FIELD extNsigma,      EXT_NSIGMA,    float,          Nsigma deviation towards EXT
 
 # model shape parameters
@@ -73,6 +75,4 @@
 FIELD dRsys,          POS_SYS_ERR,  short,          systematic error from astrom,   1/100 of pixels
 
-FIELD pad,            PAD,          char[4],        padding
-
 # local astrometry scales
 FIELD posangle,       POSANGLE,     short,          position angle sky to chip,     (0xffff/360) deg
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure.d
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure.d	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libautocode/def/measure.d	(revision 34382)
@@ -2,5 +2,5 @@
 EXTNAME      DVO_MEASURE
 TYPE         BINTABLE
-SIZE         172
+SIZE         176
 DESCRIPTION  DVO Detection Measurement Table 
 
@@ -47,10 +47,12 @@
 
 # do we need more resolution than a short? should this be a log?
-FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
-FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
-FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
-FIELD psfNpix,        PSF_NPIX,     int,            psf number of pixels
-FIELD crNsigma,       CR_NSIGMA,    float,          Nsigma deviation towards CR
-FIELD extNsigma,      EXT_NSIGMA,   float,          Nsigma deviation towards EXT
+FIELD psfQF,          PSF_QF,        float,          psf coverage/quality factor
+FIELD psfQFPerf,      PSF_QF_PEFECT, float,          psf coverage / quality factor (all mask bits)
+FIELD psfChisq,       PSF_CHISQ,     float,          psf fit chisq
+
+FIELD psfNdof,        PSF_NDOF,      int,            psf degrees of freedom
+FIELD psfNpix,        PSF_NPIX,      int,            psf number of pixels
+FIELD crNsigma,       CR_NSIGMA,     float,          Nsigma deviation towards CR
+FIELD extNsigma,      EXT_NSIGMA,    float,          Nsigma deviation towards EXT
 
 # model shape parameters
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractAverages.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractAverages.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractAverages.c	(revision 34382)
@@ -147,8 +147,4 @@
     case AVE_TRANGE:
       value.Flt = TimeValue (average[0].Trange, 0, TimeFormat);
-      break;
-
-    case AVE_Xp:
-      value.Flt = 0.01*average[0].Xp;
       break;
 
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractMeasures.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractMeasures.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbExtractMeasures.c	(revision 34382)
@@ -480,5 +480,5 @@
       break;
     case MEAS_PSF_QF: /* OK */
-      value.Flt = measure[0].psfQual;
+      value.Flt = measure[0].psfQF;
       break;
     case MEAS_PSF_QF_PERFECT: /* OK */
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbFields.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbFields.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dbFields.c	(revision 34382)
@@ -335,8 +335,4 @@
   if (!strcasecmp (fieldName, "EXTID_LO"))  ESCAPE (AVE_EXTID_LO,  MAG_NONE, OPIHI_INT);
 
-  // if (!strcasecmp (fieldName, "Xp"))      ESCAPE (AVE_Xp,        MAG_NONE, OPIHI_FLT);
-  // if (!strcasecmp (fieldName, "TYPE"))    ESCAPE (AVE_TYPE,      MAG_NONE, OPIHI_INT);
-  // for words that don't parse, try a photcode
-
   // check for code:mode in photcode name 
   code = ParsePhotcodeField (fieldName, &mode, MAG_AVE);
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_catalog.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_catalog.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_catalog.c	(revision 34382)
@@ -89,5 +89,5 @@
   average->Trange   	   = 0;
 
-  average->Xp        	   = 0;
+  average->stargal    	   = 0.0;
   average->Npos    	   = 0;
 
@@ -174,5 +174,5 @@
  measure->extID     = 0;
 
- measure->psfQual   = NAN;
+ measure->psfQF     = NAN;
  measure->psfChisq  = NAN;
  measure->psfNdof   = 0;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c	(revision 34382)
@@ -27,5 +27,5 @@
     out[i].detID      = in[i].detID;
     out[i].imageID    = in[i].imageID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].crNsigma   = in[i].crNsigma;
@@ -65,4 +65,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -93,5 +94,5 @@
     out[i].detID      = in[i].detID;
     out[i].imageID    = in[i].imageID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].crNsigma   = in[i].crNsigma;
@@ -126,5 +127,4 @@
     out[i].R        	 = in[i].R;      
     out[i].D        	 = in[i].D;      
-    out[i].Xp       	 = in[i].Xp;     
     out[i].dR       	 = in[i].dR;
     out[i].dD       	 = in[i].dD;
@@ -159,4 +159,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -174,5 +179,4 @@
     out[i].R        	 = in[i].R;      
     out[i].D        	 = in[i].D;      
-    out[i].Xp       	 = in[i].Xp;     
     out[i].dR       	 = in[i].dR;
     out[i].dD       	 = in[i].dD;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c	(revision 34382)
@@ -29,5 +29,5 @@
     out[i].detID      = in[i].detID;
     out[i].imageID    = in[i].imageID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].crNsigma   = in[i].crNsigma;
@@ -62,5 +62,6 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
-  }
+    out[i].psfQFperf  = NAN;
+ }
   return (out);
 }
@@ -92,5 +93,5 @@
     out[i].detID      = in[i].detID;
     out[i].imageID    = in[i].imageID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].crNsigma   = in[i].crNsigma;
@@ -130,5 +131,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].Nmeasure      = in[i].Nmeasure;     
     out[i].Nmissing      = in[i].Nmissing;     
@@ -153,4 +153,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -176,5 +181,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].Nmeasure      = in[i].Nmeasure;     
     out[i].Nmissing      = in[i].Nmissing;     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c	(revision 34382)
@@ -33,5 +33,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = 0;
-    out[i].psfQual    = 1.0; // we do not save a value, but some operations (relphot/average) filter on this value..
+    out[i].psfQF      = 1.0; // we do not save a value, but some operations (relphot/average) filter on this value..
     out[i].psfChisq   = NAN;
     out[i].psfNdof    = 0;
@@ -60,4 +60,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -105,5 +106,4 @@
     out[i].P        	 = NAN;
     out[i].dP       	 = NAN;
-    out[i].Xp       	 = NAN_S_SHORT;
     out[i].ChiSqAve    	 = NAN;
     out[i].ChiSqPM    	 = NAN;
@@ -126,4 +126,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c	(revision 34382)
@@ -33,5 +33,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -60,4 +60,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -94,5 +95,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -137,5 +138,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSqAve    	 = in[i].ChiSq;     
     out[i].ChiSqPM    	 = NAN;
@@ -158,4 +158,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -181,5 +186,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSq    	 = in[i].ChiSqAve;     
     out[i].Npos       	 = in[i].Npos;     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c	(revision 34382)
@@ -33,5 +33,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -61,4 +61,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -95,5 +96,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -138,5 +139,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM    	 = in[i].ChiSqPM;     
@@ -159,4 +159,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -182,5 +187,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM     	 = in[i].ChiSqPM;     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c	(revision 34382)
@@ -33,5 +33,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -61,4 +61,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -95,5 +96,5 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -138,5 +139,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM    	 = in[i].ChiSqPM;     
@@ -157,4 +157,9 @@
     out[i].catID 	 = in[i].catID;
     out[i].extID 	 = in[i].extID;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -180,5 +185,4 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM     	 = in[i].ChiSqPM;     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V4.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V4.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_PS1_V4.c	(revision 34382)
@@ -39,5 +39,6 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
+    out[i].psfQFperf  = in[i].psfQFperf;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -99,5 +100,6 @@
     out[i].catID      = in[i].catID;
     out[i].extID      = in[i].extID;
-    out[i].psfQual    = in[i].psfQual;
+    out[i].psfQF      = in[i].psfQF;
+    out[i].psfQFperf  = in[i].psfQFperf;
     out[i].psfChisq   = in[i].psfChisq;
     out[i].psfNdof    = in[i].psfNdof;
@@ -142,5 +144,7 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
+    out[i].psfQF         = in[i].psfQF;
+    out[i].psfQFperf     = in[i].psfQFperf;
+    out[i].stargal     	 = in[i].stargal;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM    	 = in[i].ChiSqPM;     
@@ -184,5 +188,7 @@
     out[i].P        	 = in[i].P;
     out[i].dP       	 = in[i].dP;
-    out[i].Xp       	 = in[i].Xp;     
+    out[i].psfQF         = in[i].psfQF;
+    out[i].psfQFperf     = in[i].psfQFperf;
+    out[i].stargal     	 = in[i].stargal;     
     out[i].ChiSqAve    	 = in[i].ChiSqAve;     
     out[i].ChiSqPM     	 = in[i].ChiSqPM;     
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_elixir.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_elixir.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_elixir.c	(revision 34382)
@@ -35,5 +35,5 @@
     out[i].Sky       = 0;
     out[i].dSky      = 0;
-    out[i].psfQual   = 0;
+    out[i].psfQF     = 0;
     out[i].psfChisq  = 0;
     out[i].crNsigma  = 0;
@@ -72,4 +72,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -127,5 +128,4 @@
     out[i].R       	 = in[i].R;      
     out[i].D       	 = in[i].D;      
-    out[i].Xp      	 = in[i].Xp;     
 
     // changed for PANSTARRS_DEV_0 (moved from Average to Measure)
@@ -170,4 +170,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -185,5 +190,4 @@
     out[i].R       = in[i].R;      
     out[i].D       = in[i].D;      
-    out[i].Xp      = in[i].Xp;     
 
     // changed for PANSTARRS_DEV_0 (moved from Average to Measure)
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_loneos.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_loneos.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_loneos.c	(revision 34382)
@@ -39,5 +39,5 @@
     out[i].Sky       = 0;
     out[i].dSky      = 0;
-    out[i].psfQual   = 0;
+    out[i].psfQF     = 0;
     out[i].psfChisq  = 0;
     out[i].crNsigma  = 0;
@@ -74,4 +74,5 @@
     out[i].FluxKron   = NAN;
     out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -118,5 +119,4 @@
     out[i].R       	 = in[i].R;      
     out[i].D       	 = in[i].D;      
-    out[i].Xp      	 = in[i].Xp;     
 
     // added for ELIXIR
@@ -162,4 +162,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -177,5 +182,4 @@
     out[i].R       = in[i].R;      
     out[i].D       = in[i].D;      
-    out[i].Xp      = in[i].Xp;     
 
     // changed for PANSTARRS_DEV_0 (moved from Average to Measure)
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c	(revision 34382)
@@ -36,5 +36,5 @@
 
     // changed or added for PS1_DEV_1 (2008.02.26)
-    out[i].psfQual    = (in[i].psfQual == NAN_S_SHORT) ? NAN : in[i].psfQual;
+    out[i].psfQF      = (in[i].psfQF == NAN_S_SHORT) ? NAN : in[i].psfQF;
     out[i].dbFlags    = in[i].flags;
     out[i].detID      = in[i].detID_lo;
@@ -65,8 +65,9 @@
     out[i].Mkron      = NAN;
     out[i].dMkron     = NAN;
-    out[i].FluxPSF     = NAN;
-    out[i].dFluxPSF    = NAN;
-    out[i].FluxKron    = NAN;
-    out[i].dFluxKron   = NAN;
+    out[i].FluxPSF    = NAN;
+    out[i].dFluxPSF   = NAN;
+    out[i].FluxKron   = NAN;
+    out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -105,5 +106,5 @@
     // changed or added for PS1_DEV_1 (2008.02.26)
     out[i].flags      = in[i].dbFlags;
-    out[i].psfQual    = isnan(in[i].psfQual) ? NAN_S_SHORT : in[i].psfQual;
+    out[i].psfQF      = isnan(in[i].psfQF) ? NAN_S_SHORT : in[i].psfQF;
     out[i].detID_hi   = 0;
     out[i].detID_lo   = in[i].detID;
@@ -133,5 +134,4 @@
     out[i].R        	 = in[i].R;      
     out[i].D        	 = in[i].D;      
-    out[i].Xp       	 = in[i].Xp;     
     out[i].dR       	 = in[i].dR;
     out[i].dD       	 = in[i].dD;
@@ -166,4 +166,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -182,5 +187,4 @@
     out[i].R        = in[i].R;      
     out[i].D        = in[i].D;      
-    out[i].Xp       = in[i].Xp;     
     out[i].dR       = in[i].dR;
     out[i].dD       = in[i].dD;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c	(revision 34382)
@@ -36,5 +36,5 @@
 
     // changed or added for PS1_DEV_1 (2008.02.26)
-    out[i].psfQual    = (in[i].psfQual == NAN_S_SHORT) ? NAN : in[i].psfQual;
+    out[i].psfQF      = (in[i].psfQF == NAN_S_SHORT) ? NAN : in[i].psfQF;
     out[i].dbFlags    = in[i].flags;
     out[i].detID      = in[i].detID_lo;
@@ -65,8 +65,9 @@
     out[i].Mkron      = NAN;
     out[i].dMkron     = NAN;
-    out[i].FluxPSF     = NAN;
-    out[i].dFluxPSF    = NAN;
-    out[i].FluxKron    = NAN;
-    out[i].dFluxKron   = NAN;
+    out[i].FluxPSF    = NAN;
+    out[i].dFluxPSF   = NAN;
+    out[i].FluxKron   = NAN;
+    out[i].dFluxKron  = NAN;
+    out[i].psfQFperf  = NAN;
   }
   return (out);
@@ -105,5 +106,5 @@
     // changed or added for PS1_DEV_1 (2008.02.26)
     out[i].flags      = in[i].dbFlags;
-    out[i].psfQual    = isnan(in[i].psfQual) ? NAN_S_SHORT : in[i].psfQual;
+    out[i].psfQF      = isnan(in[i].psfQF) ? NAN_S_SHORT : in[i].psfQF;
     out[i].detID_hi   = 0;
     out[i].detID_lo   = in[i].detID;
@@ -133,5 +134,4 @@
     out[i].R        	 = in[i].R;      
     out[i].D        	 = in[i].D;      
-    out[i].Xp       	 = in[i].Xp;     
     out[i].dR       	 = in[i].dR;
     out[i].dD       	 = in[i].dD;
@@ -166,4 +166,9 @@
     out[i].photFlagsUpper = 0;
     out[i].photFlagsLower = 0;
+
+    // added for PS1_V4 (Xp dropped in V4 onward, was not really used anyway)
+    out[i].psfQF         = NAN;
+    out[i].psfQFperf     = NAN;
+    out[i].stargal     	 = NAN;
   }
   return (out);
@@ -182,5 +187,4 @@
     out[i].R        = in[i].R;      
     out[i].D        = in[i].D;      
-    out[i].Xp       = in[i].Xp;     
     out[i].dR       = in[i].dR;
     out[i].dD       = in[i].dD;
Index: /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avextract.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avextract.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avextract.c	(revision 34382)
@@ -325,5 +325,4 @@
     gprint (GP_ERR, "  <photcode>:nphot : number of measurements used for average magnitude in this photcode\n");
 
-    // gprint (GP_ERR, "  Xp : NOT VALID\n");
     // gprint (GP_ERR, "  type : dophot type (unused)\n");
     // gprint (GP_ERR, "  typefrac : dophot type fraction (unused)\n");
Index: /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avmatch.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avmatch.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/avmatch.c	(revision 34382)
@@ -351,5 +351,4 @@
     gprint (GP_ERR, "  <photcode>:nphot : number of measurements used for average magnitude in this photcode\n");
 
-    // gprint (GP_ERR, "  Xp : NOT VALID\n");
     // gprint (GP_ERR, "  type : dophot type (unused)\n");
     // gprint (GP_ERR, "  typefrac : dophot type fraction (unused)\n");
Index: /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/gstar.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/gstar.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/gstar.c	(revision 34382)
@@ -190,5 +190,5 @@
 	gprint (GP_LOG, "%5.2f ",   3600.0*sqrt(r));
 	gprint (GP_LOG, "%3d   ",  catalog.average[k].Nmeasure);
-	gprint (GP_LOG, "%4.1f ",  0.01*catalog.average[k].Xp);
+	gprint (GP_LOG, "%4.1f ",  catalog.average[k].ChiSqAve);
 	gprint (GP_LOG, "%5x ",    catalog.average[k].flags);
 	gprint (GP_LOG, "%x ",     catalog.average[k].objID);
@@ -205,5 +205,4 @@
 	    gprint (GP_LOG, "%f   ",     catalog.average[k].dP);
 
-	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqAve);
 	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqPM);
 	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqPar);
@@ -292,5 +291,5 @@
 		gprint (GP_LOG, "0x%08x ", catalog.measure[m].detID);
 		gprint (GP_LOG, "0x%08x ", catalog.measure[m].imageID);
-		gprint (GP_LOG, "%.3f ", catalog.measure[m].psfQual);
+		gprint (GP_LOG, "%.3f ", catalog.measure[m].psfQF);
 		gprint (GP_LOG, "%.1f ", catalog.measure[m].psfChisq);
 		gprint (GP_LOG, "%.1f ", catalog.measure[m].crNsigma);
Index: /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/photometry.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/photometry.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/opihi/dvo/photometry.c	(revision 34382)
@@ -226,5 +226,4 @@
   if (!strcasecmp (parname, "Nmeas")) param = AVE_NMEAS;
   if (!strcasecmp (parname, "Nmiss")) param = AVE_NMISS;
-  if (!strcasecmp (parname, "Xp"))    param = AVE_Xp;
   if (!strcasecmp (parname, "Xm"))    param = AVE_Xm;
   if (!strcasecmp (parname, "flag"))  param = AVE_OBJ_FLAGS;
@@ -294,5 +293,5 @@
 void GetAverageParamHelp () {
   gprint (GP_ERR, "value may be one of the following:\n");
-  gprint (GP_ERR, " ra dec dmag Nmeas Nmiss Xm Xp Nphot Ncode flag type typefrac\n\n");
+  gprint (GP_ERR, " ra dec dmag Nmeas Nmiss Xm Nphot Ncode flag type typefrac\n\n");
   gprint (GP_ERR, "value may also be a valid photcode\n");
   gprint (GP_ERR, "photcodes or 'mag' may have optional magnitude mode: mag,[Mave, Mref]\n");
@@ -637,7 +636,4 @@
     case AVE_NMISS:
       value = average[0].Nmissing;
-      break;
-    case AVE_Xp:
-      value = 0.01*average[0].Xp;
       break;
     case AVE_OBJ_FLAGS:
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/BrightCatalog.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/BrightCatalog.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/BrightCatalog.c	(revision 34382)
@@ -154,5 +154,5 @@
     GET_COLUMN(Tmean,          "MEAN_EPOCH",  int);
     GET_COLUMN(Trange,         "TIME_RANGE",  int);
-    GET_COLUMN(Xp,             "SIGMA_POS",   float);
+    GET_COLUMN(stargal,        "STARGAL_SEP", float);
     GET_COLUMN(Npos,           "NUMBER_POS",  short);
     GET_COLUMN(Nmeasure,       "NMEASURE",    short);
@@ -189,5 +189,5 @@
       average[i].Tmean           = Tmean[i]           ;
       average[i].Trange          = Trange[i]          ;
-      average[i].Xp              = Xp[i]              ;
+      average[i].stargal         = stargal[i]         ;
       average[i].Npos            = Npos[i]            ;
       average[i].Nmeasure        = Nmeasure[i]        ;
@@ -221,5 +221,5 @@
     free (Tmean);
     free (Trange);
-    free (Xp);
+    free (stargal);
     free (Npos);
     free (Nmeasure);
@@ -487,5 +487,5 @@
     int      *Tmean         ; ALLOCATE (Tmean         , int     , catalog->Naverage);
     int      *Trange        ; ALLOCATE (Trange        , int     , catalog->Naverage);
-    float    *Xp            ; ALLOCATE (Xp            , float   , catalog->Naverage);
+    float    *stargal       ; ALLOCATE (stargal       , float   , catalog->Naverage);
     short    *Npos          ; ALLOCATE (Npos          , short   , catalog->Naverage);
     short    *Nmeasure      ; ALLOCATE (Nmeasure      , short   , catalog->Naverage);
@@ -520,5 +520,5 @@
       Tmean[i]           = average[i].Tmean           ;
       Trange[i]          = average[i].Trange          ;
-      Xp[i]              = average[i].Xp              ;
+      stargal[i]         = average[i].stargal         ;
       Npos[i]            = average[i].Npos            ;
       Nmeasure[i]        = average[i].Nmeasure        ;
@@ -552,5 +552,5 @@
     gfits_set_bintable_column (&theader, &ftable, "MEAN_EPOCH",  Tmean,           catalog->Naverage);
     gfits_set_bintable_column (&theader, &ftable, "TIME_RANGE",  Trange,          catalog->Naverage);
-    gfits_set_bintable_column (&theader, &ftable, "SIGMA_POS",   Xp,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "STARGAL_SEP", stargal,         catalog->Naverage);
     gfits_set_bintable_column (&theader, &ftable, "NUMBER_POS",  Npos,            catalog->Naverage);
     gfits_set_bintable_column (&theader, &ftable, "NMEASURE",    Nmeasure,        catalog->Naverage);
@@ -582,5 +582,5 @@
     free (Tmean);
     free (Trange);
-    free (Xp);
+    free (stargal);
     free (Npos);
     free (Nmeasure);
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjectOffsets.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 34382)
@@ -95,5 +95,5 @@
     // RESET (-reset)
     // TimeSelect -time
-    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // (note that psfQF is applied rigidly at 0.85, as is the galaxy test)
     // ImagSelect, ImagMin, ImagMax
     // MaxDensityUse, MaxDensityValue
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjects.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjects.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/UpdateObjects.c	(revision 34382)
@@ -352,10 +352,7 @@
       catalog[i].average[j].dP  = fit.dp; // parallax error in arcsec
 
-      // Xp is supposed to be the position scatter, not the chisq : fix this:
-      // catalog[i].average[j].Xp  = (fit.Nfit > 1) ? 100.0*log10(fit.chisq) : NAN_S_SHORT;
       catalog[i].average[j].ChiSqAve  = fitAve.chisq;
       catalog[i].average[j].ChiSqPM   = fitPM.chisq;
       catalog[i].average[j].ChiSqPar  = fitPAR.chisq;
-      catalog[i].average[j].Xp        = 0.0;
       catalog[i].average[j].Tmean = (Tmean * 86400 * 365.26) + T2000;
       catalog[i].average[j].Trange = (Trange * 86400 * 365.26);
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/load_catalogs.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/load_catalogs.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/load_catalogs.c	(revision 34382)
@@ -137,5 +137,5 @@
     // RESET (-reset)
     // TimeSelect -time
-    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // (note that psfQF is applied rigidly at 0.85, as is the galaxy test)
     // ImagSelect, ImagMin, ImagMax
     // MaxDensityUse, MaxDensityValue
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/relastro_objects.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/relastro_objects.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relastro/src/relastro_objects.c	(revision 34382)
@@ -123,5 +123,5 @@
     // RESET (-reset)
     // TimeSelect -time
-    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // (note that psfQF is applied rigidly at 0.85, as is the galaxy test)
     // ImagSelect, ImagMin, ImagMax
     // MaxDensityUse, MaxDensityValue
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/bcatalog.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/bcatalog.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/bcatalog.c	(revision 34382)
@@ -117,5 +117,5 @@
 
       // skip garbage measurements
-      if (catalog[0].measure[offset].psfQual < 0.85) { Npsfqf ++; continue; }
+      if (catalog[0].measure[offset].psfQF < 0.85) { Npsfqf ++; continue; }
       if (isnan(catalog[0].measure[offset].M)) { Nnan ++; continue; }
 
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/load_catalogs.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/load_catalogs.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/load_catalogs.c	(revision 34382)
@@ -136,5 +136,5 @@
     // TimeSelect -time
     // DophotSelect
-    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // (note that psfQF is applied rigidly at 0.85, as is the galaxy test)
     // MAG_LIM
     // SIGMA_LIM
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/relphot_objects.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/relphot_objects.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/relphot_objects.c	(revision 34382)
@@ -143,5 +143,5 @@
     // TimeSelect -time
     // DophotSelect
-    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // (note that psfQF is applied rigidly at 0.85, as is the galaxy test)
     // MAG_LIM
     // SIGMA_LIM
Index: /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/setMrelFinal.c
===================================================================
--- /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/setMrelFinal.c	(revision 34381)
+++ /branches/eam_branches/ipp-20120805/Ohana/src/relphot/src/setMrelFinal.c	(revision 34382)
@@ -237,5 +237,5 @@
 	  if (catalog[0].measure[m].photFlags & code->photomBadMask) goto skip;
 	  if ((catalog[0].measure[m].photcode > 10000) && (catalog[0].measure[m].photcode < 10500)) {
-	    if (catalog[0].measure[m].psfQual < 0.85) goto skip;
+	    if (catalog[0].measure[m].psfQF < 0.85) goto skip;
 	  }
 	}
