Index: /issm/trunk/src/c/ModelProcessorx/CreateSingleNodeToElementConnectivity.cpp
===================================================================
--- /issm/trunk/src/c/ModelProcessorx/CreateSingleNodeToElementConnectivity.cpp	(revision 3871)
+++ /issm/trunk/src/c/ModelProcessorx/CreateSingleNodeToElementConnectivity.cpp	(revision 3872)
@@ -19,4 +19,5 @@
 	int i,j;
 	int vertexid;
+	int elementswidth;
 
 	/*output*/
@@ -26,4 +27,5 @@
 	ISSMASSERT(iomodel->numberofvertices);
 	ISSMASSERT(iomodel->numberofelements);
+	ISSMASSERT(iomodel->my_elements);
 	ISSMASSERT(iomodel->elements);
 
@@ -31,23 +33,25 @@
 	connectivity=(int*)xcalloc(iomodel->numberofvertices,sizeof(int));
 
+	/*Get element width (3 or 6)*/
 	if (strcmp(iomodel->meshtype,"2d")==0){
-		for (i=0;i<iomodel->numberofelements;i++){
-			for (j=0;j<3;j++){
-				vertexid=(int)iomodel->elements[3*i+j];
-				ISSMASSERT(vertexid-1<iomodel->numberofvertices);
-				connectivity[vertexid-1]=i;
-			}
-		}
+		elementswidth=3;
 	}
 	else{
-		for (i=0;i<iomodel->numberofelements;i++){
-			for (j=0;j<6;j++){
-				vertexid=(int)iomodel->elements[6*i+j];
-				ISSMASSERT(vertexid-1<iomodel->numberofvertices);
-				connectivity[vertexid-1]=i;
+		elementswidth=6;
+	}
+
+	/*Create connectivity table*/
+	for (i=0;i<iomodel->numberofelements;i++){
+		/*!! in parallel we do not want the vertex to be connected to an element that is not in its partition!!*/
+		if(iomodel->my_elements[i]){
+			for (j=0;j<elementswidth;j++){
+				vertexid=(int)iomodel->elements[elementswidth*i+j];
+				ISSMASSERT(vertexid>0 && vertexid-1<iomodel->numberofvertices);
+				connectivity[vertexid-1]=i+1;
 			}
 		}
 	}
 
+	/*Assign to iomodel*/
 	iomodel->singlenodetoelementconnectivity=connectivity;
 
Index: /issm/trunk/src/c/objects/Loads/Pengrid.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Pengrid.cpp	(revision 3871)
+++ /issm/trunk/src/c/objects/Loads/Pengrid.cpp	(revision 3872)
@@ -80,4 +80,8 @@
 	int pengrid_element_id;
 
+	/*Some checks if debugging activated*/
+	ISSMASSERT(iomodel->singlenodetoelementconnectivity);
+	ISSMASSERT(index>=0 && index<iomodel->numberofvertices);
+
 	/*id: */
 	this->id=id;
@@ -85,6 +89,4 @@
 	/*hooks: */
 	pengrid_node_id=index+1;
-	ISSMASSERT(iomodel->singlenodetoelementconnectivity);
-	ISSMASSERT(index>=0 && index<iomodel->numberofvertices);
 	pengrid_element_id=iomodel->singlenodetoelementconnectivity[index];
 	pengrid_matpar_id=iomodel->numberofelements+1; //refers to the constant material parameters object
