Index: /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_nonlinear.cpp	(revision 24679)
+++ /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_nonlinear.cpp	(revision 24680)
@@ -54,10 +54,12 @@
 	Reducevectorgtofx(&uf, ug, femmodel->nodes,femmodel->parameters);
 
-	//Update once again the solution to make sure that vx and vxold are similar (for next step in transient or steadystate)
+	/*Update once again the solution to make sure that vx and vxold are similar (for next step in transient or steadystate)*/
 	InputUpdateFromConstantx(femmodel,converged,ConvergedEnum);
 	InputUpdateFromSolutionx(femmodel,ug);
 
-	// allocate the matrices once and reuce them per iteration
-	AllocateSystemMatricesx(&Kff,&Kfs,&df,&pf,femmodel);
+	/*allocate the matrices once and reuse them per iteration*/
+	if(femmodel->loads->numrifts == 0){
+		AllocateSystemMatricesx(&Kff,&Kfs,&df,&pf,femmodel);
+	}
 
 	for(;;){
@@ -67,4 +69,7 @@
 		delete ug;
 
+		if(femmodel->loads->numrifts){
+			AllocateSystemMatricesx(&Kff,&Kfs,&df,&pf,femmodel);
+		}
 		SystemMatricesx(&Kff,&Kfs,&pf,&df,NULL,femmodel, true);
 		CreateNodalConstraintsx(&ys,femmodel->nodes);
