Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 19008)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 19009)
@@ -1871,5 +1871,5 @@
 /*}}}*/
 #endif
-void FemModel::HydrologyEPLupdateDomainx(void){ /*{{{*/
+void FemModel::HydrologyEPLupdateDomainx(IssmDouble* pEplcount){ /*{{{*/
 
 	Vector<IssmDouble>* mask							= NULL;
@@ -1933,4 +1933,5 @@
 	ISSM_MPI_Bcast(&sum_counter,1,ISSM_MPI_INT,0,IssmComm::GetComm());                
 	counter=sum_counter;
+	*pEplcount = counter;
 	if(VerboseSolution()) _printf0_("   Number of active nodes in EPL layer: "<< counter <<"\n");
 
@@ -1940,5 +1941,5 @@
 }
 /*}}}*/
-void FemModel::UpdateConstraintsL2ProjectionEPLx(void){ /*{{{*/
+void FemModel::UpdateConstraintsL2ProjectionEPLx(IssmDouble* pL2count){ /*{{{*/
 
 	Vector<IssmDouble>* active        = NULL;
@@ -1978,4 +1979,5 @@
 	ISSM_MPI_Bcast(&sum_counter,1,ISSM_MPI_INT,0,IssmComm::GetComm());                
 	counter=sum_counter;
+	*pL2count = counter;
 	if(VerboseSolution()) _printf0_("   Number of active nodes L2 Projection: "<< counter <<"\n");
 }
Index: /issm/trunk-jpl/src/c/classes/FemModel.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.h	(revision 19008)
+++ /issm/trunk-jpl/src/c/classes/FemModel.h	(revision 19009)
@@ -107,7 +107,6 @@
 		void UpdateConstraintsExtrudeFromBasex();
 		void UpdateConstraintsExtrudeFromTopx();
-		void HydrologyEPLupdateDomainx(void);
-		//		void HydrologyEPLThicknessx(void);
-		void UpdateConstraintsL2ProjectionEPLx(void);
+		void HydrologyEPLupdateDomainx(IssmDouble* pEplcount);
+		void UpdateConstraintsL2ProjectionEPLx(IssmDouble* pL2count);
 };
 
Index: /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp	(revision 19008)
+++ /issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp	(revision 19009)
@@ -46,5 +46,6 @@
 	IssmDouble ndu_sed,nu_sed;
 	IssmDouble ndu_epl,nu_epl;
-
+	IssmDouble ThickCount,L2Count;
+	
 	/*Recover parameters: */
 	femmodel->SetCurrentConfiguration(HydrologyDCInefficientAnalysisEnum);
@@ -157,5 +158,5 @@
 			femmodel->SetCurrentConfiguration(HydrologyDCEfficientAnalysisEnum);
 			/*updating mask*/
-			femmodel->HydrologyEPLupdateDomainx();
+			femmodel->HydrologyEPLupdateDomainx(&ThickCount);
 			inefanalysis->ElementizeEplMask(femmodel);
 			InputUpdateFromConstantx(femmodel,true,ResetPenaltiesEnum);
@@ -169,7 +170,7 @@
 				/*{{{*//*Retrieve the EPL head slopes and compute EPL Thickness*/
 				if(VerboseSolution()) _printf0_("computing EPL Head slope...\n");
-				//				inefanalysis->ElementizeEplMask(femmodel);
+				//inefanalysis->ElementizeEplMask(femmodel);
 				femmodel->SetCurrentConfiguration(L2ProjectionEPLAnalysisEnum);
-				femmodel->UpdateConstraintsL2ProjectionEPLx();
+				femmodel->UpdateConstraintsL2ProjectionEPLx(&L2Count);
 				inefanalysis->ElementizeEplMask(femmodel);
 				femmodel->parameters->SetParam(EplHeadSlopeXEnum,InputToL2ProjectEnum);
@@ -181,5 +182,5 @@
 				effanalysis->ComputeEPLThickness(femmodel);
 				//updating mask after the computation of the epl thickness (Allow to close too thin EPL)
-				femmodel->HydrologyEPLupdateDomainx();
+				femmodel->HydrologyEPLupdateDomainx(&ThickCount);
 				inefanalysis->ElementizeEplMask(femmodel);
 				/*}}}*/
@@ -213,4 +214,6 @@
 					_error_("   maximum number of EPL iterations (" << hydro_maxiter << ") exceeded");
 				}
+				//If there is some colapse go through sediment again
+				if(ThickCount<L2Count)eplconverged=true;
 				eplcount++;
 				
