Index: /issm/trunk/src/m/clusters/astrid.m
===================================================================
--- /issm/trunk/src/m/clusters/astrid.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/astrid.m	(revision 6039)
@@ -94,4 +94,7 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -99,6 +102,32 @@
 			end
 
-		 end
-		 %}}}
+		 end %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/castor.m
===================================================================
--- /issm/trunk/src/m/clusters/castor.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/castor.m	(revision 6039)
@@ -97,4 +97,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -104,4 +108,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/cosmos.m
===================================================================
--- /issm/trunk/src/m/clusters/cosmos.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/cosmos.m	(revision 6039)
@@ -96,4 +96,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -103,4 +107,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/ericmac.m
===================================================================
--- /issm/trunk/src/m/clusters/ericmac.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/ericmac.m	(revision 6039)
@@ -93,4 +93,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -100,4 +104,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/gemini.m
===================================================================
--- /issm/trunk/src/m/clusters/gemini.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/gemini.m	(revision 6039)
@@ -97,4 +97,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -104,4 +108,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/larsen.m
===================================================================
--- /issm/trunk/src/m/clusters/larsen.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/larsen.m	(revision 6039)
@@ -93,4 +93,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -100,4 +104,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/pfe.m
===================================================================
--- /issm/trunk/src/m/clusters/pfe.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/pfe.m	(revision 6039)
@@ -122,6 +122,5 @@
 				 fclose(fid);
 			 end
-		 end
-		 %}}}
+		 end %}}}
 		 function LaunchQueueJob(cluster,md,options)%{{{1
 			 
@@ -139,5 +138,5 @@
 				compressstring=['tar -zcf ' md.runtimename '.tar.gz ' md.name '.bin ' md.name '.queue '  md.name '.petsc '];
 				if md.qmu_analysis,
-					compressstring=[compressstring md.name '.qmu.in'];
+					compressstring=[compressstring md.name '.qmu.in '];
 				end
 				if cluster.interactive,
@@ -166,4 +165,37 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				if ~cluster.interactive,
+					error('pfe Download error message: supply runtime name for results to be loaded!');
+				end
+			end
+
+			%Figure out the  directory where all the files are in: 
+			if ~cluster.interactive,
+				directory=[executionpath '/' md.runtimename '/'];
+			else
+				directory=[executionpath '/Interactive/'];
+			end
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/pollux.m
===================================================================
--- /issm/trunk/src/m/clusters/pollux.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/pollux.m	(revision 6039)
@@ -97,4 +97,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -104,4 +108,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/clusters/wilkes.m
===================================================================
--- /issm/trunk/src/m/clusters/wilkes.m	(revision 6038)
+++ /issm/trunk/src/m/clusters/wilkes.m	(revision 6039)
@@ -93,4 +93,8 @@
 				disp('uploading input file and queueing script');
 				issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
+				
+				disp('launching solution sequence on remote cluster');
+				issmssh(md.cluster.name,md.cluster.login,md.cluster.port,launchcommand);
+
 			else
 				disp('batch mode requested: not launching job interactively');
@@ -100,4 +104,31 @@
 		 end
 		 %}}}
+		 function Download(cluster,md)%{{{1
+
+			%some check
+			if isempty(md.runtimename),
+				error('pfe Download error message: supply runtime name for results to be loaded!');
+			end
+
+			%Figure out the  directory where all the files are in: 
+			directory=[executionpath '/' md.runtimename '/'];
+
+			%What packages are we picking up from remote cluster
+			packages={[md.name '.outlog'],[md.name '.errlog']};
+			if md.qmu_analysis,
+				packages{end+1}=[md.name '.qmu.err'];
+				packages{end+1}=[md.name '.qmu.out'];
+				if isfield(md.qmu_params,'tabular_graphics_data'),
+					if md.qmu_params.tabular_graphics_data==true,
+						packages{end+1}='dakota_tabular.dat'; 
+					end
+				end
+			else
+				packages{end+1}=[md.name '.outbin'];
+			end
+
+			%copy files from cluster to present directory
+			issmscpin(clustername, login, port, directory, packages);
+		end %}}}
 	end
 end
Index: /issm/trunk/src/m/model/loadresultsfromcluster.m
===================================================================
--- /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 6038)
+++ /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 6039)
@@ -5,10 +5,6 @@
 %      md=loadresultsfromcluster(md,runtimename);
 
-%Figure out parameters for this particular cluster
-codepath=md.cluster.codepath;
-executionpath=md.cluster.executionpath;
-login=md.cluster.login;
-port=md.cluster.port;
-clustername=md.cluster.name;
+%retrieve cluster, to be able to call its methods
+cluster=md.cluster;
 
 if nargin==2,
@@ -16,27 +12,6 @@
 end
 
-if isempty(md.runtimename),
-	error('supply runtime name for results to be loaded!');
-end
-
-%Figure out the  directory where all the files are in: 
-directory=[executionpath '/' md.runtimename '/'];
-
-%What packages are we picking up from remote cluster
-packages={[md.name '.outlog'],[md.name '.errlog']};
-if md.qmu_analysis,
-	packages{end+1}=[md.name '.qmu.err'];
-	packages{end+1}=[md.name '.qmu.out'];
-	if isfield(md.qmu_params,'tabular_graphics_data'),
-		if md.qmu_params.tabular_graphics_data==true,
-			packages{end+1}='dakota_tabular.dat'; 
-		end
-	end
-else
-	packages{end+1}=[md.name '.outbin'];
-end
-
-%copy files from cluster to present directory
-issmscpin(clustername, login, port, directory, packages);
+%Download outputs from the cluster
+cluster.Download(md);
 
 %read log files onto  fields
