Index: /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 9679)
+++ /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 9680)
@@ -41,6 +41,4 @@
 	ThermalStabilizationEnum,
 	ThermalPenaltyFactorEnum,
-	ThermalRequestedOutputsEnum,
-	ThermalNumRequestedOutputsEnum,
 	MiscellaneousNameEnum, //FIXME: only used by qmu, should not be marshalled (already in queueing script)
 	TimesteppingTimeStepEnum,
@@ -53,6 +51,4 @@
 	PrognosticVertexPairingEnum,
 	PrognosticPenaltyFactorEnum,
-	PrognosticRequestedOutputsEnum,
-	PrognosticNumRequestedOutputsEnum,
 	MaterialsRheologyBEnum,
 	MaterialsRheologyBbarEnum,
@@ -84,6 +80,4 @@
 	BalancethicknessThickeningRateEnum,
 	BalancethicknessStabilizationEnum,
-	BalancethicknessRequestedOutputsEnum,
-	BalancethicknessNumRequestedOutputsEnum,
 	FlowequationIshutterEnum,
 	FlowequationIsmacayealpattynEnum,
Index: /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp
===================================================================
--- /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp	(revision 9679)
+++ /issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp	(revision 9680)
@@ -45,6 +45,4 @@
 		case ThermalStabilizationEnum : return "ThermalStabilization";
 		case ThermalPenaltyFactorEnum : return "ThermalPenaltyFactor";
-		case ThermalRequestedOutputsEnum : return "ThermalRequestedOutputs";
-		case ThermalNumRequestedOutputsEnum : return "ThermalNumRequestedOutputs";
 		case MiscellaneousNameEnum : return "MiscellaneousName";
 		case TimesteppingTimeStepEnum : return "TimesteppingTimeStep";
@@ -57,6 +55,4 @@
 		case PrognosticVertexPairingEnum : return "PrognosticVertexPairing";
 		case PrognosticPenaltyFactorEnum : return "PrognosticPenaltyFactor";
-		case PrognosticRequestedOutputsEnum : return "PrognosticRequestedOutputs";
-		case PrognosticNumRequestedOutputsEnum : return "PrognosticNumRequestedOutputs";
 		case MaterialsRheologyBEnum : return "MaterialsRheologyB";
 		case MaterialsRheologyBbarEnum : return "MaterialsRheologyBbar";
@@ -88,6 +84,4 @@
 		case BalancethicknessThickeningRateEnum : return "BalancethicknessThickeningRate";
 		case BalancethicknessStabilizationEnum : return "BalancethicknessStabilization";
-		case BalancethicknessRequestedOutputsEnum : return "BalancethicknessRequestedOutputs";
-		case BalancethicknessNumRequestedOutputsEnum : return "BalancethicknessNumRequestedOutputs";
 		case FlowequationIshutterEnum : return "FlowequationIshutter";
 		case FlowequationIsmacayealpattynEnum : return "FlowequationIsmacayealpattyn";
Index: /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 9679)
+++ /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 9680)
@@ -80,12 +80,4 @@
 	if(numoutputs)parameters->AddObject(new IntVecParam(DiagnosticRequestedOutputsEnum,requestedoutputs,numoutputs));
 	xfree((void**)&requestedoutputs);
-	iomodel->FetchData(&requestedoutputs,&numoutputs,NULL,PrognosticRequestedOutputsEnum);
-	parameters->AddObject(new IntParam(PrognosticNumRequestedOutputsEnum,numoutputs));
-	if(numoutputs)parameters->AddObject(new IntVecParam(PrognosticRequestedOutputsEnum,requestedoutputs,numoutputs));
-	xfree((void**)&requestedoutputs);
-	iomodel->FetchData(&requestedoutputs,&numoutputs,NULL,ThermalRequestedOutputsEnum);
-	parameters->AddObject(new IntParam(ThermalNumRequestedOutputsEnum,numoutputs));
-	if(numoutputs)parameters->AddObject(new IntVecParam(ThermalRequestedOutputsEnum,requestedoutputs,numoutputs));
-	xfree((void**)&requestedoutputs);
 	iomodel->FetchData(&requestedoutputs,&numoutputs,NULL,TransientRequestedOutputsEnum);
 	parameters->AddObject(new IntParam(TransientNumRequestedOutputsEnum,numoutputs));
@@ -95,8 +87,4 @@
 	parameters->AddObject(new IntParam(SteadystateNumRequestedOutputsEnum,numoutputs));
 	if(numoutputs)parameters->AddObject(new IntVecParam(SteadystateRequestedOutputsEnum,requestedoutputs,numoutputs));
-	xfree((void**)&requestedoutputs);
-	iomodel->FetchData(&requestedoutputs,&numoutputs,NULL,BalancethicknessRequestedOutputsEnum);
-	parameters->AddObject(new IntParam(BalancethicknessNumRequestedOutputsEnum,numoutputs));
-	if(numoutputs)parameters->AddObject(new IntVecParam(BalancethicknessRequestedOutputsEnum,requestedoutputs,numoutputs));
 	xfree((void**)&requestedoutputs);
 	
Index: /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp
===================================================================
--- /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp	(revision 9679)
+++ /issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp	(revision 9680)
@@ -43,6 +43,4 @@
 	else if (strcmp(name,"ThermalStabilization")==0) return ThermalStabilizationEnum;
 	else if (strcmp(name,"ThermalPenaltyFactor")==0) return ThermalPenaltyFactorEnum;
-	else if (strcmp(name,"ThermalRequestedOutputs")==0) return ThermalRequestedOutputsEnum;
-	else if (strcmp(name,"ThermalNumRequestedOutputs")==0) return ThermalNumRequestedOutputsEnum;
 	else if (strcmp(name,"MiscellaneousName")==0) return MiscellaneousNameEnum;
 	else if (strcmp(name,"TimesteppingTimeStep")==0) return TimesteppingTimeStepEnum;
@@ -55,6 +53,4 @@
 	else if (strcmp(name,"PrognosticVertexPairing")==0) return PrognosticVertexPairingEnum;
 	else if (strcmp(name,"PrognosticPenaltyFactor")==0) return PrognosticPenaltyFactorEnum;
-	else if (strcmp(name,"PrognosticRequestedOutputs")==0) return PrognosticRequestedOutputsEnum;
-	else if (strcmp(name,"PrognosticNumRequestedOutputs")==0) return PrognosticNumRequestedOutputsEnum;
 	else if (strcmp(name,"MaterialsRheologyB")==0) return MaterialsRheologyBEnum;
 	else if (strcmp(name,"MaterialsRheologyBbar")==0) return MaterialsRheologyBbarEnum;
@@ -86,6 +82,4 @@
 	else if (strcmp(name,"BalancethicknessThickeningRate")==0) return BalancethicknessThickeningRateEnum;
 	else if (strcmp(name,"BalancethicknessStabilization")==0) return BalancethicknessStabilizationEnum;
-	else if (strcmp(name,"BalancethicknessRequestedOutputs")==0) return BalancethicknessRequestedOutputsEnum;
-	else if (strcmp(name,"BalancethicknessNumRequestedOutputs")==0) return BalancethicknessNumRequestedOutputsEnum;
 	else if (strcmp(name,"FlowequationIshutter")==0) return FlowequationIshutterEnum;
 	else if (strcmp(name,"FlowequationIsmacayealpattyn")==0) return FlowequationIsmacayealpattynEnum;
Index: /issm/trunk/src/c/solutions/diagnostic_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/diagnostic_core.cpp	(revision 9679)
+++ /issm/trunk/src/c/solutions/diagnostic_core.cpp	(revision 9680)
@@ -35,4 +35,6 @@
 	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
+	femmodel->parameters->FindParam(&numoutputs,DiagnosticNumRequestedOutputsEnum);
+	if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,DiagnosticRequestedOutputsEnum);
 
 	/*for qmu analysis, reinitialize velocity so that fake sensitivities do not show up as a result of a different restart of the convergence at each trial.*/
@@ -89,6 +91,4 @@
 		InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,PressureEnum);
 		if(dim==3) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VzEnum);
-		femmodel->parameters->FindParam(&numoutputs,DiagnosticNumRequestedOutputsEnum);
-		if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,DiagnosticRequestedOutputsEnum);
 		RequestedOutputsx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,requested_outputs,numoutputs);
 	}
Index: /issm/trunk/src/c/solutions/steadystate_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/steadystate_core.cpp	(revision 9679)
+++ /issm/trunk/src/c/solutions/steadystate_core.cpp	(revision 9680)
@@ -30,4 +30,6 @@
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
 	femmodel->parameters->FindParam(&maxiter,SteadystateMaxiterEnum);
+	femmodel->parameters->FindParam(&numoutputs,SteadystateNumRequestedOutputsEnum);
+	if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,SteadystateRequestedOutputsEnum);
 
 	/*intialize counters: */
@@ -71,6 +73,4 @@
 		InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum);
 		InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum);
-		femmodel->parameters->FindParam(&numoutputs,SteadystateNumRequestedOutputsEnum);
-		if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,SteadystateRequestedOutputsEnum);
 		RequestedOutputsx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,requested_outputs,numoutputs);
 	}
Index: /issm/trunk/src/c/solutions/transient_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/transient_core.cpp	(revision 9679)
+++ /issm/trunk/src/c/solutions/transient_core.cpp	(revision 9680)
@@ -22,4 +22,6 @@
 	int    output_frequency;
 	int    dim,groundingline_migration;
+	int    numoutputs         = 0;
+	int    *requested_outputs = NULL;
 	
 	/*intermediary: */
@@ -40,4 +42,6 @@
 	femmodel->parameters->FindParam(&isprognostic,TransientIsprognosticEnum);
 	femmodel->parameters->FindParam(&isthermal,TransientIsthermalEnum);
+	femmodel->parameters->FindParam(&numoutputs,TransientNumRequestedOutputsEnum);
+	if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,TransientRequestedOutputsEnum);
 
 	/*initialize: */
@@ -97,4 +101,5 @@
 			InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceforcingsMassBalanceEnum,step,time);
 			InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,MaskElementonfloatingiceEnum,step,time);
+			RequestedOutputsx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,requested_outputs,numoutputs);
 
 			/*unload results*/
@@ -103,3 +108,6 @@
 		}
 	}
+
+	/*Free ressources:*/
+	xfree((void**)&requested_outputs);
 }
Index: /issm/trunk/src/m/classes/balancethickness.m
===================================================================
--- /issm/trunk/src/m/classes/balancethickness.m	(revision 9679)
+++ /issm/trunk/src/m/classes/balancethickness.m	(revision 9680)
@@ -9,5 +9,4 @@
 		thickening_rate   = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
 		stabilization     = modelfield('default',0,'marshall',true,'format','Integer');
-		requested_outputs = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',3);
 	end
 	methods
Index: /issm/trunk/src/m/classes/prognostic.m
===================================================================
--- /issm/trunk/src/m/classes/prognostic.m	(revision 9679)
+++ /issm/trunk/src/m/classes/prognostic.m	(revision 9680)
@@ -11,5 +11,4 @@
 		 vertex_pairing         = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',3);
 		 penalty_factor         = modelfield('default',0,'marshall',true,'format','Double');
-		 requested_outputs      = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',3);
 	end
 	methods
Index: /issm/trunk/src/m/classes/thermal.m
===================================================================
--- /issm/trunk/src/m/classes/thermal.m	(revision 9679)
+++ /issm/trunk/src/m/classes/thermal.m	(revision 9680)
@@ -12,5 +12,4 @@
 		penalty_lock      = modelfield('default',0,'marshall',true,'format','Integer');
 		penalty_factor    = modelfield('default',0,'marshall',true,'format','Double');
-		requested_outputs = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',3);
 	end
 	methods
Index: sm/trunk/src/m/enum/BalancethicknessNumRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessNumRequestedOutputsEnum.m	(revision 9679)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=BalancethicknessNumRequestedOutputsEnum()
-%BALANCETHICKNESSNUMREQUESTEDOUTPUTSENUM - Enum of BalancethicknessNumRequestedOutputs
-%
-%   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=BalancethicknessNumRequestedOutputsEnum()
-
-macro=StringToEnum('BalancethicknessNumRequestedOutputs');
Index: sm/trunk/src/m/enum/BalancethicknessRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BalancethicknessRequestedOutputsEnum.m	(revision 9679)
+++ 	(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/PrognosticNumRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PrognosticNumRequestedOutputsEnum.m	(revision 9679)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=PrognosticNumRequestedOutputsEnum()
-%PROGNOSTICNUMREQUESTEDOUTPUTSENUM - Enum of PrognosticNumRequestedOutputs
-%
-%   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=PrognosticNumRequestedOutputsEnum()
-
-macro=StringToEnum('PrognosticNumRequestedOutputs');
Index: sm/trunk/src/m/enum/PrognosticRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PrognosticRequestedOutputsEnum.m	(revision 9679)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=PrognosticRequestedOutputsEnum()
-%PROGNOSTICREQUESTEDOUTPUTSENUM - Enum of PrognosticRequestedOutputs
-%
-%   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=PrognosticRequestedOutputsEnum()
-
-macro=StringToEnum('PrognosticRequestedOutputs');
Index: sm/trunk/src/m/enum/ThermalNumRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalNumRequestedOutputsEnum.m	(revision 9679)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=ThermalNumRequestedOutputsEnum()
-%THERMALNUMREQUESTEDOUTPUTSENUM - Enum of ThermalNumRequestedOutputs
-%
-%   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=ThermalNumRequestedOutputsEnum()
-
-macro=StringToEnum('ThermalNumRequestedOutputs');
Index: sm/trunk/src/m/enum/ThermalRequestedOutputsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalRequestedOutputsEnum.m	(revision 9679)
+++ 	(revision )
@@ -1,11 +1,0 @@
-function macro=ThermalRequestedOutputsEnum()
-%THERMALREQUESTEDOUTPUTSENUM - Enum of ThermalRequestedOutputs
-%
-%   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=ThermalRequestedOutputsEnum()
-
-macro=StringToEnum('ThermalRequestedOutputs');
Index: /issm/trunk/src/m/utils/BC/SetIceShelfBC.m
===================================================================
--- /issm/trunk/src/m/utils/BC/SetIceShelfBC.m	(revision 9679)
+++ /issm/trunk/src/m/utils/BC/SetIceShelfBC.m	(revision 9680)
@@ -88,4 +88,5 @@
 
 md.prognostic.spcthickness=NaN*ones(md.numberofnodes,1);
+md.balancethickness.spcthickness=NaN*ones(md.numberofnodes,1);
 
 if (length(md.temperature)==md.numberofnodes),
