Index: /issm/trunk/src/c/shared/Numerics/BrentSearch.cpp
===================================================================
--- /issm/trunk/src/c/shared/Numerics/BrentSearch.cpp	(revision 7089)
+++ /issm/trunk/src/c/shared/Numerics/BrentSearch.cpp	(revision 7090)
@@ -30,5 +30,5 @@
 	double tol1,tol2,seps,tolerance;
 	int    maxiter,iter;
-	bool   loop,goldenflag;
+	bool   loop=true,goldenflag;
 
 	/*Recover parameters:*/
@@ -84,6 +84,10 @@
 	/*4: print result*/
 	_printf_(VerboseControl(),"         %5i    %12.6g  %12.6g  %12.6g  %s\n",iter,xbest,fxbest,pow(pow(xbest-xm,2),0.5),"       initial");
-
-	loop=true;
+	if (!isnan(cm_jump) && (xmin==0) && ((fxbest/fxmin)<cm_jump)){
+		_printf_(VerboseControl(),"      optimization terminated: current x satisfies criteria 'cm_jump'=%g\n",cm_jump);
+		_printf_(true,"alpha = %g\n",xbest);
+		loop=false;
+	}
+
 	while(loop){
 
