Index: /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_la_theta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_la_theta.cpp	(revision 17677)
+++ /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_la_theta.cpp	(revision 17678)
@@ -39,4 +39,7 @@
 	int  count = 0;
 	GetSolutionFromInputsx(&ug,femmodel);
+	Vector<IssmDouble>* vx     = NULL;
+	Vector<IssmDouble>* vx_old = NULL;
+	GetVectorFromInputsx(&vx,femmodel,VxEnum,VertexEnum);
 
 	while(true){
@@ -45,4 +48,5 @@
 		/*save pointer to old velocity*/
 		delete ug_old;ug_old=ug;
+		delete vx_old;vx_old=vx;
 
 		/*Calculate d*/
@@ -65,9 +69,13 @@
 		analysis->InputUpdateFromSolutionFSXTH_d(  femmodel->elements,femmodel->parameters);
 		analysis->InputUpdateFromSolutionFSXTH_tau(femmodel->elements,femmodel->parameters);
+		GetVectorFromInputsx(&vx,femmodel,VxEnum,VertexEnum);
 
 		/*Check for convergence*/
-		Vector<IssmDouble>* dug=ug_old->Duplicate(); ug_old->Copy(dug); dug->AYPX(ug,-1.0);
-		IssmDouble ndu=dug->Norm(NORM_TWO);   delete dug;
-		IssmDouble nu =ug_old->Norm(NORM_TWO);
+		//Vector<IssmDouble>* dug=ug_old->Duplicate(); ug_old->Copy(dug); dug->AYPX(ug,-1.0);
+		//IssmDouble ndu=dug->Norm(NORM_TWO);   delete dug;
+		//IssmDouble nu =ug_old->Norm(NORM_TWO);
+		Vector<IssmDouble>* dvx=vx_old->Duplicate(); vx_old->Copy(dvx); dvx->AYPX(vx,-1.0);
+		IssmDouble ndu=dvx->Norm(NORM_TWO);   delete dvx;
+		IssmDouble nu =vx_old->Norm(NORM_TWO);
 		if (xIsNan<IssmDouble>(ndu) || xIsNan<IssmDouble>(nu)) _error_("convergence criterion is NaN!");
 		if((ndu/nu)<eps_rel){
@@ -89,4 +97,6 @@
 	delete ug;  
 	delete ug_old;  
+	delete vx;  
+	delete vx_old;  
 	delete analysis;
 }
