Index: /issm/trunk/src/m/solutions/balancedthickness.m
===================================================================
--- /issm/trunk/src/m/solutions/balancedthickness.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/balancedthickness.m	(revision 4322)
@@ -25,5 +25,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.balancedthickness=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/balancedthickness2.m
===================================================================
--- /issm/trunk/src/m/solutions/balancedthickness2.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/balancedthickness2.m	(revision 4322)
@@ -25,5 +25,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.balancedthickness2=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/balancedvelocities.m
===================================================================
--- /issm/trunk/src/m/solutions/balancedvelocities.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/balancedvelocities.m	(revision 4322)
@@ -25,5 +25,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.balancedvelocities=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/bedslope.m
===================================================================
--- /issm/trunk/src/m/solutions/bedslope.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/bedslope.m	(revision 4322)
@@ -25,5 +25,6 @@
 	
 		displaystring(verbose,'%s',['write results']);
-		md.results.bedslopecompute=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 
 	else
Index: /issm/trunk/src/m/solutions/diagnostic.m
===================================================================
--- /issm/trunk/src/m/solutions/diagnostic.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/diagnostic.m	(revision 4322)
@@ -10,5 +10,5 @@
 	numanalyses=6;
 	analyses=[DiagnosticHorizAnalysisEnum;DiagnosticVertAnalysisEnum;DiagnosticStokesAnalysisEnum;DiagnosticHutterAnalysisEnum;BedSlopeAnalysisEnum;SurfaceSlopeAnalysisEnum];
-	solution_type=DiagnosticAnalysisEnum;
+	solution_type=DiagnosticSolutionEnum;
 
 	displaystring(md.verbose,'%s',['create finite element model']);
Index: /issm/trunk/src/m/solutions/prognostic.m
===================================================================
--- /issm/trunk/src/m/solutions/prognostic.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/prognostic.m	(revision 4322)
@@ -26,5 +26,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.prognostic=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/prognostic2.m
===================================================================
--- /issm/trunk/src/m/solutions/prognostic2.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/prognostic2.m	(revision 4322)
@@ -25,5 +25,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.prognostic2=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/steadystate.m
===================================================================
--- /issm/trunk/src/m/solutions/steadystate.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/steadystate.m	(revision 4322)
@@ -36,5 +36,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.steadystate=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 
 	else
Index: /issm/trunk/src/m/solutions/surfaceslope.m
===================================================================
--- /issm/trunk/src/m/solutions/surfaceslope.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/surfaceslope.m	(revision 4322)
@@ -25,5 +25,6 @@
 	
 		displaystring(verbose,'%s',['write results']);
-		md.results.surfaceslopecompute=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 
 	else
Index: /issm/trunk/src/m/solutions/thermal.m
===================================================================
--- /issm/trunk/src/m/solutions/thermal.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/thermal.m	(revision 4322)
@@ -25,5 +25,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.thermal=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 	else
 		%launch dakota driver for diagnostic core solution
Index: /issm/trunk/src/m/solutions/transient2d.m
===================================================================
--- /issm/trunk/src/m/solutions/transient2d.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/transient2d.m	(revision 4322)
@@ -27,5 +27,6 @@
 		
 		displaystring(verbose,'%s',['write results']);
-		md.results.transient2d=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 
 	else
Index: /issm/trunk/src/m/solutions/transient3d.m
===================================================================
--- /issm/trunk/src/m/solutions/transient3d.m	(revision 4321)
+++ /issm/trunk/src/m/solutions/transient3d.m	(revision 4322)
@@ -26,5 +26,6 @@
 
 		displaystring(verbose,'%s',['write results']);
-		md.results.transient3d=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
+		md.results.(EnumAsString(solution_type))=ProcessPatch(results);
 
 	else
