Index: /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/CreateParametersDakota.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/CreateParametersDakota.cpp	(revision 20695)
+++ /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/CreateParametersDakota.cpp	(revision 20696)
@@ -84,14 +84,31 @@
 		/*Deal with data needed because of qmu variables*/
 		for(i=0;i<numvariabledescriptors;i++){
+			printf("-------------- file: CreateParametersDakota.cpp line: %i\n",__LINE__); 
 			if (strncmp(variabledescriptors[i],"scaled_",7)==0){
 				/*Ok, we are dealing with a variable that is distributed over nodes. Recover the name of the variable (ex: scaled_Thickness): */
 				sscanf(variabledescriptors[i],"scaled_%s",tag);
+				printf("STRING: %s\n",tag);
 
 				/*Convert tag to field name*/
 				char* fieldname = NULL;
 				int   param_enum = -1;
-				if(strcmp(tag,"Thickness")){
+				if(strcmp(tag,"Thickness")==0){
 					const char* field = "md.geometry.thickness";
 					param_enum        = ThicknessEnum;
+					fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+				}
+				else if(strcmp(tag,"MaterialsRheologyB")==0){
+					const char* field = "md.materials.rheology_B";
+					param_enum        = MaterialsRheologyBEnum;
+					fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+				}
+				else if(strcmp(tag,"SmbMassBalance")==0){
+					const char* field = "md.smb.mass_balance";
+					param_enum        = SmbMassBalanceEnum;
+					fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+				}
+				else if(strcmp(tag,"FrictionCoefficient")==0){
+					const char* field = "md.friction.coefficient";
+					param_enum        = FrictionCoefficientEnum;
 					fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
 				}
Index: /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/UpdateElementsAndMaterialsDakota.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/UpdateElementsAndMaterialsDakota.cpp	(revision 20695)
+++ /issm/trunk-jpl/src/c/modules/ModelProcessorx/Dakota/UpdateElementsAndMaterialsDakota.cpp	(revision 20696)
@@ -15,4 +15,4 @@
 	iomodel->FindConstant(&dakota_analysis,"md.qmu.isdakota");
 
-	if(dakota_analysis) iomodel->FetchDataToInput(elements,"md.geometry.hydrostatic_ratio",0.);
+	if(dakota_analysis) iomodel->FetchDataToInput(elements,"md.geometry.hydrostatic_ratio",GeometryHydrostaticRatioEnum,0.);
 }
Index: /issm/trunk-jpl/src/m/classes/autodiff.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/autodiff.m	(revision 20695)
+++ /issm/trunk-jpl/src/m/classes/autodiff.m	(revision 20696)
@@ -98,5 +98,5 @@
 			%process dependent variables {{{
 			num_dependent_objects=numel(self.dependents);
-			WriteData(fid,prefix,'data',num_dependent_objects,'naem','md.autodiff.num_dependent_objects','format','Integer');
+			WriteData(fid,prefix,'data',num_dependent_objects,'name','md.autodiff.num_dependent_objects','format','Integer');
 
 			if(num_dependent_objects),
