Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 16125)
@@ -2728,14 +2728,4 @@
 			_error_("type " << type << " (" << EnumToStringx(type) << ") not implemented yet");
 	}
-}
-/*}}}*/
-/*FUNCTION Penta::InputUpdateFromVector(int* vector, int name, int type);{{{*/
-void  Penta::InputUpdateFromVector(int* vector, int name, int type){
-	_error_("not supported yet!");
-}
-/*}}}*/
-/*FUNCTION Penta::InputUpdateFromVector(bool* vector, int name, int type);{{{*/
-void  Penta::InputUpdateFromVector(bool* vector, int name, int type){
-	_error_("not supported yet!");
 }
 /*}}}*/
@@ -7035,14 +7025,4 @@
 }
 /*}}}*/
-/*FUNCTION Penta::InputUpdateFromVectorDakota(int* vector, int name, int type);{{{*/
-void  Penta::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	_error_("not supported yet!");
-}
-/*}}}*/
-/*FUNCTION Penta::InputUpdateFromVectorDakota(bool* vector, int name, int type);{{{*/
-void  Penta::InputUpdateFromVectorDakota(bool* vector, int name, int type){
-	_error_("not supported yet!");
-}
-/*}}}*/
 /*FUNCTION Penta::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type);{{{*/
 void  Penta::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type){
@@ -10267,9 +10247,9 @@
 
 	int         numnodes = this->NumberofNodes();
-	int         numdof=NDOF2*numnodes;
+	int         numdof   = NDOF2*numnodes;
 
 	int         i;
 	IssmDouble  rho_ice,g;
-	IssmDouble  values[numdof];
+	IssmDouble  values[2*NUMVERTICES];
 	IssmDouble  vx[NUMVERTICES];
 	IssmDouble  vy[NUMVERTICES];
@@ -10279,6 +10259,6 @@
 	IssmDouble  surface[NUMVERTICES];
 	IssmDouble  xyz_list[NUMVERTICES][3];
-	int    *doflist = NULL;
-	Penta  *penta   = NULL;
+	int        *doflist = NULL;
+	Penta      *penta   = NULL;
 
 	/*Get dof list: */
Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.h	(revision 16125)
@@ -62,11 +62,7 @@
 		void  InputUpdateFromConstant(int constant, int name);
 		void  InputUpdateFromSolution(IssmDouble* solutiong);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
 		#ifdef _HAVE_DAKOTA_
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int nows, int ncols, int name, int type);
 		#endif
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 16125)
@@ -1767,10 +1767,11 @@
 void  Tria::InputUpdateFromVector(IssmDouble* vector, int name, int type){
 
-	const int   numnodes = NUMVERTICES;
-	int        *doflist  = NULL;
-	IssmDouble  values[numnodes];
 
 	/*Check that name is an element input*/
 	if (!IsInput(name)) return;
+
+	int         numnodes;
+	int        *doflist = NULL;
+	IssmDouble *values  = NULL;
 
 	switch(type){
@@ -1802,6 +1803,8 @@
 
 	case NodesEnum:
-		_assert_(this->element_type==P1Enum);
-		/*Get dof list: */
+
+		/*Get number of nodes and dof list: */
+		numnodes = this->NumberofNodes();
+		values   = xNew<IssmDouble>(numnodes);
 		GetDofList(&doflist,NoneApproximationEnum,GsetEnum);
 
@@ -1809,8 +1812,9 @@
 		for(int i=0;i<numnodes;i++){
 			values[i]=vector[doflist[i]];
-			if(xIsNan<IssmDouble>(values[i])) _error_("NaN found in solution vector");
-		}
+			if(xIsNan<IssmDouble>(values[i])) _error_("NaN found in vector");
+		}
+
 		/*Add input to the element: */
-		this->inputs->AddInput(new TriaInput(name,values,P1Enum));
+		this->inputs->AddInput(new TriaInput(name,values,this->element_type));
 
 		/*Free ressources:*/
@@ -1819,11 +1823,15 @@
 
 	case NodeSIdEnum:
-		_assert_(this->element_type==P1Enum);
-		for(int i=0;i<NUMVERTICES;i++){
+
+		/*Get number of nodes and dof list: */
+		numnodes = this->NumberofNodes();
+		values   = xNew<IssmDouble>(numnodes);
+
+		for(int i=0;i<numnodes;i++){
 			values[i]=vector[nodes[i]->Sid()];
-			if(xIsNan<IssmDouble>(values[i])) _error_("NaN found in solution vector");
+			if(xIsNan<IssmDouble>(values[i])) _error_("NaN found in vector");
 		}
 		/*Add input to the element: */
-		this->inputs->AddInput(new TriaInput(name,values,P1Enum));
+		this->inputs->AddInput(new TriaInput(name,values,this->element_type));
 		return;
 
@@ -1832,14 +1840,8 @@
 	}
 
-}
-/*}}}*/
-/*FUNCTION Tria::InputUpdateFromVector(int* vector, int name, int type);{{{*/
-void  Tria::InputUpdateFromVector(int* vector, int name, int type){
-	_error_("not supported yet!");
-}
-/*}}}*/
-/*FUNCTION Tria::InputUpdateFromVector(bool* vector, int name, int type);{{{*/
-void  Tria::InputUpdateFromVector(bool* vector, int name, int type){
-	_error_("not supported yet!");
+	/*Clean-up*/
+	xDelete<int>(doflist);
+	xDelete<IssmDouble>(values);
+
 }
 /*}}}*/
@@ -5574,5 +5576,5 @@
 
 	gauss=new GaussTria();
-	for (int iv=0;iv<NUMVERTICES;iv++){
+	for(int iv=0;iv<NUMVERTICES;iv++){
 		gauss->GaussVertex(iv);
 		surfaceslopex_input->GetInputValue(&dsdx,gauss);
@@ -7003,14 +7005,4 @@
 	}
 
-}
-/*}}}*/
-/*FUNCTION Tria::InputUpdateFromVectorDakota(int* vector, int name, int type);{{{*/
-void  Tria::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	_error_("not supported yet!");
-}
-/*}}}*/
-/*FUNCTION Tria::InputUpdateFromVectorDakota(bool* vector, int name, int type);{{{*/
-void  Tria::InputUpdateFromVectorDakota(bool* vector, int name, int type){
-	_error_("not supported yet!");
 }
 /*}}}*/
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.h	(revision 16125)
@@ -57,10 +57,6 @@
 		void  InputUpdateFromSolution(IssmDouble* solutiong);
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		#ifdef _HAVE_DAKOTA_
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int nows, int ncols, int name, int type);
 		#endif
Index: /issm/trunk-jpl/src/c/classes/Loads/Numericalflux.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Numericalflux.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Numericalflux.h	(revision 16125)
@@ -49,10 +49,6 @@
 		/*Update virtual functions resolution: {{{*/
 		void InputUpdateFromVector(IssmDouble* vector, int name, int type){/*Do nothing*/}
-		void InputUpdateFromVector(int* vector, int name, int type){_error_("Not implemented yet!");}
-		void InputUpdateFromVector(bool* vector, int name, int type){_error_("Not implemented yet!");}
 		void InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type){/*Do nothing*/}
 		void InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){/*Do nothing*/}
-		void InputUpdateFromVectorDakota(int* vector, int name, int type){_error_("Not implemented yet!");}
-		void InputUpdateFromVectorDakota(bool* vector, int name, int type){_error_("Not implemented yet!");}
 		void InputUpdateFromConstant(IssmDouble constant, int name){/*Do nothing*/};
 		void InputUpdateFromConstant(int constant, int name){/*Do nothing*/};
Index: /issm/trunk-jpl/src/c/classes/Loads/Pengrid.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Pengrid.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Pengrid.cpp	(revision 16125)
@@ -358,14 +358,4 @@
 }
 /*}}}*/
-/*FUNCTION Pengrid::InputUpdateFromVector(int* vector, int name, int type) {{{*/
-void  Pengrid::InputUpdateFromVector(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Pengrid::InputUpdateFromVector(bool* vector, int name, int type) {{{*/
-void  Pengrid::InputUpdateFromVector(bool* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
 /*FUNCTION Pengrid::InputUpdateFromMatrixDakota(IssmDouble* vector, int nrows, int ncols, int name, int type) {{{*/
 void  Pengrid::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type){
@@ -375,14 +365,4 @@
 /*FUNCTION Pengrid::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type) {{{*/
 void  Pengrid::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Pengrid::InputUpdateFromVectorDakota(int* vector, int name, int type) {{{*/
-void  Pengrid::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Pengrid::InputUpdateFromVectorDakota(bool* vector, int name, int type) {{{*/
-void  Pengrid::InputUpdateFromVectorDakota(bool* vector, int name, int type){
 	/*Nothing updated yet*/
 }
Index: /issm/trunk-jpl/src/c/classes/Loads/Pengrid.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Pengrid.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Pengrid.h	(revision 16125)
@@ -59,10 +59,6 @@
 		/*Update virtual functions resolution: {{{*/
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix ,int nrows, int ncols, int name, int type);
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void  InputUpdateFromConstant(IssmDouble constant, int name);
 		void  InputUpdateFromConstant(int constant, int name);
Index: /issm/trunk-jpl/src/c/classes/Loads/Penpair.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Penpair.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Penpair.cpp	(revision 16125)
@@ -293,14 +293,4 @@
 }
 /*}}}*/
-/*FUNCTION Penpair::InputUpdateFromVector(int* vector, int name, int type) {{{*/
-void  Penpair::InputUpdateFromVector(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Penpair::InputUpdateFromVector(bool* vector, int name, int type) {{{*/
-void  Penpair::InputUpdateFromVector(bool* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
 
 /*Penpair management:*/
Index: /issm/trunk-jpl/src/c/classes/Loads/Penpair.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Penpair.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Penpair.h	(revision 16125)
@@ -39,10 +39,6 @@
 		/*Update virtual functions resolution: {{{*/
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrow, int ncols,int name, int type){_error_("Not implemented yet!");}
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){_error_("Not implemented yet!");}
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type){_error_("Not implemented yet!");}
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type){_error_("Not implemented yet!");}
 		void  InputUpdateFromConstant(IssmDouble constant, int name);
 		void  InputUpdateFromConstant(int constant, int name);
Index: /issm/trunk-jpl/src/c/classes/Loads/Riftfront.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Riftfront.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Riftfront.cpp	(revision 16125)
@@ -256,5 +256,5 @@
 }
 /*}}}*/
-/*FUNCTION Riftfront::InputUpdateFromConstant(IssmDouble* constant,int name) {{{*/
+/*FUNCTION Riftfront::InputUpdateFromVector(IssmDouble* constant,int name) {{{*/
 void    Riftfront::InputUpdateFromVector(IssmDouble* vector, int name, int type){
 
Index: /issm/trunk-jpl/src/c/classes/Loads/Riftfront.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Loads/Riftfront.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Loads/Riftfront.h	(revision 16125)
@@ -60,10 +60,6 @@
 		/*Update virtual functions resolution: {{{*/
 		void    InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void    InputUpdateFromVector(int* vector, int name, int type){_error_("Not implemented yet!");}
-		void    InputUpdateFromVector(bool* vector, int name, int type){_error_("Not implemented yet!");}
 		void    InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows,int ncols, int name, int type){_error_("Not implemented yet!");}
 		void    InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){_error_("Not implemented yet!");}
-		void    InputUpdateFromVectorDakota(int* vector, int name, int type){_error_("Not implemented yet!");}
-		void    InputUpdateFromVectorDakota(bool* vector, int name, int type){_error_("Not implemented yet!");}
 		void    InputUpdateFromConstant(IssmDouble constant, int name);
 		void    InputUpdateFromConstant(int constant, int name){_error_("Not implemented yet!");}
Index: /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.cpp	(revision 16125)
@@ -672,14 +672,4 @@
 		default: _error_("type " << type << " (" << EnumToStringx(type) << ") not implemented yet");
 	}
-}
-/*}}}*/
-/*FUNCTION Matdamageice::InputUpdateFromVector(int* vector, int name, int type) {{{*/
-void  Matdamageice::InputUpdateFromVector(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matdamageice::InputUpdateFromVector(bool* vector, int name, int type) {{{*/
-void  Matdamageice::InputUpdateFromVector(bool* vector, int name, int type){
-	/*Nothing updated yet*/
 }
 /*}}}*/
@@ -733,16 +723,6 @@
 }
 /*}}}*/
-/*FUNCTION Matdamageice::InputUpdateFromMatrixDakota(int* vector, int name, int type) {{{*/
+/*FUNCTION Matdamageice::InputUpdateFromMatrixDakota(IssmDouble* vector, int name, int type) {{{*/
 void  Matdamageice::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols,int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matdamageice::InputUpdateFromVectorDakota(int* vector, int name, int type) {{{*/
-void  Matdamageice::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matdamageice::InputUpdateFromVectorDakota(bool* vector, int name, int type) {{{*/
-void  Matdamageice::InputUpdateFromVectorDakota(bool* vector, int name, int type){
 	/*Nothing updated yet*/
 }
Index: /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matdamageice.h	(revision 16125)
@@ -33,10 +33,6 @@
 		/*Update virtual functions definitions: {{{*/
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrow, int ncols, int name, int type);
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void  InputUpdateFromConstant(IssmDouble constant, int name);
 		void  InputUpdateFromConstant(int constant, int name);
Index: /issm/trunk-jpl/src/c/classes/Materials/Matice.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matice.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matice.cpp	(revision 16125)
@@ -614,14 +614,4 @@
 		default: _error_("type " << type << " (" << EnumToStringx(type) << ") not implemented yet");
 	}
-}
-/*}}}*/
-/*FUNCTION Matice::InputUpdateFromVector(int* vector, int name, int type) {{{*/
-void  Matice::InputUpdateFromVector(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matice::InputUpdateFromVector(bool* vector, int name, int type) {{{*/
-void  Matice::InputUpdateFromVector(bool* vector, int name, int type){
-	/*Nothing updated yet*/
 }
 /*}}}*/
@@ -688,14 +678,4 @@
 }
 /*}}}*/
-/*FUNCTION Matice::InputUpdateFromVectorDakota(int* vector, int name, int type) {{{*/
-void  Matice::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matice::InputUpdateFromVectorDakota(bool* vector, int name, int type) {{{*/
-void  Matice::InputUpdateFromVectorDakota(bool* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
 /*FUNCTION Matice::InputUpdateFromConstant(IssmDouble constant, int name) {{{*/
 void  Matice::InputUpdateFromConstant(IssmDouble constant, int name){
Index: /issm/trunk-jpl/src/c/classes/Materials/Matice.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matice.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matice.h	(revision 16125)
@@ -40,10 +40,6 @@
 		/*Update virtual functions definitions: {{{*/
 		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
 		void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrow, int ncols, int name, int type);
 		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void  InputUpdateFromConstant(IssmDouble constant, int name);
 		void  InputUpdateFromConstant(int constant, int name);
Index: /issm/trunk-jpl/src/c/classes/Materials/Matpar.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matpar.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matpar.cpp	(revision 16125)
@@ -140,14 +140,4 @@
 }
 /*}}}*/
-/*FUNCTION Matpar::InputUpdateFromVector(int* vector, int name, int type) {{{*/
-void   Matpar::InputUpdateFromVector(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matpar::InputUpdateFromVector(bool* vector, int name, int type) {{{*/
-void   Matpar::InputUpdateFromVector(bool* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
 /*FUNCTION Matpar::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type) {{{*/
 void   Matpar::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){
@@ -155,15 +145,5 @@
 }
 /*}}}*/
-/*FUNCTION Matpar::InputUpdateFromVectorDakota(int* vector, int name, int type) {{{*/
-void   Matpar::InputUpdateFromVectorDakota(int* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matpar::InputUpdateFromVectorDakota(bool* vector, int name, int type) {{{*/
-void   Matpar::InputUpdateFromVectorDakota(bool* vector, int name, int type){
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Matpar::InputUpdateFromMatrixDakota(int* vector, int name, int type) {{{*/
+/*FUNCTION Matpar::InputUpdateFromMatrixDakota(IssmDouble* vector, int name, int type) {{{*/
 void  Matpar::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols,int name, int type){
 	/*Nothing updated yet*/
Index: /issm/trunk-jpl/src/c/classes/Materials/Matpar.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Materials/Matpar.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Materials/Matpar.h	(revision 16125)
@@ -71,10 +71,6 @@
 		/*Update virtual functions resolution: {{{*/
 		void   InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void   InputUpdateFromVector(int* vector, int name, int type);
-		void   InputUpdateFromVector(bool* vector, int name, int type);
 		void   InputUpdateFromMatrixDakota(IssmDouble* matrix,int nrows,int ncols, int name, int type);
 		void   InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void   InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void   InputUpdateFromVectorDakota(bool* vector, int name, int type);
 		void   InputUpdateFromConstant(IssmDouble constant, int name);
 		void   InputUpdateFromConstant(int constant, int name);
Index: /issm/trunk-jpl/src/c/classes/Node.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Node.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Node.cpp	(revision 16125)
@@ -575,64 +575,4 @@
 	return indexing.clone;
 
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVector(IssmDouble* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVector(IssmDouble* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVector(int* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVector(int* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVector(bool* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVector(bool* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type){{{*/
-void  Node::InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrows, int ncols, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVectorDakota(int* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVectorDakota(int* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromVectorDakota(bool* vector, int name, int type){{{*/
-void  Node::InputUpdateFromVectorDakota(bool* vector, int name, int type){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromConstant(IssmDouble constant, int name){{{*/
-void  Node::InputUpdateFromConstant(IssmDouble constant, int name){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromConstant(int constant, int name){{{*/
-void  Node::InputUpdateFromConstant(int constant, int name){
-
-	/*Nothing updated yet*/
-}
-/*}}}*/
-/*FUNCTION Node::InputUpdateFromConstant(bool constant, int name){{{*/
-void  Node::InputUpdateFromConstant(bool constant, int name){
-
-	/*Nothing updated yet*/
 }
 /*}}}*/
Index: /issm/trunk-jpl/src/c/classes/Node.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Node.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Node.h	(revision 16125)
@@ -23,5 +23,5 @@
 /*}}}*/
 
-class Node: public Object ,public Update{
+class Node: public Object{
 
 	private:
@@ -50,18 +50,4 @@
 		int     ObjectEnum();
 		Object *copy(){_error_("Not implemented yet (similar to Elements)"); };
-
-		/*Update virtual functions definitions:*/
-		void  InputUpdateFromVector(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVector(int* vector, int name, int type);
-		void  InputUpdateFromVector(bool* vector, int name, int type);
-		void  InputUpdateFromMatrixDakota(IssmDouble* matrix,int nrows, int ncols, int name, int type);
-		void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(int* vector, int name, int type);
-		void  InputUpdateFromVectorDakota(bool* vector, int name, int type);
-		void  InputUpdateFromConstant(IssmDouble constant, int name);
-		void  InputUpdateFromConstant(int constant, int name);
-		void  InputUpdateFromConstant(bool constant, int name);
-		void  InputUpdateFromSolution(IssmDouble* solution){_error_("Not implemented yet!");}
-		void  InputUpdateFromIoModel(int index, IoModel* iomodel){_error_("Not implemented yet!");}
 
 		/*Node numerical routines*/
Index: /issm/trunk-jpl/src/c/classes/Update.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Update.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/classes/Update.h	(revision 16125)
@@ -15,11 +15,7 @@
 
 		virtual void  InputUpdateFromVector(IssmDouble* vector, int name, int type)=0;
-		virtual void  InputUpdateFromVector(int* vector, int name, int type)=0;
-		virtual void  InputUpdateFromVector(bool* vector, int name, int type)=0; 
 		#ifdef _HAVE_DAKOTA_
 		virtual void  InputUpdateFromMatrixDakota(IssmDouble* matrix, int rows, int ncols, int name, int type)=0;
 		virtual void  InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type)=0;
-		virtual void  InputUpdateFromVectorDakota(int* vector, int name, int type)=0;
-		virtual void  InputUpdateFromVectorDakota(bool* vector, int name, int type)=0;
 		#endif
 		virtual void  InputUpdateFromConstant(IssmDouble constant, int name)=0;
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromMatrixDakotax/InputUpdateFromMatrixDakotax.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromMatrixDakotax/InputUpdateFromMatrixDakotax.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromMatrixDakotax/InputUpdateFromMatrixDakotax.cpp	(revision 16125)
@@ -23,8 +23,4 @@
 			element->InputUpdateFromMatrixDakota(matrix,nrows,ncols,name,type);
 		}
-		for(i=0;i<femmodel->nodes->Size();i++){
-			Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-			node->InputUpdateFromMatrixDakota(matrix,nrows,ncols,name,type);
-		}
 		for(i=0;i<femmodel->loads->Size();i++){
 			Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.cpp	(revision 16125)
@@ -25,8 +25,4 @@
 		element->InputUpdateFromVectorDakota(vector,name,type);
 	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVectorDakota(vector,name,type);
-	}
 	for(i=0;i<femmodel->loads->Size();i++){
 		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
@@ -38,48 +34,2 @@
 	}
 }
-
-void InputUpdateFromVectorDakotax(FemModel* femmodel,int* vector, int name, int type){
-
-	int i;
-
-	/*Update elements, nodes, loads and materials from inputs: */
-	for(i=0;i<femmodel->elements->Size();i++){
-		Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));
-		element->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->loads->Size();i++){
-		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
-		load->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->materials->Size();i++){
-		Material* material=(Material*)femmodel->materials->GetObjectByOffset(i);
-		material->InputUpdateFromVectorDakota(vector,name,type);
-	}
-}
-
-void InputUpdateFromVectorDakotax(FemModel* femmodel,bool* vector, int name, int type){
-
-	int i;
-
-	/*Update elements, nodes, loads and materials from inputs: */
-	for(i=0;i<femmodel->elements->Size();i++){
-		Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));
-		element->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->loads->Size();i++){
-		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
-		load->InputUpdateFromVectorDakota(vector,name,type);
-	}
-	for(i=0;i<femmodel->materials->Size();i++){
-		Material* material=(Material*)femmodel->materials->GetObjectByOffset(i);
-		material->InputUpdateFromVectorDakota(vector,name,type);
-	}
-}
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.h
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorDakotax/InputUpdateFromVectorDakotax.h	(revision 16125)
@@ -11,6 +11,4 @@
 void	InputUpdateFromVectorDakotax(FemModel* femmodel,Vector<IssmDouble>* vector, int name,int type);
 void	InputUpdateFromVectorDakotax(FemModel* femmodel,IssmDouble* vector, int name,int type);
-void	InputUpdateFromVectorDakotax(FemModel* femmodel,int* vector, int name,int type);
-void	InputUpdateFromVectorDakotax(FemModel* femmodel,bool* vector, int name,int type);
 
 #endif  /* _UPDATEINPUTSFROMVECTORDAKOTAXX_H */
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp	(revision 16124)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp	(revision 16125)
@@ -23,8 +23,4 @@
 		element->InputUpdateFromVector(vector,name,type);
 	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVector(vector,name,type);
-	}
 	for(i=0;i<femmodel->loads->Size();i++){
 		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
@@ -36,48 +32,2 @@
 	}
 }
-
-void InputUpdateFromVectorx(FemModel* femmodel,int* vector, int name, int type){
-
-	int i;
-
-	/*Update elements, nodes, loads and materials from inputs: */
-	for(i=0;i<femmodel->elements->Size();i++){
-		Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));
-		element->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->loads->Size();i++){
-		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
-		load->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->materials->Size();i++){
-		Material* material=(Material*)femmodel->materials->GetObjectByOffset(i);
-		material->InputUpdateFromVector(vector,name,type);
-	}
-}
-
-void InputUpdateFromVectorx(FemModel* femmodel,bool* vector, int name, int type){
-
-	int i;
-
-	/*Update elements, nodes, loads and materials from inputs: */
-	for(i=0;i<femmodel->elements->Size();i++){
-		Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));
-		element->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->nodes->Size();i++){
-		Node* node=(Node*)femmodel->nodes->GetObjectByOffset(i);
-		node->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->loads->Size();i++){
-		Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
-		load->InputUpdateFromVector(vector,name,type);
-	}
-	for(i=0;i<femmodel->materials->Size();i++){
-		Material* material=(Material*)femmodel->materials->GetObjectByOffset(i);
-		material->InputUpdateFromVector(vector,name,type);
-	}
-}
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h	(revision 16124)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h	(revision 16125)
@@ -11,6 +11,4 @@
 void	InputUpdateFromVectorx(FemModel* femmodel,Vector<IssmDouble>* vector, int name,int type);
 void	InputUpdateFromVectorx(FemModel* femmodel,IssmDouble* vector, int name,int type);
-void	InputUpdateFromVectorx(FemModel* femmodel,int* vector, int name,int type);
-void	InputUpdateFromVectorx(FemModel* femmodel,bool* vector, int name,int type);
 
 #endif  /* _UPDATEINPUTSFROMVECTORXX_H */
