Index: /issm/trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp	(revision 23143)
+++ /issm/trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp	(revision 23144)
@@ -115,10 +115,27 @@
 	IssmDouble* drainagerate = xNew<IssmDouble>(numvertices);
 	IssmDouble* meltingrate  = xNew<IssmDouble>(numvertices);
+// 	IssmDouble* watercolumn_max  = xNew<IssmDouble>(numvertices);
 	element->GetInputListOnVertices(&watercolumn[0],WatercolumnEnum);
 	element->GetInputListOnVertices(&drainagerate[0],HydrologyDrainageRateEnum);
 	element->GetInputListOnVertices(&meltingrate[0],BasalforcingsGroundediceMeltingRateEnum);
+// 	element->GetInputListOnVertices(&watercolumn_max[0],FrictionWatercolumnMaxEnum);
 
 	/*Add water*/
-	for(int i=0;i<numvertices;i++) watercolumn[i] += (meltingrate[i]/rho_ice*rho_water-drainagerate[i])*dt;
+//    /*Check that water column height is within 0 and upper bound, correct if needed*/
+	for(int i=0;i<numvertices;i++){
+		watercolumn[i] += (meltingrate[i]/rho_ice*rho_water-drainagerate[i])*dt;
+// 		// if watercolumn height is higher than the maximum allowed height, set height to upper bound
+// 		if(watercolumn[i]>watercolumn_max[i]){
+// 			watercolumn[i]=watercolumn_max[i];
+// 		}
+// 		// if watercolumn height is negative (shouldn't happen), set it to 0
+// 		if(watercolumn[i]<0){
+// 			watercolumn[i]=0;
+// 		}
+// 		// if watercolumn height is within 0 and upper bound, nothing to be done
+// 		else{
+// 			//do nothing
+// 		}
+	}
 
 	/* Divide by connectivity, add degree of channelization as an input */
