Index: /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 6200)
+++ /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 6201)
@@ -174,4 +174,5 @@
 	CmNoiseDmpEnum,
 	ConstantEnum,
+	NumControlsEnum,
 	ControlTypeEnum,
 	ConvergedEnum,
Index: /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp	(revision 6200)
+++ /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp	(revision 6201)
@@ -148,4 +148,5 @@
 		case CmNoiseDmpEnum : return "CmNoiseDmp";
 		case ConstantEnum : return "Constant";
+		case NumControlsEnum : return "NumControls";
 		case ControlTypeEnum : return "ControlType";
 		case ConvergedEnum : return "Converged";
Index: /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp	(revision 6200)
+++ /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp	(revision 6201)
@@ -146,4 +146,5 @@
 	else if (strcmp(name,"CmNoiseDmp")==0) return CmNoiseDmpEnum;
 	else if (strcmp(name,"Constant")==0) return ConstantEnum;
+	else if (strcmp(name,"NumControls")==0) return NumControlsEnum;
 	else if (strcmp(name,"ControlType")==0) return ControlTypeEnum;
 	else if (strcmp(name,"Converged")==0) return ConvergedEnum;
Index: /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/UpdateElementsBalancedthickness.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/UpdateElementsBalancedthickness.cpp	(revision 6200)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/UpdateElementsBalancedthickness.cpp	(revision 6201)
@@ -39,7 +39,4 @@
 		IoModelFetchData(&iomodel->thickness_obs,NULL,NULL,iomodel_handle,"thickness_obs");
 		IoModelFetchData(&iomodel->weights,NULL,NULL,iomodel_handle,"weights");
-		if(iomodel->control_type==DhDtEnum || iomodel->control_type==VxEnum || iomodel->control_type==VyEnum){
-			IoModelFetchData(&iomodel->control_parameter,NULL,NULL,iomodel_handle,EnumToModelField(iomodel->control_type)); //copy the control parameter in iomodel
-		}
 	}
 
@@ -69,4 +66,3 @@
 	xfree((void**)&iomodel->thickness_obs);
 	xfree((void**)&iomodel->weights);
-	xfree((void**)&iomodel->control_parameter);
 }
Index: /issm/trunk/src/c/modules/ModelProcessorx/Control/CreateParametersControl.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Control/CreateParametersControl.cpp	(revision 6200)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Control/CreateParametersControl.cpp	(revision 6201)
@@ -15,13 +15,14 @@
 	
 	int i;
-	double* control_parameter=NULL;
-	
 	Parameters* parameters=NULL;
 
 	/*Get parameters: */
 	parameters=*pparameters;
-	
 	parameters->AddObject(new   BoolParam(ControlAnalysisEnum,iomodel->control_analysis));
+
 	if(iomodel->control_analysis){
+
+		/*How many controls?*/
+		parameters->AddObject(new IntParam(NumControlsEnum,iomodel->num_control_type));
 
 		/*What control type?*/
@@ -31,10 +32,7 @@
 					iomodel->control_type!=VxEnum &&
 					iomodel->control_type!=VyEnum
-					){
-			ISSMERROR("control_type %s not supported yet!",EnumToString(iomodel->control_type));
-		}
-		else{
-			parameters->AddObject(new IntParam(ControlTypeEnum,iomodel->control_type));
-		}
+					) ISSMERROR("control_type %s not supported yet!",EnumToString(iomodel->control_type));
+
+		parameters->AddObject(new IntParam(ControlTypeEnum,iomodel->control_type));
 
 		/*What solution type?*/
@@ -69,7 +67,4 @@
 		xfree((void**)&iomodel->optscal);
 		xfree((void**)&iomodel->maxiter);
-
-		IoModelFetchData(&control_parameter,NULL,NULL,iomodel_handle,EnumToModelField(iomodel->control_type));
-		xfree((void**)&control_parameter);
 	}
 
Index: /issm/trunk/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp	(revision 6200)
+++ /issm/trunk/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp	(revision 6201)
@@ -40,7 +40,4 @@
 	IoModelFetchData(&iomodel->rheology_B,NULL,NULL,iomodel_handle,"rheology_B");
 	IoModelFetchData(&iomodel->rheology_n,NULL,NULL,iomodel_handle,"rheology_n");
-	if(iomodel->control_analysis && iomodel->control_type==RheologyBbarEnum){
-		IoModelFetchData(&iomodel->control_parameter,NULL,NULL,iomodel_handle,EnumToModelField(iomodel->control_type)); //copy the control parameter in iomodel
-	}
 	
 	/*Create elements and materials: */
@@ -64,5 +61,4 @@
 	xfree((void**)&iomodel->rheology_B);
 	xfree((void**)&iomodel->rheology_n);
-	xfree((void**)&iomodel->control_parameter);
 
 	/*Add new constrant material property tgo materials, at the end: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp	(revision 6200)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp	(revision 6201)
@@ -50,7 +50,4 @@
 		IoModelFetchData(&iomodel->vy_obs,NULL,NULL,iomodel_handle,"vy_obs");
 		IoModelFetchData(&iomodel->weights,NULL,NULL,iomodel_handle,"weights");
-		if(iomodel->control_type==DragCoefficientEnum){
-			IoModelFetchData(&iomodel->control_parameter,NULL,NULL,iomodel_handle,EnumToModelField(iomodel->control_type)); //copy the control parameter in iomodel
-		}
 	}
 
@@ -90,4 +87,3 @@
 	xfree((void**)&iomodel->vy_obs);
 	xfree((void**)&iomodel->weights);
-	xfree((void**)&iomodel->control_parameter);
 }
Index: /issm/trunk/src/c/objects/IoModel.cpp
===================================================================
--- /issm/trunk/src/c/objects/IoModel.cpp	(revision 6200)
+++ /issm/trunk/src/c/objects/IoModel.cpp	(revision 6201)
@@ -98,5 +98,4 @@
 	xfree((void**)&this->riftinfo);
 	xfree((void**)&this->penalties);
-	xfree((void**)&this->control_parameter);
 	
 	/*exterior data: */
@@ -152,4 +151,5 @@
 
 	/*Get control parameters: */
+	IoModelFetchData(&this->num_control_type,iomodel_handle,"num_control_type"); 
 	IoModelFetchData(&this->control_type,iomodel_handle,"control_type"); 
 
@@ -226,5 +226,4 @@
 	this->qmu_analysis=0;
 	this->control_analysis=0;
-	this->control_parameter=NULL;
 	this->numberofvariables=0;
 	this->numvariabledescriptors=0;
Index: /issm/trunk/src/c/objects/IoModel.h
===================================================================
--- /issm/trunk/src/c/objects/IoModel.h	(revision 6200)
+++ /issm/trunk/src/c/objects/IoModel.h	(revision 6201)
@@ -121,6 +121,6 @@
 
 		/*control methods: */
+		int      num_control_type;
 		int      control_type;
-		double*	control_parameter;
 
 		/*solution parameters: */
Index: /issm/trunk/src/m/classes/@model/model.m
===================================================================
--- /issm/trunk/src/m/classes/@model/model.m	(revision 6200)
+++ /issm/trunk/src/m/classes/@model/model.m	(revision 6201)
@@ -199,4 +199,5 @@
 	md.control_analysis=0;
 	md.control_type=0;
+	md.num_control_type=0;
 	md.weights=[];
 	md.nsteps=0;
Index: /issm/trunk/src/m/enum/AbsoluteEnum.m
===================================================================
--- /issm/trunk/src/m/enum/AbsoluteEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/AbsoluteEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=AbsoluteEnum()
 
-macro=249;
+macro=250;
Index: /issm/trunk/src/m/enum/AdjointEnum.m
===================================================================
--- /issm/trunk/src/m/enum/AdjointEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/AdjointEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=AdjointEnum()
 
-macro=264;
+macro=265;
Index: /issm/trunk/src/m/enum/BetaEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BetaEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/BetaEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=BetaEnum()
 
-macro=259;
+macro=260;
Index: /issm/trunk/src/m/enum/BoolExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BoolExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/BoolExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=BoolExternalResultEnum()
 
-macro=223;
+macro=224;
Index: /issm/trunk/src/m/enum/CflCoefficientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CflCoefficientEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/CflCoefficientEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=CflCoefficientEnum()
 
-macro=141;
+macro=142;
Index: /issm/trunk/src/m/enum/CmGradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmGradientEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/CmGradientEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=CmGradientEnum()
 
-macro=260;
+macro=261;
Index: /issm/trunk/src/m/enum/CmJumpEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmJumpEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/CmJumpEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=CmJumpEnum()
 
-macro=261;
+macro=262;
Index: /issm/trunk/src/m/enum/CmMaxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmMaxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/CmMaxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=CmMaxEnum()
 
-macro=262;
+macro=263;
Index: /issm/trunk/src/m/enum/CmMinEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmMinEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/CmMinEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=CmMinEnum()
 
-macro=263;
+macro=264;
Index: /issm/trunk/src/m/enum/ColinearEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ColinearEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ColinearEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ColinearEnum()
 
-macro=257;
+macro=258;
Index: /issm/trunk/src/m/enum/ConnectivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ConnectivityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ConnectivityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ConnectivityEnum()
 
-macro=267;
+macro=268;
Index: /issm/trunk/src/m/enum/ControlSteadyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ControlSteadyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ControlSteadyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ControlSteadyEnum()
 
-macro=268;
+macro=269;
Index: /issm/trunk/src/m/enum/ControlTypeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ControlTypeEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ControlTypeEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ControlTypeEnum()
 
-macro=132;
+macro=133;
Index: /issm/trunk/src/m/enum/ConvergedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ConvergedEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ConvergedEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ConvergedEnum()
 
-macro=133;
+macro=134;
Index: /issm/trunk/src/m/enum/DakotaParameterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DakotaParameterEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DakotaParameterEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DakotaParameterEnum()
 
-macro=269;
+macro=270;
Index: /issm/trunk/src/m/enum/DhDtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DhDtEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DhDtEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DhDtEnum()
 
-macro=134;
+macro=135;
Index: /issm/trunk/src/m/enum/DimEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DimEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DimEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DimEnum()
 
-macro=270;
+macro=271;
Index: /issm/trunk/src/m/enum/DoubleElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleElementResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DoubleElementResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DoubleElementResultEnum()
 
-macro=220;
+macro=221;
Index: /issm/trunk/src/m/enum/DoubleExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DoubleExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DoubleExternalResultEnum()
 
-macro=224;
+macro=225;
Index: /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DoubleMatExternalResultEnum()
 
-macro=226;
+macro=227;
Index: /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DoubleVecExternalResultEnum()
 
-macro=225;
+macro=226;
Index: /issm/trunk/src/m/enum/DragCoefficientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DragCoefficientEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DragCoefficientEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DragCoefficientEnum()
 
-macro=135;
+macro=136;
Index: /issm/trunk/src/m/enum/DragPEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DragPEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DragPEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DragPEnum()
 
-macro=136;
+macro=137;
Index: /issm/trunk/src/m/enum/DragQEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DragQEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DragQEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DragQEnum()
 
-macro=137;
+macro=138;
Index: /issm/trunk/src/m/enum/DragTypeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DragTypeEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DragTypeEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DragTypeEnum()
 
-macro=138;
+macro=139;
Index: /issm/trunk/src/m/enum/DtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DtEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/DtEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=DtEnum()
 
-macro=139;
+macro=140;
Index: /issm/trunk/src/m/enum/ElementOnBedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnBedEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ElementOnBedEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ElementOnBedEnum()
 
-macro=142;
+macro=143;
Index: /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ElementOnIceShelfEnum()
 
-macro=143;
+macro=144;
Index: /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ElementOnSurfaceEnum()
 
-macro=144;
+macro=145;
Index: /issm/trunk/src/m/enum/ElementOnWaterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnWaterEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ElementOnWaterEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ElementOnWaterEnum()
 
-macro=145;
+macro=146;
Index: /issm/trunk/src/m/enum/EnumToString.m
===================================================================
--- /issm/trunk/src/m/enum/EnumToString.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EnumToString.m	(revision 6201)
@@ -143,4 +143,5 @@
 case CmNoiseDmpEnum(), string='CmNoiseDmp'; return
 case ConstantEnum(), string='Constant'; return
+case NumControlsEnum(), string='NumControls'; return
 case ControlTypeEnum(), string='ControlType'; return
 case ConvergedEnum(), string='Converged'; return
Index: /issm/trunk/src/m/enum/EpsAbsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsAbsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EpsAbsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=EpsAbsEnum()
 
-macro=271;
+macro=272;
Index: /issm/trunk/src/m/enum/EpsCmEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsCmEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EpsCmEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=EpsCmEnum()
 
-macro=272;
+macro=273;
Index: /issm/trunk/src/m/enum/EpsRelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsRelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EpsRelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=EpsRelEnum()
 
-macro=273;
+macro=274;
Index: /issm/trunk/src/m/enum/EpsResEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsResEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EpsResEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=EpsResEnum()
 
-macro=274;
+macro=275;
Index: /issm/trunk/src/m/enum/EpsVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsVelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/EpsVelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=EpsVelEnum()
 
-macro=146;
+macro=147;
Index: /issm/trunk/src/m/enum/ExtToIuEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ExtToIuEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ExtToIuEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ExtToIuEnum()
 
-macro=154;
+macro=155;
Index: /issm/trunk/src/m/enum/FillEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FillEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/FillEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=FillEnum()
 
-macro=147;
+macro=148;
Index: /issm/trunk/src/m/enum/FractionIncrementEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FractionIncrementEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/FractionIncrementEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=FractionIncrementEnum()
 
-macro=148;
+macro=149;
Index: /issm/trunk/src/m/enum/FrictionEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FrictionEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/FrictionEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=FrictionEnum()
 
-macro=149;
+macro=150;
Index: /issm/trunk/src/m/enum/FsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FsetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/FsetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=FsetEnum()
 
-macro=321;
+macro=322;
Index: /issm/trunk/src/m/enum/GeothermalFluxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GeothermalFluxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/GeothermalFluxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=GeothermalFluxEnum()
 
-macro=150;
+macro=151;
Index: /issm/trunk/src/m/enum/GradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GradientEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/GradientEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=GradientEnum()
 
-macro=265;
+macro=266;
Index: /issm/trunk/src/m/enum/GravityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GravityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/GravityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=GravityEnum()
 
-macro=252;
+macro=253;
Index: /issm/trunk/src/m/enum/GsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GsetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/GsetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=GsetEnum()
 
-macro=320;
+macro=321;
Index: /issm/trunk/src/m/enum/HeatCapacityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/HeatCapacityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/HeatCapacityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=HeatCapacityEnum()
 
-macro=275;
+macro=276;
Index: /issm/trunk/src/m/enum/IndexEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IndexEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IndexEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IndexEnum()
 
-macro=308;
+macro=309;
Index: /issm/trunk/src/m/enum/IndexedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IndexedEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IndexedEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IndexedEnum()
 
-macro=306;
+macro=307;
Index: /issm/trunk/src/m/enum/IntExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IntExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IntExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IntExternalResultEnum()
 
-macro=227;
+macro=228;
Index: /issm/trunk/src/m/enum/InternalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/InternalEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/InternalEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=InternalEnum()
 
-macro=151;
+macro=152;
Index: /issm/trunk/src/m/enum/IntersectEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IntersectEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IntersectEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IntersectEnum()
 
-macro=256;
+macro=257;
Index: /issm/trunk/src/m/enum/IsHutterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsHutterEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IsHutterEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IsHutterEnum()
 
-macro=276;
+macro=277;
Index: /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IsMacAyealPattynEnum()
 
-macro=277;
+macro=278;
Index: /issm/trunk/src/m/enum/IsStokesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsStokesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IsStokesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IsStokesEnum()
 
-macro=278;
+macro=279;
Index: /issm/trunk/src/m/enum/IuToExtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IuToExtEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/IuToExtEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=IuToExtEnum()
 
-macro=153;
+macro=154;
Index: /issm/trunk/src/m/enum/JEnum.m
===================================================================
--- /issm/trunk/src/m/enum/JEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/JEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=JEnum()
 
-macro=230;
+macro=231;
Index: /issm/trunk/src/m/enum/KffEnum.m
===================================================================
--- /issm/trunk/src/m/enum/KffEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/KffEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=KffEnum()
 
-macro=279;
+macro=280;
Index: /issm/trunk/src/m/enum/KflagEnum.m
===================================================================
--- /issm/trunk/src/m/enum/KflagEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/KflagEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=KflagEnum()
 
-macro=152;
+macro=153;
Index: /issm/trunk/src/m/enum/LatentHeatEnum.m
===================================================================
--- /issm/trunk/src/m/enum/LatentHeatEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/LatentHeatEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=LatentHeatEnum()
 
-macro=280;
+macro=281;
Index: /issm/trunk/src/m/enum/LowmemEnum.m
===================================================================
--- /issm/trunk/src/m/enum/LowmemEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/LowmemEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=LowmemEnum()
 
-macro=281;
+macro=282;
Index: /issm/trunk/src/m/enum/MassFluxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MassFluxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MassFluxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MassFluxEnum()
 
-macro=155;
+macro=156;
Index: /issm/trunk/src/m/enum/MaxAbsVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxAbsVxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVxEnum()
 
-macro=240;
+macro=241;
Index: /issm/trunk/src/m/enum/MaxAbsVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxAbsVyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVyEnum()
 
-macro=243;
+macro=244;
Index: /issm/trunk/src/m/enum/MaxAbsVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVzEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxAbsVzEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVzEnum()
 
-macro=246;
+macro=247;
Index: /issm/trunk/src/m/enum/MaxIterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxIterEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxIterEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxIterEnum()
 
-macro=282;
+macro=283;
Index: /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxNonlinearIterationsEnum()
 
-macro=283;
+macro=284;
Index: /issm/trunk/src/m/enum/MaxPenetrationEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxPenetrationEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxPenetrationEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxPenetrationEnum()
 
-macro=162;
+macro=163;
Index: /issm/trunk/src/m/enum/MaxVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxVelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxVelEnum()
 
-macro=237;
+macro=238;
Index: /issm/trunk/src/m/enum/MaxVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxVxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxVxEnum()
 
-macro=239;
+macro=240;
Index: /issm/trunk/src/m/enum/MaxVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxVyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxVyEnum()
 
-macro=242;
+macro=243;
Index: /issm/trunk/src/m/enum/MaxVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVzEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MaxVzEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MaxVzEnum()
 
-macro=245;
+macro=246;
Index: /issm/trunk/src/m/enum/MeanVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeanVelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MeanVelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MeanVelEnum()
 
-macro=163;
+macro=164;
Index: /issm/trunk/src/m/enum/MeltingOffsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingOffsetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MeltingOffsetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MeltingOffsetEnum()
 
-macro=164;
+macro=165;
Index: /issm/trunk/src/m/enum/MeltingPointEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingPointEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MeltingPointEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MeltingPointEnum()
 
-macro=284;
+macro=285;
Index: /issm/trunk/src/m/enum/MeltingRateEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingRateEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MeltingRateEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MeltingRateEnum()
 
-macro=165;
+macro=166;
Index: /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinMechanicalConstraintsEnum()
 
-macro=285;
+macro=286;
Index: /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinThermalConstraintsEnum()
 
-macro=286;
+macro=287;
Index: /issm/trunk/src/m/enum/MinVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinVelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinVelEnum()
 
-macro=236;
+macro=237;
Index: /issm/trunk/src/m/enum/MinVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinVxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinVxEnum()
 
-macro=238;
+macro=239;
Index: /issm/trunk/src/m/enum/MinVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinVyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinVyEnum()
 
-macro=241;
+macro=242;
Index: /issm/trunk/src/m/enum/MinVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVzEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MinVzEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MinVzEnum()
 
-macro=244;
+macro=245;
Index: /issm/trunk/src/m/enum/MiniEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MiniEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MiniEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MiniEnum()
 
-macro=219;
+macro=220;
Index: /issm/trunk/src/m/enum/MisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MisfitEnum()
 
-macro=166;
+macro=167;
Index: /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=MixedLayerCapacityEnum()
 
-macro=254;
+macro=255;
Index: /issm/trunk/src/m/enum/NStepsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NStepsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NStepsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NStepsEnum()
 
-macro=287;
+macro=288;
Index: /issm/trunk/src/m/enum/NdtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NdtEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NdtEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NdtEnum()
 
-macro=288;
+macro=289;
Index: /issm/trunk/src/m/enum/NodalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodalEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NodalEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NodalEnum()
 
-macro=310;
+macro=311;
Index: /issm/trunk/src/m/enum/NodeOnBedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnBedEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NodeOnBedEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NodeOnBedEnum()
 
-macro=167;
+macro=168;
Index: /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NodeOnIceSheetEnum()
 
-macro=168;
+macro=169;
Index: /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NodeOnIceShelfEnum()
 
-macro=169;
+macro=170;
Index: /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NodeOnSurfaceEnum()
 
-macro=170;
+macro=171;
Index: /issm/trunk/src/m/enum/NumControlsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumControlsEnum.m	(revision 6201)
+++ /issm/trunk/src/m/enum/NumControlsEnum.m	(revision 6201)
@@ -0,0 +1,11 @@
+function macro=NumControlsEnum()
+%NUMCONTROLSENUM - Enum of NumControls
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/SynchronizeMatlabEnum
+%            Please read src/c/README for more information
+%
+%   Usage:
+%      macro=NumControlsEnum()
+
+macro=132;
Index: /issm/trunk/src/m/enum/NumOutputEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumOutputEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumOutputEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumOutputEnum()
 
-macro=289;
+macro=290;
Index: /issm/trunk/src/m/enum/NumRiftsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumRiftsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumRiftsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumRiftsEnum()
 
-macro=290;
+macro=291;
Index: /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumberNodeToElementConnectivityEnum()
 
-macro=171;
+macro=172;
Index: /issm/trunk/src/m/enum/NumberOfElementsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfElementsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumberOfElementsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumberOfElementsEnum()
 
-macro=291;
+macro=292;
Index: /issm/trunk/src/m/enum/NumberOfNodesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfNodesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumberOfNodesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumberOfNodesEnum()
 
-macro=292;
+macro=293;
Index: /issm/trunk/src/m/enum/NumberOfVerticesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfVerticesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/NumberOfVerticesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=NumberOfVerticesEnum()
 
-macro=293;
+macro=294;
Index: /issm/trunk/src/m/enum/OldGradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OldGradientEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/OldGradientEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=OldGradientEnum()
 
-macro=266;
+macro=267;
Index: /issm/trunk/src/m/enum/OptScalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OptScalEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/OptScalEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=OptScalEnum()
 
-macro=294;
+macro=295;
Index: /issm/trunk/src/m/enum/OutputFilePointerEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OutputFilePointerEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/OutputFilePointerEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=OutputFilePointerEnum()
 
-macro=295;
+macro=296;
Index: /issm/trunk/src/m/enum/OutputFrequencyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OutputFrequencyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/OutputFrequencyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=OutputFrequencyEnum()
 
-macro=235;
+macro=236;
Index: /issm/trunk/src/m/enum/P0Enum.m
===================================================================
--- /issm/trunk/src/m/enum/P0Enum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/P0Enum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=P0Enum()
 
-macro=216;
+macro=217;
Index: /issm/trunk/src/m/enum/P1DGEnum.m
===================================================================
--- /issm/trunk/src/m/enum/P1DGEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/P1DGEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=P1DGEnum()
 
-macro=218;
+macro=219;
Index: /issm/trunk/src/m/enum/P1Enum.m
===================================================================
--- /issm/trunk/src/m/enum/P1Enum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/P1Enum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=P1Enum()
 
-macro=217;
+macro=218;
Index: /issm/trunk/src/m/enum/ParameterOutputEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ParameterOutputEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ParameterOutputEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ParameterOutputEnum()
 
-macro=296;
+macro=297;
Index: /issm/trunk/src/m/enum/PatchEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PatchEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PatchEnum()
 
-macro=231;
+macro=232;
Index: /issm/trunk/src/m/enum/PatchNodesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchNodesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PatchNodesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PatchNodesEnum()
 
-macro=233;
+macro=234;
Index: /issm/trunk/src/m/enum/PatchVerticesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchVerticesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PatchVerticesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PatchVerticesEnum()
 
-macro=232;
+macro=233;
Index: /issm/trunk/src/m/enum/PenaltyMeltingEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PenaltyMeltingEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PenaltyMeltingEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PenaltyMeltingEnum()
 
-macro=297;
+macro=298;
Index: /issm/trunk/src/m/enum/PenaltyOffsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PenaltyOffsetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PenaltyOffsetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PenaltyOffsetEnum()
 
-macro=172;
+macro=173;
Index: /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PentaVertexElementResultEnum()
 
-macro=222;
+macro=223;
Index: /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PetscOptionsAnalysesEnum()
 
-macro=319;
+macro=320;
Index: /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PetscOptionsStringsEnum()
 
-macro=318;
+macro=319;
Index: /issm/trunk/src/m/enum/PetscRcEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscRcEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PetscRcEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PetscRcEnum()
 
-macro=312;
+macro=313;
Index: /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PetscVecExternalResultEnum()
 
-macro=228;
+macro=229;
Index: /issm/trunk/src/m/enum/PflagEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PflagEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PflagEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PflagEnum()
 
-macro=173;
+macro=174;
Index: /issm/trunk/src/m/enum/PressureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PressureEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PressureEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PressureEnum()
 
-macro=174;
+macro=175;
Index: /issm/trunk/src/m/enum/PressureOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PressureOldEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/PressureOldEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=PressureOldEnum()
 
-macro=175;
+macro=176;
Index: /issm/trunk/src/m/enum/QmuAnalysisEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuAnalysisEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuAnalysisEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuAnalysisEnum()
 
-macro=298;
+macro=299;
Index: /issm/trunk/src/m/enum/QmuErrNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuErrNameEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuErrNameEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuErrNameEnum()
 
-macro=299;
+macro=300;
Index: /issm/trunk/src/m/enum/QmuInNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuInNameEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuInNameEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuInNameEnum()
 
-macro=300;
+macro=301;
Index: /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuMassFluxSegmentsEnum()
 
-macro=301;
+macro=302;
Index: /issm/trunk/src/m/enum/QmuNPartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNPartEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuNPartEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuNPartEnum()
 
-macro=302;
+macro=303;
Index: /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuNumberOfResponsesEnum()
 
-macro=305;
+macro=306;
Index: /issm/trunk/src/m/enum/QmuOutNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuOutNameEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuOutNameEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuOutNameEnum()
 
-macro=303;
+macro=304;
Index: /issm/trunk/src/m/enum/QmuPartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPartEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuPartEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuPartEnum()
 
-macro=304;
+macro=305;
Index: /issm/trunk/src/m/enum/QmuPressureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPressureEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuPressureEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuPressureEnum()
 
-macro=176;
+macro=177;
Index: /issm/trunk/src/m/enum/QmuVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuVxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuVxEnum()
 
-macro=201;
+macro=202;
Index: /issm/trunk/src/m/enum/QmuVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuVyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuVyEnum()
 
-macro=206;
+macro=207;
Index: /issm/trunk/src/m/enum/QmuVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVzEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/QmuVzEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=QmuVzEnum()
 
-macro=214;
+macro=215;
Index: /issm/trunk/src/m/enum/RegularEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RegularEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RegularEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RegularEnum()
 
-macro=307;
+macro=308;
Index: /issm/trunk/src/m/enum/RelativeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RelativeEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RelativeEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RelativeEnum()
 
-macro=247;
+macro=248;
Index: /issm/trunk/src/m/enum/ResetPenaltiesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResetPenaltiesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ResetPenaltiesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ResetPenaltiesEnum()
 
-macro=177;
+macro=178;
Index: /issm/trunk/src/m/enum/ResidualEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResidualEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ResidualEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ResidualEnum()
 
-macro=248;
+macro=249;
Index: /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ResponseDescriptorsEnum()
 
-macro=311;
+macro=312;
Index: /issm/trunk/src/m/enum/RheologyBEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyBEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RheologyBEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RheologyBEnum()
 
-macro=178;
+macro=179;
Index: /issm/trunk/src/m/enum/RheologyBbarEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyBbarEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RheologyBbarEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RheologyBbarEnum()
 
-macro=179;
+macro=180;
Index: /issm/trunk/src/m/enum/RheologyNEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyNEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RheologyNEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RheologyNEnum()
 
-macro=180;
+macro=181;
Index: /issm/trunk/src/m/enum/RhoIceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RhoIceEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RhoIceEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RhoIceEnum()
 
-macro=250;
+macro=251;
Index: /issm/trunk/src/m/enum/RhoWaterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RhoWaterEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/RhoWaterEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=RhoWaterEnum()
 
-macro=251;
+macro=252;
Index: /issm/trunk/src/m/enum/ScaledEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ScaledEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ScaledEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ScaledEnum()
 
-macro=309;
+macro=310;
Index: /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SegmentOnIceShelfEnum()
 
-macro=181;
+macro=182;
Index: /issm/trunk/src/m/enum/SeparateEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SeparateEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SeparateEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SeparateEnum()
 
-macro=258;
+macro=259;
Index: /issm/trunk/src/m/enum/SparsityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SparsityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SparsityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SparsityEnum()
 
-macro=313;
+macro=314;
Index: /issm/trunk/src/m/enum/SsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SsetEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SsetEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SsetEnum()
 
-macro=322;
+macro=323;
Index: /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=StabilizeConstraintsEnum()
 
-macro=182;
+macro=183;
Index: /issm/trunk/src/m/enum/StokesReconditioningEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StokesReconditioningEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/StokesReconditioningEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=StokesReconditioningEnum()
 
-macro=183;
+macro=184;
Index: /issm/trunk/src/m/enum/StringExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StringExternalResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/StringExternalResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=StringExternalResultEnum()
 
-macro=229;
+macro=230;
Index: /issm/trunk/src/m/enum/StringToEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StringToEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/StringToEnum.m	(revision 6201)
@@ -141,4 +141,5 @@
 			elseif (strcmpi(name,'CmNoiseDmp')), enum=CmNoiseDmpEnum(); return
 			elseif (strcmpi(name,'Constant')), enum=ConstantEnum(); return
+			elseif (strcmpi(name,'NumControls')), enum=NumControlsEnum(); return
 			elseif (strcmpi(name,'ControlType')), enum=ControlTypeEnum(); return
 			elseif (strcmpi(name,'Converged')), enum=ConvergedEnum(); return
Index: /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAbsVelMisfitEnum()
 
-macro=157;
+macro=158;
Index: /issm/trunk/src/m/enum/SurfaceAreaEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAreaEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceAreaEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAreaEnum()
 
-macro=184;
+macro=185;
Index: /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAverageVelMisfitEnum()
 
-macro=161;
+macro=162;
Index: /issm/trunk/src/m/enum/SurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceEnum()
 
-macro=185;
+macro=186;
Index: /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceLogVelMisfitEnum()
 
-macro=159;
+macro=160;
Index: /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceLogVxVyMisfitEnum()
 
-macro=160;
+macro=161;
Index: /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceRelVelMisfitEnum()
 
-macro=158;
+macro=159;
Index: /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceSlopeXEnum()
 
-macro=186;
+macro=187;
Index: /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=SurfaceSlopeYEnum()
 
-macro=187;
+macro=188;
Index: /issm/trunk/src/m/enum/TemperatureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemperatureEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TemperatureEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TemperatureEnum()
 
-macro=188;
+macro=189;
Index: /issm/trunk/src/m/enum/TemperatureOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemperatureOldEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TemperatureOldEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TemperatureOldEnum()
 
-macro=190;
+macro=191;
Index: /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TemporaryTemperatureEnum()
 
-macro=189;
+macro=190;
Index: /issm/trunk/src/m/enum/ThermalConductivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalConductivityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ThermalConductivityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ThermalConductivityEnum()
 
-macro=253;
+macro=254;
Index: /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ThermalExchangeVelocityEnum()
 
-macro=255;
+macro=256;
Index: /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ThicknessAbsMisfitEnum()
 
-macro=156;
+macro=157;
Index: /issm/trunk/src/m/enum/ThicknessEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ThicknessEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ThicknessEnum()
 
-macro=191;
+macro=192;
Index: /issm/trunk/src/m/enum/ThicknessObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessObsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ThicknessObsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ThicknessObsEnum()
 
-macro=192;
+macro=193;
Index: /issm/trunk/src/m/enum/TimeAdaptEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TimeAdaptEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TimeAdaptEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TimeAdaptEnum()
 
-macro=140;
+macro=141;
Index: /issm/trunk/src/m/enum/TimeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TimeEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TimeEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TimeEnum()
 
-macro=234;
+macro=235;
Index: /issm/trunk/src/m/enum/TolXEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TolXEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TolXEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TolXEnum()
 
-macro=314;
+macro=315;
Index: /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TriaVertexElementResultEnum()
 
-macro=221;
+macro=222;
Index: /issm/trunk/src/m/enum/TypeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TypeEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/TypeEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=TypeEnum()
 
-macro=193;
+macro=194;
Index: /issm/trunk/src/m/enum/VariableDescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VariableDescriptorsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VariableDescriptorsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VariableDescriptorsEnum()
 
-macro=315;
+macro=316;
Index: /issm/trunk/src/m/enum/VelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VelEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VelEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VelEnum()
 
-macro=194;
+macro=195;
Index: /issm/trunk/src/m/enum/VelObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VelObsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VelObsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VelObsEnum()
 
-macro=195;
+macro=196;
Index: /issm/trunk/src/m/enum/VerboseEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VerboseEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VerboseEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VerboseEnum()
 
-macro=316;
+macro=317;
Index: /issm/trunk/src/m/enum/ViscosityOvershootEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ViscosityOvershootEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/ViscosityOvershootEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=ViscosityOvershootEnum()
 
-macro=196;
+macro=197;
Index: /issm/trunk/src/m/enum/VxAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxAverageEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VxAverageEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VxAverageEnum()
 
-macro=197;
+macro=198;
Index: /issm/trunk/src/m/enum/VxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VxEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VxEnum()
 
-macro=198;
+macro=199;
Index: /issm/trunk/src/m/enum/VxObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxObsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VxObsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VxObsEnum()
 
-macro=199;
+macro=200;
Index: /issm/trunk/src/m/enum/VxOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxOldEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VxOldEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VxOldEnum()
 
-macro=200;
+macro=201;
Index: /issm/trunk/src/m/enum/VyAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyAverageEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VyAverageEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VyAverageEnum()
 
-macro=202;
+macro=203;
Index: /issm/trunk/src/m/enum/VyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VyEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VyEnum()
 
-macro=203;
+macro=204;
Index: /issm/trunk/src/m/enum/VyObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyObsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VyObsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VyObsEnum()
 
-macro=204;
+macro=205;
Index: /issm/trunk/src/m/enum/VyOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyOldEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VyOldEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VyOldEnum()
 
-macro=205;
+macro=206;
Index: /issm/trunk/src/m/enum/VzAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzAverageEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzAverageEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzAverageEnum()
 
-macro=207;
+macro=208;
Index: /issm/trunk/src/m/enum/VzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzEnum()
 
-macro=208;
+macro=209;
Index: /issm/trunk/src/m/enum/VzMacAyealEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzMacAyealEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzMacAyealEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzMacAyealEnum()
 
-macro=211;
+macro=212;
Index: /issm/trunk/src/m/enum/VzObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzObsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzObsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzObsEnum()
 
-macro=209;
+macro=210;
Index: /issm/trunk/src/m/enum/VzOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzOldEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzOldEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzOldEnum()
 
-macro=210;
+macro=211;
Index: /issm/trunk/src/m/enum/VzPattynEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzPattynEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzPattynEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzPattynEnum()
 
-macro=212;
+macro=213;
Index: /issm/trunk/src/m/enum/VzStokesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzStokesEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/VzStokesEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=VzStokesEnum()
 
-macro=213;
+macro=214;
Index: /issm/trunk/src/m/enum/WaitOnLockEnum.m
===================================================================
--- /issm/trunk/src/m/enum/WaitOnLockEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/WaitOnLockEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=WaitOnLockEnum()
 
-macro=317;
+macro=318;
Index: /issm/trunk/src/m/enum/WeightsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/WeightsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/WeightsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=WeightsEnum()
 
-macro=215;
+macro=216;
Index: /issm/trunk/src/m/enum/YtsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/YtsEnum.m	(revision 6200)
+++ /issm/trunk/src/m/enum/YtsEnum.m	(revision 6201)
@@ -9,3 +9,3 @@
 %      macro=YtsEnum()
 
-macro=323;
+macro=324;
Index: /issm/trunk/src/m/model/marshall.m
===================================================================
--- /issm/trunk/src/m/model/marshall.m	(revision 6200)
+++ /issm/trunk/src/m/model/marshall.m	(revision 6201)
@@ -99,4 +99,5 @@
 %Control methods
 WriteData(fid,md.control_analysis,'Integer','control_analysis');
+WriteData(fid,md.num_control_type,'Integer','num_control_type');
 WriteData(fid,md.control_type,'Integer','control_type');
 
Index: /issm/trunk/src/m/model/presolve.m
===================================================================
--- /issm/trunk/src/m/model/presolve.m	(revision 6200)
+++ /issm/trunk/src/m/model/presolve.m	(revision 6201)
@@ -8,4 +8,11 @@
 md.inputfilename=[md.name '.bin'];
 md.outputfilename=[md.name '.outbin'];
+
+%deal with control methods
+if ~md.control_analysis
+	md.num_control_type=0;
+else
+	md.num_control_type=numel(md.control_type);
+end
 
 %deal with rifts.
