Index: /branches/eam_branches/20090715/Ohana/src/opihi/lib.data/mrqmin.c
===================================================================
--- /branches/eam_branches/20090715/Ohana/src/opihi/lib.data/mrqmin.c	(revision 24990)
+++ /branches/eam_branches/20090715/Ohana/src/opihi/lib.data/mrqmin.c	(revision 24991)
@@ -17,5 +17,5 @@
 
   int k, j, i;
-  opihi_flt ydiff, wt, chisq;
+  opihi_flt ymodel, ydiff, wt, chisq;
 
   for (j = 0; j < Npar; j++) {
@@ -27,6 +27,9 @@
   for (i = 0; i < Npts; i++) {
 
-    ydiff = funcs (x[i], par, Npar, dyda) - y[i];
+    ymodel = funcs (x[i], par, Npar, dyda);
+    ydiff = ymodel - y[i];
     chisq += SQ(ydiff) * dy[i];
+
+    // fprintf (stderr, "%f %f - %f : %f -> %f\n", x[i], y[i], ymodel, dy[i], chisq);
 
     for (j = 0; j < Npar; j++) {
@@ -85,5 +88,5 @@
 
   /* if good, save temp values */
-  if (rho > 0) {
+  if ((chisq > 1e-3) && (rho > -1e-6)) {
     lambda *= 0.1;
     ochisq = chisq;
