Index: /issm/branches/trunk-larour-SLPS2020/src/c/main/issm_post.cpp
===================================================================
--- /issm/branches/trunk-larour-SLPS2020/src/c/main/issm_post.cpp	(revision 25349)
+++ /issm/branches/trunk-larour-SLPS2020/src/c/main/issm_post.cpp	(revision 25350)
@@ -7,14 +7,33 @@
 int main(int argc,char **argv){
 	
-	char* dakota_input_file=NULL;
+	char* method=NULL;
 
-	/*Initialize MPI: */
-	ISSM_MPI_Init(&argc, &argv); // initialize MPI
+	/*Initialize environment (MPI, PETSC, MUMPS, etc ...)*/
+	ISSM_MPI_Comm comm_init=EnvironmentInit(argc,argv);
 
-	/*Recover file name for dakota input file:*/
-	dakota_input_file=xNew<char>((strlen(argv[2])+strlen(argv[3])+strlen(".qmu.in")+2));
-	sprintf(dakota_input_file,"%s/%s%s",argv[2],argv[3],".qmu.in");
+	/*First things first, store the communicator, and set it as a global variable: */
+	IssmComm::SetComm(comm_init);
 
-	xDelete<char>(dakota_input_file);
+	/*Get rank:*/
+	int my_rank=IssmComm::GetRank();
+
+	/*Initialize parameters:*/
+	Parameters  *parameters   = new Parameters();
+
+	/*Method:*/
+	method=argv[1];
+	parameters->AddObject(new StringParam(SolutionTypeEnum,argv[1]));
+
+	/*Directory:*/
+	parameters->AddObject(new StringParam(DirectoryEnum,argv[2]));
+
+	/*Model name:*/
+	parameters->AddObject(new StringParam(InputFileNameEnum,argv[3]));
+
+	/*Key off method:*/
+	if(strcmp(model,"MeanVariance")==0)
+	if 
+	switch(method){
+		case 
 
 	/*Finalize ISSM:*/
