Index: /issm/trunk-jpl/src/c/modules/ModelProcessorx/HydrologyDCInefficient/CreateLoadsHydrologyDCInefficient.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/ModelProcessorx/HydrologyDCInefficient/CreateLoadsHydrologyDCInefficient.cpp	(revision 15448)
+++ /issm/trunk-jpl/src/c/modules/ModelProcessorx/HydrologyDCInefficient/CreateLoadsHydrologyDCInefficient.cpp	(revision 15449)
@@ -10,5 +10,6 @@
 
 	/*Intermediary*/
-	int      hydrology_model;
+	int hydrology_model;
+	int dim;   
 
 	/*Recover pointer: */
@@ -17,4 +18,6 @@
 	/*Fetch parameters: */
 	iomodel->Constant(&hydrology_model,HydrologyModelEnum);
+	iomodel->Constant(&dim,MeshDimensionEnum);
+	iomodel->FetchData(1,MeshVertexonbedEnum);
 
 	/*Create loads if they do not exist yet*/
@@ -29,11 +32,18 @@
 	CreateSingleNodeToElementConnectivity(iomodel);
 	for(int i=0;i<iomodel->numberofvertices;i++){
-		/*keep only this partition's nodes:*/
-		if((iomodel->my_vertices[i]==1)){
-			loads->AddObject(new Pengrid(iomodel->loadcounter+i+1,i,iomodel,HydrologyDCInefficientAnalysisEnum));
+		if (!dim==3){
+			/*keep only this partition's nodes:*/
+			if((iomodel->my_vertices[i]==1)){
+				loads->AddObject(new Pengrid(iomodel->loadcounter+i+1,i,iomodel,HydrologyDCInefficientAnalysisEnum));
+			}
+		}
+		else if(reCast<int>(iomodel->Data(MeshVertexonbedEnum)[i])){
+			if((iomodel->my_vertices[i]==1)){
+				loads->AddObject(new Pengrid(iomodel->loadcounter+i+1,i,iomodel,HydrologyDCInefficientAnalysisEnum));
+			}	
 		}
 	}
-
 	/*Assign output pointer: */
 	*ploads=loads;
+	iomodel->DeleteData(1,MeshVertexonbedEnum);
 }
