Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 2382)
+++ /issm/trunk/src/c/Makefile.am	(revision 2383)
@@ -599,5 +599,5 @@
 					./parallel/control_core.cpp\
 					./parallel/ControlInitialization.cpp\
-					./parallel/ControlTemporaryResults.cpp\
+					./parallel/ControlRestart.cpp\
 					./parallel/objectivefunctionC.cpp\
 					./parallel/gradjcompute_core.cpp\
Index: /issm/trunk/src/c/ModelProcessorx/Control/CreateParametersControl.cpp
===================================================================
--- /issm/trunk/src/c/ModelProcessorx/Control/CreateParametersControl.cpp	(revision 2382)
+++ /issm/trunk/src/c/ModelProcessorx/Control/CreateParametersControl.cpp	(revision 2383)
@@ -49,4 +49,5 @@
 	
 	if(iomodel->control_analysis){
+
 		/*control_type: */
 		count++;
Index: /issm/trunk/src/c/ModelProcessorx/CreateParameters.cpp
===================================================================
--- /issm/trunk/src/c/ModelProcessorx/CreateParameters.cpp	(revision 2382)
+++ /issm/trunk/src/c/ModelProcessorx/CreateParameters.cpp	(revision 2383)
@@ -39,4 +39,10 @@
 	numpar= new Numpar(count);
 	parameters->AddObject(numpar);
+
+	//outputfilename
+	count++;
+	param= new Param(count,"outputfilename",STRING);
+	param->SetString(iomodel->outputfilename);
+	parameters->AddObject(param);
 
 
Index: /issm/trunk/src/c/ModelProcessorx/IoModel.cpp
===================================================================
--- /issm/trunk/src/c/ModelProcessorx/IoModel.cpp	(revision 2382)
+++ /issm/trunk/src/c/ModelProcessorx/IoModel.cpp	(revision 2383)
@@ -33,4 +33,6 @@
 	/*!initialize all pointers to 0: */
 	iomodel->name=NULL;
+	iomodel->inputfilename=NULL;
+	iomodel->outputfilename=NULL;
 	iomodel->repository=NULL;
 	iomodel->meshtype=NULL;
@@ -256,4 +258,6 @@
 
 	/*!Delete structure fields: */
+	xfree((void**)&iomodel->inputfilename);
+	xfree((void**)&iomodel->outputfilename);
 	xfree((void**)&iomodel->repository);
 	xfree((void**)&iomodel->meshtype);
@@ -296,4 +300,6 @@
 	/*In IoModelInit, we get all the data that is not difficult to get, and that is small: */
 	IoModelFetchData(&iomodel->name,iomodel_handle,"name"); 
+	IoModelFetchData(&iomodel->inputfilename,iomodel_handle,"inputfilename"); 
+	IoModelFetchData(&iomodel->outputfilename,iomodel_handle,"outputfilename"); 
 	IoModelFetchData(&iomodel->analysis_type,iomodel_handle,"analysis_type"); 
 	IoModelFetchData(&iomodel->sub_analysis_type,iomodel_handle,"sub_analysis_type"); 
Index: /issm/trunk/src/c/ModelProcessorx/IoModel.h
===================================================================
--- /issm/trunk/src/c/ModelProcessorx/IoModel.h	(revision 2382)
+++ /issm/trunk/src/c/ModelProcessorx/IoModel.h	(revision 2383)
@@ -16,4 +16,6 @@
 
 	char*   name;
+	char*	  inputfilename;
+	char*	  outputfilename;
 	char*   repository;
 	char*   meshtype;
Index: /issm/trunk/src/c/parallel/ControlRestart.cpp
===================================================================
--- /issm/trunk/src/c/parallel/ControlRestart.cpp	(revision 2382)
+++ /issm/trunk/src/c/parallel/ControlRestart.cpp	(revision 2383)
@@ -51,5 +51,4 @@
 	
 	/*Free ressources:*/
-	delete result;
 	delete temporary_results;
 	delete results;
Index: /issm/trunk/src/c/parallel/control_core.cpp
===================================================================
--- /issm/trunk/src/c/parallel/control_core.cpp	(revision 2382)
+++ /issm/trunk/src/c/parallel/control_core.cpp	(revision 2383)
@@ -166,9 +166,9 @@
 
 		//some temporary saving
-		/*if (((n+1)%5)==0){
+		if (((n+1)%1)==0){
 			_printf_("%s\n","      saving temporary results...");
-			ControlTemporaryResults(model,param_g,J,n,inputs);
+			ControlRestart(model,param_g);
 			_printf_("%s\n","      done.");
-		}*/
+		}
 	}
 
Index: /issm/trunk/src/c/parallel/parallel.h
===================================================================
--- /issm/trunk/src/c/parallel/parallel.h	(revision 2382)
+++ /issm/trunk/src/c/parallel/parallel.h	(revision 2383)
@@ -48,5 +48,5 @@
 
 void ControlInitialization(Model* model, ParameterInputs* inputs);
-void ControlTemporaryResults(Model* model,double* param_g,double* J,int n,ParameterInputs* inputs);
+void ControlRestart(Model* model,double* param_g);
 
 void CreateFemModel(FemModel* femmodel,ConstDataHandle MODEL,int analysis_type,int sub_analysis_type);
