Index: /issm/trunk-jpl/src/m/classes/clusters/stallo.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/stallo.py	(revision 22172)
+++ /issm/trunk-jpl/src/m/classes/clusters/stallo.py	(revision 22173)
@@ -1,3 +1,4 @@
 import subprocess
+import numpy as np
 from fielddisplay import fielddisplay
 from pairoptions import pairoptions
@@ -47,8 +48,8 @@
 
 		#initialize cluster using user settings if provided
-		self=vilje_settings(self)
+		self=stallo_settings(self)
 		#OK get other fields
 		self=options.AssignObjectFields(self)
-		self.np=self.numnodes*self.procspernodes		
+		self.np=self.numnodes*self.cpuspernode		
 	# }}}
 	
@@ -112,7 +113,7 @@
 		fid.write('#SBATCH --nodes=%i' % self.numnodes)
 		fid.write('#SBATCH --ntasks-per-nodes==%i' % self.cpuspernode)									
-		fid.write('#SBATCH --time=%s\n' % timestring) #walltime is minutes
+		fid.write('#SBATCH --time=%s\n' % self.time) #walltime is minutes
 		fid.write('#SBATCH --mem-per-cpu=%iGB\n' % self.mem)# mem is in GB
-		if (mod(self.np,16)+mod(self.np,20))==0:
+		if (np.mod(self.np,16)+np.mod(self.np,20))==0:
 			fid.write('#SBATCH --ntask=%i\n' % self.np)
 		fid.write('#SBATCH --account=%s\n' % self.accountname) 
Index: /issm/trunk-jpl/src/m/classes/clusters/vilje.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/vilje.py	(revision 22172)
+++ /issm/trunk-jpl/src/m/classes/clusters/vilje.py	(revision 22173)
@@ -100,8 +100,8 @@
 		fid.write('#PBS -q %s \n' % self.queue)
 		fid.write('#PBS -l select=%i:ncpus=%i:mpiprocs=%s\n' % (self.numnodes,self.cpuspernode,self.procspernodes))
-                timeobj=datetime.timedelta(minutes=self.time)
-                m,s=divmod(timeobj.total_seconds(), 60)
-                h,m=divmod(m, 60)
-                timestring="%02d:%02d:%02d" % (h, m, s)
+		timeobj=datetime.timedelta(minutes=self.time)
+		m,s=divmod(timeobj.total_seconds(), 60)
+		h,m=divmod(m, 60)
+		timestring="%02d:%02d:%02d" % (h, m, s)
 		fid.write('#PBS -l walltime=%s\n' % timestring) #walltime is hh:mm:ss
 		#fid.write('#PBS -l mem=%igb\n' % self.mem)
Index: /issm/trunk-jpl/src/m/classes/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.py	(revision 22172)
+++ /issm/trunk-jpl/src/m/classes/model.py	(revision 22173)
@@ -38,4 +38,5 @@
 from hexagon import hexagon
 from cyclone import cyclone
+from stallo import stallo
 from balancethickness import balancethickness
 from stressbalance import stressbalance
Index: /issm/trunk-jpl/src/m/geometry/slope.py
===================================================================
--- /issm/trunk-jpl/src/m/geometry/slope.py	(revision 22172)
+++ /issm/trunk-jpl/src/m/geometry/slope.py	(revision 22173)
@@ -34,6 +34,6 @@
 
 	summation=np.array([[1],[1],[1]])
-	sx=np.dot(surf[index-1]*alpha,summation).reshape(-1,)
-	sy=np.dot(surf[index-1]*beta,summation).reshape(-1,)
+	sx=np.dot(surf[index-1,0]*alpha,summation).reshape(-1,)
+	sy=np.dot(surf[index-1,0]*beta,summation).reshape(-1,)
 
 	s=np.sqrt(sx**2+sy**2)
