Index: /issm/trunk/src/mex/CostFunction/CostFunction.cpp
===================================================================
--- /issm/trunk/src/mex/CostFunction/CostFunction.cpp	(revision 4098)
+++ /issm/trunk/src/mex/CostFunction/CostFunction.cpp	(revision 4099)
@@ -17,6 +17,4 @@
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
-	int      analysis_type;
-	int      sub_analysis_type;
 
 	/* output datasets: */
@@ -36,9 +34,7 @@
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
-	FetchData(&analysis_type,ANALYSIS);
-	FetchData(&sub_analysis_type,SUBANALYSIS);
 
 	/*!Call core code: */
-	CostFunctionx(&J, elements,nodes,vertices, loads,materials,parameters,analysis_type,sub_analysis_type);
+	CostFunctionx(&J, elements,nodes,vertices, loads,materials,parameters);
 
 	/*write output : */
Index: /issm/trunk/src/mex/CostFunction/CostFunction.h
===================================================================
--- /issm/trunk/src/mex/CostFunction/CostFunction.h	(revision 4098)
+++ /issm/trunk/src/mex/CostFunction/CostFunction.h	(revision 4099)
@@ -23,6 +23,4 @@
 #define MATERIALS (mxArray*)prhs[4]
 #define PARAMETERS (mxArray*)prhs[5]
-#define ANALYSIS (mxArray*)prhs[6]
-#define SUBANALYSIS (mxArray*)prhs[7]
 
 /* serial output macros: */
@@ -33,7 +31,7 @@
 #define NLHS  1
 #undef NRHS
-#define NRHS  8
+#define NRHS  6
 
-#endif  /* _MISFIT_H */
+#endif  /* _COSTFUNCTION_H */
 
 
Index: /issm/trunk/src/mex/Du/Du.cpp
===================================================================
--- /issm/trunk/src/mex/Du/Du.cpp	(revision 4098)
+++ /issm/trunk/src/mex/Du/Du.cpp	(revision 4099)
@@ -17,6 +17,4 @@
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
-	int               analysis_type;
-	int               sub_analysis_type;
 
 	/* output datasets: */
@@ -36,9 +34,7 @@
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
-	FetchData(&analysis_type,ANALYSIS);
-	FetchData(&sub_analysis_type,SUBANALYSIS);
 
 	/*!Call core code: */
-	Dux(&du_g, elements,nodes,vertices, loads,materials,parameters,analysis_type,sub_analysis_type);
+	Dux(&du_g, elements,nodes,vertices, loads,materials,parameters);
 
 	/*write output : */
Index: /issm/trunk/src/mex/Du/Du.h
===================================================================
--- /issm/trunk/src/mex/Du/Du.h	(revision 4098)
+++ /issm/trunk/src/mex/Du/Du.h	(revision 4099)
@@ -23,6 +23,4 @@
 #define MATERIALS (mxArray*)prhs[4]
 #define PARAMETERS (mxArray*)prhs[5]
-#define ANALYSIS (mxArray*)prhs[6]
-#define SUBANALYSIS (mxArray*)prhs[7]
 
 /* serial output macros: */
@@ -33,5 +31,5 @@
 #define NLHS  1
 #undef NRHS
-#define NRHS  8
+#define NRHS  6
 
 #endif  /* _DU_H */
Index: /issm/trunk/src/mex/InputExtrude/ExtrudeInput.cpp
===================================================================
--- /issm/trunk/src/mex/InputExtrude/ExtrudeInput.cpp	(revision 4099)
+++ /issm/trunk/src/mex/InputExtrude/ExtrudeInput.cpp	(revision 4099)
@@ -0,0 +1,60 @@
+/*\file ExtrudeInput.c
+ *\brief: extrude input vertically
+ */
+
+#include "./ExtrudeInput.h"
+
+void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
+
+	/*diverse: */
+	int   noerr=1;
+
+	/*input datasets: */
+	DataSet* elements=NULL;
+	DataSet* nodes=NULL;
+	DataSet* vertices=NULL;
+	DataSet* loads=NULL;
+	DataSet* materials=NULL;
+	Parameters* parameters=NULL;
+	int      NameEnum;
+
+	/*Boot module: */
+	MODULEBOOT();
+
+	/*checks on arguments on the matlab side: */
+	CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&ExtrudeInputUsage);
+
+	/*Input datasets: */
+	FetchData(&elements,ELEMENTS);
+	FetchData(&nodes,NODES);
+	FetchData(&vertices,VERTICES);
+	FetchData(&loads,LOADS);
+	FetchData(&materials,MATERIALS);
+	FetchParams(&parameters,PARAMETERS);
+	FetchData(&NameEnum,NAME);
+
+	/*!Call core code: */
+	ExtrudeInputx(elements,nodes,vertices,loads,materials,parameters,NameEnum);
+
+	/*write output : */
+	WriteData(ELEMENTSOUT,elements);
+
+	/*Free ressources: */
+	delete elements;
+	delete nodes;
+	delete vertices;
+	delete loads;
+	delete materials;
+	delete parameters;
+	
+	/*end module: */
+	MODULEEND();
+
+}
+
+void ExtrudeInputUsage(void)
+{
+	_printf_("\n");
+	_printf_("   usage: [elements] = %s(elements, nodes, vertices, loads, materials, parameters, name_enum);\n",__FUNCT__);
+	_printf_("\n");
+}
Index: /issm/trunk/src/mex/InputExtrude/ExtrudeInput.h
===================================================================
--- /issm/trunk/src/mex/InputExtrude/ExtrudeInput.h	(revision 4099)
+++ /issm/trunk/src/mex/InputExtrude/ExtrudeInput.h	(revision 4099)
@@ -0,0 +1,36 @@
+/*
+	ExtrudeInput.h
+*/
+
+#ifndef _EXTRUDEINPUT_H
+#define _EXTRUDEINPUT_H
+
+/* local prototypes: */
+void ExtrudeInputUsage(void);
+
+#include "../../c/modules/modules.h"
+#include "../../c/DataSet/DataSet.h"
+#include "../../c/shared/shared.h"
+
+#undef __FUNCT__ 
+#define __FUNCT__  "ExtrudeInput"
+
+/* serial input macros: */
+#define ELEMENTS (mxArray*)prhs[0]
+#define NODES (mxArray*)prhs[1]
+#define VERTICES (mxArray*)prhs[2]
+#define LOADS (mxArray*)prhs[3]
+#define MATERIALS (mxArray*)prhs[4]
+#define PARAMETERS (mxArray*)prhs[5]
+#define NAME (mxArray*)prhs[6]
+
+/* serial output macros: */
+#define ELEMENTSOUT (mxArray**)&plhs[0]
+
+/* serial arg counts: */
+#undef NLHS
+#define NLHS  1
+#undef NRHS
+#define NRHS  7
+
+#endif  /* _EXTRUDEINPUT_H */
Index: /issm/trunk/src/mex/Makefile.am
===================================================================
--- /issm/trunk/src/mex/Makefile.am	(revision 4098)
+++ /issm/trunk/src/mex/Makefile.am	(revision 4099)
@@ -15,5 +15,5 @@
 				ContourToMesh \
 				ContourToNodes \
-				ControlConstrain \
+				InputControlConstrain \
 				CostFunction \
 				InputDepthAverage\
@@ -120,6 +120,6 @@
 			  ControlOptimization/ControlOptimization.h
 
-ControlConstrain_SOURCES = ControlConstrain/ControlConstrain.cpp\
-			  ControlConstrain/ControlConstrain.h
+InputControlConstrain_SOURCES = InputControlConstrain/InputControlConstrain.cpp\
+			  InputControlConstrain/InputControlConstrain.h
 
 CostFunction_SOURCES =  CostFunction/CostFunction.cpp \
Index: /issm/trunk/src/mex/NodesDof/NodesDof.cpp
===================================================================
--- /issm/trunk/src/mex/NodesDof/NodesDof.cpp	(revision 4098)
+++ /issm/trunk/src/mex/NodesDof/NodesDof.cpp	(revision 4099)
@@ -8,6 +8,6 @@
 
 	/*input datasets: */
-	DataSet* vertices=NULL;
-	Parameters* params=NULL;
+	DataSet* nodes=NULL;
+	Parameters* parameters=NULL;
 
 	/*Boot module: */
@@ -19,8 +19,8 @@
 	/*Input datasets: */
 	FetchData(&nodes,NODESIN);
-	FetchData((DataSet**)&params,PARAMS);
+	FetchData((DataSet**)&parameters,PARAMETERS);
 
 	/*!Generate internal degree of freedom numbers: */
-	NodesDofx(nodes, params); 
+	NodesDofx(nodes, parameters); 
 
 	/*write output datasets: */
@@ -29,5 +29,5 @@
 	/*Free ressources: */
 	delete nodes;
-	delete params;
+	delete parameters;
 	/*end module: */
 	MODULEEND();
@@ -37,5 +37,5 @@
 {
 	_printf_("\n");
-	_printf_("   usage: [nodes] = %s(nodes,params);\n",__FUNCT__);
+	_printf_("   usage: [nodes] = %s(nodes,parameters);\n",__FUNCT__);
 	_printf_("\n");
 }
Index: /issm/trunk/src/mex/NodesDof/NodesDof.h
===================================================================
--- /issm/trunk/src/mex/NodesDof/NodesDof.h	(revision 4098)
+++ /issm/trunk/src/mex/NodesDof/NodesDof.h	(revision 4099)
@@ -20,5 +20,5 @@
 /* serial input macros: */
 #define NODESIN (mxArray*)prhs[0]
-#define PARAMS (mxArray*)prhs[1]
+#define PARAMETERS (mxArray*)prhs[1]
 
 /* serial output macros: */
Index: /issm/trunk/src/mex/VerticesDof/VerticesDof.cpp
===================================================================
--- /issm/trunk/src/mex/VerticesDof/VerticesDof.cpp	(revision 4098)
+++ /issm/trunk/src/mex/VerticesDof/VerticesDof.cpp	(revision 4099)
@@ -12,9 +12,9 @@
 	/*input datasets: */
 	DataSet* vertices=NULL;
-	Parameters* params=NULL;
+	Parameters* parameters=NULL;
 
 	/* output datasets: */
-	VerticesDofVec* partition=NULL;
-	VerticesDofVec* tpartition=NULL;
+	DofVec* partition=NULL;
+	DofVec* tpartition=NULL;
 
 	/*Boot module: */
@@ -26,8 +26,8 @@
 	/*Input datasets: */
 	FetchData(&vertices,VERTICESIN);
-	FetchData((DataSet**)&params,PARAMS);
+	FetchData((DataSet**)&parameters,PARAMETERS);
 
 	/*!Generate internal degree of freedom numbers: */
-	VerticesDofx(&partition, &tpartition, vertices, params); 
+	VerticesDofx(&partition, &tpartition, vertices, parameters); 
 
 	/*partition and tpartition should be incremented by 1: */
@@ -42,5 +42,5 @@
 	/*Free ressources: */
 	delete vertices;
-	delete params;
+	delete parameters;
 	delete partition;
 	delete tpartition;
@@ -53,5 +53,5 @@
 {
 	_printf_("\n");
-	_printf_("   usage: [vertices,part,tpart] = %s(vertices,params);\n",__FUNCT__);
+	_printf_("   usage: [vertices,part,tpart] = %s(vertices,parameters);\n",__FUNCT__);
 	_printf_("\n");
 }
Index: /issm/trunk/src/mex/VerticesDof/VerticesDof.h
===================================================================
--- /issm/trunk/src/mex/VerticesDof/VerticesDof.h	(revision 4098)
+++ /issm/trunk/src/mex/VerticesDof/VerticesDof.h	(revision 4099)
@@ -20,5 +20,5 @@
 /* serial input macros: */
 #define VERTICESIN (mxArray*)prhs[0]
-#define PARAMS (mxArray*)prhs[1]
+#define PARAMETERS (mxArray*)prhs[1]
 
 /* serial output macros: */
