Index: /issm/trunk/src/m/classes/@modellist/loadmultipleresultsfromcluster.m
===================================================================
--- /issm/trunk/src/m/classes/@modellist/loadmultipleresultsfromcluster.m	(revision 2952)
+++ /issm/trunk/src/m/classes/@modellist/loadmultipleresultsfromcluster.m	(revision 2952)
@@ -0,0 +1,36 @@
+function md_list=loadmultipleresultsfromcluster(md_list)
+%LOADMULTIPLERESULTSFROMCLUSTER - load multiple results of solution sequences from cluster
+%
+%   Usage:
+%      md_list=loadresultsfromcluster(md_list);
+
+nummodels=length(md_list.models);
+
+%Get cluster settings
+cluster=md_list.cluster;
+name=md_list.name;
+cluster_rc_location=which('cluster.rc');
+[codepath,executionpath]=ClusterParameters(cluster,cluster_rc_location);
+
+%Remote tar: 
+disp('tarring results');
+issmssh(cluster,['"cd ' executionpath '/' name ' && rm -rf file_list.txt ModelResults.tar.gz && find -iname ''*-*vs*.outbin'' > file_list.txt && tar zcvf ModelResults.tar.gz --files-from file_list.txt  && rm -rf file_list.txt "']);
+
+%copy results from cluster to present directory
+scpin(cluster, [executionpath '/' name], {'ModelResults.tar.gz'});
+
+%untar:
+!tar -zxvf ModelResults.tar.gz
+
+%ok, go through list and load results from disk: 
+for i=1:nummodels,
+	%load  results for this model
+	md_list.models{i}=loadresultsfromdisk(md_list.models{i},[name '-' num2str(i) 'vs' num2str(nummodels) '.outbin']);
+
+	%post solve phase
+	md_list.models{i}=postsolveparallel(md_list.models{i});
+	delete([name '-' num2str(i) 'vs' num2str(nummodels) '.outbin']);
+end
+
+%erase files 
+delete('ModelResults.tar.gz');
Index: /issm/trunk/src/m/classes/@modellist/solve.m
===================================================================
--- /issm/trunk/src/m/classes/@modellist/solve.m	(revision 2951)
+++ /issm/trunk/src/m/classes/@modellist/solve.m	(revision 2952)
@@ -37,24 +37,34 @@
 
 	%model
-	md=mds.models{i};
+	mdex=mds.models{i};
 	
 	%recover some fields
-	md.analysis_type=options.analysis_type;
-	md.sub_analysis_type=options.sub_analysis_type;
+	mdex.analysis_type=options.analysis_type;
+	mdex.sub_analysis_type=options.sub_analysis_type;
 
-	md.name=[name '-' num2str(i) 'vs' num2str(nummodels)];
-	md.time=mds.time;
-	md.queue=mds.queue;
-	md.cluster=mds.cluster;
+	mdex.name=[name '-' num2str(i) 'vs' num2str(nummodels)];
+	mdex.time=mds.time;
+	mdex.queue=mds.queue;
+	mdex.cluster=mds.cluster;
 	if ~isnan(mds.np),
-		md.np=mds.np;
+		mdex.np=mds.np;
 	end
 
 	%call solve in batch mode:
-	md=solve(md,varargin{:},'batch','yes','directory',name);
+	if strcmpi(cluster,oshostname),
+		mdex=solve(mdex,varargin{:});
+	else
+		mdex=solve(mdex,varargin{:},'batch','yes','directory',name);
+	end
 
 	%feed back
-	mds.models{i}=md;
+	mds.models{i}=mdex;
 end
+
+%locally, we are done.
+if strcmpi(cluster,oshostname),
+	return
+end
+
 
 %now, tar all the files and then erase them.
@@ -72,2 +82,5 @@
 delete([name '.queue']);
 delete('ModelList.tar.gz');
+
+%save name: 
+mds.name=name;
