Index: /issm/trunk-jpl/src/c/Makefile.am
===================================================================
--- /issm/trunk-jpl/src/c/Makefile.am	(revision 23585)
+++ /issm/trunk-jpl/src/c/Makefile.am	(revision 23586)
@@ -208,5 +208,4 @@
 					./modules/NodesDofx/NodesDofx.cpp\
 					./modules/NodalValuex/NodalValuex.cpp\
-					./modules/VerticesDofx/VerticesDofx.cpp\
 					./modules/VertexCoordinatesx/VertexCoordinatesx.cpp\
 					./modules/OutputResultsx/OutputResultsx.cpp\
Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 23585)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 23586)
@@ -25,5 +25,4 @@
 /*module includes: {{{*/
 #include "../modules/ModelProcessorx/ModelProcessorx.h"
-#include "../modules/VerticesDofx/VerticesDofx.h"
 #include "../modules/SpcNodesx/SpcNodesx.h"
 #include "../modules/ConfigureObjectsx/ConfigureObjectsx.h"
@@ -353,5 +352,4 @@
 		analysis_type=output->analysis_type_list[i];
 		output->SetCurrentConfiguration(analysis_type);
-		//if(i==0) VerticesDofx(output->vertices,output->parameters); //only call once, we only have one set of vertices
 		SpcNodesx(output->nodes_list[i],output->constraints_list[i],output->parameters,analysis_type);
 		NodesDofx(output->nodes_list[i],output->parameters,analysis_type);
@@ -442,7 +440,4 @@
 
 		if(i==0){
-		//	if(VerboseMProcessor()) _printf0_("      creating vertex PIDs\n");
-		//	VerticesDofx(vertices,parameters);
-
 			if(VerboseMProcessor()) _printf0_("      detecting active vertices\n");
 			GetMaskOfIceVerticesLSMx0(this);
@@ -530,5 +525,4 @@
 			analysis_type=this->analysis_type_list[i];
 			SetCurrentConfiguration(analysis_type);
-			//if(i==0) VerticesDofx(this->vertices,this->parameters); //only call once, we only have one set of vertices
 			SpcNodesx(this->nodes_list[i],this->constraints_list[i],this->parameters,analysis_type);
 			NodesDofx(this->nodes_list[i],this->parameters,analysis_type);
@@ -2731,9 +2725,5 @@
 
 		ConfigureObjectsx(new_elements,this->loads,new_nodes_list[i],new_vertices,new_materials,this->parameters);
-		if(i==0){
-			VerticesDofx(new_vertices,this->parameters); //only call once, we only have one set of vertices
-		}
 		SpcNodesx(new_nodes_list[i],new_constraints_list[i],this->parameters,analysis_type);
-		new_nodes_list[i]->FlagClones(analysis_type);/*FIXME: should be removed !*/
 		NodesDofx(new_nodes_list[i],this->parameters,analysis_type);
 	}
Index: /issm/trunk-jpl/src/c/classes/Nodes.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Nodes.cpp	(revision 23585)
+++ /issm/trunk-jpl/src/c/classes/Nodes.cpp	(revision 23586)
@@ -207,46 +207,4 @@
 }
 /*}}}*/
-void  Nodes::FlagClones(int analysis_type){/*{{{*/
-
-	int i;
-	int num_procs;
-	int numnodes;
-
-	/*recover num_procs: */
-	num_procs=IssmComm::GetSize();
-
-	/*Figure out number of nodes for this analysis: */
-	numnodes=this->NumberOfNodes(analysis_type);
-
-	/*Allocate ranks: */
-	int* ranks    = xNew<int>(numnodes);
-	int* minranks = xNew<int>(numnodes);
-	for(i=0;i<numnodes;i++)ranks[i]=num_procs; //no cpu can have rank num_procs. This is the maximum limit.
-
-	/*Now go through all our objects and ask them to report to who they belong (which rank): */
-	Ranks(ranks,analysis_type);
-
-	/*We need to take the minimum rank for each vertex, and every cpu needs to get that result. That way, 
-	 * when we start building the dof list for all vertexs, a cpu can check whether its vertex already has been 
-	 * dealt with by another cpu. We take the minimum because we are going to manage dof assignment in increasing 
-	 * order of cpu rank. This is also why we initialized this array to num_procs.*/
-	ISSM_MPI_Allreduce((void*)ranks,(void*)minranks,numnodes,ISSM_MPI_INT,ISSM_MPI_MIN,IssmComm::GetComm());
-
-	/*Now go through all objects, and use minranks to flag which objects are cloned: */
-	for(i=0;i<this->Size();i++){
-
-		Node* node=xDynamicCast<Node*>(this->GetObjectByOffset(i));
-		_assert_(node->InAnalysis(analysis_type));
-
-		/*For this object, decide whether it is a clone: */
-		node->SetClone(minranks);
-	}
-
-	/*Free ressources: */
-	xDelete<int>(ranks); 
-	xDelete<int>(minranks);
-
-}
-/*}}}*/
 int   Nodes::MaximumId(){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Nodes.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Nodes.h	(revision 23585)
+++ /issm/trunk-jpl/src/c/classes/Nodes.h	(revision 23586)
@@ -34,5 +34,4 @@
 		/*numerics*/
 		void  DistributeDofs(int analysis_type,int SETENUM);
-		void  FlagClones(int analysis_type);
 		int   MaximumId(void);
 		int   MaxNumDofs(int analysis_type,int setenum);
Index: /issm/trunk-jpl/src/c/classes/Vertices.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Vertices.cpp	(revision 23585)
+++ /issm/trunk-jpl/src/c/classes/Vertices.cpp	(revision 23586)
@@ -191,42 +191,4 @@
 }
 /*}}}*/
-void  Vertices::FlagClones(int numberofobjects){/*{{{*/
-
-	/*Some checks in debug mode*/
-	if(numberofobjects==0) return;
-	_assert_(numberofobjects>0);
-
-	/*recover num_procs and rank*/
-	int num_procs = IssmComm::GetSize();
-	int my_rank   = IssmComm::GetRank();
-
-	/*Allocate ranks: */
-	int *ranks    = xNew<int>(numberofobjects);
-	for(int i=0;i<numberofobjects;i++)ranks[i]=num_procs; //no cpu can have rank num_procs. This is the maximum limit.
-
-	/*Go through a dataset, and for each object, report it cpu: */
-	for(int i=0;i<this->Size();i++){
-		Vertex* vertex=xDynamicCast<Vertex*>(this->GetObjectByOffset(i));
-		ranks[vertex->Sid()]=my_rank; 
-	}
-
-	/*We need to take the minimum rank for each vertex, and every cpu needs to get that result. That way, 
-	 * when we start building the dof list for all vertexs, a cpu can check whether its vertex already has been 
-	 * dealt with by another cpu. We take the minimum because we are going to manage dof assignment in increasing 
-	 * order of cpu rank. This is also why we initialized this array to num_procs.*/
-	int *minranks = xNew<int>(numberofobjects);
-	ISSM_MPI_Allreduce((void*)ranks,(void*)minranks,numberofobjects,ISSM_MPI_INT,ISSM_MPI_MIN,IssmComm::GetComm());
-	xDelete<int>(ranks); 
-
-	/*Now go through all objects, and use minranks to flag which objects are cloned: */
-	for(int i=0;i<this->Size();i++){
-		/*For this object, decide whether it is a clone: */
-		Vertex* vertex=xDynamicCast<Vertex*>(this->GetObjectByOffset(i));
-		vertex->SetClone(minranks);
-	}
-
-	/*Free ressources: */
-	xDelete<int>(minranks);
-}/*}}}*/
 int Vertices::NumberOfVertices(void){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Vertices.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Vertices.h	(revision 23585)
+++ /issm/trunk-jpl/src/c/classes/Vertices.h	(revision 23586)
@@ -30,5 +30,4 @@
 		/*numerics:*/
 		void  DistributePids(int numberofnodes);
-		void  FlagClones(int numberofnodes);
 		int   NumberOfVertices(void);
 		void  LatLonList(IssmDouble** lat,IssmDouble** lon);
Index: /issm/trunk-jpl/src/c/modules/NodesDofx/NodesDofx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/NodesDofx/NodesDofx.cpp	(revision 23585)
+++ /issm/trunk-jpl/src/c/modules/NodesDofx/NodesDofx.cpp	(revision 23586)
@@ -18,8 +18,4 @@
 	if(VerboseModule()) _printf0_("   Renumbering degrees of freedom\n");
 
-	/*Ensure that only for each cpu, the partition border nodes only will be taken into account once 
-	 * across the cluster. To do so, we flag all the clone nodes: */
-	//nodes->FlagClones(configuration_type); /*Not needed anymore!*/
-
 	/*Go through all nodes, and build degree of freedom lists. Each node gets a fixed number of dofs. When 
 	 *a  node has already been distributed dofs on one cpu, all other cpus with the same node cannot distribute it 
Index: sm/trunk-jpl/src/c/modules/VerticesDofx/VerticesDofx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/VerticesDofx/VerticesDofx.cpp	(revision 23585)
+++ 	(revision )
@@ -1,25 +1,0 @@
-/*!\file VerticesDofx
- * \brief: establish degrees of freedom for all vertices: */
-
-#include "./VerticesDofx.h"
-
-#include "../../shared/shared.h"
-#include "../../toolkits/toolkits.h"
-
-void VerticesDofx( Vertices* vertices, Parameters* parameters) {
-
-	/*intermediary: */
-	int  numberofvertices;
-
-	/*figure out how many vertices we have: */
-	numberofvertices=vertices->NumberOfVertices();
-
-	/*Ensure that only for each cpu, the partition border vertices only will be
-	 * taken into account once across the cluster. To do so, we flag all the
-	 * clone vertices: */
-	vertices->FlagClones(numberofvertices);
-
-	/*Go through all vertices and distribute pids*/
-	vertices->DistributePids(numberofvertices); 
-
-}
Index: sm/trunk-jpl/src/c/modules/VerticesDofx/VerticesDofx.h
===================================================================
--- /issm/trunk-jpl/src/c/modules/VerticesDofx/VerticesDofx.h	(revision 23585)
+++ 	(revision )
@@ -1,13 +1,0 @@
-/*!\file:  VerticesDofx.h
- * \brief header file for degree of freedoms distribution routines.
- */ 
-
-#ifndef _VERTICESDOFX_H
-#define _VERTICESDOFX_H
-
-#include "../../classes/classes.h"
-
-/* local prototypes: */
-void VerticesDofx( Vertices* vertices, Parameters* parameters);
-
-#endif  /* _VERTICESDOFX_H */
Index: /issm/trunk-jpl/src/c/modules/modules.h
===================================================================
--- /issm/trunk-jpl/src/c/modules/modules.h	(revision 23585)
+++ /issm/trunk-jpl/src/c/modules/modules.h	(revision 23586)
@@ -98,5 +98,4 @@
 #include "./ThicknessAcrossGradientx/ThicknessAcrossGradientx.h"
 #include "./UpdateDynamicConstraintsx/UpdateDynamicConstraintsx.h"
-#include "./VerticesDofx/VerticesDofx.h"
 #include "./VertexCoordinatesx/VertexCoordinatesx.h"
 #include "./VecMergex/VecMergex.h"
