Index: /issm/trunk-jpl/src/m/classes/SMBcomponents.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/SMBcomponents.py	(revision 23832)
+++ /issm/trunk-jpl/src/m/classes/SMBcomponents.py	(revision 23833)
@@ -5,99 +5,99 @@
 
 class SMBcomponents(object):
-	"""
-	SMBcomponents Class definition
+    """
+    SMBcomponents Class definition
 
-	   Usage:
-	      SMBcomponents=SMBcomponents();
-	"""
+       Usage:
+          SMBcomponents=SMBcomponents();
+    """
 
-	def __init__(self): # {{{
-		self.accumulation = float('NaN')
-		self.runoff = float('NaN')
-		self.evaporation = float('NaN')
-                self.isclimatology = 0
-		self.requested_outputs      = []
-		#}}}
-	def __repr__(self): # {{{
-		string="   surface forcings parameters (SMB=accumulation-runoff-evaporation) :"
-		string="%s\n%s"%(string,fielddisplay(self,'accumulation','accumulated snow [m/yr ice eq]'))
-		string="%s\n%s"%(string,fielddisplay(self,'runoff','amount of ice melt lost from the ice column [m/yr ice eq]'))
-		string="%s\n%s"%(string,fielddisplay(self,'evaporation','mount of ice lost to evaporative processes [m/yr ice eq]'))
-                string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
-		string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
-		return string
-		#}}}
-	def extrude(self,md): # {{{
+    def __init__(self): # {{{
+        self.accumulation = float('NaN')
+        self.runoff = float('NaN')
+        self.evaporation = float('NaN')
+        self.isclimatology = 0
+        self.requested_outputs      = []
+        #}}}
+    def __repr__(self): # {{{
+        string="   surface forcings parameters (SMB=accumulation-runoff-evaporation) :"
+        string="%s\n%s"%(string,fielddisplay(self,'accumulation','accumulated snow [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'runoff','amount of ice melt lost from the ice column [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'evaporation','mount of ice lost to evaporative processes [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
+        string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
+        return string
+        #}}}
+    def extrude(self,md): # {{{
 
-		self.mass_balance=project3d(md,'vector',self.accumulation,'type','node');
-		self.mass_balance=project3d(md,'vector',self.runoff,'type','node');
-		self.mass_balance=project3d(md,'vector',self.evaporation,'type','node');
-		return self
-	#}}}
-	def defaultoutputs(self,md): # {{{
-		return []
-	#}}}
-	def initialize(self,md): # {{{
+        self.mass_balance=project3d(md,'vector',self.accumulation,'type','node');
+        self.mass_balance=project3d(md,'vector',self.runoff,'type','node');
+        self.mass_balance=project3d(md,'vector',self.evaporation,'type','node');
+        return self
+    #}}}
+    def defaultoutputs(self,md): # {{{
+        return []
+    #}}}
+    def initialize(self,md): # {{{
 
-		if np.all(np.isnan(self.accumulation)):
-			self.accumulation=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.accumulation specified: values set as zero")
+        if np.all(np.isnan(self.accumulation)):
+            self.accumulation=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.accumulation specified: values set as zero")
 
-		if np.all(np.isnan(self.runoff)):
-			self.runoff=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.runoff specified: values set as zero")
+        if np.all(np.isnan(self.runoff)):
+            self.runoff=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.runoff specified: values set as zero")
 
-		if np.all(np.isnan(self.evaporation)):
-			self.evaporation=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.evaporation specified: values set as zero")
+        if np.all(np.isnan(self.evaporation)):
+            self.evaporation=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.evaporation specified: values set as zero")
 
-		return self
-	#}}}
-	def checkconsistency(self,md,solution,analyses):    # {{{
+        return self
+    #}}}
+    def checkconsistency(self,md,solution,analyses):    # {{{
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.runoff','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.runoff','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.runoff','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.runoff','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
-		
-		md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
-                md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        
+        md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
+        md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
 
-		return md
-	# }}}
-	def marshall(self,prefix,md,fid):    # {{{
+        return md
+    # }}}
+    def marshall(self,prefix,md,fid):    # {{{
 
-		yts=md.constants.yts
+        yts=md.constants.yts
 
-		WriteData(fid,prefix,'name','md.smb.model','data',2,'format','Integer');
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','accumulation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','runoff','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','evaporation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		
-		#process requested outputs
-		outputs = self.requested_outputs
-		indices = [i for i, x in enumerate(outputs) if x == 'default']
-		if len(indices) > 0:
-			outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
-			outputs    =outputscopy
-		WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
-                WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
-                if (self.isclimatology>0):
-                        md = checkfield(md,'fieldname', 'smb.accumulation', 'size',[md.mesh.numberofvertices+1],'message','accumulation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
-                        md = checkfield(md,'fieldname', 'smb.runoff', 'size',[md.mesh.numberofvertices+1],'message','runoff must have md.mesh.numberofvertices+1 rows in order to force a climatology')
-                        md = checkfield(md,'fieldname', 'smb.evaporation', 'size',[md.mesh.numberofvertices+1],'message','evaporation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+        WriteData(fid,prefix,'name','md.smb.model','data',2,'format','Integer');
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','accumulation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','runoff','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','evaporation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        
+        #process requested outputs
+        outputs = self.requested_outputs
+        indices = [i for i, x in enumerate(outputs) if x == 'default']
+        if len(indices) > 0:
+            outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
+            outputs    =outputscopy
+        WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
+        if (self.isclimatology>0):
+            md = checkfield(md,'fieldname', 'smb.accumulation', 'size',[md.mesh.numberofvertices+1],'message','accumulation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+            md = checkfield(md,'fieldname', 'smb.runoff', 'size',[md.mesh.numberofvertices+1],'message','runoff must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+            md = checkfield(md,'fieldname', 'smb.evaporation', 'size',[md.mesh.numberofvertices+1],'message','evaporation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
 
-	# }}}
+    # }}}
Index: /issm/trunk-jpl/src/m/classes/SMBforcing.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/SMBforcing.py	(revision 23832)
+++ /issm/trunk-jpl/src/m/classes/SMBforcing.py	(revision 23833)
@@ -6,70 +6,70 @@
 
 class SMBforcing(object):
-	"""
-	SMBforcing Class definition
+    """
+    SMBforcing Class definition
 
-	   Usage:
-	      SMB=SMBforcing();
-	"""
+       Usage:
+          SMB=SMBforcing();
+    """
 
-	def __init__(self): # {{{
-		self.mass_balance = float('NaN')
-		self.requested_outputs      = []
-                self.isclimatology = 0
-		#}}}
-	def __repr__(self): # {{{
-		string="   surface forcings parameters:"
-		string="%s\n%s"%(string,fielddisplay(self,'mass_balance','surface mass balance [m/yr ice eq]'))
-                string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
-		string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
-		return string
-		#}}}
-	def extrude(self,md): # {{{
+    def __init__(self): # {{{
+        self.mass_balance = float('NaN')
+        self.requested_outputs      = []
+        self.isclimatology = 0
+        #}}}
+    def __repr__(self): # {{{
+        string="   surface forcings parameters:"
+        string="%s\n%s"%(string,fielddisplay(self,'mass_balance','surface mass balance [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
+        string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
+        return string
+        #}}}
+    def extrude(self,md): # {{{
 
-		self.mass_balance=project3d(md,'vector',self.mass_balance,'type','node');
-		return self
-	#}}}
-	def defaultoutputs(self,md): # {{{
-		return []
-	#}}}
-	def initialize(self,md): # {{{
+        self.mass_balance=project3d(md,'vector',self.mass_balance,'type','node');
+        return self
+    #}}}
+    def defaultoutputs(self,md): # {{{
+        return []
+    #}}}
+    def initialize(self,md): # {{{
 
-		if np.all(np.isnan(self.mass_balance)):
-			self.mass_balance=np.zeros((md.mesh.numberofvertices))
-			print("      no SMBforcing.mass_balance specified: values set as zero")
+        if np.all(np.isnan(self.mass_balance)):
+            self.mass_balance=np.zeros((md.mesh.numberofvertices))
+            print("      no SMBforcing.mass_balance specified: values set as zero")
 
-		return self
-	#}}}
-	def checkconsistency(self,md,solution,analyses):    # {{{
+        return self
+    #}}}
+    def checkconsistency(self,md,solution,analyses):    # {{{
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
-                md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
-                if (self.isclimatology>0):
-                    md = checkfield(md,'fieldname', 'smb.mass_balance', 'size',[md.mesh.numberofvertices+1],'message','mass_balance must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+        md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
+        md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
+        if (self.isclimatology>0):
+            md = checkfield(md,'fieldname', 'smb.mass_balance', 'size',[md.mesh.numberofvertices+1],'message','mass_balance must have md.mesh.numberofvertices+1 rows in order to force a climatology')
 
-		return md
-	# }}}
-	def marshall(self,prefix,md,fid):    # {{{
+        return md
+    # }}}
+    def marshall(self,prefix,md,fid):    # {{{
 
-		yts=md.constants.yts
+        yts=md.constants.yts
 
-		WriteData(fid,prefix,'name','md.smb.model','data',1,'format','Integer');
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','mass_balance','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		#WriteData(fid,prefix,'object',self,'class','smb','fieldname','mass_balance','format','CompressedMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
-		
-		#process requested outputs
-		outputs = self.requested_outputs
-		indices = [i for i, x in enumerate(outputs) if x == 'default']
-		if len(indices) > 0:
-			outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
-			outputs    =outputscopy
-		WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
-                WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
+        WriteData(fid,prefix,'name','md.smb.model','data',1,'format','Integer');
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','mass_balance','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        #WriteData(fid,prefix,'object',self,'class','smb','fieldname','mass_balance','format','CompressedMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
+        
+        #process requested outputs
+        outputs = self.requested_outputs
+        indices = [i for i, x in enumerate(outputs) if x == 'default']
+        if len(indices) > 0:
+            outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
+            outputs    =outputscopy
+        WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
 
-	# }}}
+    # }}}
Index: /issm/trunk-jpl/src/m/classes/SMBmeltcomponents.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/SMBmeltcomponents.py	(revision 23832)
+++ /issm/trunk-jpl/src/m/classes/SMBmeltcomponents.py	(revision 23833)
@@ -5,112 +5,112 @@
 
 class SMBmeltcomponents(object):
-	"""
-	SMBmeltcomponents Class definition
+    """
+    SMBmeltcomponents Class definition
 
-	   Usage:
-	      SMBmeltcomponents=SMBmeltcomponents();
-	"""
+       Usage:
+          SMBmeltcomponents=SMBmeltcomponents();
+    """
 
-	def __init__(self): # {{{
-		self.accumulation = float('NaN')
-		self.runoff = float('NaN')
-		self.evaporation = float('NaN')
-                self.isclimatology = 0
-		self.requested_outputs      = []
-		#}}}
-	def __repr__(self): # {{{
-		string="   surface forcings parameters with melt (SMB=accumulation-evaporation-melt+refreeze) :"
-		string="%s\n%s"%(string,fielddisplay(self,'accumulation','accumulated snow [m/yr ice eq]'))
-		string="%s\n%s"%(string,fielddisplay(self,'evaporation','mount of ice lost to evaporative processes [m/yr ice eq]'))
-		string="%s\n%s"%(string,fielddisplay(self,'melt','amount of ice melt in the ice column [m/yr ice eq]'))
-		string="%s\n%s"%(string,fielddisplay(self,'refreeze','amount of ice melt refrozen in the ice column [m/yr ice eq]'))
-                string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
-		string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
-		return string
-		#}}}
-	def extrude(self,md): # {{{
+    def __init__(self): # {{{
+        self.accumulation = float('NaN')
+        self.runoff = float('NaN')
+        self.evaporation = float('NaN')
+        self.isclimatology = 0
+        self.requested_outputs      = []
+        #}}}
+    def __repr__(self): # {{{
+        string="   surface forcings parameters with melt (SMB=accumulation-evaporation-melt+refreeze) :"
+        string="%s\n%s"%(string,fielddisplay(self,'accumulation','accumulated snow [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'evaporation','mount of ice lost to evaporative processes [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'melt','amount of ice melt in the ice column [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'refreeze','amount of ice melt refrozen in the ice column [m/yr ice eq]'))
+        string="%s\n%s"%(string,fielddisplay(self,'isclimatology','repeat all forcings when past last forcing time (default false)'))
+        string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional outputs requested'))
+        return string
+        #}}}
+    def extrude(self,md): # {{{
 
-		self.accumulation=project3d(md,'vector',self.accumulation,'type','node');
-		self.evaporation=project3d(md,'vector',self.evaporation,'type','node');
-		self.melt=project3d(md,'vector',self.melt,'type','node');
-		self.refreeze=project3d(md,'vector',self.refreeze,'type','node');
-		return self
-	#}}}
-	def defaultoutputs(self,md): # {{{
-		return []
-	#}}}
-	def initialize(self,md): # {{{
+        self.accumulation=project3d(md,'vector',self.accumulation,'type','node');
+        self.evaporation=project3d(md,'vector',self.evaporation,'type','node');
+        self.melt=project3d(md,'vector',self.melt,'type','node');
+        self.refreeze=project3d(md,'vector',self.refreeze,'type','node');
+        return self
+    #}}}
+    def defaultoutputs(self,md): # {{{
+        return []
+    #}}}
+    def initialize(self,md): # {{{
 
-		if np.all(np.isnan(self.accumulation)):
-			self.accumulation=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.accumulation specified: values set as zero")
+        if np.all(np.isnan(self.accumulation)):
+            self.accumulation=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.accumulation specified: values set as zero")
 
-		if np.all(np.isnan(self.evaporation)):
-			self.evaporation=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.evaporation specified: values set as zero")
+        if np.all(np.isnan(self.evaporation)):
+            self.evaporation=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.evaporation specified: values set as zero")
 
-		if np.all(np.isnan(self.melt)):
-			self.melt=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.melt specified: values set as zero")
+        if np.all(np.isnan(self.melt)):
+            self.melt=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.melt specified: values set as zero")
 
-		if np.all(np.isnan(self.refreeze)):
-			self.refreeze=np.zeros((md.mesh.numberofvertices))
-			print("      no SMB.refreeze specified: values set as zero")
+        if np.all(np.isnan(self.refreeze)):
+            self.refreeze=np.zeros((md.mesh.numberofvertices))
+            print("      no SMB.refreeze specified: values set as zero")
 
-		return self
-	#}}}
-	def checkconsistency(self,md,solution,analyses):    # {{{
+        return self
+    #}}}
+    def checkconsistency(self,md,solution,analyses):    # {{{
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.melt','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.melt','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.melt','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.melt','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.refreeze','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.refreeze','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.refreeze','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.refreeze','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1)
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1)
 
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1)
 
-		md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
-                md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
-		return md
-	# }}}
-	def marshall(self,prefix,md,fid):    # {{{
+        md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1)
+        md = checkfield(md,'fieldname','smb.isclimatology','values',[0,1])
+        return md
+    # }}}
+    def marshall(self,prefix,md,fid):    # {{{
 
-		yts=md.constants.yts
+        yts=md.constants.yts
 
-		WriteData(fid,prefix,'name','md.smb.model','data',3,'format','Integer');
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','accumulation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','evaporation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','melt','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
-		WriteData(fid,prefix,'object',self,'class','smb','fieldname','refreeze','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'name','md.smb.model','data',3,'format','Integer');
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','accumulation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','evaporation','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','melt','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','refreeze','format','DoubleMat','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts)
 
-		#process requested outputs
-		outputs = self.requested_outputs
-		indices = [i for i, x in enumerate(outputs) if x == 'default']
-		if len(indices) > 0:
-			outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
-			outputs    =outputscopy
-		WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
-                WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
-                if (self.isclimatology>0):
-                        md = checkfield(md,'fieldname', 'smb.accumulation', 'size',[md.mesh.numberofvertices+1],'message','accumulation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
-                        md = checkfield(md,'fieldname', 'smb.melt', 'size',[md.mesh.numberofvertices+1],'message','melt must have md.mesh.numberofvertices+1 rows in order to force a climatology')
-                        md = checkfield(md,'fieldname', 'smb.refreeze', 'size',[md.mesh.numberofvertices+1],'message','refreeze must have md.mesh.numberofvertices+1 rows in order to force a climatology')
-                        md = checkfield(md,'fieldname', 'smb.evaporation', 'size',[md.mesh.numberofvertices+1],'message','evaporation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+        #process requested outputs
+        outputs = self.requested_outputs
+        indices = [i for i, x in enumerate(outputs) if x == 'default']
+        if len(indices) > 0:
+            outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:]
+            outputs    =outputscopy
+        WriteData(fid,prefix,'data',outputs,'name','md.smb.requested_outputs','format','StringArray')
+        WriteData(fid,prefix,'object',self,'class','smb','fieldname','isclimatology','format','Boolean')
+        if (self.isclimatology>0):
+            md = checkfield(md,'fieldname', 'smb.accumulation', 'size',[md.mesh.numberofvertices+1],'message','accumulation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+            md = checkfield(md,'fieldname', 'smb.melt', 'size',[md.mesh.numberofvertices+1],'message','melt must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+            md = checkfield(md,'fieldname', 'smb.refreeze', 'size',[md.mesh.numberofvertices+1],'message','refreeze must have md.mesh.numberofvertices+1 rows in order to force a climatology')
+            md = checkfield(md,'fieldname', 'smb.evaporation', 'size',[md.mesh.numberofvertices+1],'message','evaporation must have md.mesh.numberofvertices+1 rows in order to force a climatology')
 
-	# }}}
+    # }}}
Index: /issm/trunk-jpl/src/m/classes/geometry.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/geometry.py	(revision 23832)
+++ /issm/trunk-jpl/src/m/classes/geometry.py	(revision 23833)
@@ -60,5 +60,5 @@
 				    md.checkmessage('base<bed on one or more vertex')
 				pos = np.where(md.mask.groundedice_levelset > 0)
-				if np.any(np.abs(self.bed[pos]-self.base[pos]>10**-9):
+				if np.any(np.abs(self.bed[pos]-self.base[pos])>10**-9):
 				    md.checkmessage('equality base=bed on grounded ice violated')
 				md = checkfield(md,'fieldname','geometry.bed','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
Index: /issm/trunk-jpl/src/m/classes/initialization.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/initialization.py	(revision 23832)
+++ /issm/trunk-jpl/src/m/classes/initialization.py	(revision 23833)
@@ -7,140 +7,140 @@
 
 class initialization(object):
-	"""
-	INITIALIZATION class definition
-	
-	Usage:
-	initialization=initialization();
-	"""
+    """
+    INITIALIZATION class definition
+    
+    Usage:
+    initialization=initialization();
+    """
 
-	def __init__(self): # {{{
-					
-		self.vx            = float('NaN')
-		self.vy            = float('NaN')
-		self.vz            = float('NaN')
-		self.vel           = float('NaN')
-                self.enthalpy      = float('NaN')
-		self.pressure      = float('NaN')
-		self.temperature   = float('NaN')
-		self.waterfraction = float('NaN')
-		self.watercolumn   = float('NaN')
-		self.sediment_head = float('NaN')
-		self.epl_head      = float('NaN')
-		self.epl_thickness = float('NaN')
+    def __init__(self): # {{{
+                    
+        self.vx            = float('NaN')
+        self.vy            = float('NaN')
+        self.vz            = float('NaN')
+        self.vel           = float('NaN')
+        self.enthalpy      = float('NaN')
+        self.pressure      = float('NaN')
+        self.temperature   = float('NaN')
+        self.waterfraction = float('NaN')
+        self.watercolumn   = float('NaN')
+        self.sediment_head = float('NaN')
+        self.epl_head      = float('NaN')
+        self.epl_thickness = float('NaN')
 
-		#set defaults
-		self.setdefaultparameters()
+        #set defaults
+        self.setdefaultparameters()
 
-		#}}}
-	def __repr__(self): # {{{
-		string='   initial field values:'
-		string="%s\n%s"%(string,fielddisplay(self,'vx','x component of velocity [m/yr]'))
-		string="%s\n%s"%(string,fielddisplay(self,'vy','y component of velocity [m/yr]'))
-		string="%s\n%s"%(string,fielddisplay(self,'vz','z component of velocity [m/yr]'))
-		string="%s\n%s"%(string,fielddisplay(self,'vel','velocity norm [m/yr]'))
-		string="%s\n%s"%(string,fielddisplay(self,'pressure','pressure [Pa]'))
-		string="%s\n%s"%(string,fielddisplay(self,'temperature','temperature [K]'))
-                string="%s\n%s"%(string,fielddisplay(self,'enthalpy','enthalpy [J]'))
-		string="%s\n%s"%(string,fielddisplay(self,'waterfraction','fraction of water in the ice'))
-		string="%s\n%s"%(string,fielddisplay(self,'watercolumn','thickness of subglacial water [m]'))
-		string="%s\n%s"%(string,fielddisplay(self,'sediment_head','sediment water head of subglacial system [m]'))
-		string="%s\n%s"%(string,fielddisplay(self,'epl_head','epl water head of subglacial system [m]'))
-		string="%s\n%s"%(string,fielddisplay(self,'epl_thickness','thickness of the epl [m]'))
+        #}}}
+    def __repr__(self): # {{{
+        string='   initial field values:'
+        string="%s\n%s"%(string,fielddisplay(self,'vx','x component of velocity [m/yr]'))
+        string="%s\n%s"%(string,fielddisplay(self,'vy','y component of velocity [m/yr]'))
+        string="%s\n%s"%(string,fielddisplay(self,'vz','z component of velocity [m/yr]'))
+        string="%s\n%s"%(string,fielddisplay(self,'vel','velocity norm [m/yr]'))
+        string="%s\n%s"%(string,fielddisplay(self,'pressure','pressure [Pa]'))
+        string="%s\n%s"%(string,fielddisplay(self,'temperature','temperature [K]'))
+        string="%s\n%s"%(string,fielddisplay(self,'enthalpy','enthalpy [J]'))
+        string="%s\n%s"%(string,fielddisplay(self,'waterfraction','fraction of water in the ice'))
+        string="%s\n%s"%(string,fielddisplay(self,'watercolumn','thickness of subglacial water [m]'))
+        string="%s\n%s"%(string,fielddisplay(self,'sediment_head','sediment water head of subglacial system [m]'))
+        string="%s\n%s"%(string,fielddisplay(self,'epl_head','epl water head of subglacial system [m]'))
+        string="%s\n%s"%(string,fielddisplay(self,'epl_thickness','thickness of the epl [m]'))
 
-		return string
-		#}}}
-	def extrude(self,md): # {{{
-		self.vx=project3d(md,'vector',self.vx,'type','node')
-		self.vy=project3d(md,'vector',self.vy,'type','node')
-		self.vz=project3d(md,'vector',self.vz,'type','node')
-		self.vel=project3d(md,'vector',self.vel,'type','node')
-		self.temperature=project3d(md,'vector',self.temperature,'type','node')
-                self.enthalpy=project3d(md,'vector',self.enthalpy,'type','node')
-		self.waterfraction=project3d(md,'vector',self.waterfraction,'type','node')
-		self.watercolumn=project3d(md,'vector',self.watercolumn,'type','node')
-		self.sediment_head=project3d(md,'vector',self.sediment_head,'type','node','layer',1)
-		self.epl_head=project3d(md,'vector',self.epl_head,'type','node','layer',1)
-		self.epl_thickness=project3d(md,'vector',self.epl_thickness,'type','node','layer',1)
+        return string
+        #}}}
+    def extrude(self,md): # {{{
+        self.vx=project3d(md,'vector',self.vx,'type','node')
+        self.vy=project3d(md,'vector',self.vy,'type','node')
+        self.vz=project3d(md,'vector',self.vz,'type','node')
+        self.vel=project3d(md,'vector',self.vel,'type','node')
+        self.temperature=project3d(md,'vector',self.temperature,'type','node')
+        self.enthalpy=project3d(md,'vector',self.enthalpy,'type','node')
+        self.waterfraction=project3d(md,'vector',self.waterfraction,'type','node')
+        self.watercolumn=project3d(md,'vector',self.watercolumn,'type','node')
+        self.sediment_head=project3d(md,'vector',self.sediment_head,'type','node','layer',1)
+        self.epl_head=project3d(md,'vector',self.epl_head,'type','node','layer',1)
+        self.epl_thickness=project3d(md,'vector',self.epl_thickness,'type','node','layer',1)
 
-		#Lithostatic pressure by default
-		#		self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface[:,0]-md.mesh.z)
-		#self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface-md.mesh.z.reshape(-1,))
+        #Lithostatic pressure by default
+        #        self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface[:,0]-md.mesh.z)
+        #self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface-md.mesh.z.reshape(-1,))
 
-		if np.ndim(md.geometry.surface)==2:
-			print('Reshaping md.geometry.surface for you convenience but you should fix it in you files')
-			self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface.reshape(-1,)-md.mesh.z)
-		else:
-			self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface-md.mesh.z)
+        if np.ndim(md.geometry.surface)==2:
+            print('Reshaping md.geometry.surface for you convenience but you should fix it in you files')
+            self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface.reshape(-1,)-md.mesh.z)
+        else:
+            self.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface-md.mesh.z)
 
-		return self
-	#}}}
-	def setdefaultparameters(self): # {{{
-		return self
-	#}}}
-	def checkconsistency(self,md,solution,analyses):    # {{{
-		if 'StressbalanceAnalysis' in analyses:
-			if not np.any(np.logical_or(np.isnan(md.initialization.vx),np.isnan(md.initialization.vy))):
-				md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-				md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-		if 'MasstransportAnalysis' in analyses:
-			md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-		if 'BalancethicknessAnalysis' in analyses:
-			md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			#Triangle with zero velocity
-			if np.any(np.logical_and(np.sum(np.abs(md.initialization.vx[md.mesh.elements-1]),axis=1)==0,\
-			                               np.sum(np.abs(md.initialization.vy[md.mesh.elements-1]),axis=1)==0)):
-				md.checkmessage("at least one triangle has all its vertices with a zero velocity")
-		if 'ThermalAnalysis' in analyses:
-			md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			md = checkfield(md,'fieldname','initialization.temperature','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			if md.mesh.dimension()==3:
-				md = checkfield(md,'fieldname','initialization.vz','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			md = checkfield(md,'fieldname','initialization.pressure','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-			if ('EnthalpyAnalysis' in analyses and md.thermal.isenthalpy):
-				md = checkfield(md,'fieldname','initialization.waterfraction','>=',0,'size',[md.mesh.numberofvertices])
-				md = checkfield(md,'fieldname','initialization.watercolumn'  ,'>=',0,'size',[md.mesh.numberofvertices])
-				pos = np.nonzero(md.initialization.waterfraction > 0.)[0]
-				if(pos.size):
-					md = checkfield(md,'fieldname', 'delta Tpmp', 'field', np.absolute(md.initialization.temperature[pos]-(md.materials.meltingpoint-md.materials.beta*md.initialization.pressure[pos])),'<',1e-11,	'message','set temperature to pressure melting point at locations with waterfraction>0');
-		if 'HydrologyShreveAnalysis' in analyses:
-			if hasattr(md.hydrology,'hydrologyshreve'):
-				md = checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-		if 'HydrologyDCInefficientAnalysis' in analyses:
-			if hasattr(md.hydrology,'hydrologydc'):
-				md = checkfield(md,'fieldname','initialization.sediment_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-		if 'HydrologyDCEfficientAnalysis' in analyses:
-			if hasattr(md.hydrology,'hydrologydc'):
-				if md.hydrology.isefficientlayer==1:
-					md = checkfield(md,'fieldname','initialization.epl_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
-					md = checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+        return self
+    #}}}
+    def setdefaultparameters(self): # {{{
+        return self
+    #}}}
+    def checkconsistency(self,md,solution,analyses):    # {{{
+        if 'StressbalanceAnalysis' in analyses:
+            if not np.any(np.logical_or(np.isnan(md.initialization.vx),np.isnan(md.initialization.vy))):
+                md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+                md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+        if 'MasstransportAnalysis' in analyses:
+            md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+        if 'BalancethicknessAnalysis' in analyses:
+            md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            #Triangle with zero velocity
+            if np.any(np.logical_and(np.sum(np.abs(md.initialization.vx[md.mesh.elements-1]),axis=1)==0,\
+                                           np.sum(np.abs(md.initialization.vy[md.mesh.elements-1]),axis=1)==0)):
+                md.checkmessage("at least one triangle has all its vertices with a zero velocity")
+        if 'ThermalAnalysis' in analyses:
+            md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            md = checkfield(md,'fieldname','initialization.temperature','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            if md.mesh.dimension()==3:
+                md = checkfield(md,'fieldname','initialization.vz','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            md = checkfield(md,'fieldname','initialization.pressure','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+            if ('EnthalpyAnalysis' in analyses and md.thermal.isenthalpy):
+                md = checkfield(md,'fieldname','initialization.waterfraction','>=',0,'size',[md.mesh.numberofvertices])
+                md = checkfield(md,'fieldname','initialization.watercolumn'  ,'>=',0,'size',[md.mesh.numberofvertices])
+                pos = np.nonzero(md.initialization.waterfraction > 0.)[0]
+                if(pos.size):
+                    md = checkfield(md,'fieldname', 'delta Tpmp', 'field', np.absolute(md.initialization.temperature[pos]-(md.materials.meltingpoint-md.materials.beta*md.initialization.pressure[pos])),'<',1e-11,    'message','set temperature to pressure melting point at locations with waterfraction>0');
+        if 'HydrologyShreveAnalysis' in analyses:
+            if hasattr(md.hydrology,'hydrologyshreve'):
+                md = checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+        if 'HydrologyDCInefficientAnalysis' in analyses:
+            if hasattr(md.hydrology,'hydrologydc'):
+                md = checkfield(md,'fieldname','initialization.sediment_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+        if 'HydrologyDCEfficientAnalysis' in analyses:
+            if hasattr(md.hydrology,'hydrologydc'):
+                if md.hydrology.isefficientlayer==1:
+                    md = checkfield(md,'fieldname','initialization.epl_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
+                    md = checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices])
 
-		return md
-	# }}}
-	def marshall(self,prefix,md,fid):    # {{{
+        return md
+    # }}}
+    def marshall(self,prefix,md,fid):    # {{{
 
-		yts=md.constants.yts
+        yts=md.constants.yts
 
-		WriteData(fid,prefix,'object',self,'fieldname','vx','format','DoubleMat','mattype',1,'scale',1./yts)
-		WriteData(fid,prefix,'object',self,'fieldname','vy','format','DoubleMat','mattype',1,'scale',1./yts)
-		WriteData(fid,prefix,'object',self,'fieldname','vz','format','DoubleMat','mattype',1,'scale',1./yts)
-		WriteData(fid,prefix,'object',self,'fieldname','pressure','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','temperature','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','waterfraction','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','sediment_head','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','epl_head','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','epl_thickness','format','DoubleMat','mattype',1)
-		WriteData(fid,prefix,'object',self,'fieldname','watercolumn','format','DoubleMat','mattype',1)
-		
-		if md.thermal.isenthalpy:
-                    if (np.size(self.enthalpy)<=1):
-			tpmp = md.materials.meltingpoint - md.materials.beta*md.initialization.pressure;
-			pos  = np.nonzero(md.initialization.waterfraction > 0.)[0]
-			self.enthalpy      = md.materials.heatcapacity*(md.initialization.temperature-md.constants.referencetemperature);
-			self.enthalpy[pos] = md.materials.heatcapacity*(tpmp[pos].reshape(-1,) - md.constants.referencetemperature) + md.materials.latentheat*md.initialization.waterfraction[pos].reshape(-1,)
+        WriteData(fid,prefix,'object',self,'fieldname','vx','format','DoubleMat','mattype',1,'scale',1./yts)
+        WriteData(fid,prefix,'object',self,'fieldname','vy','format','DoubleMat','mattype',1,'scale',1./yts)
+        WriteData(fid,prefix,'object',self,'fieldname','vz','format','DoubleMat','mattype',1,'scale',1./yts)
+        WriteData(fid,prefix,'object',self,'fieldname','pressure','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','temperature','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','waterfraction','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','sediment_head','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','epl_head','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','epl_thickness','format','DoubleMat','mattype',1)
+        WriteData(fid,prefix,'object',self,'fieldname','watercolumn','format','DoubleMat','mattype',1)
+        
+        if md.thermal.isenthalpy:
+            if (np.size(self.enthalpy)<=1):
+                tpmp = md.materials.meltingpoint - md.materials.beta*md.initialization.pressure;
+                pos  = np.nonzero(md.initialization.waterfraction > 0.)[0]
+                self.enthalpy      = md.materials.heatcapacity*(md.initialization.temperature-md.constants.referencetemperature);
+                self.enthalpy[pos] = md.materials.heatcapacity*(tpmp[pos].reshape(-1,) - md.constants.referencetemperature) + md.materials.latentheat*md.initialization.waterfraction[pos].reshape(-1,)
 
-                    WriteData(fid,prefix,'data',self.enthalpy,'format','DoubleMat','mattype',1,'name','md.initialization.enthalpy');
+            WriteData(fid,prefix,'data',self.enthalpy,'format','DoubleMat','mattype',1,'name','md.initialization.enthalpy');
 
-	# }}}
+    # }}}
Index: /issm/trunk-jpl/test/NightlyRun/runme.py
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/runme.py	(revision 23832)
+++ /issm/trunk-jpl/test/NightlyRun/runme.py	(revision 23833)
@@ -229,30 +229,30 @@
 
 if __name__ == '__main__':
-	if 'PYTHONSTARTUP' in os.environ:
-		PYTHONSTARTUP = os.environ['PYTHONSTARTUP']
-		#print 'PYTHONSTARTUP =', PYTHONSTARTUP
-		if os.path.exists(PYTHONSTARTUP):
-			try:
-				exec(compile(open(PYTHONSTARTUP).read(), PYTHONSTARTUP, 'exec'))
-			except Exception as e:
-				print("PYTHONSTARTUP error: ", e)
-		else:
-			print(("PYTHONSTARTUP file '{}' does not exist.".format(PYTHONSTARTUP)))
-
-		parser = argparse.ArgumentParser(description='RUNME - test deck for ISSM nightly runs')
-		parser.add_argument('-i', '--id', nargs='*', type=int, help='followed by the list of ids requested', default=[])
-		parser.add_argument('-in', '--include_name', nargs='*', type=str, help='followed by the list of test names requested', default=[])
-		parser.add_argument('-e', '--exclude', nargs='+', type=int, help='ids to be excluded from the test', default=[])
-		parser.add_argument('-en', '--exclude_name', nargs='+', type=str, help='test names to be excluded from the test', default=[])
-		parser.add_argument('-b', '--benchmark', help='nightly/ismip/eismint/thermal/mesh/...', default='nightly')
-		parser.add_argument('-p', '--procedure', help='check/update', default='check')
-		parser.add_argument('-o', '--output', help='nightly/daily/none', default='none')
-		parser.add_argument('-r', '--rank', type=int, help='rank', default=1)
-		parser.add_argument('-n', '--numprocs', type=int, help='numprocs', default=1)
-		args = parser.parse_args()
-
-		md = runme([args.id, args.include_name], [args.exclude, args.exclude_name], args.benchmark, args.procedure, args.output, args.rank, args.numprocs)
-
-		exit(md)
+    if 'PYTHONSTARTUP' in os.environ:
+        PYTHONSTARTUP = os.environ['PYTHONSTARTUP']
+        #print 'PYTHONSTARTUP =', PYTHONSTARTUP
+        if os.path.exists(PYTHONSTARTUP):
+            try:
+                exec(compile(open(PYTHONSTARTUP).read(), PYTHONSTARTUP, 'exec'))
+            except Exception as e:
+                print("PYTHONSTARTUP error: ", e)
+        else:
+            print(("PYTHONSTARTUP file '{}' does not exist.".format(PYTHONSTARTUP)))
+
+        parser = argparse.ArgumentParser(description='RUNME - test deck for ISSM nightly runs')
+        parser.add_argument('-i', '--id', nargs='*', type=int, help='followed by the list of ids requested', default=[])
+        parser.add_argument('-in', '--include_name', nargs='*', type=str, help='followed by the list of test names requested', default=[])
+        parser.add_argument('-e', '--exclude', nargs='+', type=int, help='ids to be excluded from the test', default=[])
+        parser.add_argument('-en', '--exclude_name', nargs='+', type=str, help='test names to be excluded from the test', default=[])
+        parser.add_argument('-b', '--benchmark', help='nightly/ismip/eismint/thermal/mesh/...', default='nightly')
+        parser.add_argument('-p', '--procedure', help='check/update', default='check')
+        parser.add_argument('-o', '--output', help='nightly/daily/none', default='none')
+        parser.add_argument('-r', '--rank', type=int, help='rank', default=1)
+        parser.add_argument('-n', '--numprocs', type=int, help='numprocs', default=1)
+        args = parser.parse_args()
+
+        md = runme([args.id, args.include_name], [args.exclude, args.exclude_name], args.benchmark, args.procedure, args.output, args.rank, args.numprocs)
+
+        exit(md)
     else:
         print("PYTHONSTARTUP not defined in environment")
