Index: /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 9649)
+++ /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 9650)
@@ -72,4 +72,11 @@
 	MaskVertexonfloatingiceEnum,
 	MaskVertexonwaterEnum,
+	QmuIsdakotaEnum,
+	QmuMassFluxSegmentsEnum,
+	QmuPartitionEnum,
+	QmuNumberofpartitionsEnum,
+	QmuNumberofresponsesEnum,
+	QmuResponsedescriptorsEnum,
+	QmuVariabledescriptorsEnum,
 	BalancethicknessSpcthicknessEnum,
 	BalancethicknessThickeningRateEnum,
@@ -373,11 +380,7 @@
 	NumberOfVerticesEnum,
 	OutputFilePointerEnum,
-	DakotaAnalysisEnum,
 	QmuErrNameEnum,
 	QmuInNameEnum,
-	QmuMassFluxSegmentsEnum,
 	QmuOutNameEnum,
-	QmuPartEnum,
-	QmuNumberOfResponsesEnum,
 	IndexedEnum,
 	RegularEnum,
@@ -385,6 +388,4 @@
 	ScaledEnum,
 	NodalEnum,
-	ResponsedescriptorsEnum,
-	VariabledescriptorsEnum,
 	VerboseEnum,
 	PetscOptionsStringsEnum,
@@ -469,6 +470,5 @@
 	WaitonlockEnum,
 	NumberOfResponsesEnum,
-	NpartEnum,
-	PartEnum,
+
 	MaxSteadystateIterationsEnum,
 	RequestedOutputsEnum,
Index: /issm/trunk/src/c/modules/AverageOntoPartitionx/AverageOntoPartitionx.cpp
===================================================================
--- /issm/trunk/src/c/modules/AverageOntoPartitionx/AverageOntoPartitionx.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/AverageOntoPartitionx/AverageOntoPartitionx.cpp	(revision 9650)
@@ -35,9 +35,9 @@
 
 	/*First, recover qmu partition of vertices: */
-	parameters->FindParam(&qmu_part,&dummy,QmuPartEnum);
+	parameters->FindParam(&qmu_part,&dummy,QmuPartitionEnum);
 
 	/*Some parameters: */
 	numberofvertices=vertices->NumberOfVertices();
-	parameters->FindParam(&npart,NpartEnum);
+	parameters->FindParam(&npart,QmuNumberofpartitionsEnum);
 
 	/*average onto the separate areas. The result will be a npart sized vector. */
Index: /issm/trunk/src/c/modules/DakotaResponsesx/DakotaResponsesx.cpp
===================================================================
--- /issm/trunk/src/c/modules/DakotaResponsesx/DakotaResponsesx.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/DakotaResponsesx/DakotaResponsesx.cpp	(revision 9650)
@@ -36,5 +36,5 @@
 
 	/*retrieve npart: */
-	parameters->FindParam(&npart,NpartEnum);
+	parameters->FindParam(&npart,QmuNumberofpartitionsEnum);
 
 	/*save the d_responses pointer: */
Index: /issm/trunk/src/c/modules/Dakotax/SpawnCoreParallel.cpp
===================================================================
--- /issm/trunk/src/c/modules/Dakotax/SpawnCoreParallel.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/Dakotax/SpawnCoreParallel.cpp	(revision 9650)
@@ -55,5 +55,5 @@
 	
 	/*retrieve parameters: */
-	femmodel->parameters->FindParam(&responses_descriptors,&numresponsedescriptors,ResponsedescriptorsEnum);
+	femmodel->parameters->FindParam(&responses_descriptors,&numresponsedescriptors,QmuResponsedescriptorsEnum);
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
 	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
Index: /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp
===================================================================
--- /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp	(revision 9650)
@@ -76,4 +76,11 @@
 		case MaskVertexonfloatingiceEnum : return "MaskVertexonfloatingice";
 		case MaskVertexonwaterEnum : return "MaskVertexonwater";
+		case QmuIsdakotaEnum : return "QmuIsdakota";
+		case QmuMassFluxSegmentsEnum : return "QmuMassFluxSegments";
+		case QmuPartitionEnum : return "QmuPartition";
+		case QmuNumberofpartitionsEnum : return "QmuNumberofpartitions";
+		case QmuNumberofresponsesEnum : return "QmuNumberofresponses";
+		case QmuResponsedescriptorsEnum : return "QmuResponsedescriptors";
+		case QmuVariabledescriptorsEnum : return "QmuVariabledescriptors";
 		case BalancethicknessSpcthicknessEnum : return "BalancethicknessSpcthickness";
 		case BalancethicknessThickeningRateEnum : return "BalancethicknessThickeningRate";
@@ -325,11 +332,7 @@
 		case NumberOfVerticesEnum : return "NumberOfVertices";
 		case OutputFilePointerEnum : return "OutputFilePointer";
-		case DakotaAnalysisEnum : return "DakotaAnalysis";
 		case QmuErrNameEnum : return "QmuErrName";
 		case QmuInNameEnum : return "QmuInName";
-		case QmuMassFluxSegmentsEnum : return "QmuMassFluxSegments";
 		case QmuOutNameEnum : return "QmuOutName";
-		case QmuPartEnum : return "QmuPart";
-		case QmuNumberOfResponsesEnum : return "QmuNumberOfResponses";
 		case IndexedEnum : return "Indexed";
 		case RegularEnum : return "Regular";
@@ -337,6 +340,4 @@
 		case ScaledEnum : return "Scaled";
 		case NodalEnum : return "Nodal";
-		case ResponsedescriptorsEnum : return "Responsedescriptors";
-		case VariabledescriptorsEnum : return "Variabledescriptors";
 		case VerboseEnum : return "Verbose";
 		case PetscOptionsStringsEnum : return "PetscOptionsStrings";
@@ -413,6 +414,4 @@
 		case WaitonlockEnum : return "Waitonlock";
 		case NumberOfResponsesEnum : return "NumberOfResponses";
-		case NpartEnum : return "Npart";
-		case PartEnum : return "Part";
 		case MaxSteadystateIterationsEnum : return "MaxSteadystateIterations";
 		case RequestedOutputsEnum : return "RequestedOutputs";
Index: /issm/trunk/src/c/modules/InputUpdateFromDakotax/InputUpdateFromDakotax.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromDakotax/InputUpdateFromDakotax.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/InputUpdateFromDakotax/InputUpdateFromDakotax.cpp	(revision 9650)
@@ -25,6 +25,6 @@
 
 	/*retrieve parameters: */
-	parameters->FindParam(&npart,NpartEnum);
-	parameters->FindParam(&qmu_part,&dummy,QmuPartEnum);
+	parameters->FindParam(&npart,QmuNumberofpartitionsEnum);
+	parameters->FindParam(&qmu_part,&dummy,QmuPartitionEnum);
 	numberofvertices=vertices->NumberOfVertices();
 
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp	(revision 9650)
@@ -29,5 +29,5 @@
 	iomodel->Constant(&numberofelements,NumberOfElementsEnum);
 	iomodel->Constant(&control_analysis,ControlAnalysisEnum);
-	iomodel->Constant(&dakota_analysis,DakotaAnalysisEnum);
+	iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*Now, is the flag macayaealpattyn on? otherwise, do nothing: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/Qmu/CreateParametersQmu.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Qmu/CreateParametersQmu.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Qmu/CreateParametersQmu.cpp	(revision 9650)
@@ -63,6 +63,6 @@
 
 	/*recover parameters: */
-	iomodel->Constant(&dakota_analysis,DakotaAnalysisEnum);
-	parameters->AddObject(new BoolParam(DakotaAnalysisEnum,dakota_analysis));
+	iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);
+	parameters->AddObject(new BoolParam(QmuIsdakotaEnum,dakota_analysis));
 
 	if(dakota_analysis){
@@ -86,22 +86,22 @@
 		/*}}}*/
 		/*Fetch variable descriptors: {{{1*/
-		iomodel->FetchData(&variabledescriptors,&numvariabledescriptors,VariabledescriptorsEnum);
+		iomodel->FetchData(&variabledescriptors,&numvariabledescriptors,QmuVariabledescriptorsEnum);
 
 		/*Ok, we have all the variable descriptors. Build a parameter with it: */
-		parameters->AddObject(new StringArrayParam(VariabledescriptorsEnum,variabledescriptors,numvariabledescriptors));
+		parameters->AddObject(new StringArrayParam(QmuVariabledescriptorsEnum,variabledescriptors,numvariabledescriptors));
 
 		/*}}}*/
 		/*Fetch response descriptors: {{{1*/
-		iomodel->FetchData(&responsedescriptors,&numresponsedescriptors,ResponsedescriptorsEnum);
+		iomodel->FetchData(&responsedescriptors,&numresponsedescriptors,QmuResponsedescriptorsEnum);
 
 		/*Ok, we have all the response descriptors. Build a parameter with it: */
-		parameters->AddObject(new StringArrayParam(ResponsedescriptorsEnum,responsedescriptors,numresponsedescriptors));
-		parameters->AddObject(new    IntParam(QmuNumberOfResponsesEnum,numberofresponses));
+		parameters->AddObject(new StringArrayParam(QmuResponsedescriptorsEnum,responsedescriptors,numresponsedescriptors));
+		parameters->AddObject(new    IntParam(QmuNumberofresponsesEnum,numberofresponses));
 		/*}}}*/
 		/*Deal with partitioning: {{{1*/
 		/*partition vertices in iomodel->qmu_npart parts, unless a partition is already present: */
 		
-		parameters->AddObject(iomodel->CopyConstantObject(NpartEnum));
-		iomodel->FetchData(&dpart,NULL,NULL,PartEnum);
+		parameters->AddObject(iomodel->CopyConstantObject(QmuNumberofpartitionsEnum));
+		iomodel->FetchData(&dpart,NULL,NULL,QmuPartitionEnum);
 
 		if(!dpart){
@@ -113,5 +113,5 @@
 			for(i=0;i<numberofvertices;i++)dpart[i]=iomodel->my_vertices[i];
 		}
-		parameters->AddObject(new DoubleVecParam(QmuPartEnum,dpart,numberofvertices));
+		parameters->AddObject(new DoubleVecParam(QmuPartitionEnum,dpart,numberofvertices));
 		/*}}}*/
 		/*Deal with data needed because of qmu variables: {{{1*/
Index: /issm/trunk/src/c/modules/ModelProcessorx/Thermal/UpdateElementsThermal.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Thermal/UpdateElementsThermal.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Thermal/UpdateElementsThermal.cpp	(revision 9650)
@@ -23,5 +23,5 @@
 	iomodel->Constant(&dim,DimEnum);
 	iomodel->Constant(&numberofelements,NumberOfElementsEnum);
-	iomodel->Constant(&dakota_analysis,DakotaAnalysisEnum);
+	iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*Now, is the model 3d? otherwise, do nothing: */
Index: /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 9650)
@@ -42,5 +42,5 @@
 
 	/*retrieve parameters: */
-	parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 
 	if(dakota_analysis){
Index: /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp
===================================================================
--- /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp	(revision 9649)
+++ /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp	(revision 9650)
@@ -74,4 +74,11 @@
 	else if (strcmp(name,"MaskVertexonfloatingice")==0) return MaskVertexonfloatingiceEnum;
 	else if (strcmp(name,"MaskVertexonwater")==0) return MaskVertexonwaterEnum;
+	else if (strcmp(name,"QmuIsdakota")==0) return QmuIsdakotaEnum;
+	else if (strcmp(name,"QmuMassFluxSegments")==0) return QmuMassFluxSegmentsEnum;
+	else if (strcmp(name,"QmuPartition")==0) return QmuPartitionEnum;
+	else if (strcmp(name,"QmuNumberofpartitions")==0) return QmuNumberofpartitionsEnum;
+	else if (strcmp(name,"QmuNumberofresponses")==0) return QmuNumberofresponsesEnum;
+	else if (strcmp(name,"QmuResponsedescriptors")==0) return QmuResponsedescriptorsEnum;
+	else if (strcmp(name,"QmuVariabledescriptors")==0) return QmuVariabledescriptorsEnum;
 	else if (strcmp(name,"BalancethicknessSpcthickness")==0) return BalancethicknessSpcthicknessEnum;
 	else if (strcmp(name,"BalancethicknessThickeningRate")==0) return BalancethicknessThickeningRateEnum;
@@ -323,11 +330,7 @@
 	else if (strcmp(name,"NumberOfVertices")==0) return NumberOfVerticesEnum;
 	else if (strcmp(name,"OutputFilePointer")==0) return OutputFilePointerEnum;
-	else if (strcmp(name,"DakotaAnalysis")==0) return DakotaAnalysisEnum;
 	else if (strcmp(name,"QmuErrName")==0) return QmuErrNameEnum;
 	else if (strcmp(name,"QmuInName")==0) return QmuInNameEnum;
-	else if (strcmp(name,"QmuMassFluxSegments")==0) return QmuMassFluxSegmentsEnum;
 	else if (strcmp(name,"QmuOutName")==0) return QmuOutNameEnum;
-	else if (strcmp(name,"QmuPart")==0) return QmuPartEnum;
-	else if (strcmp(name,"QmuNumberOfResponses")==0) return QmuNumberOfResponsesEnum;
 	else if (strcmp(name,"Indexed")==0) return IndexedEnum;
 	else if (strcmp(name,"Regular")==0) return RegularEnum;
@@ -335,6 +338,4 @@
 	else if (strcmp(name,"Scaled")==0) return ScaledEnum;
 	else if (strcmp(name,"Nodal")==0) return NodalEnum;
-	else if (strcmp(name,"Responsedescriptors")==0) return ResponsedescriptorsEnum;
-	else if (strcmp(name,"Variabledescriptors")==0) return VariabledescriptorsEnum;
 	else if (strcmp(name,"Verbose")==0) return VerboseEnum;
 	else if (strcmp(name,"PetscOptionsStrings")==0) return PetscOptionsStringsEnum;
@@ -411,6 +412,4 @@
 	else if (strcmp(name,"Waitonlock")==0) return WaitonlockEnum;
 	else if (strcmp(name,"NumberOfResponses")==0) return NumberOfResponsesEnum;
-	else if (strcmp(name,"Npart")==0) return NpartEnum;
-	else if (strcmp(name,"Part")==0) return PartEnum;
 	else if (strcmp(name,"MaxSteadystateIterations")==0) return MaxSteadystateIterationsEnum;
 	else if (strcmp(name,"RequestedOutputs")==0) return RequestedOutputsEnum;
Index: /issm/trunk/src/c/objects/Elements/Penta.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 9649)
+++ /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 9650)
@@ -7505,5 +7505,5 @@
 	iomodel->Constant(&yts,ConstantsYtsEnum);
 	iomodel->Constant(&stabilization,PrognosticStabilizationEnum);
-	iomodel->Constant(&dakota_analysis,DakotaAnalysisEnum);
+	iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);
 	iomodel->Constant(&isstokes,IsstokesEnum);
 	iomodel->Constant(&beta,MaterialsBetaEnum);
Index: /issm/trunk/src/c/objects/Elements/Tria.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 9649)
+++ /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 9650)
@@ -5220,5 +5220,5 @@
 	iomodel->Constant(&yts,ConstantsYtsEnum);
 	iomodel->Constant(&stabilization,PrognosticStabilizationEnum);
-	iomodel->Constant(&dakota_analysis,DakotaAnalysisEnum);
+	iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*Recover element type*/
Index: /issm/trunk/src/c/solutions/CorePointerFromSolutionEnum.cpp
===================================================================
--- /issm/trunk/src/c/solutions/CorePointerFromSolutionEnum.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/CorePointerFromSolutionEnum.cpp	(revision 9650)
@@ -29,5 +29,5 @@
 	/*retrieve some parameters: */
 	parameters->FindParam(&control_analysis,ControlAnalysisEnum);
-	parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 
 	switch(solutiontype){
Index: /issm/trunk/src/c/solutions/control_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/control_core.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/control_core.cpp	(revision 9650)
@@ -57,5 +57,5 @@
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
 	femmodel->parameters->FindParam(&isstokes,IsstokesEnum);
-	femmodel->parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*out of solution_type, figure out solution core and adjoint function pointer*/
Index: /issm/trunk/src/c/solutions/controlrestart.cpp
===================================================================
--- /issm/trunk/src/c/solutions/controlrestart.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/controlrestart.cpp	(revision 9650)
@@ -18,5 +18,5 @@
 	femmodel->parameters->FindParam(&control_type,NULL,ControlTypeEnum);
 	femmodel->parameters->FindParam(&nsteps,NstepsEnum);
-	femmodel->parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*only save if we are not running qmu analysis. We certainly don't want to save control results each time we 
Index: /issm/trunk/src/c/solutions/diagnostic_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/diagnostic_core.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/diagnostic_core.cpp	(revision 9650)
@@ -30,5 +30,5 @@
 	femmodel->parameters->FindParam(&ismacayealpattyn,IsmacayealpattynEnum);
 	femmodel->parameters->FindParam(&isstokes,IsstokesEnum);
-	femmodel->parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
Index: /issm/trunk/src/c/solutions/issm.cpp
===================================================================
--- /issm/trunk/src/c/solutions/issm.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/issm.cpp	(revision 9650)
@@ -87,5 +87,5 @@
 	/*get parameters: */
 	femmodel->parameters->FindParam(&waitonlock,WaitonlockEnum);
-	femmodel->parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
 
Index: /issm/trunk/src/c/solutions/thermal_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/thermal_core.cpp	(revision 9649)
+++ /issm/trunk/src/c/solutions/thermal_core.cpp	(revision 9650)
@@ -31,5 +31,5 @@
 	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
-	femmodel->parameters->FindParam(&dakota_analysis,DakotaAnalysisEnum);
+	femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
 
 	/*Compute number of time steps: */
Index: /issm/trunk/src/m/classes/clusters/castor.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/castor.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/castor.m	(revision 9650)
@@ -94,5 +94,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in'];
 				end
@@ -124,9 +124,9 @@
 			%What packages are we picking up from remote cluster
 			packages={[md.miscellaneous.name '.outlog'],[md.miscellaneous.name '.errlog']};
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/clusters/cosmos.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/cosmos.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/cosmos.m	(revision 9650)
@@ -93,5 +93,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in'];
 				end
@@ -123,9 +123,9 @@
 			%What packages are we picking up from remote cluster
 			packages={[md.miscellaneous.name '.outlog'],[md.miscellaneous.name '.errlog']};
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/clusters/gemini.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/gemini.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/gemini.m	(revision 9650)
@@ -94,5 +94,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in'];
 				end
@@ -124,9 +124,9 @@
 			%What packages are we picking up from remote cluster
 			packages={[md.miscellaneous.name '.outlog'],[md.miscellaneous.name '.errlog']};
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/clusters/generic.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/generic.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/generic.m	(revision 9650)
@@ -123,5 +123,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in'];
 				end
@@ -154,9 +154,9 @@
 			%What packages are we picking up from remote cluster
 			packages={[md.miscellaneous.name '.outlog'],[md.miscellaneous.name '.errlog']};
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/clusters/pfe.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/pfe.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/pfe.m	(revision 9650)
@@ -182,5 +182,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in '];
 				end
@@ -234,9 +234,9 @@
 				packages={};
 			end
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/clusters/pollux.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/pollux.m	(revision 9649)
+++ /issm/trunk/src/m/classes/clusters/pollux.m	(revision 9650)
@@ -94,5 +94,5 @@
 				%compress the files into one zip.
 				compressstring=['tar -zcf ' md.private.runtimename '.tar.gz ' md.miscellaneous.name '.bin ' md.miscellaneous.name '.queue '  md.miscellaneous.name '.petsc '];
-				if md.dakota_analysis,
+				if md.qmu.isdakota,
 					compressstring=[compressstring md.miscellaneous.name '.qmu.in'];
 				end
@@ -124,9 +124,9 @@
 			%What packages are we picking up from remote cluster
 			packages={[md.miscellaneous.name '.outlog'],[md.miscellaneous.name '.errlog']};
-			if md.dakota_analysis,
+			if md.qmu.isdakota,
 				packages{end+1}=[md.miscellaneous.name '.qmu.err'];
 				packages{end+1}=[md.miscellaneous.name '.qmu.out'];
-				if isfield(md.qmu_params,'tabular_graphics_data'),
-					if md.qmu_params.tabular_graphics_data==true,
+				if isfield(md.qmu.params,'tabular_graphics_data'),
+					if md.qmu.params.tabular_graphics_data==true,
 						packages{end+1}='dakota_tabular.dat'; 
 					end
Index: /issm/trunk/src/m/classes/model/model.m
===================================================================
--- /issm/trunk/src/m/classes/model/model.m	(revision 9649)
+++ /issm/trunk/src/m/classes/model/model.m	(revision 9650)
@@ -30,4 +30,5 @@
 		 materials = modelfield('default',0,'marshall',true);
 		 mask = modelfield('default',0,'marshall',true);
+		 qmu = modelfield('default',0,'marshall',true);
 		 balancethickness = modelfield('default',0,'marshall',true);
 
@@ -174,28 +175,8 @@
 		 waitonlock    = modelfield('default',0,'marshall',true,'format','Boolean');
 
-		 %qmu
-		 variables                       = modelfield('default',struct(),'marshall',false);
-		 responses                       = modelfield('default',struct(),'marshall',false);
-		 qmu_method                      = modelfield('default',struct(),'marshall',false);
-		 qmu_params                      = modelfield('default',struct(),'marshall',false);
-		 dakotaresults                   = modelfield('default',struct(),'marshall',false);
-		 dakota_analysis                    = modelfield('default',0,'marshall',true,'format','Boolean');
-		 part                            = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',2);
-		 npart                           = modelfield('default',0,'marshall',true,'format','Integer');
-		 numberofresponses               = modelfield('default',0,'marshall',true,'format','Integer');
-		 variabledescriptors             = modelfield('default',{},'marshall',true,'format','StringArray');
-		 responsedescriptors             = modelfield('default',{},'marshall',true,'format','StringArray');
-		 qmu_mass_flux_profile_directory = modelfield('default',NaN,'marshall',false);
-		 qmu_mass_flux_profiles          = modelfield('default',NaN,'marshall',false);
-		 qmu_mass_flux_segments          = modelfield('default',{},'marshall',true,'format','MatArray');
-
 		 %ad: automatic differentiation
 		 ad_analysis = modelfield('default',false,'marshall',true,'format','Boolean');
 		 ad_forward = modelfield('default',true,'marshall',true,'format','Boolean');
 		 ad_reverse = modelfield('default',false,'marshall',true,'format','Boolean');
-
-		 %partitioner:
-		 adjacency = modelfield('default',NaN,'marshall',false);
-		 vwgt      = modelfield('default',NaN,'marshall',false);
 		 %}}}
 	 end
@@ -311,5 +292,4 @@
 			 disp(sprintf('%s%s%s','      Parameters: type ''',inputname(1),'.par'' to display'));
 			 disp(sprintf('   Solution parameters: %s'));
-			 disp(sprintf('%s%s%s','      Qmu: type ''',inputname(1),'.qmu'' to display'));
 			 disp(sprintf('%s%s%s','      Diagnostic solution parameters: type ''',inputname(1),'.diagnostic'' to display'));
 			 disp(sprintf('%s%s%s','      Thermal solution parameters: type ''',inputname(1),'.thermal'' to display'));
@@ -357,5 +337,4 @@
 			 if isfield(structmd,'g'), md.constants.g=structmd.g; end
 			 if isfield(structmd,'yts'), md.constants.yts=structmd.yts; end
-			 if isfield(structmd,'dakota_analysis'), md.dakota_analysis=structmd.dakota_analysis; end
 			 if isfield(structmd,'surface_mass_balance'), md.surfaceforcings.mass_balance=structmd.surface_mass_balance; end
 			 if isfield(structmd,'basal_melting_rate'), md.basalforcings.melting_rate=structmd.basal_melting_rate; end
@@ -527,4 +506,5 @@
 			 md.materials=materials;
 			 md.mask=mask;
+			 md.qmu=qmu;
 			 md.balancethickness=balancethickness;
 
@@ -654,5 +634,4 @@
 				 if(strcmp(index1.subs,'res')), displayresults(md);return; end
 				 if(strcmp(index1.subs,'obs')), displayobservations(md);return; end
-				 if(strcmp(index1.subs,'qmu')), displayqmu(md);return; end
 				 if(strcmp(index1.subs,'diagnostic')), displaydiagnostic(md);return; end
 				 if(strcmp(index1.subs,'transient')), displaytransient(md);return; end
Index: /issm/trunk/src/m/classes/qmu.m
===================================================================
--- /issm/trunk/src/m/classes/qmu.m	(revision 9650)
+++ /issm/trunk/src/m/classes/qmu.m	(revision 9650)
@@ -0,0 +1,128 @@
+%QMU class definition
+%
+%   Usage:
+%      qmu=qmu();
+
+classdef qmu
+	properties (SetAccess=public) 
+		variables                   = modelfield('default',struct(),'marshall',false);
+		responses                   = modelfield('default',struct(),'marshall',false);
+		method                      = modelfield('default',struct(),'marshall',false);
+		params                      = modelfield('default',struct(),'marshall',false);
+		results                     = modelfield('default',struct(),'marshall',false);
+		isdakota                    = modelfield('default',0,'marshall',true,'format','Boolean');
+		partition                   = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',2);
+		numberofpartitions          = modelfield('default',0,'marshall',true,'format','Integer');
+		numberofresponses           = modelfield('default',0,'marshall',true,'format','Integer');
+		variabledescriptors         = modelfield('default',{},'marshall',true,'format','StringArray');
+		responsedescriptors         = modelfield('default',{},'marshall',true,'format','StringArray');
+		mass_flux_profile_directory = modelfield('default',NaN,'marshall',false);
+		mass_flux_profiles          = modelfield('default',NaN,'marshall',false);
+		mass_flux_segments          = modelfield('default',{},'marshall',true,'format','MatArray');
+		adjacency                   = modelfield('default',NaN,'marshall',false);
+		vertex_weight               = modelfield('default',NaN,'marshall',false);
+	end
+	methods
+		function obj = qmu(varargin) % {{{
+			switch nargin
+				case 0
+					obj=setdefaultparameters(obj);
+				case 1
+					in=varargin{1};
+					if (isa(in,'numeric') & in==0),
+						% requesting templates do nothing
+					else
+						error('constructor not supported');
+					end 
+				otherwise
+					error('constructor not supported');
+			end
+		end % }}}
+		function obj = setdefaultparameters(obj) % {{{
+
+			%first, use the defaults provided by the properties definition above. 
+			fieldnames=fields(obj);
+			for i=1:length(fieldnames),
+				fieldname=fieldnames{i};
+				obj.(fieldname)=obj.(fieldname).default;
+			end
+		end % }}}
+		function disp(obj) % {{{
+
+			fielddisplay(obj,'isdakota','is qmu analysis activated?');
+
+			for i=1:numel(obj.variables)
+				disp(sprintf('         variables%s:  (arrays of each variable class)',...
+					string_dim(obj.variables,i)));
+				fnames=fieldnames(obj.variables(i));
+				maxlen=0;
+				for j=1:numel(fnames)
+					maxlen=max(maxlen,length(fnames{j}));
+				end
+
+				for j=1:numel(fnames)
+					disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
+						fnames{j},size(obj.variables.(fnames{j})),class(obj.variables.(fnames{j}))));
+				end
+			end
+
+
+			for i=1:numel(obj.responses)
+				disp(sprintf('         responses%s:  (arrays of each response class)',...
+					string_dim(obj.responses,i)));
+				fnames=fieldnames(obj.responses(i));
+				maxlen=0;
+				for j=1:numel(fnames)
+					maxlen=max(maxlen,length(fnames{j}));
+				end
+
+				for j=1:numel(fnames)
+					disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
+						fnames{j},size(obj.responses.(fnames{j})),class(obj.responses.(fnames{j}))));
+				end
+			end
+
+
+			disp(sprintf('         qmu_method:  (array of dakota_method class)'));
+			for i=1:numel(obj.qmu_method);
+				if strcmp(class(obj.qmu_method(i)),'dakota_method')
+					disp(sprintf('            method%s :    ''%s''',...
+						string_dim(obj.qmu_method,i),obj.qmu_method(i).method));
+				end
+			end
+
+			for i=1:numel(obj.qmu_params)
+				disp(sprintf('         qmu_params%s:  (array of method-independent parameters)',...
+					string_dim(obj.qmu_params,i)));
+				fnames=fieldnames(obj.qmu_params(i));
+				maxlen=0;
+				for j=1:numel(fnames)
+					maxlen=max(maxlen,length(fnames{j}));
+				end
+
+				for j=1:numel(fnames)
+					disp(sprintf(['            %-' num2str(maxlen+1) 's: %s'],...
+						fnames{j},any2str(obj.qmu_params(i).(fnames{j}))));
+				end
+			end
+
+			for i=1:numel(obj.dakotaresults)
+				disp(sprintf('         dakotaresults%s:  (information from dakota files)',...
+					string_dim(obj.dakotaresults,i)));
+				fnames=fieldnames(obj.dakotaresults(i));
+				maxlen=0;
+				for j=1:numel(fnames)
+					maxlen=max(maxlen,length(fnames{j}));
+				end
+
+				for j=1:numel(fnames)
+					disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
+						fnames{j},size(obj.dakotaresults.(fnames{j})),class(obj.dakotaresults.(fnames{j}))));
+				end
+			end
+
+			disp(sprintf('         npart   : %i (number of partitions for semi-descrete qmu)',obj.npart));
+			disp(sprintf('         part    : [%i] (user provided mesh partition, defaults to metis if not specified)',length(obj.part)));
+		end % }}}
+	end
+end
Index: sm/trunk/src/m/enum/BalancethicknessRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessRequestedOutputsEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=BalancethicknessRequestedOutputsEnum()
-%BALANCETHICKNESSREQUESTEDOUTPUTSENUM - Enum of BalancethicknessRequestedOutputs
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=BalancethicknessRequestedOutputsEnum()
-
-macro=StringToEnum('BalancethicknessRequestedOutputs');
Index: sm/trunk/src/m/enum/BalancethicknessSpcthicknessEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessSpcthicknessEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=BalancethicknessSpcthicknessEnum()
-%BALANCETHICKNESSSPCTHICKNESSENUM - Enum of BalancethicknessSpcthickness
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=BalancethicknessSpcthicknessEnum()
-
-macro=StringToEnum('BalancethicknessSpcthickness');
Index: sm/trunk/src/m/enum/BalancethicknessStabilizationEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessStabilizationEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=BalancethicknessStabilizationEnum()
-%BALANCETHICKNESSSTABILIZATIONENUM - Enum of BalancethicknessStabilization
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=BalancethicknessStabilizationEnum()
-
-macro=StringToEnum('BalancethicknessStabilization');
Index: sm/trunk/src/m/enum/BalancethicknessThickeningRateEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessThickeningRateEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=BalancethicknessThickeningRateEnum()
-%BALANCETHICKNESSTHICKENINGRATEENUM - Enum of BalancethicknessThickeningRate
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=BalancethicknessThickeningRateEnum()
-
-macro=StringToEnum('BalancethicknessThickeningRate');
Index: sm/trunk/src/m/enum/DakotaAnalysisEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DakotaAnalysisEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=DakotaAnalysisEnum()
-%DAKOTAANALYSISENUM - Enum of DakotaAnalysis
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=DakotaAnalysisEnum()
-
-macro=StringToEnum('DakotaAnalysis');
Index: /issm/trunk/src/m/enum/EnumToModelField.m
===================================================================
--- /issm/trunk/src/m/enum/EnumToModelField.m	(revision 9649)
+++ /issm/trunk/src/m/enum/EnumToModelField.m	(revision 9650)
@@ -15,5 +15,5 @@
 		case MaterialsRheologyBEnum(), string='rheology_B'; return
 		case MaterialsRheologyBbarEnum(), string='rheology_B'; return
-		case DhdtEnum(), string='dhdt'; return
+		case BalancethicknessThickeningRateEnum: string='dhdt'; return
 		case VxEnum(), string='vx'; return
 		case VxObsEnum(), string='vx_obs'; return
Index: sm/trunk/src/m/enum/HydrologyStabilizationEnum.m
===================================================================
--- /issm/trunk/src/m/enum/HydrologyStabilizationEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=HydrologyStabilizationEnum()
-%HYDROLOGYSTABILIZATIONENUM - Enum of HydrologyStabilization
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=HydrologyStabilizationEnum()
-
-macro=StringToEnum('HydrologyStabilization');
Index: sm/trunk/src/m/enum/NpartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NpartEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=NpartEnum()
-%NPARTENUM - Enum of Npart
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=NpartEnum()
-
-macro=StringToEnum('Npart');
Index: sm/trunk/src/m/enum/PartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PartEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=PartEnum()
-%PARTENUM - Enum of Part
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=PartEnum()
-
-macro=StringToEnum('Part');
Index: /issm/trunk/src/m/enum/QmuIsdakotaEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuIsdakotaEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuIsdakotaEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuIsdakotaEnum()
+%QMUISDAKOTAENUM - Enum of QmuIsdakota
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuIsdakotaEnum()
+
+macro=StringToEnum('QmuIsdakota');
Index: sm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=QmuNumberOfResponsesEnum()
-%QMUNUMBEROFRESPONSESENUM - Enum of QmuNumberOfResponses
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=QmuNumberOfResponsesEnum()
-
-macro=StringToEnum('QmuNumberOfResponses');
Index: /issm/trunk/src/m/enum/QmuNumberofpartitionsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNumberofpartitionsEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuNumberofpartitionsEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuNumberofpartitionsEnum()
+%QMUNUMBEROFPARTITIONSENUM - Enum of QmuNumberofpartitions
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuNumberofpartitionsEnum()
+
+macro=StringToEnum('QmuNumberofpartitions');
Index: /issm/trunk/src/m/enum/QmuNumberofresponsesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNumberofresponsesEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuNumberofresponsesEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuNumberofresponsesEnum()
+%QMUNUMBEROFRESPONSESENUM - Enum of QmuNumberofresponses
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuNumberofresponsesEnum()
+
+macro=StringToEnum('QmuNumberofresponses');
Index: sm/trunk/src/m/enum/QmuPartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPartEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=QmuPartEnum()
-%QMUPARTENUM - Enum of QmuPart
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=QmuPartEnum()
-
-macro=StringToEnum('QmuPart');
Index: /issm/trunk/src/m/enum/QmuPartitionEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPartitionEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuPartitionEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuPartitionEnum()
+%QMUPARTITIONENUM - Enum of QmuPartition
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuPartitionEnum()
+
+macro=StringToEnum('QmuPartition');
Index: /issm/trunk/src/m/enum/QmuResponsedescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuResponsedescriptorsEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuResponsedescriptorsEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuResponsedescriptorsEnum()
+%QMURESPONSEDESCRIPTORSENUM - Enum of QmuResponsedescriptors
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuResponsedescriptorsEnum()
+
+macro=StringToEnum('QmuResponsedescriptors');
Index: /issm/trunk/src/m/enum/QmuVariabledescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVariabledescriptorsEnum.m	(revision 9650)
+++ /issm/trunk/src/m/enum/QmuVariabledescriptorsEnum.m	(revision 9650)
@@ -0,0 +1,11 @@
+function macro=QmuVariabledescriptorsEnum()
+%QMUVARIABLEDESCRIPTORSENUM - Enum of QmuVariabledescriptors
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
+%            Please read src/c/EnumDefinitions/README for more information
+%
+%   Usage:
+%      macro=QmuVariabledescriptorsEnum()
+
+macro=StringToEnum('QmuVariabledescriptors');
Index: sm/trunk/src/m/enum/ResponsedescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResponsedescriptorsEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=ResponsedescriptorsEnum()
-%RESPONSEDESCRIPTORSENUM - Enum of Responsedescriptors
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=ResponsedescriptorsEnum()
-
-macro=StringToEnum('Responsedescriptors');
Index: sm/trunk/src/m/enum/VariabledescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VariabledescriptorsEnum.m	(revision 9649)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=VariabledescriptorsEnum()
-%VARIABLEDESCRIPTORSENUM - Enum of Variabledescriptors
-%
-%   WARNING: DO NOT MODIFY THIS FILE
-%            this file has been automatically generated by src/c/EnumDefinitions/Synchronize.sh
-%            Please read src/c/EnumDefinitions/README for more information
-%
-%   Usage:
-%      macro=VariabledescriptorsEnum()
-
-macro=StringToEnum('Variabledescriptors');
Index: /issm/trunk/src/m/kml/kml_mesh_write.m
===================================================================
--- /issm/trunk/src/m/kml/kml_mesh_write.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_mesh_write.m	(revision 9650)
@@ -220,5 +220,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kdoc.feature{1}(end+1)=kml_part_flagedges(md,varargin{3:end});
 end
@@ -227,5 +227,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kdoc.feature{1}(end+1)=kml_unsh_edges(md,varargin{3:end});
 end
@@ -234,5 +234,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kdoc.feature{1}(end+1)=kml_part_elems(md,varargin{3:end});
 end
@@ -241,5 +241,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kdoc.feature{1}(end+1)=kml_part_edges(md,varargin{3:end});
 end
@@ -248,5 +248,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kdoc.feature{1}(end+1)=kml_partitions(md,varargin{3:end});
 end
Index: /issm/trunk/src/m/kml/kml_part_edges.m
===================================================================
--- /issm/trunk/src/m/kml/kml_part_edges.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_part_edges.m	(revision 9650)
@@ -118,18 +118,18 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kfold=kml_folder();
     kfold.name      ='Partition Edges';
     kfold.visibility=1;
     kfold.descript  =sprintf('Partitions=%d, Nodes=%d',...
-        md.npart,md.numberofnodes);
-    kfold.feature   ={repmat(kml_placemark(),1,md.npart)};
+        md.qmu.numberofpartitions,md.numberofnodes);
+    kfold.feature   ={repmat(kml_placemark(),1,md.qmu.numberofpartitions)};
 
 %  write each partition as a linestring multigeometry placemark
 
-    disp(['Writing ' num2str(md.npart) ' partitions as KML linestrings.']);
-    epart=md.part(md.elements)+1;
+    disp(['Writing ' num2str(md.qmu.numberofpartitions) ' partitions as KML linestrings.']);
+    epart=md.qmu.partition(md.elements)+1;
     if exist('ndata','var') || exist('edata','var')
-        pdata=zeros(1,md.npart);
+        pdata=zeros(1,md.qmu.numberofpartitions);
         pdata(:)=NaN;
     end
@@ -137,5 +137,5 @@
 %  loop over each partition
 
-    for k=1:md.npart
+    for k=1:md.qmu.numberofpartitions
 %        disp(['partition k=' int2str(k)])
         
@@ -158,5 +158,5 @@
 
         if exist('ndata','var')
-            pdata(k)=ndata(find(md.part+1==k,1));
+            pdata(k)=ndata(find(md.qmu.partition+1==k,1));
         elseif exist('edata','var')
             for i=1:size(epartp,1)
Index: /issm/trunk/src/m/kml/kml_part_elems.m
===================================================================
--- /issm/trunk/src/m/kml/kml_part_elems.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_part_elems.m	(revision 9650)
@@ -118,18 +118,18 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kfold=kml_folder();
     kfold.name      ='Partition Elements';
     kfold.visibility=1;
     kfold.descript  =sprintf('Partitions=%d, Nodes=%d\n',...
-        md.npart,md.numberofnodes);
-    kfold.feature   ={repmat(kml_placemark(),1,md.npart)};
+        md.qmu.numberofpartitions,md.numberofnodes);
+    kfold.feature   ={repmat(kml_placemark(),1,md.qmu.numberofpartitions)};
 
 %  write each partition loop as a polygon multigeometry placemark
 
-    disp(['Writing ' num2str(md.npart) ' partitions as KML polygons.']);
-    epart=md.part(md.elements)+1;
+    disp(['Writing ' num2str(md.qmu.numberofpartitions) ' partitions as KML polygons.']);
+    epart=md.qmu.partition(md.elements)+1;
     if exist('ndata','var') || exist('edata','var')
-        pdata=zeros(1,md.npart);
+        pdata=zeros(1,md.qmu.numberofpartitions);
         pdata(:)=NaN;
     end
@@ -137,5 +137,5 @@
 %  loop over each partition
 
-    for k=1:md.npart
+    for k=1:md.qmu.numberofpartitions
 
 %  for each partition, find all the included elements
@@ -151,5 +151,5 @@
 
         if exist('ndata','var')
-            pdata(k)=ndata(find(md.part+1==k,1));
+            pdata(k)=ndata(find(md.qmu.partition+1==k,1));
         elseif exist('edata','var')
             for i=1:size(epart,1)
Index: /issm/trunk/src/m/kml/kml_part_flagedges.m
===================================================================
--- /issm/trunk/src/m/kml/kml_part_flagedges.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_part_flagedges.m	(revision 9650)
@@ -73,11 +73,11 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
-    [latseg,lonseg]=flagedges(md.elements,md.lat,md.long,md.part);
+    md.qmu.numberofpartitions
+    [latseg,lonseg]=flagedges(md.elements,md.lat,md.long,md.qmu.partition);
     kfold=kml_folder();
     kfold.name      ='Partition Segments';
     kfold.visibility=1;
     kfold.descript  =sprintf('Partitions=%d, Segments=%d',...
-        md.npart,size(latseg,1));
+        md.qmu.numberofpartitions,size(latseg,1));
     kfold.feature   ={repmat(kml_placemark(),1,size(latseg,1))};
 
Index: /issm/trunk/src/m/kml/kml_partitions.m
===================================================================
--- /issm/trunk/src/m/kml/kml_partitions.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_partitions.m	(revision 9650)
@@ -119,18 +119,18 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     kfold=kml_folder();
     kfold.name      ='Partitions';
     kfold.visibility=1;
     kfold.descript  =sprintf('Partitions=%d, Nodes=%d',...
-        md.npart,md.numberofnodes);
-    kfold.feature   ={repmat(kml_placemark(),1,md.npart)};
+        md.qmu.numberofpartitions,md.numberofnodes);
+    kfold.feature   ={repmat(kml_placemark(),1,md.qmu.numberofpartitions)};
 
 %  write each partition as a polygon multigeometry placemark
 
-    disp(['Writing ' num2str(md.npart) ' partitions as KML polygons.']);
-    epart=md.part(md.elements)+1;
+    disp(['Writing ' num2str(md.qmu.numberofpartitions) ' partitions as KML polygons.']);
+    epart=md.qmu.partition(md.elements)+1;
     if exist('ndata','var') || exist('edata','var')
-        pdata=zeros(1,md.npart);
+        pdata=zeros(1,md.qmu.numberofpartitions);
         pdata(:)=NaN;
     end
@@ -138,5 +138,5 @@
 %  loop over each partition
 
-    for k=1:md.npart
+    for k=1:md.qmu.numberofpartitions
 %        disp(['partition k=' int2str(k)])
         
@@ -159,5 +159,5 @@
 
         if exist('ndata','var')
-            pdata(k)=ndata(find(md.part+1==k,1));
+            pdata(k)=ndata(find(md.qmu.partition+1==k,1));
         elseif exist('edata','var')
             for i=1:size(epartp,1)
Index: /issm/trunk/src/m/kml/kml_unsh_edges.m
===================================================================
--- /issm/trunk/src/m/kml/kml_unsh_edges.m	(revision 9649)
+++ /issm/trunk/src/m/kml/kml_unsh_edges.m	(revision 9650)
@@ -73,5 +73,5 @@
 
 if (~exist('prtplt','var') || strncmpi(prtplt,'on' ,2) || strncmpi(prtplt,'y',1)) && ...
-    md.npart
+    md.qmu.numberofpartitions
     [edgeadj]=edgeadjacency(md.elements,md.nodeconnectivity);
     [icol,irow]=find(edgeadj'==0);
@@ -85,5 +85,5 @@
     kfold.visibility=1;
     kfold.descript  =sprintf('Partitions=%d, Edges=%d',...
-        md.npart,size(edgeuns,1));
+        md.qmu.numberofpartitions,size(edgeuns,1));
     kfold.feature   ={repmat(kml_placemark(),1,size(edgeuns,1))};
 
Index: sm/trunk/src/m/model/display/displayqmu.m
===================================================================
--- /issm/trunk/src/m/model/display/displayqmu.m	(revision 9649)
+++ 	(revision )
@@ -1,90 +1,0 @@
-function displayqmu(md)
-%DISPLAYQMU - display qmu computation parameters
-%
-%   To avoid clobbering display.m with every field from model md, 
-%   we create this routine that displays all fields related to
-%   qmu computation from model md, only if requested.
-%
-%   Usage:
-%      displayqmu(md)
-
-disp(sprintf('      ''%s''','qmu using Dakota'));
-
-if ~md.dakota_analysis,
-	disp(sprintf('         %s','no scheduled qmu. activate by doing md.dakota_analysis=1'));
-else
-
-	for i=1:numel(md.variables)
-		disp(sprintf('         variables%s:  (arrays of each variable class)',...
-			string_dim(md.variables,i)));
-		fnames=fieldnames(md.variables(i));
-		maxlen=0;
-		for j=1:numel(fnames)
-			maxlen=max(maxlen,length(fnames{j}));
-		end
-		
-		for j=1:numel(fnames)
-			disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
-				fnames{j},size(md.variables.(fnames{j})),class(md.variables.(fnames{j}))));
-		end
-	end
-
-
-	for i=1:numel(md.responses)
-		disp(sprintf('         responses%s:  (arrays of each response class)',...
-			string_dim(md.responses,i)));
-		fnames=fieldnames(md.responses(i));
-		maxlen=0;
-		for j=1:numel(fnames)
-			maxlen=max(maxlen,length(fnames{j}));
-		end
-		
-		for j=1:numel(fnames)
-			disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
-				fnames{j},size(md.responses.(fnames{j})),class(md.responses.(fnames{j}))));
-		end
-	end
-
-
-	disp(sprintf('         qmu_method:  (array of dakota_method class)'));
-	for i=1:numel(md.qmu_method);
-		if strcmp(class(md.qmu_method(i)),'dakota_method')
-			disp(sprintf('            method%s :    ''%s''',...
-				string_dim(md.qmu_method,i),md.qmu_method(i).method));
-		end
-	end
-
-	for i=1:numel(md.qmu_params)
-		disp(sprintf('         qmu_params%s:  (array of method-independent parameters)',...
-			string_dim(md.qmu_params,i)));
-		fnames=fieldnames(md.qmu_params(i));
-		maxlen=0;
-		for j=1:numel(fnames)
-			maxlen=max(maxlen,length(fnames{j}));
-		end
-		
-		for j=1:numel(fnames)
-			disp(sprintf(['            %-' num2str(maxlen+1) 's: %s'],...
-				fnames{j},any2str(md.qmu_params(i).(fnames{j}))));
-		end
-	end
-
-	for i=1:numel(md.dakotaresults)
-		disp(sprintf('         dakotaresults%s:  (information from dakota files)',...
-			string_dim(md.dakotaresults,i)));
-		fnames=fieldnames(md.dakotaresults(i));
-		maxlen=0;
-		for j=1:numel(fnames)
-			maxlen=max(maxlen,length(fnames{j}));
-		end
-		
-		for j=1:numel(fnames)
-			disp(sprintf(['            %-' num2str(maxlen+1) 's:    [%ix%i]    ''%s'''],...
-				fnames{j},size(md.dakotaresults.(fnames{j})),class(md.dakotaresults.(fnames{j}))));
-		end
-	end
-
-	disp(sprintf('         npart   : %i (number of partitions for semi-descrete qmu)',md.npart));
-	disp(sprintf('         part    : [%i] (user provided mesh partition, defaults to metis if not specified)',length(md.part)));
-
-end
Index: /issm/trunk/src/m/model/ismodelselfconsistent.m
===================================================================
--- /issm/trunk/src/m/model/ismodelselfconsistent.m	(revision 9649)
+++ /issm/trunk/src/m/model/ismodelselfconsistent.m	(revision 9650)
@@ -252,28 +252,28 @@
 %}}}
 %QMU {{{1
-if md.dakota_analysis,
-	if md.qmu_params.evaluation_concurrency~=1,
+if md.qmu.isdakota,
+	if md.qmu.params.evaluation_concurrency~=1,
 		message(['model not consistent: concurrency should be set to 1 when running dakota in library mode']);
 	end
-	if ~isempty(md.part),
-		if numel(md.part)~=md.numberofnodes,
+	if ~isempty(md.qmu.partition),
+		if numel(md.qmu.partition)~=md.numberofnodes,
 			message(['model not consistent: user supplied partition for qmu analysis should have size md.numberofnodes x 1 ']);
 		end
-		if find(md.part)>=md.numberofnodes,
+		if find(md.qmu.partition)>=md.numberofnodes,
 			message(['model not consistent: user supplied partition should be indexed from 0 (c-convention)']);
 		end
-		if min(md.part)~=0,
+		if min(md.qmu.partition)~=0,
 			message(['model not consistent: partition vector not indexed from 0 on']);
 		end
-		if max(md.part)>=md.numberofnodes,
+		if max(md.qmu.partition)>=md.numberofnodes,
 			message(['model not consistent: partition vector cannot have maximum index larger than number of nodes']);
 		end
-		if ~isempty(find(md.part<0)),
+		if ~isempty(find(md.qmu.partition<0)),
 			message(['model not consistent: partition vector cannot have values less than 0']);
 		end
-		if ~isempty(find(md.part>=md.npart)),
-			message(['model not consistent: partition vector cannot have values more than md.npart-1']);
-		end
-		if max(md.part)>=md.npart,
+		if ~isempty(find(md.qmu.partition>=md.qmu.numberofpartitions)),
+			message(['model not consistent: partition vector cannot have values more than md.qmu.numberofpartitions-1']);
+		end
+		if max(md.qmu.partition)>=md.qmu.numberofpartitions,
 			message(['model not consistent: for qmu analysis, partitioning vector cannot go over npart, number of partition areas']);
 		end
Index: /issm/trunk/src/m/model/isresultconsistent.m
===================================================================
--- /issm/trunk/src/m/model/isresultconsistent.m	(revision 9649)
+++ /issm/trunk/src/m/model/isresultconsistent.m	(revision 9650)
@@ -21,5 +21,5 @@
 
 %do not check results if qmu analysis
-if md.dakota_analysis,
+if md.qmu.isdakota,
 	return
 end
Index: /issm/trunk/src/m/model/loadresultsfromcluster.m
===================================================================
--- /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 9649)
+++ /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 9650)
@@ -36,5 +36,5 @@
 
 %erase the log and output files
-if md.dakota_analysis,
+if md.qmu.isdakota,
 	delete([['qmu' num2str(feature('GetPid')) '/'] md.miscellaneous.name '.outlog']);
 	delete([['qmu' num2str(feature('GetPid')) '/']  md.miscellaneous.name '.errlog']);
@@ -49,5 +49,5 @@
 hostname=oshostname();
 if strcmpi(hostname,cluster.name),
-	if md.dakota_analysis,
+	if md.qmu.isdakota,
 		delete([['qmu' num2str(feature('GetPid')) '/'] md.miscellaneous.name '.bin']);
 		delete([['qmu' num2str(feature('GetPid')) '/'] md.miscellaneous.name '.queue']);
Index: /issm/trunk/src/m/model/loadresultsfromdisk.m
===================================================================
--- /issm/trunk/src/m/model/loadresultsfromdisk.m	(revision 9649)
+++ /issm/trunk/src/m/model/loadresultsfromdisk.m	(revision 9650)
@@ -11,5 +11,5 @@
 end
 
-if ~md.dakota_analysis,
+if ~md.qmu.isdakota,
 
 	%initialize md.results if not a structure yet
Index: /issm/trunk/src/m/model/partition/AreaAverageOntoPartition.m
===================================================================
--- /issm/trunk/src/m/model/partition/AreaAverageOntoPartition.m	(revision 9649)
+++ /issm/trunk/src/m/model/partition/AreaAverageOntoPartition.m	(revision 9650)
@@ -21,5 +21,5 @@
 	md.numberofnodes=md.numberofnodes2d;
 	md.numberofelements=md.numberofelements2d;
-	md.vwgt=[];
+	md.vertex_weight=[];
 	md.nodeconnectivity=[];
 
@@ -29,13 +29,13 @@
 	%finally, project vector: 
 	vector=project2d(md3d,vector,layer);
-	md.part=project2d(md3d,md3d.part,layer);
+	md.qmu.partition=project2d(md3d,md3d.part,layer);
 end
 
 %ok, first check that part is Matlab indexed
-part=md.part+1;
+part=md.qmu.partition+1;
 
 %some check: 
-if md.npart~=max(part),
-	error('AreaAverageOntoPartition error message: ''npart'' should be equal to max(md.part)');
+if md.qmu.numberofpartitions~=max(part),
+	error('AreaAverageOntoPartition error message: ''npart'' should be equal to max(md.qmu.partition)');
 end
 
@@ -44,8 +44,8 @@
 
 %start weight average
-weightedvector=vector.*md.vwgt;
+weightedvector=vector.*md.vertex_weight;
 for i=1:max(part),
 	pos=find(part==i);
-	partvector(i)=sum(weightedvector(pos))/sum(md.vwgt(pos));
+	partvector(i)=sum(weightedvector(pos))/sum(md.vertex_weight(pos));
 end
 
Index: /issm/trunk/src/m/model/partition/adjacency.m
===================================================================
--- /issm/trunk/src/m/model/partition/adjacency.m	(revision 9649)
+++ /issm/trunk/src/m/model/partition/adjacency.m	(revision 9650)
@@ -6,5 +6,5 @@
 %  the required output is:
 %    md.adj_mat     (double [sparse nv x nv], vertex adjacency matrix)
-%    md.vwgt        (double [nv], vertex weights)
+%    md.vertex_weight        (double [nv], vertex weights)
 
 indi=[md.elements(:,1);md.elements(:,2);md.elements(:,3)];
@@ -12,6 +12,6 @@
 values=1;
 
-md.adjacency=sparse(indi,indj,values,md.numberofnodes,md.numberofnodes);
-md.adjacency=double([md.adjacency | md.adjacency']);
+md.qmu.adjacency=sparse(indi,indj,values,md.numberofnodes,md.numberofnodes);
+md.qmu.adjacency=double([md.qmu.adjacency | md.qmu.adjacency']);
 
 %now, build vwgt:
@@ -24,3 +24,3 @@
 pos=find(connectivity);
 connectivity(pos)=areas(connectivity(pos))/3;
-md.vwgt=sum(connectivity,2);
+md.vertex_weight=sum(connectivity,2);
Index: /issm/trunk/src/m/model/partition/partitioner.m
===================================================================
--- /issm/trunk/src/m/model/partition/partitioner.m	(revision 9649)
+++ /issm/trunk/src/m/model/partition/partitioner.m	(revision 9650)
@@ -1,3 +1,3 @@
-function md=partitioner(md,varargin)
+function md.qmu.partitionitioner(md,varargin)
 %PARTITIONER - partition mesh 
 %
@@ -9,8 +9,8 @@
 %   section:  1 by defaults(1=bisection, 2=quadrisection, 3=octasection)
 %   recomputeadjacency:  'on' by default (set to 'off' to compute existing one)
-%   Output: md.part recover the partition vector
+%   Output: md.qmu.partition recover the partition vector
 %   
 %   Usage:
-%      md=partitioner(md,'package','chaco','npart',100,'weighting','on');
+%      md.qmu.partitionitioner(md,'package','chaco','npart',100,'weighting','on');
 %
 
@@ -39,5 +39,5 @@
 	md.numberofnodes=md.numberofnodes2d;
 	md.numberofelements=md.numberofelements2d;
-	md.vwgt=[];
+	md.vertex_weight=[];
 	md.nodeconnectivity=[];
 end
@@ -63,5 +63,5 @@
 	%are we using weights? 
 	if strcmpi(getfieldvalue(options,'weighting'),'on'),
-		weights=floor(md.vwgt/min(md.vwgt));
+		weights=floor(md.vertex_weight/min(md.vertex_weight));
 		method(3)=1;
 	else 
@@ -70,5 +70,5 @@
 	
 	%  partition into nparts
-	part=Chaco(md.adjacency,weights,[],md.x, md.y ,md.z,method,npart,[])'+1; %index partitions from 1 up. like metis.
+	part=Chaco(md.qmu.adjacency,weights,[],md.x, md.y ,md.z,method,npart,[])'+1; %index partitions from 1 up. like metis.
 
 elseif strcmpi(package,'scotch'),
@@ -76,7 +76,7 @@
 	%are we using weights? 
 	if strcmpi(getfieldvalue(options,'weighting'),'on'),
-		weights=floor(md.vwgt/min(md.vwgt));
+		weights=floor(md.vertex_weight/min(md.vertex_weight));
 	end
-	maptab=Scotch(md.adjacency,[],weights,[],'cmplt',[npart]);
+	maptab=Scotch(md.qmu.adjacency,[],weights,[],'cmplt',[npart]);
 	
 	part=maptab(:,2);%index partitions from 1 up. like metis.
@@ -89,5 +89,5 @@
 elseif strcmpi(package,'metis'),
 
-	[element_partitioning,part]=MeshPartition(md,npart);
+	[element_partitioning,part]=MeshPartition(md.qmu.numberofpartitions);
 
 else
@@ -103,3 +103,3 @@
 end
 
-md.part=part;
+md.qmu.partition=part;
Index: /issm/trunk/src/m/model/plot/applyoptions.m
===================================================================
--- /issm/trunk/src/m/model/plot/applyoptions.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/applyoptions.m	(revision 9650)
@@ -437,5 +437,5 @@
 %flag edges of a partition
 if exist(options,'partitionedges')
-[xsegments ysegments]=flagedges(md.elements,md.x,md.y,md.part);
+[xsegments ysegments]=flagedges(md.elements,md.x,md.y,md.qmu.partition);
 xsegments=xsegments*getfieldvalue(options,'unit',1);
 ysegments=ysegments*getfieldvalue(options,'unit',1);
Index: /issm/trunk/src/m/model/plot/plot_importancefactors.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_importancefactors.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_importancefactors.m	(revision 9650)
@@ -23,5 +23,5 @@
 
 %go through all response functions and find the one corresponding to the correct responsefunctiondescriptor
-responsefunctions=md.dakotaresults{2};
+responsefunctions=md.qmu.results{2};
 found=0;
 for i=1:length(responsefunctions),
@@ -38,5 +38,5 @@
 
 %Now recover response to the correct desgin variable
-importancefactors=zeros(md.npart,1);
+importancefactors=zeros(md.qmu.numberofpartitions,1);
 count=0;
 for i=1:nfun,
@@ -58,5 +58,5 @@
 
 %Ok, get partitioning.
-[epart npart]=MeshPartition(md,md.npart);
+[epart npart]=MeshPartition(md,md.qmu.numberofpartitions);
 
 %distribute importance factor
Index: /issm/trunk/src/m/model/plot/plot_parthist.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_parthist.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_parthist.m	(revision 9650)
@@ -13,13 +13,13 @@
 subplot(nlines,ncols,i); 
 
-imin=min(md.part);
-imax=max(md.part);
+imin=min(md.qmu.partition);
+imax=max(md.qmu.partition);
 
 part=zeros(imax-imin+1,2);
 
 for i=imin:imax
-    ind=find(md.part == i);
+    ind=find(md.qmu.partition == i);
     part(i-imin+1,1)=length(ind);
-	part(i-imin+1,2)=sum(md.vwgt(ind));
+	part(i-imin+1,2)=sum(md.vertex_weight(ind));
 end
 
Index: /issm/trunk/src/m/model/plot/plot_parthistn.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_parthistn.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_parthistn.m	(revision 9650)
@@ -13,13 +13,13 @@
 subplot(nlines,ncols,i); 
 
-imin=min(md.part);
-imax=max(md.part);
+imin=min(md.qmu.partition);
+imax=max(md.qmu.partition);
 
 part=zeros(imax-imin+1,2);
 
 for i=imin:imax
-    ind=find(md.part == i);
+    ind=find(md.qmu.partition == i);
     part(i-imin+1,1)=length(ind);
-	part(i-imin+1,2)=sum(md.vwgt(ind));
+	part(i-imin+1,2)=sum(md.vertex_weight(ind));
 end
 
Index: /issm/trunk/src/m/model/plot/plot_parthistw.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_parthistw.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_parthistw.m	(revision 9650)
@@ -13,13 +13,13 @@
 subplot(nlines,ncols,i); 
 
-imin=min(md.part);
-imax=max(md.part);
+imin=min(md.qmu.partition);
+imax=max(md.qmu.partition);
 
 part=zeros(imax-imin+1,2);
 
 for i=imin:imax
-    ind=find(md.part == i);
+    ind=find(md.qmu.partition == i);
     part(i-imin+1,1)=length(ind);
-	part(i-imin+1,2)=sum(md.vwgt(ind));
+	part(i-imin+1,2)=sum(md.vertex_weight(ind));
 end
 
Index: /issm/trunk/src/m/model/plot/plot_qmu_mass_flux_segments.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_qmu_mass_flux_segments.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_qmu_mass_flux_segments.m	(revision 9650)
@@ -11,5 +11,5 @@
 [x y z elements is2d isplanet]=processmesh(md,[],options);
 
-allsegments=md.qmu_mass_flux_segments;
+allsegments=md.qmu.mass_flux_segments;
 
 if (md.dim==2),
Index: /issm/trunk/src/m/model/plot/plot_qmumean.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_qmumean.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_qmumean.m	(revision 9650)
@@ -27,6 +27,6 @@
 
 %go pick up the response: 
-allresponses=md.dakotaresults.dresp_out;
-responses=zeros(md.npart,1);
+allresponses=md.qmu.results.dresp_out;
+responses=zeros(md.qmu.numberofpartitions,1);
 
 count=1;
@@ -48,5 +48,5 @@
 
 %now, project onto vertices
-responses_on_node=responses(md.part+1);
+responses_on_node=responses(md.qmu.partition+1);
 
 %plot
Index: /issm/trunk/src/m/model/plot/plot_qmustddev.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_qmustddev.m	(revision 9649)
+++ /issm/trunk/src/m/model/plot/plot_qmustddev.m	(revision 9650)
@@ -27,6 +27,6 @@
 
 %go pick up the response: 
-allresponses=md.dakotaresults.dresp_out;
-responses=zeros(md.npart,1);
+allresponses=md.qmu.results.dresp_out;
+responses=zeros(md.qmu.numberofpartitions,1);
 
 count=1;
@@ -49,5 +49,5 @@
 
 %now, project onto vertices
-responses_on_node=responses(md.part+1);
+responses_on_node=responses(md.qmu.partition+1);
 
 %plot
Index: /issm/trunk/src/m/model/solve.m
===================================================================
--- /issm/trunk/src/m/model/solve.m	(revision 9649)
+++ /issm/trunk/src/m/model/solve.m	(revision 9650)
@@ -40,5 +40,5 @@
 %if running qmu analysis, some preprocessing of dakota files using 
 %models fields needs to be carried out. 
-if md.dakota_analysis,
+if md.qmu.isdakota,
 	md=preqmu(md,options);
 end
@@ -74,5 +74,5 @@
 
 %post processes qmu results if necessary
-if md.dakota_analysis,
+if md.qmu.isdakota,
 	md=postqmu(md);
 	cd ..
Index: /issm/trunk/src/m/model/solveparallel.m
===================================================================
--- /issm/trunk/src/m/model/solveparallel.m	(revision 9649)
+++ /issm/trunk/src/m/model/solveparallel.m	(revision 9650)
@@ -39,5 +39,5 @@
 
 		%post processes qmu results if necessary
-		if md.dakota_analysis,
+		if md.qmu.isdakota,
 			if ~strncmpi(options.keep,'y',1)
 				system(['rm -rf qmu' num2str(feature('GetPid'))]);
Index: /issm/trunk/src/m/model/tres.m
===================================================================
--- /issm/trunk/src/m/model/tres.m	(revision 9649)
+++ /issm/trunk/src/m/model/tres.m	(revision 9650)
@@ -47,5 +47,5 @@
 
 elseif strcmpi(string,'dakota'),
-	md.dakotaresults=md.results.dakota;
+	md.qmu.results=md.results.dakota;
 
 elseif strcmpi(string,'flaim'),
Index: /issm/trunk/src/m/qmu/examples/all_parameters.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/all_parameters.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/all_parameters.m	(revision 9650)
@@ -16,38 +16,38 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
-md.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
-md.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
-md.variables.cdv=continuous_design.empty();
-md.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
-md.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
-md.variables.csv=continuous_state.empty();
-md.variables.csv(end+1)=continuous_state('gravity',9.8);
-md.variables.lic=linear_inequality_constraint.empty();
-md.variables.lic(end+1)=linear_inequality_constraint([1 2 3],4,5);
-md.variables.lic(end+1)=linear_inequality_constraint([1 2],4,5);
-md.variables.lic(end+1)=linear_inequality_constraint([1 2 3 4],4,5);
-md.variables.lec=linear_equality_constraint.empty();
-md.variables.lec(end+1)=linear_equality_constraint([1 2 3],4);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
+md.qmu.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
+md.qmu.variables.cdv=continuous_design.empty();
+md.qmu.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
+md.qmu.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
+md.qmu.variables.csv=continuous_state.empty();
+md.qmu.variables.csv(end+1)=continuous_state('gravity',9.8);
+md.qmu.variables.lic=linear_inequality_constraint.empty();
+md.qmu.variables.lic(end+1)=linear_inequality_constraint([1 2 3],4,5);
+md.qmu.variables.lic(end+1)=linear_inequality_constraint([1 2],4,5);
+md.qmu.variables.lic(end+1)=linear_inequality_constraint([1 2 3 4],4,5);
+md.qmu.variables.lec=linear_equality_constraint.empty();
+md.qmu.variables.lec(end+1)=linear_equality_constraint([1 2 3],4);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[100 200 300],[]);
-md.responses.rf (end+1)=response_function('max_vel'   ,[100 200 300],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.of =objective_function.empty();
-md.responses.of (end+1)=objective_function('max_vel');
-md.responses.lst=least_squares_term.empty();
-md.responses.lst(end+1)=least_squares_term('max_vel');
-md.responses.nic=nonlinear_inequality_constraint.empty();
-md.responses.nic(end+1)=nonlinear_inequality_constraint('max_abs_vx',0,1000);
-md.responses.nic(end+1)=nonlinear_inequality_constraint('max_abs_vy',0,1000);
-md.responses.nec=nonlinear_equality_constraint.empty();
-md.responses.nec(end+1)=nonlinear_equality_constraint('max_abs_vx',500);
-md.responses.nec(end+1)=nonlinear_equality_constraint('max_abs_vy',500);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[100 200 300],[]);
+md.qmu.responses.rf (end+1)=response_function('max_vel'   ,[100 200 300],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.of =objective_function.empty();
+md.qmu.responses.of (end+1)=objective_function('max_vel');
+md.qmu.responses.lst=least_squares_term.empty();
+md.qmu.responses.lst(end+1)=least_squares_term('max_vel');
+md.qmu.responses.nic=nonlinear_inequality_constraint.empty();
+md.qmu.responses.nic(end+1)=nonlinear_inequality_constraint('max_abs_vx',0,1000);
+md.qmu.responses.nic(end+1)=nonlinear_inequality_constraint('max_abs_vy',0,1000);
+md.qmu.responses.nec=nonlinear_equality_constraint.empty();
+md.qmu.responses.nec(end+1)=nonlinear_equality_constraint('max_abs_vx',500);
+md.qmu.responses.nec(end+1)=nonlinear_equality_constraint('max_abs_vy',500);
 
 %%  a variety of studies
@@ -55,6 +55,6 @@
 %  a sampling study
 
-md.qmu_method       =dakota_method('nond_samp');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method       =dakota_method('nond_samp');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'seed',1234,...
     'samples',10);
@@ -62,16 +62,16 @@
 %  a local reliability study
 
-md.qmu_method(end+1)=dakota_method('nond_l');
+md.qmu.method(end+1)=dakota_method('nond_l');
 
 %  a multidimensional parameter study
 
-md.qmu_method(end+1)=dakota_method('multi');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method(end+1)=dakota_method('multi');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'partitions',2);
 
 %  an optimization study
 
-md.qmu_method(end+1)=dakota_method('conmin_f');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method(end+1)=dakota_method('conmin_f');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'max_iterations',10,...
     'max_function_evaluations',50,...
@@ -80,11 +80,11 @@
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
-md.qmu_params.interval_type='forward';
-md.qmu_params.fd_gradient_step_size=0.001;
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
+md.qmu.params.interval_type='forward';
+md.qmu.params.fd_gradient_step_size=0.001;
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 md.rifts.numrifts=5;
 
Index: /issm/trunk/src/m/qmu/examples/direct.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/direct.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/direct.m	(revision 9650)
@@ -1,11 +1,11 @@
 %using library mode of Dakota, only for parallel runs.
-md.qmu_params.direct=true;
-md.qmu_params.analysis_driver='diagnostic';
-md.qmu_params.evaluation_concurrency=1;
+md.qmu.params.direct=true;
+md.qmu.params.analysis_driver='diagnostic';
+md.qmu.params.evaluation_concurrency=1;
 
 
 
 %or for matlab direct driver
-md.qmu_params.direct=true;
-md.qmu_params.analysis_driver='matlab';
-md.qmu_params.evaluation_concurrency=2; %launch 2 matlabs
+md.qmu.params.direct=true;
+md.qmu.params.analysis_driver='matlab';
+md.qmu.params.evaluation_concurrency=2; %launch 2 matlabs
Index: /issm/trunk/src/m/qmu/examples/lrel.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/lrel.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/lrel.m	(revision 9650)
@@ -16,40 +16,40 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('RhoIce',917,45.85);
-md.variables.nuv(end+1)=normal_uncertain('RhoWater',1023,51.15);
-md.variables.nuv(end+1)=normal_uncertain('HeatCapacity',2009,100.45);
-md.variables.nuv(end+1)=normal_uncertain('ThermalConductivity',2.2,0.11);
-md.variables.nuv(end+1)=normal_uncertain('Gravity',9.8,0.49);
-md.variables.nuv(end+1)=normal_uncertain('Thickness',1,0.05);
-md.variables.nuv(end+1)=normal_uncertain('Drag',1,0.05);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('RhoIce',917,45.85);
+md.qmu.variables.nuv(end+1)=normal_uncertain('RhoWater',1023,51.15);
+md.qmu.variables.nuv(end+1)=normal_uncertain('HeatCapacity',2009,100.45);
+md.qmu.variables.nuv(end+1)=normal_uncertain('ThermalConductivity',2.2,0.11);
+md.qmu.variables.nuv(end+1)=normal_uncertain('Gravity',9.8,0.49);
+md.qmu.variables.nuv(end+1)=normal_uncertain('Thickness',1,0.05);
+md.qmu.variables.nuv(end+1)=normal_uncertain('Drag',1,0.05);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  nond_local_reliability study
 
-md.qmu_method     =dakota_method('nond_l');
+md.qmu.method     =dakota_method('nond_l');
 
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=1;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
-md.qmu_params.interval_type='forward';
-md.qmu_params.fd_gradient_step_size=0.01;
+md.qmu.params.evaluation_concurrency=1;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
+md.qmu.params.interval_type='forward';
+md.qmu.params.fd_gradient_step_size=0.01;
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/lrel_mmf.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/lrel_mmf.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/lrel_mmf.m	(revision 9650)
@@ -16,33 +16,33 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-%md.variables.nuv(end+1)=normal_uncertain('RhoIce',917,45.85);
-%md.variables.nuv(end+1)=normal_uncertain('RhoWater',1023,51.15);
-%md.variables.nuv(end+1)=normal_uncertain('HeatCapacity',2009,100.45);
-%md.variables.nuv(end+1)=normal_uncertain('ThermalConductivity',2.2,0.11);
-%md.variables.nuv(end+1)=normal_uncertain('Gravity',9.8,0.49);
-md.variables.nuv(end+1)=normal_uncertain('Thickness',1,0.05);
-%md.variables.nuv(end+1)=normal_uncertain('Drag',1,0.05);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+%md.qmu.variables.nuv(end+1)=normal_uncertain('RhoIce',917,45.85);
+%md.qmu.variables.nuv(end+1)=normal_uncertain('RhoWater',1023,51.15);
+%md.qmu.variables.nuv(end+1)=normal_uncertain('HeatCapacity',2009,100.45);
+%md.qmu.variables.nuv(end+1)=normal_uncertain('ThermalConductivity',2.2,0.11);
+%md.qmu.variables.nuv(end+1)=normal_uncertain('Gravity',9.8,0.49);
+md.qmu.variables.nuv(end+1)=normal_uncertain('Thickness',1,0.05);
+%md.qmu.variables.nuv(end+1)=normal_uncertain('Drag',1,0.05);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux1',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux_2',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux(3)',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux4 (repeat)',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux-5',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux^6',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('mass_flux[7]',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux1',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux_2',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux(3)',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux4 (repeat)',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux-5',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux^6',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('mass_flux[7]',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  create mass flux profile
@@ -51,31 +51,31 @@
 %expcreateprofile('mass_flux.exp')
 %expdisp('mass_flux.exp')
-%md.qmu_mass_flux_profile='mass_flux.exp';
-%md.qmu_mass_flux_profile={'mass_flux.exp','mass_flux2.exp','mass_flux3.exp'};
-md.qmu_mass_flux_profile={'mass_flux.exp','mass_flux2.exp','mass_flux3.exp','mass_flux.exp','mass_flux5.exp','mass_flux6.exp','mass_flux7.exp'};
+%md.qmu.mass_flux_profile='mass_flux.exp';
+%md.qmu.mass_flux_profile={'mass_flux.exp','mass_flux2.exp','mass_flux3.exp'};
+md.qmu.mass_flux_profile={'mass_flux.exp','mass_flux2.exp','mass_flux3.exp','mass_flux.exp','mass_flux5.exp','mass_flux6.exp','mass_flux7.exp'};
 
 %%  nond_local_reliability study
 
-md.qmu_method     =dakota_method('nond_l');
+md.qmu.method     =dakota_method('nond_l');
 
 %%  a variety of parameters
 
-%md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.evaluation_concurrency=1;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
-md.qmu_params.interval_type='forward';
-md.qmu_params.fd_gradient_step_size=0.01;
+%md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.evaluation_concurrency=1;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
+md.qmu.params.interval_type='forward';
+md.qmu.params.fd_gradient_step_size=0.01;
 
-md.dakota_analysis=1;
-md.npart=10;
-if isempty(md.adjacency)
+md.qmu.isdakota=1;
+md.qmu.numberofpartitions=10;
+if isempty(md.qmu.adjacency)
 	md=adjacency(md);
 end
-if isempty(md.part)
-%    md.part=partitioner(md,'package','metis','npart',md.npart);
-    md.part=partitioner(md,'package','chaco','npart',md.npart,'weighting','on');
+if isempty(md.qmu.partition)
+%    md.qmu.partition=partitioner(md,'package','metis','npart',md.qmu.numberofpartitions);
+    md.qmu.partition=partitioner(md,'package','chaco','npart',md.qmu.numberofpartitions,'weighting','on');
 % SpawnCore.m assumes partition vector starting at zero
-    md.part=md.part-1;
+    md.qmu.partition=md.qmu.partition-1;
 end
 md.eps_rel=1.e-5;
@@ -89,7 +89,7 @@
 
 %plotmodel(md,'data','mesh')
-%plotmodel(md,'data',md.part)
+%plotmodel(md,'data',md.qmu.partition)
 %plotmodel(md,'data','mesh','partitionedges','on','linewidth',2)
-%part_hist(md.part,md.vwgt)
-%plotmodel(md,'data',log10(md.results.dakota.dresp_out(9).impfac(md.part+1)))
+%part_hist(md.qmu.partition,md.vertex_weight)
+%plotmodel(md,'data',log10(md.results.dakota.dresp_out(9).impfac(md.qmu.partition+1)))
 
Index: /issm/trunk/src/m/qmu/examples/lsq.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/lsq.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/lsq.m	(revision 9650)
@@ -16,22 +16,22 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.cdv=continuous_design.empty();
-md.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
-md.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
-md.variables.csv=continuous_state.empty();
-md.variables.csv(end+1)=continuous_state('gravity',9.8);
+md.qmu.variables=struct();
+md.qmu.variables.cdv=continuous_design.empty();
+md.qmu.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
+md.qmu.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
+md.qmu.variables.csv=continuous_state.empty();
+md.qmu.variables.csv(end+1)=continuous_state('gravity',9.8);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.lst=least_squares_term.empty();
-md.responses.lst(end+1)=least_squares_term('max_vx');
-md.responses.lst(end+1)=least_squares_term('max_vy');
+md.qmu.responses=struct();
+md.qmu.responses.lst=least_squares_term.empty();
+md.qmu.responses.lst(end+1)=least_squares_term('max_vx');
+md.qmu.responses.lst(end+1)=least_squares_term('max_vy');
 
 %%  a least-squares study
 
-md.qmu_method     =dakota_method('nl2sol');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('nl2sol');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'max_iterations',10,...
     'max_function_evaluations',50,...
@@ -40,11 +40,11 @@
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
-md.qmu_params.interval_type='forward';
-md.qmu_params.fd_gradient_step_size=0.01;
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
+md.qmu.params.interval_type='forward';
+md.qmu.params.fd_gradient_step_size=0.01;
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/opt.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/opt.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/opt.m	(revision 9650)
@@ -16,21 +16,21 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.cdv=continuous_design.empty();
-md.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
-md.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
-md.variables.csv=continuous_state.empty();
-md.variables.csv(end+1)=continuous_state('gravity',9.8);
+md.qmu.variables=struct();
+md.qmu.variables.cdv=continuous_design.empty();
+md.qmu.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
+md.qmu.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
+md.qmu.variables.csv=continuous_state.empty();
+md.qmu.variables.csv(end+1)=continuous_state('gravity',9.8);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.of =objective_function.empty();
-md.responses.of (end+1)=objective_function('max_vel');
+md.qmu.responses=struct();
+md.qmu.responses.of =objective_function.empty();
+md.qmu.responses.of (end+1)=objective_function('max_vel');
 
 %%  an optimization study
 
-md.qmu_method     =dakota_method('conmin_f');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('conmin_f');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'max_iterations',10,...
     'max_function_evaluations',50,...
@@ -39,11 +39,11 @@
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
-md.qmu_params.interval_type='forward';
-md.qmu_params.fd_gradient_step_size=0.01;
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
+md.qmu.params.interval_type='forward';
+md.qmu.params.fd_gradient_step_size=0.01;
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/paramc.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/paramc.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/paramc.m	(revision 9650)
@@ -16,28 +16,28 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
-md.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
-md.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
-md.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
-md.variables.cdv=continuous_design.empty();
-md.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
-md.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
-md.variables.csv=continuous_state.empty();
-md.variables.csv(end+1)=continuous_state('gravity',9.8);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
+md.qmu.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
+md.qmu.variables.cdv=continuous_design.empty();
+md.qmu.variables.cdv(end+1)=continuous_design('thickness',1,0.9,1.1);
+md.qmu.variables.cdv(end+1)=continuous_design('drag',1,0.5,1.5);
+md.qmu.variables.csv=continuous_state.empty();
+md.qmu.variables.csv(end+1)=continuous_state('gravity',9.8);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel'   ,[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel'   ,[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  a parameter study
 
-md.qmu_method     =dakota_method('centered');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('centered');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'percent_delta',10.,...
     'deltas_per_variable',1);
@@ -45,9 +45,9 @@
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/paramm.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/paramm.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/paramm.m	(revision 9650)
@@ -16,30 +16,30 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85,900,1000);
-md.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15,1000,1100);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85,900,1000);
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15,1000,1100);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel'   ,[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel'   ,[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  a parameter study
 
-md.qmu_method     =dakota_method('multidim');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('multidim');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'partitions',[4 4]);
 
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/samp.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/samp.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/samp.m	(revision 9650)
@@ -16,31 +16,31 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
-md.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
-md.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
-md.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
-md.variables.nuv(end+1)=normal_uncertain('gravity',9.8,0.49);
-md.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
-md.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
+md.qmu.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
+md.qmu.variables.nuv(end+1)=normal_uncertain('gravity',9.8,0.49);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
+md.qmu.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  nond_sampling study
 
-md.qmu_method     =dakota_method('nond_samp');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('nond_samp');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'seed',1234,...
     'samples',20,...
@@ -49,9 +49,9 @@
 %%  a variety of parameters
 
-md.qmu_params.evaluation_concurrency=4;
-md.qmu_params.analysis_driver='';
-md.qmu_params.analysis_components='';
+md.qmu.params.evaluation_concurrency=4;
+md.qmu.params.analysis_driver='';
+md.qmu.params.analysis_components='';
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/examples/samp_direct.m
===================================================================
--- /issm/trunk/src/m/qmu/examples/samp_direct.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/examples/samp_direct.m	(revision 9650)
@@ -16,31 +16,31 @@
 nonlinear_equality_constraint;
 
-md.variables=struct();
-md.variables.nuv=normal_uncertain.empty();
-md.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
-md.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
-md.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
-md.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
-md.variables.nuv(end+1)=normal_uncertain('gravity',9.8,0.49);
-md.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
-md.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
+md.qmu.variables=struct();
+md.qmu.variables.nuv=normal_uncertain.empty();
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_ice',917,45.85);
+md.qmu.variables.nuv(end+1)=normal_uncertain('rho_water',1023,51.15);
+md.qmu.variables.nuv(end+1)=normal_uncertain('heatcapacity',2009,100.45);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thermalconductivity',2.2,0.11);
+md.qmu.variables.nuv(end+1)=normal_uncertain('gravity',9.8,0.49);
+md.qmu.variables.nuv(end+1)=normal_uncertain('thickness',1,0.05);
+md.qmu.variables.nuv(end+1)=normal_uncertain('drag',1,0.05);
 
 %%  a variety of responses
 
-md.responses=struct();
-md.responses.rf =response_function.empty();
-md.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
-md.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses=struct();
+md.qmu.responses.rf =response_function.empty();
+md.qmu.responses.rf (end+1)=response_function('min_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vx',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_abs_vy',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('min_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
+md.qmu.responses.rf (end+1)=response_function('max_vel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
 
 %%  nond_sampling study
 
-md.qmu_method     =dakota_method('nond_samp');
-md.qmu_method(end)=dmeth_params_set(md.qmu_method(end),...
+md.qmu.method     =dakota_method('nond_samp');
+md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
     'seed',1234,...
     'samples',20,...
@@ -49,9 +49,9 @@
 %%  a variety of parameters
 
-md.qmu_params.direct=true;
-md.qmu_params.analysis_driver='diagnostic';
-md.qmu_params.evaluation_concurrency=1;
+md.qmu.params.direct=true;
+md.qmu.params.analysis_driver='diagnostic';
+md.qmu.params.evaluation_concurrency=1;
 
-md.npart=10;
+md.qmu.numberofpartitions=10;
 
 md.qmu
Index: /issm/trunk/src/m/qmu/expandresponses.m
===================================================================
--- /issm/trunk/src/m/qmu/expandresponses.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/expandresponses.m	(revision 9650)
@@ -1,3 +1,3 @@
-function dresp=expandresponses(md,responses)
+function dresp=expandresponses(md.qmu.responses)
 
 fnames=fieldnames(responses);
Index: /issm/trunk/src/m/qmu/expandvariables.m
===================================================================
--- /issm/trunk/src/m/qmu/expandvariables.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/expandvariables.m	(revision 9650)
@@ -1,3 +1,3 @@
-function dvar=expandvariables(md,variables)
+function dvar=expandvariables(md.qmu.variables)
 
 fnames=fieldnames(variables);
Index: /issm/trunk/src/m/qmu/importancefactors.m
===================================================================
--- /issm/trunk/src/m/qmu/importancefactors.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/importancefactors.m	(revision 9650)
@@ -13,5 +13,5 @@
 
 %go through all response functions and find the one corresponding to the correct responsename
-responsefunctions=md.dakotaresults.dresp_out;
+responsefunctions=md.qmu.results.dresp_out;
 found=0;
 for i=1:length(responsefunctions),
@@ -47,5 +47,5 @@
 else
 	%distribute importance factor
-	factors=importancefactors(md.part'+1); %md.part was created to index "c" style
+	factors=importancefactors(md.qmu.partition'+1); %md.qmu.partition was created to index "c" style
 end
 
Index: /issm/trunk/src/m/qmu/postqmu.m
===================================================================
--- /issm/trunk/src/m/qmu/postqmu.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/postqmu.m	(revision 9650)
@@ -49,5 +49,5 @@
 
 %  move all the individual function evalutations into zip files
-if ~md.dakota_analysis,
+if ~md.qmu.isdakota,
 	system('zip -mq params.in.zip params.in.[1-9]*');
 	system('zip -mq results.out.zip results.out.[1-9]*');
Index: /issm/trunk/src/m/qmu/preqmu.m
===================================================================
--- /issm/trunk/src/m/qmu/preqmu.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/preqmu.m	(revision 9650)
@@ -37,12 +37,12 @@
 
 %retrieve variables and resposnes for this particular analysis.
-variables=md.variables(options.ivar);
-responses=md.responses(options.iresp);
+variables=md.qmu.variables(options.ivar);
+responses=md.qmu.responses(options.iresp);
 
 %expand variables and responses
-variables=expandvariables(md,variables);
-responses=expandresponses(md,responses);
+variables=expandvariables(md.qmu.variables);
+responses=expandresponses(md.qmu.responses);
 
-%go through variables and responses, and check they don't have more than md.npart values. Also determine numvariables and numresponses{{{1
+%go through variables and responses, and check they don't have more than md.qmu.numberofpartitions values. Also determine numvariables and numresponses{{{1
 numvariables=0;
 variable_fieldnames=fieldnames(variables);
@@ -51,6 +51,6 @@
 	fieldvariables=variables.(field_name);
 	for j=1:numel(fieldvariables)
-		if strncmpi(fieldvariables(j).descriptor,'scaled_',7) && str2int(fieldvariables(j).descriptor,'last')>md.npart,
-			error('preqmu error message: one of the expanded variables has more values than the number of partitions (setup in md.npart)');
+		if strncmpi(fieldvariables(j).descriptor,'scaled_',7) && str2int(fieldvariables(j).descriptor,'last')>md.qmu.numberofpartitions,
+			error('preqmu error message: one of the expanded variables has more values than the number of partitions (setup in md.qmu.numberofpartitions)');
 		end
 	end
@@ -64,6 +64,6 @@
 	fieldresponses=responses.(field_name);
 	for j=1:numel(fieldresponses)
-		if strncmpi(fieldresponses(j).descriptor,'scaled_',7) && str2int(fieldresponses(j).descriptor,'last')>md.npart,
-			error('preqmu error message: one of the expanded responses has more values than the number of partitions (setup in md.npart)');
+		if strncmpi(fieldresponses(j).descriptor,'scaled_',7) && str2int(fieldresponses(j).descriptor,'last')>md.qmu.numberofpartitions,
+			error('preqmu error message: one of the expanded responses has more values than the number of partitions (setup in md.qmu.numberofpartitions)');
 		end
 	end
@@ -73,13 +73,13 @@
 
 %create in file for dakota
-dakota_in_data(md.qmu_method(options.imethod),variables,responses,md.qmu_params(options.iparams),options.qmufile);
+dakota_in_data(md.qmu.method(options.imethod),variables,responses,md.qmu.params(options.iparams),options.qmufile);
 system(['rm -rf ' md.miscellaneous.name '.m']);
 
 %build a list of variables and responses descriptors. the list is not expanded. {{{1
 variabledescriptors={};
-variable_fieldnames=fieldnames(md.variables(options.ivar));
+variable_fieldnames=fieldnames(md.qmu.variables(options.ivar));
 for i=1:length(variable_fieldnames),
 	field_name=variable_fieldnames{i};
-	fieldvariables=md.variables(options.ivar).(field_name);
+	fieldvariables=md.qmu.variables(options.ivar).(field_name);
 	for j=1:numel(fieldvariables)
 		variabledescriptors{end+1}=fieldvariables(j).descriptor;
@@ -88,8 +88,8 @@
 
 responsedescriptors={};
-response_fieldnames=fieldnames(md.responses(options.iresp));
+response_fieldnames=fieldnames(md.qmu.responses(options.iresp));
 for i=1:length(response_fieldnames),
 	field_name=response_fieldnames{i};
-	fieldresponses=md.responses(options.iresp).(field_name);
+	fieldresponses=md.qmu.responses(options.iresp).(field_name);
 	for j=1:numel(fieldresponses)
 		responsedescriptors{end+1}=fieldresponses(j).descriptor;
@@ -99,7 +99,7 @@
 
 %register the fields that will be needed by the Qmu model.
-md.numberofresponses=numresponses;
-md.variabledescriptors=variabledescriptors;
-md.responsedescriptors=responsedescriptors;
+md.qmu.numberofresponses=numresponses;
+md.qmu.variabledescriptors=variabledescriptors;
+md.qmu.responsedescriptors=responsedescriptors;
 
 %now, we have to provide all the info necessary for the solutions to compute the responses. For ex, if mass_flux 
Index: /issm/trunk/src/m/qmu/process_qmu_response_data.m
===================================================================
--- /issm/trunk/src/m/qmu/process_qmu_response_data.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/process_qmu_response_data.m	(revision 9650)
@@ -13,8 +13,8 @@
 
 %loop through response descriptors, and act accordingly
-for i=1:numel(md.responsedescriptors),
+for i=1:numel(md.qmu.responsedescriptors),
 
 	%Do we have to process  mass flux profiles?
-	if strncmpi(md.responsedescriptors{i},'indexed_MassFlux',16),
+	if strncmpi(md.qmu.responsedescriptors{i},'indexed_MassFlux',16),
 		num_mass_flux=num_mass_flux+1;
 		process_mass_flux_profiles=1;
@@ -27,25 +27,25 @@
 
 	%we need a profile of points on which to compute the mass_flux, is it here? 
-	if isnans(md.qmu_mass_flux_profiles),
+	if isnans(md.qmu.mass_flux_profiles),
 		error('process_qmu_response_data error message: could not find a mass_flux exp profile!');
 	end
 	
-	if ~iscell(md.qmu_mass_flux_profiles),
+	if ~iscell(md.qmu.mass_flux_profiles),
 		error('process_qmu_response_data error message: qmu_mass_flux_profiles field should be a cell array of domain outline names');
 	end
 
-	if isempty(md.qmu_mass_flux_profiles),
+	if isempty(md.qmu.mass_flux_profiles),
 		error('process_qmu_response_data error message: qmu_mass_flux_profiles cannot be empty!');
 	end
 
-	if num_mass_flux~=numel(md.qmu_mass_flux_profiles),
+	if num_mass_flux~=numel(md.qmu.mass_flux_profiles),
 		error('process_qmu_response_data error message: qmu_mass_flux_profiles should be of the same size as the number of MassFlux responses asked for in the Qmu analysis');
 	end
 
 	%ok, process the domains named in qmu_mass_flux_profiles,  to build a list of segments (MatArray)
-	md.qmu_mass_flux_segments=cell(num_mass_flux,1);
+	md.qmu.mass_flux_segments=cell(num_mass_flux,1);
 
 	for i=1:num_mass_flux,
-		md.qmu_mass_flux_segments{i}=MeshProfileIntersection(md.elements,md.x,md.y,[md.qmu_mass_flux_profile_directory '/' md.qmu_mass_flux_profiles{i}]);
+		md.qmu.mass_flux_segments{i}=MeshProfileIntersection(md.elements,md.x,md.y,[md.qmu.mass_flux_profile_directory '/' md.qmu.mass_flux_profiles{i}]);
 	end
 
Index: /issm/trunk/src/m/qmu/qmu_correlation.m
===================================================================
--- /issm/trunk/src/m/qmu/qmu_correlation.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/qmu_correlation.m	(revision 9650)
@@ -9,9 +9,9 @@
 %      mass_flux_drag_correlation=qmu_correlation(md,'drag','mass_flux');
 
-if ~isfield(md.dakotaresults,'dresp_dat'),
+if ~isfield(md.qmu.results,'dresp_dat'),
 	error('qmu_correlation error message: could not find dresp_dat field in dakota results. you need to run montecarlo before computing correlations');
 end
 	
-data=md.dakotaresults.dresp_dat;
+data=md.qmu.results.dresp_dat;
 
 %go through all the rows and figure which one we are interested in.
Index: /issm/trunk/src/m/qmu/qmumarshall.m
===================================================================
--- /issm/trunk/src/m/qmu/qmumarshall.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/qmumarshall.m	(revision 9650)
@@ -1,7 +1,7 @@
-function qmumarshall(md,variables,responses)
+function qmumarshall(md.qmu.variables,responses)
 %QMUMARSHALL - output ISSM compatible binary file with qmu fields. This is 
 %   in addition to the marshall routine for regular solve routines.
 %   Usage:
-%      qmumarshall(md,variables,responses)
+%      qmumarshall(md.qmu.variables,responses)
 % 
 %   where variables and responses are the Dakota variables and responses found in the model @md.
@@ -24,5 +24,5 @@
 WriteData(fid,md.numvariabledescriptors,'Integer','numvariabledescriptors');
 for i=1:md.numvariabledescriptors,
-	field_name=md.variabledescriptors{i};
+	field_name=md.qmu.variabledescriptors{i};
 	WriteData(fid,field_name,'String',['variabledescriptor' num2str(i)]);
 end
@@ -31,8 +31,8 @@
 
 %write number of responses to disk
-WriteData(fid,md.numberofresponses,'Integer','numberofresponses');
-WriteData(fid,md.numresponsedescriptors,'Integer','numresponsedescriptors');
-for i=1:md.numresponsedescriptors,
-	field_name=md.responsedescriptors{i};
+WriteData(fid,md.qmu.numberofresponses,'Integer','numberofresponses');
+WriteData(fid,md.qmu.numresponsedescriptors,'Integer','numresponsedescriptors');
+for i=1:md.qmu.numresponsedescriptors,
+	field_name=md.qmu.responsedescriptors{i};
 	WriteData(fid,field_name,'String',['responsedescriptor' num2str(i)]);
 end
@@ -41,6 +41,6 @@
 qmu_segments=0;
 
-for i=1:numel(md.responsedescriptors),
-	field_name=md.responsedescriptors{i};
+for i=1:numel(md.qmu.responsedescriptors),
+	field_name=md.qmu.responsedescriptors{i};
 	if strncmpi(field_name,'indexed_MassFlux',16),
 		qmu_segments=1;
@@ -49,17 +49,17 @@
 			
 if qmu_segments,
-	WriteData(fid,md.qmu_mass_flux_num_profiles,'Integer','qmu_mass_flux_num_profiles');
-	for i=1:md.qmu_mass_flux_num_profiles,
-		WriteData(fid,md.qmu_mass_flux_segments{i},'Mat',['qmu_mass_flux_segments' num2str(i)]);
+	WriteData(fid,md.qmu.mass_flux_num_profiles,'Integer','qmu_mass_flux_num_profiles');
+	for i=1:md.qmu.mass_flux_num_profiles,
+		WriteData(fid,md.qmu.mass_flux_segments{i},'Mat',['qmu_mass_flux_segments' num2str(i)]);
 	end
 else
-	md.qmu_mass_flux_num_profiles=0;
-	WriteData(fid,md.qmu_mass_flux_num_profiles,'Integer','qmu_mass_flux_num_profiles');
+	md.qmu.mass_flux_num_profiles=0;
+	WriteData(fid,md.qmu.mass_flux_num_profiles,'Integer','qmu_mass_flux_num_profiles');
 end
 
 
 %write part and npart to disk
-WriteData(fid,md.npart,'Integer','npart');
-WriteData(fid,md.part,'Mat','part');
+WriteData(fid,md.qmu.numberofpartitions,'Integer','npart');
+WriteData(fid,md.qmu.partition,'Mat','part');
 
 %close file
@@ -73,4 +73,4 @@
 function qmumarshallusage();
 disp(' ');
-disp('function qmumarshall(md,variables,responses)');
+disp('function qmumarshall(md.qmu.variables,responses)');
 end
Index: /issm/trunk/src/m/qmu/sensitivities.m
===================================================================
--- /issm/trunk/src/m/qmu/sensitivities.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/sensitivities.m	(revision 9650)
@@ -13,5 +13,5 @@
 
 %go through all response functions and find the one corresponding to the correct responsename
-responsefunctions=md.dakotaresults.dresp_out;
+responsefunctions=md.qmu.results.dresp_out;
 found=0;
 for i=1:length(responsefunctions),
@@ -63,4 +63,4 @@
 else
 	%project the sensitivities from the partition onto the mesh
-	sens=rawsens(md.part'+1); %md.part was created to index "c" style
+	sens=rawsens(md.qmu.partition'+1); %md.qmu.partition was created to index "c" style
 end
Index: /issm/trunk/src/m/qmu/setupdesign/QmuSetupResponses.m
===================================================================
--- /issm/trunk/src/m/qmu/setupdesign/QmuSetupResponses.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/setupdesign/QmuSetupResponses.m	(revision 9650)
@@ -14,5 +14,5 @@
 	%partitions we want
 
-	for j=1:md.npart
+	for j=1:md.qmu.numberofpartitions
 		dresp(end+1)           =responses;
 		dresp(end  ).descriptor=sprintf('%s_%d',responses.descriptor,j);
Index: /issm/trunk/src/m/qmu/setupdesign/QmuSetupVariables.m
===================================================================
--- /issm/trunk/src/m/qmu/setupdesign/QmuSetupVariables.m	(revision 9649)
+++ /issm/trunk/src/m/qmu/setupdesign/QmuSetupVariables.m	(revision 9650)
@@ -13,9 +13,9 @@
 
 	if isa(variables,'uniform_uncertain'),
-		if (length(variables.lower)>md.npart || length(variables.upper)>md.npart)
+		if (length(variables.lower)>md.qmu.numberofpartitions || length(variables.upper)>md.qmu.numberofpartitions)
 			error('QmuSetupDesign error message: stddev should be either a scalar or a ''npart'' length vector');
 		end
 	elseif isa(variables,'normal_uncertain'),
-		if length(variables.stddev)>md.npart,
+		if length(variables.stddev)>md.qmu.numberofpartitions,
 			error('QmuSetupDesign error message: stddev should be either a scalar or a ''npart'' length vector');
 		end
@@ -25,5 +25,5 @@
 	%partitions we want
 
-	for j=1:md.npart
+	for j=1:md.qmu.numberofpartitions
 		dvar(end+1)           =variables;
 		dvar(end  ).descriptor=sprintf('%s_%d',variables.descriptor,j);
Index: /issm/trunk/src/m/solutions/diagnostic_core.m
===================================================================
--- /issm/trunk/src/m/solutions/diagnostic_core.m	(revision 9649)
+++ /issm/trunk/src/m/solutions/diagnostic_core.m	(revision 9650)
@@ -15,5 +15,5 @@
 	ismacayealpattyn=femmodel.parameters.Ismacayealpattyn;
 	isstokes=femmodel.parameters.Isstokes;
-	dakota_analysis=femmodel.parameters.DakotaAnalysis;
+	dakota_analysis=femmodel.parameters.QmuIsdakota;
 	control_analysis=femmodel.parameters.ControlAnalysis;
 	solution_type=femmodel.parameters.SolutionType;
Index: /issm/trunk/src/m/solutions/flaim.m
===================================================================
--- /issm/trunk/src/m/solutions/flaim.m	(revision 9649)
+++ /issm/trunk/src/m/solutions/flaim.m	(revision 9650)
@@ -80,5 +80,5 @@
 
 display('Calling KMLMeshWrite.');
-KMLMeshWrite(md.miscellaneous.name,md.miscellaneous.notes,md.elements,md.nodeconnectivity,md.lat,md.long,md.part,md.flaim.criterion,options.cmap,filekml);
+KMLMeshWrite(md.miscellaneous.name,md.miscellaneous.notes,md.elements,md.nodeconnectivity,md.lat,md.long,md.qmu.partition,md.flaim.criterion,options.cmap,filekml);
 %  for testing
 %filekml='issm-split-geikie1-targets.kml';
Index: /issm/trunk/src/m/solutions/issm.m
===================================================================
--- /issm/trunk/src/m/solutions/issm.m	(revision 9649)
+++ /issm/trunk/src/m/solutions/issm.m	(revision 9650)
@@ -22,5 +22,5 @@
 
 	%retrieve parameters
-	dakota_analysis=femmodel.parameters.DakotaAnalysis;
+	dakota_analysis=femmodel.parameters.QmuIsdakota;
 	control_analysis=femmodel.parameters.ControlAnalysis;
 
Index: sm/trunk/src/m/utils/Meca/massflux.m
===================================================================
--- /issm/trunk/src/m/utils/Meca/massflux.m	(revision 9649)
+++ 	(revision )
@@ -1,32 +1,0 @@
-
-for j=1:13,
-
-	m=md.qmu_mass_flux_segments{j};
-	s=size(m);s=s(1);
-
-	flux=0;
-	for i=1:s(1),
-
-		x1=m(i,1);
-		y1=m(i,2);
-		x2=m(i,3);
-		y2=m(i,4);
-
-		plot([x1 x2],[y1 y2],'r-');
-
-		%compute mass flux: 
-		normal=zeros(2,1);
-		normal(1)=cos(atan2(x1-x2,y2-y1));
-		normal(2)=sin(atan2(x1-x2,y2-y1));
-
-		length=sqrt((x2-x1)^2+(y2-y1)^2);
-
-		h=InterpFromMeshToMesh2D(md.elements,md.x,md.y,md.thickness,(x1+x2)/2,(y1+y2)/2);
-		vx=InterpFromMeshToMesh2D(md.elements,md.x,md.y,md.vx,(x1+x2)/2,(y1+y2)/2);
-		vy=InterpFromMeshToMesh2D(md.elements,md.x,md.y,md.vy,(x1+x2)/2,(y1+y2)/2);
-
-		flux=flux+md.rho_ice*length*h*(vx*normal(1)+vy*normal(2));
-
-	end
-	disp(sprintf('%i: %.2g\n',j,flux/10^12));
-end
Index: /issm/trunk/src/mex/DakotaResponses/DakotaResponses.cpp
===================================================================
--- /issm/trunk/src/mex/DakotaResponses/DakotaResponses.cpp	(revision 9649)
+++ /issm/trunk/src/mex/DakotaResponses/DakotaResponses.cpp	(revision 9650)
@@ -39,5 +39,5 @@
 
 	/*number of responses: */
-	parameters->FindParam(&numresponses,QmuNumberOfResponsesEnum);
+	parameters->FindParam(&numresponses,QmuNumberofresponsesEnum);
 	
 	/*dakota input: */
Index: /issm/trunk/template
===================================================================
--- /issm/trunk/template	(revision 9649)
+++ /issm/trunk/template	(revision 9650)
@@ -138,23 +138,4 @@
 	thickness_obs
 }}}
-qmu{{{
-	variables
-	responses
-	qmu_method -> remove all qmu_
-	qmu_params
-	dakotaresults ->results
-	qmu_analysis -> isqmu
-	part ->partition
-	npart -> numberofpartitions
-	numberofresponses
-	variabledescriptors
-	responsedescriptors
-	qmu_mass_flux_profile_directory
-	qmu_mass_flux_profiles
-	qmu_mass_flux_segments
-
-	adjacency
-	vwgt -> vertex_weight
-}}}
 
 %To be completed
