Index: /trunk/Ohana/src/relastro/src/UpdateMeasures.c
===================================================================
--- /trunk/Ohana/src/relastro/src/UpdateMeasures.c	(revision 39614)
+++ /trunk/Ohana/src/relastro/src/UpdateMeasures.c	(revision 39615)
@@ -14,4 +14,12 @@
   int NoffRAori = 0; 
   int NoffDECori = 0;
+
+  int NoffRAchip = 0; 
+  int NoffRAstack = 0; 
+  int NoffRAwarp = 0; 
+
+  int NoffDECchip = 0; 
+  int NoffDECstack = 0; 
+  int NoffDECwarp = 0; 
 
   for (i = 0; i < Ncatalog; i++) {
@@ -76,19 +84,29 @@
       if (dR > DPOS_MAX_ASEC) {
 	NoffRAori ++;
-	if (VERBOSE2 && catalog[i].measure) {
-	  fprintf (stderr, "measurement moves far from original location (R): %f %f : %f %f (%f)\n", oldR, oldD, R, D, dR);
+	if (isGPC1chip  (measureT->photcode)) NoffRAchip ++;
+	if (isGPC1stack (measureT->photcode)) NoffRAstack ++;
+	if (isGPC1warp  (measureT->photcode)) NoffRAwarp ++;
+	if (VERBOSE2 && catalog[i].measure && (NoffRAori < 100)) {
+	  fprintf (stderr, "measurement moves far from original location (R): %f %f : %f %f (%f) : %d\n", oldR, oldD, R, D, dR, measureT->photcode);
 	}
       }
       if (dD > DPOS_MAX_ASEC) {
 	NoffDECori ++;
-	if (VERBOSE2 && catalog[i].measure) {
-	  fprintf (stderr, "measurement moves far from original location (D): %f %f : %f %f (%f)\n", oldR, oldD, R, D, dD);
+	if (isGPC1chip  (measureT->photcode)) NoffDECchip ++;
+	if (isGPC1stack (measureT->photcode)) NoffDECstack ++;
+	if (isGPC1warp  (measureT->photcode)) NoffDECwarp ++;
+	if (VERBOSE2 && catalog[i].measure && (NoffDECori < 100)) {
+	  fprintf (stderr, "measurement moves far from original location (D): %f %f : %f %f (%f) : %d\n", oldR, oldD, R, D, dD, measureT->photcode);
 	}
       }
-      measureT->R = R;
-      measureT->D = D;
-      if (measureB) {
-	measureB->R = R;
-	measureB->D = D;
+
+      // only modify the chip coordinates
+      if (isGPC1chip (measureT->photcode)) {
+	measureT->R = R;
+	measureT->D = D;
+	if (measureB) {
+	  measureB->R = R;
+	  measureB->D = D;
+	}
       }
     }
@@ -96,6 +114,5 @@
   // printNcatTotal ();
 
-  int Noff = NoffRAori + NoffDECori;
-  if (VERBOSE && (Noff > 0)) fprintf (stderr, "Noff ori RA %d, Noff ori DEC %d\n", NoffRAori, NoffDECori);
+  if (VERBOSE) fprintf (stderr, "Noff ori RA %d ( %d %d %d ), Noff ori DEC %d ( %d %d %d )\n", NoffRAori, NoffRAchip, NoffRAstack, NoffRAwarp, NoffDECori, NoffDECchip, NoffDECstack, NoffDECwarp);
 
   return (TRUE);
