Index: /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps.c
===================================================================
--- /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps.c	(revision 37114)
+++ /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps.c	(revision 37115)
@@ -1,3 +1,5 @@
 # include "dvopsps.h"
+
+// for testing, turn off USE_MYSQL: operations will go to stdout instead of mysql
 # define USE_MYSQL 1
 
Index: /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps_catalog.c
===================================================================
--- /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps_catalog.c	(revision 37114)
+++ /branches/eam_branches/ipp-20140717/Ohana/src/dvopsps/src/insert_objects_dvopsps_catalog.c	(revision 37115)
@@ -88,37 +88,45 @@
   bzero (buffer.buffer, buffer.Nalloc);
 
+  // Only send the necessary fields (eg, do not sent parallax and pm)
   PrintIOBuffer (&buffer, "CREATE TABLE %s_cpt ("
-		 "RA DOUBLE,  "          
-		 "DEC_ DOUBLE,  "         
-		 "RA_ERR FLOAT,  "      
-		 "DEC_ERR FLOAT,  "     
-		 "U_RA FLOAT,  "        
-		 "U_DEC FLOAT,  "       
-		 "V_RA_ERR FLOAT,  "    
-		 "V_DEC_ERR FLOAT,  "   
-		 "PAR FLOAT,  "         
-		 "PAR_ERR FLOAT,  "     
-		 "CHISQ_POS FLOAT,  "   
-		 "CHISQ_PM FLOAT,  "    
-		 "CHISQ_PAP FLOAT,  "   
-		 "MEAN_EPOCH INT,  "  
-		 "TIME_RANGE INT,  "  
-		 "PSF_QF FLOAT, "      
-		 "PSF_QF_PERF FLOAT,  " 
-		 "STARGAL_SEP FLOAT,  " 
-		 "NUMBER_POS SMALLINT,  "  
-		 "NMEASURE SMALLINT,  "    
-		 "NMISSING SMALLINT,  "    
-		 "NEXTEND SMALLINT,  "     
-		 "OFF_MEASURE INT,  " 
-		 "OFF_MISSING INT,  " 
-		 "OFF_EXTEND INT,  "  
-		 "FLAGS INT,  "       
-		 "PHOTFLAGS_U INT,  " 
-		 "PHOTFLAGS_L INT,  " 
-		 "OBJ_ID INT,  "      
-		 "CAT_ID INT,  "      
-		 "EXT_ID BIGINT"
+		 "EXT_ID      BIGINT"
+		 "OBJ_ID      INT,  "      
+		 "CAT_ID      INT,  "      
+		 "DVO_REGION  INT"
+		 "FLAGS       INT,  "       
+		 "RA_STK      DOUBLE,  "          
+		 "DEC_STK     DOUBLE,  "         
+		 "RA_STK_ERR  FLOAT,  "      
+		 "DEC_STK_ERR FLOAT,  "     
+		 "RA_MEAN     DOUBLE,  "          
+		 "DEC_MEAN    DOUBLE,  "         
+		 "RA_ERR      FLOAT,  "      
+		 "DEC_ERR     FLOAT,  "     
+		 "CHISQ_POS   FLOAT,  "   
+		 "CHISQ_PM    FLOAT,  "    
+		 "CHISQ_PAP   FLOAT,  "   
 		 ")\n", basename);
+
+// skipping these cpt fields:
+// 		 "U_RA        FLOAT,  "        
+// 		 "U_DEC       FLOAT,  "       
+// 		 "V_RA_ERR    FLOAT,  "    
+// 		 "V_DEC_ERR   FLOAT,  "   
+// 		 "PAR         FLOAT,  "         
+// 		 "PAR_ERR     FLOAT,  "     
+//		 "OFF_MEASURE INT,  " 
+//		 "OFF_MISSING INT,  " 
+//		 "OFF_EXTEND  INT,  "  
+//		 "PSF_QF      FLOAT, "      
+//		 "PSF_QF_PERF FLOAT,  " 
+//		 "STARGAL_SEP FLOAT,  " 
+//		 "NUMBER_POS  SMALLINT,  "  
+//		 "NMEASURE    SMALLINT,  "    
+//		 "NMISSING    SMALLINT,  "    
+//		 "NEXTEND     SMALLINT,  "     
+//		 "PHOTFLAGS_U INT,  " 
+//		 "PHOTFLAGS_L INT,  " 
+
+
 
   if (DEBUG) fprintf (stderr, "%s\n", buffer.buffer);
@@ -145,28 +153,23 @@
 
   PrintIOBuffer (&buffer, "CREATE TABLE %s_cps ("
-		 "MAG FLOAT,  "             
-		 "MAG_AP FLOAT,  "             
-		 "MAG_KRON FLOAT,  "        
-		 "MAG_KRON_ERR FLOAT,  "    
-		 "MAG_ERR FLOAT,  "         
-		 "MAG_CHI FLOAT,  "         
-		 "STACK_PSF_MAG FLOAT,  "        
-		 "STACK_PSF_MAG_ERR FLOAT,  "    
-		 "STACK_KRON_MAG FLOAT,  "       
-		 "STACK_KRON_MAG_ERR FLOAT,  "   
+		 "MAG       FLOAT,  "             
+		 "MAG_ERR   FLOAT,  "         
+		 "MAG_STDEV FLOAT,  "         
+		 "MAG_MIN   FLOAT,  "         
+		 "MAG_MAX   FLOAT,  "         
+		 "NUSED     SMALLINT,  "           
+
+		 "MAG_KRON       FLOAT,  "        
+		 "MAG_KRON_ERR   FLOAT,  "    
+		 "MAG_KRON_STDEV FLOAT,  "    
+		 "NUSED_KRON     SMALLINT,  "    
+
+		 "MAG_AP         FLOAT,  "             
+		 "MAG_AP_ERR     FLOAT,  "             
+		 "MAG_AP_STDEV   FLOAT,  "             
+		 "NUSED_AP       SMALLINT,  "    
+
 		 "FLAGS INT,  "           
-		 "NCODE SMALLINT,  "           
-		 "NUSED SMALLINT,  "           
-		 "MAG_20 SMALLINT,  "          
-		 "MAG_80 SMALLINT,  "          
-		 "UBERCAL_DIST SMALLINT,  "    
-		 "MAG_STDEV SMALLINT,  "       
-		 "STACK_DETECT_ID BIGINT" 
 		 ")\n", basename);
-
- // 		 "FLUX_PSF FLOAT,  "        
- //  		 "FLUX_PSF_ERR FLOAT,  "    
- //  		 "FLUX_KRON FLOAT,  "       
- //  		 "FLUX_KRON_ERR FLOAT,  "   
 
   if (DEBUG) fprintf (stderr, "%s\n", buffer.buffer);
@@ -191,35 +194,20 @@
 
   PrintIOBuffer (ave_buffer, "INSERT INTO %s_cpt ("
-		 "RA, "          
-		 "DEC_, "         
+		 "EXT_ID"
+		 "OBJ_ID, "      
+		 "CAT_ID, "      
+		 "DVO_REGION, "
+		 "FLAGS, "       
+		 "RA_STK, "          
+		 "DEC_STK, "         
+		 "RA_STK_ERR, "      
+		 "DEC_STK_ERR, "     
+		 "RA_MEAN, "          
+		 "DEC_MEAN, "         
 		 "RA_ERR, "      
 		 "DEC_ERR, "     
-		 "U_RA, "        
-		 "U_DEC, "       
-		 "V_RA_ERR, "    
-		 "V_DEC_ERR, "   
-		 "PAR, "         
-		 "PAR_ERR, "     
 		 "CHISQ_POS, "   
 		 "CHISQ_PM, "    
 		 "CHISQ_PAP, "   
-		 "MEAN_EPOCH, "  
-		 "TIME_RANGE, "  
-		 "PSF_QF, "      
-		 "PSF_QF_PERF, " 
-		 "STARGAL_SEP, " 
-		 "NUMBER_POS, "  
-		 "NMEASURE, "    
-		 "NMISSING, "    
-		 "NEXTEND, "     
-		 "OFF_MEASURE, " 
-		 "OFF_MISSING, " 
-		 "OFF_EXTEND, "  
-		 "FLAGS, "       
-		 "PHOTFLAGS_U, " 
-		 "PHOTFLAGS_L, " 
-		 "OBJ_ID, "      
-		 "CAT_ID, "      
-		 "EXT_ID"
 		 ") VALUES \n", basename);
 
@@ -230,21 +218,21 @@
   PrintIOBuffer (sec_buffer, "INSERT INTO %s_cps ("
 		 "MAG, "             
-		 "MAG_AP, "             
+		 "MAG_ERR, "         
+		 "MAG_STDEV, "       
+		 "MAG_MIN, "          
+		 "MAG_MAX, "          
+		 "NUSED, "           
+
 		 "MAG_KRON, "        
 		 "MAG_KRON_ERR, "    
-		 "MAG_ERR, "         
-		 "MAG_CHI, "         
-		 "STACK_PSF_MAG, "        
-		 "STACK_PSF_MAG_ERR, "    
-		 "STACK_KRON_MAG, "       
-		 "STACK_KRON_MAG_ERR, "   
+		 "MAG_KRON_STDEV, "    
+		 "NUSED_KRON, "           
+
+		 "MAG_AP, "             
+		 "MAG_AP_ERR, "             
+		 "MAG_AP_STDEV, "             
+		 "NUSED_AP, "           
+
 		 "FLAGS, "           
-		 "NCODE, "           
-		 "NUSED, "           
-		 "MAG_20, "          
-		 "MAG_80, "          
-		 "UBERCAL_DIST, "    
-		 "MAG_STDEV, "       
-		 "STACK_DETECT_ID " 
 		 ") VALUES \n", basename);
   return TRUE;
@@ -261,96 +249,80 @@
 // XXX this bit could/should be autocoded...
   PrintIOBuffer (ave_buffer, " (");
+  PrintIOBuffer (ave_buffer, "%lu",   average->extID);          
+  PrintIOBuffer (ave_buffer, "%u, ",  average->objID);          
+  PrintIOBuffer (ave_buffer, "%u, ",  average->catID);          
+
+  int dvoRegion = 1;
+  PrintIOBuffer (ave_buffer, "%u, ",  dvoRegion);          
+  PrintIOBuffer (ave_buffer, "%u, ",  average->flags);          
+
+  PRINT_FLOAT(ave_buffer, average->Rstk,     "%.8f, ");  // 0.036 mas precision 
+  PRINT_FLOAT(ave_buffer, average->Dstk,     "%.8f, ");  // 0.036 mas precision 
+  PRINT_FLOAT(ave_buffer, average->dRstk,    "%.5f, ");  // 0.010 mas precision
+  PRINT_FLOAT(ave_buffer, average->dDstk,    "%.5f, ");  // 0.010 mas precision
+
   PRINT_FLOAT(ave_buffer, average->R,  	     "%.8f, ");  // 0.036 mas precision 
   PRINT_FLOAT(ave_buffer, average->D,  	     "%.8f, ");  // 0.036 mas precision 
   PRINT_FLOAT(ave_buffer, average->dR, 	     "%.5f, ");  // 0.010 mas precision
   PRINT_FLOAT(ave_buffer, average->dD, 	     "%.5f, ");  // 0.010 mas precision
-  PRINT_FLOAT(ave_buffer, average->uR, 	     "%.5f, ");  // 0.010 mas/yr precision
-  PRINT_FLOAT(ave_buffer, average->uD, 	     "%.5f, ");
-  PRINT_FLOAT(ave_buffer, average->duR,      "%.5f, ");
-  PRINT_FLOAT(ave_buffer, average->duD,      "%.5f, ");
-  PRINT_FLOAT(ave_buffer, average->P,        "%.5f, ");
-  PRINT_FLOAT(ave_buffer, average->dP,       "%.5f, ");
+
   PRINT_FLOAT(ave_buffer, average->ChiSqAve, "%.4f, ");
   PRINT_FLOAT(ave_buffer, average->ChiSqPM,  "%.4f, ");
   PRINT_FLOAT(ave_buffer, average->ChiSqPar, "%.4f, ");
-  PrintIOBuffer (ave_buffer, "%d, ",  average->Tmean);          
-  PrintIOBuffer (ave_buffer, "%d, ",  average->Trange);         
-  PRINT_FLOAT(ave_buffer, average->psfQF,     "%.3f, ");
-  PRINT_FLOAT(ave_buffer, average->psfQFperf, "%.3f, ");
-  PRINT_FLOAT(ave_buffer, average->stargal,   "%.3f, ");
-  PrintIOBuffer (ave_buffer, "%hu, ", average->Npos);           
-  PrintIOBuffer (ave_buffer, "%hu, ", average->Nmeasure);       
-  PrintIOBuffer (ave_buffer, "%hu, ", average->Nmissing);       
-  PrintIOBuffer (ave_buffer, "%hu, ", average->Nextend);        
-  PrintIOBuffer (ave_buffer, "%d, ",  average->measureOffset);  
-  PrintIOBuffer (ave_buffer, "%d, ",  average->missingOffset);  
-  PrintIOBuffer (ave_buffer, "%d, ",  0); // was : average->extendOffset);   
-  PrintIOBuffer (ave_buffer, "%u, ",  average->flags);          
-  PrintIOBuffer (ave_buffer, "%u, ",  average->photFlagsUpper); 
-  PrintIOBuffer (ave_buffer, "%u, ",  average->photFlagsLower); 
-  PrintIOBuffer (ave_buffer, "%u, ",  average->objID);          
-  PrintIOBuffer (ave_buffer, "%u, ",  average->catID);          
-  PrintIOBuffer (ave_buffer, "%lu",   average->extID);          
+
   PrintIOBuffer (ave_buffer, "),\n");
 
+  // XXX what rules for keeping or NAN-ing various mags?
   for (i = 0; i < Nsecfilt; i++) {
     float meanPSFMag    = -999.0;
     float meanPSFMagErr = -999.0;
+    float meanPSFMagStd = -999.0;
+    float meanPSFMagMin = -999.0;
+    float meanPSFMagMax = -999.0;
     if (isfinite(secfilt->dM) && isfinite(secfilt->M)) {
-      meanPSFMag = secfilt->M;
+      meanPSFMag    = secfilt->M;
       meanPSFMagErr = secfilt->dM;
+      meanPSFMagStd = secfilt->Mstdev;
+      meanPSFMagMin = secfilt->Mmin;
+      meanPSFMagMax = secfilt->Mmax;
     }
 
     float meanKronMag    = -999.0;
     float meanKronMagErr = -999.0;
+    float meanKronMagStd = -999.0;
     if (isfinite(secfilt->dMkron) && isfinite(secfilt->Mkron) && (secfilt->dMkron < 0.333)) {
-      meanKronMag = secfilt->Mkron;
+      meanKronMag    = secfilt->Mkron;
       meanKronMagErr = secfilt->dMkron;
+      meanKronMagStd = secfilt->sMkron;
     }
 
     float meanApMag    = -999.0;
-    if (isfinite(secfilt->Map)) {
-      meanApMag = secfilt->Map;
-    }
-
-    float stackPSFMag    = -999.0;
-    float stackPSFMagErr = -999.0;
-    if (isfinite(secfilt->dFpsfStk) && isfinite(secfilt->FpsfStk) && (secfilt->dFpsfStk > 0.0)) {
-      float SN = secfilt->FpsfStk / secfilt->dFpsfStk;
-      if (SN > 3.0) {
-	stackPSFMag = -2.5 * log10(secfilt->FpsfStk) + 8.9;
-	stackPSFMagErr = secfilt->dFpsfStk / secfilt->FpsfStk;
-      }
-    }
-
-    float stackKronMag    = -999.0;
-    float stackKronMagErr = -999.0;
-    if (isfinite(secfilt->dFkronStk) && isfinite(secfilt->FkronStk) && (secfilt->dFkronStk > 0.0)) {
-      float SN = secfilt->FkronStk / secfilt->dFkronStk;
-      if (SN > 3.0) {
-	stackKronMag = -2.5 * log10(secfilt->FkronStk) + 8.9;
-	stackKronMagErr = secfilt->dFkronStk / secfilt->FkronStk;
-      }
+    float meanApMagErr = -999.0;
+    float meanApMagStd = -999.0;
+    if (isfinite(secfilt->dMap) && isfinite(secfilt->Map)) {
+      meanApMag    = secfilt->Map;
+      meanApMagErr = secfilt->dMap;
+      meanApMagStd = secfilt->sMap;
     }
 
     PrintIOBuffer (sec_buffer, " (");
     PRINT_FLOAT(sec_buffer, meanPSFMag,      "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, meanApMag,       "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanPSFMagErr,   "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanPSFMagStd,   "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanPSFMagMin,   "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanPSFMagMax,   "%.6f, "); // umag precision
+    PrintIOBuffer (sec_buffer, "%hd,  ", secfilt->Nused);        
+
     PRINT_FLOAT(sec_buffer, meanKronMag,     "%.6f, "); // umag precision
     PRINT_FLOAT(sec_buffer, meanKronMagErr,  "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, meanPSFMagErr,   "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, secfilt->Mchisq, "%.6f, ");
-    PRINT_FLOAT(sec_buffer, stackPSFMag,     "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, stackPSFMagErr,  "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, stackKronMag,    "%.6f, "); // umag precision
-    PRINT_FLOAT(sec_buffer, stackKronMagErr, "%.6f, "); // 0.36 umag precision
+    PRINT_FLOAT(sec_buffer, meanKronMagStd,  "%.6f, "); // umag precision
+    PrintIOBuffer (sec_buffer, "%hd,  ", secfilt->NusedKron);        
+
+    PRINT_FLOAT(sec_buffer, meanApMag,     "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanApMagErr,  "%.6f, "); // umag precision
+    PRINT_FLOAT(sec_buffer, meanApMagStd,  "%.6f, "); // umag precision
+    PrintIOBuffer (sec_buffer, "%hd,  ", secfilt->NusedAp);        
+
     PrintIOBuffer (sec_buffer, "%u,   ", secfilt->flags);       
-    PrintIOBuffer (sec_buffer, "%hd,  ", secfilt->Ncode);        
-    PrintIOBuffer (sec_buffer, "%hd,  ", secfilt->Nused);        
-    PrintIOBuffer (sec_buffer, "%.6f, ", secfilt->Mmin);         
-    PrintIOBuffer (sec_buffer, "%.6f, ", secfilt->Mmax);         
-    PrintIOBuffer (sec_buffer, "%hd, ", secfilt->ubercalDist);  
-    PrintIOBuffer (sec_buffer, "%.6f, ", secfilt->Mstdev);       
-    // XXX PrintIOBuffer (sec_buffer, "%lu  ", secfilt->stackDetectID);
     PrintIOBuffer (sec_buffer, "),\n");
     secfilt ++;
