Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/os/issmscpin.py
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/os/issmscpin.py	(revision 13096)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/os/issmscpin.py	(revision 13097)
@@ -63,7 +63,6 @@
 					string+=packages[i]+','
 				string=string[:-1]+'}'
 
-
 			if port:
 				subprocess.call('scp -P %d %s@localhost:%s %s' % (port,login,os.path.join(path,string),os.getcwd),shell=True)
 			else:
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromdisk.py
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromdisk.py	(revision 13096)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromdisk.py	(revision 13097)
@@ -18,7 +18,7 @@
 
 		#Check that file exists
 		if not os.path.exists(filename):
-			raise ValueError("binary file '%s' not found." % filename)
+			raise OSError("binary file '%s' not found." % filename)
 
 		#initialize md.results if not a structure yet
 		if not isinstance(md.results,dict):
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/marshall.py
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/marshall.py	(revision 13096)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/marshall.py	(revision 13097)
@@ -26,7 +26,8 @@
 	#Go through all model fields: check that it is a class and call checkconsistency
 	fields=vars(md)
 
-	for field in fields.iterkeys():
+#	for field in fields.iterkeys():
+	for field in ['mesh','mask','geometry','constants','surfaceforcings','basalforcings','materials','friction','flowequation','timestepping','initialization','rifts','debug','verbose','settings','solver','cluster','balancethickness','diagnostic','groundingline','hydrology','prognostic','thermal','steadystate','transient','autodiff','flaim','inversion','qmu','results','radaroverlay','miscellaneous','private']:
 
 		#Some properties do not need to be marshalled
 		if field in ['results','radaroverlay','solver','cluster','flaim','private']:
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/WriteData.py
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/WriteData.py	(revision 13096)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/WriteData.py	(revision 13097)
@@ -103,7 +103,10 @@
 		if isinstance(data,bool):
 			data=numpy.array([data])
 		if len(data.shape) == 1:
-			data=data.reshape(1,numpy.size(data,0))
+			if numpy.size(data):
+				data=data.reshape(numpy.size(data),1)
+			else:
+				data=data.reshape(0,0)
 
 		#Get size
 		s=data.shape
@@ -131,7 +134,10 @@
 		if isinstance(data,int):
 			data=numpy.array([data])
 		if len(data.shape) == 1:
-			data=data.reshape(1,numpy.size(data,0))
+			if numpy.size(data):
+				data=data.reshape(numpy.size(data),1)
+			else:
+				data=data.reshape(0,0)
 
 		#Get size
 		s=data.shape
@@ -159,7 +165,10 @@
 		if isinstance(data,(bool,int,long,float)):
 			data=numpy.array([data])
 		if len(data.shape) == 1:
-			data=data.reshape(1,numpy.size(data,0))
+			if numpy.size(data):
+				data=data.reshape(numpy.size(data),1)
+			else:
+				data=data.reshape(0,0)
 
 		#Get size
 		s=data.shape
@@ -190,7 +199,10 @@
 			if isinstance(matrix,(bool,int,long,float)):
 				matrix=numpy.array([matrix])
 			if len(matrix.shape) == 1:
-				matrix=matrix.reshape(1,numpy.size(matrix,0))
+				if numpy.size(matrix):
+					matrix=matrix.reshape(numpy.size(matrix),1)
+				else:
+					matrix=matrix.reshape(0,0)
 
 			s=matrix.shape
 			recordlength+=4*2+s[0]*s[1]*8    #row and col of matrix + matrix of doubles
@@ -209,7 +221,7 @@
 			if isinstance(matrix,(bool,int,long,float)):
 				matrix=numpy.array([matrix])
 			if len(matrix.shape) == 1:
-				matrix=matrix.reshape(1,numpy.size(matrix,0))
+				matrix=matrix.reshape(numpy.size(matrix),1)
 
 			s=matrix.shape
 			fid.write(struct.pack('i',s[0])) 
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromcluster.py
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromcluster.py	(revision 13096)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/m/solve/loadresultsfromcluster.py	(revision 13097)
@@ -26,6 +26,7 @@
 		if 'tabular_graphics_data' in md.qmu.params:
 			if md.qmu.params['tabular_graphics_data']:
 				filelist.append('dakota_tabular.dat')
+	else:
 		filelist.append(md.miscellaneous.name+'.outbin')
 	cluster.Download(md.private.runtimename,filelist)
 
