Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24990)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24991)
@@ -648,5 +648,5 @@
 	/*output: */
 	int  numanalyses = 0;
-	int* analyses=NULL;
+	int *analyses    = NULL;
 
 	/*Intermediaries*/
@@ -778,9 +778,7 @@
 
 		case TransientSolutionEnum:{
+			/*We have multiple analyses here, process one by one*/
 			bool isSIA,isFS,isthermal,isenthalpy,ismasstransport,isgroundingline,isstressbalance,ismovingfront,ishydrology,isdamage,issmb,isslr,isesa,isgia;
-			iomodel->FindConstant(&isSIA,"md.flowequation.isSIA");
-			iomodel->FindConstant(&isFS,"md.flowequation.isFS");
 			iomodel->FindConstant(&isthermal,"md.transient.isthermal");
-			iomodel->FindConstant(&isenthalpy,"md.thermal.isenthalpy");
 			iomodel->FindConstant(&ismovingfront,"md.transient.ismovingfront");
 			iomodel->FindConstant(&ismasstransport,"md.transient.ismasstransport");
@@ -793,25 +791,15 @@
 			iomodel->FindConstant(&isesa,"md.transient.isesa");
 			iomodel->FindConstant(&isgia,"md.transient.isgia");
+         int* analyses_iter     = NULL;
+         int  num_analyses_iter = 0;
 			if(isstressbalance){
-				int  fe_FS;
-				iomodel->FindConstant(&fe_FS,"md.flowequation.fe_FS");
-				analyses_temp[numanalyses++]=StressbalanceAnalysisEnum;
-				analyses_temp[numanalyses++]=StressbalanceVerticalAnalysisEnum;
-				if(isSIA){
-					analyses_temp[numanalyses++]=StressbalanceSIAAnalysisEnum;
-				}
-				analyses_temp[numanalyses++]=DepthAverageAnalysisEnum;
-				if(fe_FS==LATaylorHoodEnum || fe_FS==LACrouzeixRaviartEnum){
-					analyses_temp[numanalyses++]=UzawaPressureAnalysisEnum;
-				}
-			}
+				SolutionAnalysesList(&analyses_iter,&num_analyses_iter,iomodel,StressbalanceSolutionEnum);
+            xMemCpy<int>(&analyses_temp[numanalyses],analyses_iter,num_analyses_iter);
+				numanalyses+=num_analyses_iter; xDelete<int>(analyses_iter);
+         }
 			if(isthermal && iomodel->domaintype==Domain3DEnum){
-				if(isenthalpy){
-					analyses_temp[numanalyses++]=EnthalpyAnalysisEnum;
-				}
-				else{
-					analyses_temp[numanalyses++]=ThermalAnalysisEnum;
-					analyses_temp[numanalyses++]=MeltingAnalysisEnum;
-				}
+				SolutionAnalysesList(&analyses_iter,&num_analyses_iter,iomodel,ThermalSolutionEnum);
+            xMemCpy<int>(&analyses_temp[numanalyses],analyses_iter,num_analyses_iter);
+				numanalyses+=num_analyses_iter; xDelete<int>(analyses_iter);
 			}
 			if(ismasstransport || isgroundingline){
Index: /issm/trunk-jpl/src/c/cores/levelsetfunctionslope_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/levelsetfunctionslope_core.cpp	(revision 24990)
+++ /issm/trunk-jpl/src/c/cores/levelsetfunctionslope_core.cpp	(revision 24991)
@@ -20,5 +20,5 @@
 	femmodel->parameters->FindParam(&domaintype,DomainTypeEnum);
 
-	if(VerboseSolution()) _printf0_("computing slope of levelset function...\n");
+	if(VerboseSolution()) _printf0_("   computing slope of levelset function...\n");
 
 	/*Call on core computations: */
