Index: trunk/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- trunk/ippTools/share/pxadmin_create_tables.sql	(revision 19934)
+++ trunk/ippTools/share/pxadmin_create_tables.sql	(revision 19941)
@@ -284,4 +284,24 @@
     fwhm_major FLOAT,
     fwhm_minor FLOAT,
+    iq_m2 FLOAT,
+    iq_m2_err FLOAT,
+    iq_m2_lq FLOAT,
+    iq_m2_uq FLOAT,
+    iq_m2c FLOAT,
+    iq_m2c_err FLOAT,
+    iq_m2c_lq FLOAT,
+    iq_m2c_uq FLOAT,
+    iq_m2s FLOAT,
+    iq_m2s_err FLOAT,
+    iq_m2s_lq FLOAT,
+    iq_m2s_uq FLOAT,
+    iq_m3 FLOAT,
+    iq_m3_err FLOAT,
+    iq_m3_lq FLOAT,
+    iq_m3_uq FLOAT,
+    iq_m4 FLOAT,
+    iq_m4_err FLOAT,
+    iq_m4_lq FLOAT,
+    iq_m4_uq FLOAT,
     dtime_detrend FLOAT,
     dtime_photom FLOAT,
@@ -290,4 +310,6 @@
     hostname VARCHAR(64),
     n_stars INT,
+    n_psfstars INT,
+    n_iqstars INT,
     n_extended INT,
     n_cr INT,
@@ -352,7 +374,29 @@
     fwhm_major FLOAT,
     fwhm_minor FLOAT,
+    iq_m2 FLOAT,
+    iq_m2_err FLOAT,
+    iq_m2_lq FLOAT,
+    iq_m2_uq FLOAT,
+    iq_m2c FLOAT,
+    iq_m2c_err FLOAT,
+    iq_m2c_lq FLOAT,
+    iq_m2c_uq FLOAT,
+    iq_m2s FLOAT,
+    iq_m2s_err FLOAT,
+    iq_m2s_lq FLOAT,
+    iq_m2s_uq FLOAT,
+    iq_m3 FLOAT,
+    iq_m3_err FLOAT,
+    iq_m3_lq FLOAT,
+    iq_m3_uq FLOAT,
+    iq_m4 FLOAT,
+    iq_m4_err FLOAT,
+    iq_m4_lq FLOAT,
+    iq_m4_uq FLOAT,
     dtime_script FLOAT,
     hostname VARCHAR(64),
     n_stars INT,
+    n_psfstars INT,
+    n_iqstars INT,
     n_extended INT,
     n_cr INT,
Index: trunk/ippTools/src/camtool.c
===================================================================
--- trunk/ippTools/src/camtool.c	(revision 19934)
+++ trunk/ippTools/src/camtool.c	(revision 19941)
@@ -407,7 +407,35 @@
     PXOPT_LOOKUP_F32(fwhm_major, config->args, "-fwhm_major", false, false);
     PXOPT_LOOKUP_F32(fwhm_minor, config->args, "-fwhm_minor", false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2,     config->args,      "-iq_m2",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2_err, config->args,      "-iq_m2_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2_uq,  config->args,      "-iq_m2_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2_lq,  config->args,      "-iq_m2_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2c,     config->args,     "-iq_m2c",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_err, config->args,     "-iq_m2c_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_uq,  config->args,     "-iq_m2c_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_lq,  config->args,     "-iq_m2c_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2s,     config->args,     "-iq_m2s",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_err, config->args,     "-iq_m2s_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_uq,  config->args,     "-iq_m2s_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_lq,  config->args,     "-iq_m2s_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m3,     config->args,      "-iq_m3",     false, false);
+    PXOPT_LOOKUP_F32(iq_m3_err, config->args,      "-iq_m3_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m3_uq,  config->args,      "-iq_m3_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m3_lq,  config->args,      "-iq_m3_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m4,     config->args,      "-iq_m4",     false, false);
+    PXOPT_LOOKUP_F32(iq_m4_err, config->args,      "-iq_m4_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m4_uq,  config->args,      "-iq_m4_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m4_lq,  config->args,      "-iq_m4_lq",  false, false);
+
     PXOPT_LOOKUP_F32(dtime_script, config->args,   "-dtime_script", false, false);
     PXOPT_LOOKUP_STR(hostname, config->args,       "-hostname", false, false);
     PXOPT_LOOKUP_S32(n_stars, config->args,        "-n_stars", false, false);
+    PXOPT_LOOKUP_S32(n_psfstars, config->args,        "-n_psfstars", false, false);
+    PXOPT_LOOKUP_S32(n_iqstars, config->args,        "-n_iqstars", false, false);
     PXOPT_LOOKUP_S32(n_extended, config->args,     "-n_extended", false, false);
     PXOPT_LOOKUP_S32(n_cr, config->args,           "-n_cr", false, false);
@@ -461,30 +489,52 @@
     psFree(output);
     camProcessedExpRow *row = camProcessedExpRowAlloc(
-            pendingRow->cam_id,
-            uri,
-            bg,
-            bg_stdev,
-            bg_mean_stdev,
-            bias,
-            bias_stdev,
-            fringe_0,
-            fringe_1,
-            fringe_2,
-            sigma_ra,
-            sigma_dec,
-            ap_resid,
-            ap_resid_stdev,
-            zp_mean,
-            zp_stdev,
-            fwhm_major,
-            fwhm_minor,
-            dtime_script,
-            hostname,
-            n_stars,
-            n_extended,
-            n_cr,
-            n_astrom,
-            path_base,
-            code
+	pendingRow->cam_id,
+	uri,
+	bg,
+	bg_stdev,
+	bg_mean_stdev,
+	bias,
+	bias_stdev,
+	fringe_0,
+	fringe_1,
+	fringe_2,
+	sigma_ra,
+	sigma_dec,
+	ap_resid,
+	ap_resid_stdev,
+	zp_mean,
+	zp_stdev,
+	fwhm_major,
+	fwhm_minor,
+	iq_m2,
+	iq_m2_err,
+	iq_m2_lq,
+	iq_m2_uq,
+	iq_m2c,
+	iq_m2c_err,
+	iq_m2c_lq,
+	iq_m2c_uq,
+	iq_m2s,
+	iq_m2s_err,
+	iq_m2s_lq,
+	iq_m2s_uq,
+	iq_m3,
+	iq_m3_err,
+	iq_m3_lq,
+	iq_m3_uq,
+	iq_m4,
+	iq_m4_err,
+	iq_m4_lq,
+	iq_m4_uq,
+	dtime_script,
+	hostname,
+	n_stars,
+	n_psfstars,
+	n_iqstars,
+	n_extended,
+	n_cr,
+	n_astrom,
+	path_base,
+	code
         );
 
Index: trunk/ippTools/src/camtoolConfig.c
===================================================================
--- trunk/ippTools/src/camtoolConfig.c	(revision 19934)
+++ trunk/ippTools/src/camtoolConfig.c	(revision 19941)
@@ -114,7 +114,31 @@
     psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-fwhm_major", 0,            "define FWHM (major axis; arcsec)", NAN);
     psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-fwhm_minor", 0,            "define FWHM (minor axis; arcsec)", NAN);
+
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2",     0,  "define moment value m2 mean", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2_err", 0,  "define moment value m2 stdev", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2_lq",  0,  "define moment value m2 lower quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2_uq",  0,  "define moment value m2 upper quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2c",     0,  "define moment value m2c mean", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2c_err", 0,  "define moment value m2c stdev", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2c_lq",  0,  "define moment value m2c lower quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2c_uq",  0,  "define moment value m2c upper quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2s",     0,  "define moment value m2s mean", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2s_err", 0,  "define moment value m2s stdev", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2s_lq",  0,  "define moment value m2s lower quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m2s_uq",  0,  "define moment value m2s upper quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m3",     0,  "define moment value m3 mean", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m3_err", 0,  "define moment value m3 stdev", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m3_lq",  0,  "define moment value m3 lower quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m3_uq",  0,  "define moment value m3 upper quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m4",     0,  "define moment value m4 mean", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m4_err", 0,  "define moment value m4 stdev", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m4_lq",  0,  "define moment value m4 lower quartile", NAN);
+    psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-iq_m4_uq",  0,  "define moment value m4 upper quartile", NAN);
+
     psMetadataAddF32(addprocessedexpArgs, PS_LIST_TAIL, "-dtime_script", 0, "define elapsed time in script (seconds)", NAN);
     psMetadataAddStr(addprocessedexpArgs, PS_LIST_TAIL, "-hostname", 0,            "define hostname", NULL);
     psMetadataAddS32(addprocessedexpArgs, PS_LIST_TAIL, "-n_stars", 0,            "define number of stars", 0);
+    psMetadataAddS32(addprocessedexpArgs, PS_LIST_TAIL, "-n_psfstars", 0,            "define number of PSF stars", 0);
+    psMetadataAddS32(addprocessedexpArgs, PS_LIST_TAIL, "-n_iqstars", 0,            "define number of IQ stars", 0);
     psMetadataAddS32(addprocessedexpArgs, PS_LIST_TAIL, "-n_extended", 0,            "define number of extended objects", 0);
     psMetadataAddS32(addprocessedexpArgs, PS_LIST_TAIL, "-n_cr", 0,            "define number of cosmic rays", 0);
Index: trunk/ippTools/src/chiptool.c
===================================================================
--- trunk/ippTools/src/chiptool.c	(revision 19934)
+++ trunk/ippTools/src/chiptool.c	(revision 19941)
@@ -362,4 +362,30 @@
     PXOPT_LOOKUP_F32(fwhm_major, config->args,     "-fwhm_major", false, false);
     PXOPT_LOOKUP_F32(fwhm_minor, config->args,     "-fwhm_minor", false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2,     config->args,      "-iq_m2",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2_err, config->args,      "-iq_m2_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2_uq,  config->args,      "-iq_m2_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2_lq,  config->args,      "-iq_m2_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2c,     config->args,     "-iq_m2c",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_err, config->args,     "-iq_m2c_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_uq,  config->args,     "-iq_m2c_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2c_lq,  config->args,     "-iq_m2c_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m2s,     config->args,     "-iq_m2s",     false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_err, config->args,     "-iq_m2s_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_uq,  config->args,     "-iq_m2s_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m2s_lq,  config->args,     "-iq_m2s_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m3,     config->args,      "-iq_m3",     false, false);
+    PXOPT_LOOKUP_F32(iq_m3_err, config->args,      "-iq_m3_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m3_uq,  config->args,      "-iq_m3_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m3_lq,  config->args,      "-iq_m3_lq",  false, false);
+
+    PXOPT_LOOKUP_F32(iq_m4,     config->args,      "-iq_m4",     false, false);
+    PXOPT_LOOKUP_F32(iq_m4_err, config->args,      "-iq_m4_err", false, false);
+    PXOPT_LOOKUP_F32(iq_m4_uq,  config->args,      "-iq_m4_uq",  false, false);
+    PXOPT_LOOKUP_F32(iq_m4_lq,  config->args,      "-iq_m4_lq",  false, false);
+
     PXOPT_LOOKUP_F32(dtime_detrend, config->args,  "-dtime_detrend", false, false);
     PXOPT_LOOKUP_F32(dtime_photom,  config->args,  "-dtime_photom",  false, false);
@@ -367,8 +393,10 @@
     PXOPT_LOOKUP_F32(dtime_script, config->args,   "-dtime_script", false, false);
     PXOPT_LOOKUP_STR(hostname, config->args,       "-hostname", false, false);
-    PXOPT_LOOKUP_F32(n_stars, config->args, "-n_stars", false, false);
-    PXOPT_LOOKUP_F32(n_extended, config->args, "-n_extended", false, false);
-    PXOPT_LOOKUP_F32(n_cr, config->args, "-n_cr", false, false);
-    PXOPT_LOOKUP_STR(path_base, config->args, "-path_base", false, false);
+    PXOPT_LOOKUP_F32(n_stars, config->args,    	   "-n_stars", false, false);
+    PXOPT_LOOKUP_F32(n_psfstars, config->args,	   "-n_psfstars", false, false);
+    PXOPT_LOOKUP_F32(n_iqstars, config->args, 	   "-n_iqstars", false, false);
+    PXOPT_LOOKUP_F32(n_extended, config->args, 	   "-n_extended", false, false);
+    PXOPT_LOOKUP_F32(n_cr, config->args,       	   "-n_cr", false, false);
+    PXOPT_LOOKUP_STR(path_base, config->args,  	   "-path_base", false, false);
 
     // default values
@@ -398,4 +426,29 @@
                                    fwhm_major,
                                    fwhm_minor,
+				   iq_m2,
+				   iq_m2_err,
+				   iq_m2_lq,
+				   iq_m2_uq,
+
+				   iq_m2c,
+				   iq_m2c_err,
+				   iq_m2c_lq,
+				   iq_m2c_uq,
+
+				   iq_m2s,
+				   iq_m2s_err,
+				   iq_m2s_lq,
+				   iq_m2s_uq,
+
+				   iq_m3,
+				   iq_m3_err,
+				   iq_m3_lq,
+				   iq_m3_uq,
+
+				   iq_m4,
+				   iq_m4_err,
+				   iq_m4_lq,
+				   iq_m4_uq,
+
                                    dtime_detrend,
                                    dtime_photom,
@@ -404,4 +457,6 @@
                                    hostname,
                                    n_stars,
+                                   n_psfstars,
+                                   n_iqstars,
                                    n_extended,
                                    n_cr,
Index: trunk/ippTools/src/chiptoolConfig.c
===================================================================
--- trunk/ippTools/src/chiptoolConfig.c	(revision 19934)
+++ trunk/ippTools/src/chiptoolConfig.c	(revision 19941)
@@ -98,4 +98,30 @@
     psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-fwhm_major",  0,            "define fwhm (major axis; arcsec)", NAN);
     psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-fwhm_minor",  0,            "define fwhm (minor axis; arcsec)", NAN);
+
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2",     0,  "define moment value m2 mean", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2_err", 0,  "define moment value m2 stdev", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2_lq",  0,  "define moment value m2 lower quartile", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2_uq",  0,  "define moment value m2 upper quartile", NAN);
+
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2c",     0,  "define moment value m2c mean", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2c_err", 0,  "define moment value m2c stdev", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2c_lq",  0,  "define moment value m2c lower quartile", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2c_uq",  0,  "define moment value m2c upper quartile", NAN);
+
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2s",     0,  "define moment value m2s mean", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2s_err", 0,  "define moment value m2s stdev", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2s_lq",  0,  "define moment value m2s lower quartile", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m2s_uq",  0,  "define moment value m2s upper quartile", NAN);
+
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m3",     0,  "define moment value m3 mean", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m3_err", 0,  "define moment value m3 stdev", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m3_lq",  0,  "define moment value m3 lower quartile", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m3_uq",  0,  "define moment value m3 upper quartile", NAN);
+
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m4",     0,  "define moment value m4 mean", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m4_err", 0,  "define moment value m4 stdev", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m4_lq",  0,  "define moment value m4 lower quartile", NAN);
+    psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-iq_m4_uq",  0,  "define moment value m4 upper quartile", NAN);
+
     psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-dtime_detrend",  0,            "define elapsed time for detrend (seconds)", NAN);
     psMetadataAddF32(addprocessedimfileArgs, PS_LIST_TAIL, "-dtime_photom",  0,            "define elapsed time for photometry (seconds)", NAN);
@@ -104,4 +130,6 @@
     psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-hostname",  0,            "define hostname", NULL);
     psMetadataAddS32(addprocessedimfileArgs, PS_LIST_TAIL, "-n_stars",  0,            "define number of stars in image", 0);
+    psMetadataAddS32(addprocessedimfileArgs, PS_LIST_TAIL, "-n_psfstars",  0,          "define number of stars used for psf", 0);
+    psMetadataAddS32(addprocessedimfileArgs, PS_LIST_TAIL, "-n_iqstars",  0,          "define number of stars used for IQ stats", 0);
     psMetadataAddS32(addprocessedimfileArgs, PS_LIST_TAIL, "-n_extended",  0,            "define number of extended objects in image", 0);
     psMetadataAddS32(addprocessedimfileArgs, PS_LIST_TAIL, "-n_cr",  0,            "define number of cosmic rays in image", 0);
