Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 15440)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 15441)
@@ -1011,6 +1011,7 @@
 	_assert_(sidlist);
 	_assert_(nodes);
-
-	for(int i=0;i<NUMVERTICES;i++){
+	int numnodes = this->GetNumberOfNodes();
+
+	for(int i=0;i<numnodes;i++){
 		sidlist[i]=nodes[i]->Sid();
 	}
@@ -2630,4 +2631,7 @@
 void Penta::SetwiseNodeConnectivity(int* pd_nz,int* po_nz,Node* node,bool* flags,int set1_enum,int set2_enum){
 
+	/*Intermediaries*/
+	const int numnodes = this->GetNumberOfNodes();
+
 	/*Output */
 	int d_nz = 0;
@@ -2635,5 +2639,5 @@
 
 	/*Loop over all nodes*/
-	for(int i=0;i<6;i++){
+	for(int i=0;i<numnodes;i++){
 
 		if(!flags[this->nodes[i]->Sid()]){
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 15440)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 15441)
@@ -121,4 +121,7 @@
 void Tria::SetwiseNodeConnectivity(int* pd_nz,int* po_nz,Node* node,bool* flags,int set1_enum,int set2_enum){
 
+	/*Intermediaries*/
+	const int numnodes = this->GetNumberOfNodes();
+
 	/*Output */
 	int d_nz = 0;
@@ -126,5 +129,5 @@
 
 	/*Loop over all nodes*/
-	for(int i=0;i<3;i++){
+	for(int i=0;i<numnodes;i++){
 
 		if(!flags[this->nodes[i]->Sid()]){
@@ -891,6 +894,7 @@
 	_assert_(sidlist);
 	_assert_(nodes);
-
-	for(int i=0;i<NUMVERTICES;i++){
+	int numnodes = this->GetNumberOfNodes();
+
+	for(int i=0;i<numnodes;i++){
 		sidlist[i]=nodes[i]->Sid();
 	}
@@ -2819,5 +2823,5 @@
 
 	/*Transform Coordinate System*/
-	TransformStiffnessMatrixCoord(Ke,nodes,NUMVERTICES,XYEnum);
+	TransformStiffnessMatrixCoord(Ke,nodes,numnodes,XYEnum);
 
 	/*Clean up and return*/
@@ -2907,5 +2911,5 @@
 
 	/*Transform Coordinate System*/
-	TransformStiffnessMatrixCoord(Ke,nodes,NUMVERTICES,XYEnum);
+	TransformStiffnessMatrixCoord(Ke,nodes,numnodes,XYEnum);
 
 	/*Clean up and return*/
@@ -2968,5 +2972,5 @@
 
 	/*Initialize Element vector and vectors*/
-	ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,MacAyealApproximationEnum);
+	ElementVector* pe=new ElementVector(nodes,numnodes,this->parameters,MacAyealApproximationEnum);
 	GaussTria*     gauss  = new GaussTria(2);
 	IssmDouble*    basis = xNew<IssmDouble>(numnodes);
@@ -2993,5 +2997,5 @@
 		/*Build load vector: */
 		for (i=0;i<numnodes;i++){
-			for (j=0;j<NDOF2;j++){
+			for(j=0;j<NDOF2;j++){
 				pe->values[i*NDOF2+j]+=-driving_stress_baseline*slope[j]*Jdet*gauss->weight*basis[i];
 			}
@@ -3000,5 +3004,5 @@
 
 	/*Transform coordinate system*/
-	TransformLoadVectorCoord(pe,nodes,NUMVERTICES,XYEnum);
+	TransformLoadVectorCoord(pe,nodes,numnodes,XYEnum);
 
 	/*Clean up and return*/
