Index: /issm/trunk-jpl/src/m/classes/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.py	(revision 20159)
+++ /issm/trunk-jpl/src/m/classes/model.py	(revision 20160)
@@ -25,4 +25,5 @@
 from initialization import initialization
 from rifts import rifts
+from slr import slr
 from debug import debug
 from verbose import verbose
@@ -85,4 +86,5 @@
 		self.initialization   = initialization()
 		self.rifts            = rifts()
+		self.slr              = slr()
 
 		self.debug            = debug()
@@ -129,4 +131,5 @@
 		        'initialization',\
 		        'rifts',\
+		        'slr',\
 		        'debug',\
 		        'verbose',\
@@ -169,4 +172,5 @@
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("initialization","[%s,%s]" % ("1x1",obj.initialization.__class__.__name__),"initial guess/state"))
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("rifts","[%s,%s]" % ("1x1",obj.rifts.__class__.__name__),"rifts properties"))
+		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("slr","[%s,%s]" % ("1x1",obj.slr.__class__.__name__),"slr forcings"))
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("debug","[%s,%s]" % ("1x1",obj.debug.__class__.__name__),"debugging tools (valgrind, gprof)"))
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("verbose","[%s,%s]" % ("1x1",obj.verbose.__class__.__name__),"verbosity level in solve"))
Index: /issm/trunk-jpl/src/m/classes/slr.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/slr.py	(revision 20159)
+++ /issm/trunk-jpl/src/m/classes/slr.py	(revision 20160)
@@ -17,7 +17,8 @@
 	def __init__(self): # {{{
 		self.deltathickness 	= NaN
+		self.sealevel			= NaN
 		self.maxiter			= 0
 		self.reltol       		= 0
-		self.bstol         		= 0
+		self.abstol         		= 0
 		self.love_h         	= 0 #provided by PREM model()
 		self.love_k         	= 0 #ideam
@@ -76,5 +77,4 @@
 		return self
 		#}}}
-		
 	def checkconsistency(self,md,solution,analyses):    # {{{
 
@@ -83,5 +83,6 @@
 			return md
 
-		md = checkfield(md,'fieldname','slr.deltathickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1])
+		md = checkfield(md,'fieldname','slr.deltathickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1])
+		md = checkfield(md,'fieldname','slr.sealevel','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1])
 		md = checkfield(md,'fieldname','slr.love_h','NaN',1,'Inf',1)
 		md = checkfield(md,'fieldname','slr.love_k','NaN',1,'Inf',1)
@@ -93,14 +94,15 @@
 
 		#check that love numbers are provided at the same level of accuracy: 
-		if (size(self.love_h,1) != size(self.love_k,1)),
+		if (size(self.love_h,0) != size(self.love_k,0)):
 			error('slr error message: love numbers should be provided at the same level of accuracy')
 		
 		return md
 	# }}}
-	def defaultoutputs(self,md) # {{{
-		return ['SealevelriseS']
+	def defaultoutputs(self,md): # {{{
+		return ['Sealevel']
 	# }}}
-	def marshall(self,md,fid) # {{{
+	def marshall(self,md,fid): # {{{
 		WriteData(fid,'object',self,'class','sealevelrise','fieldname','deltathickness','format','DoubleMat','mattype',1)
+		WriteData(fid,'data',self.sealevel,'mattype',1,'format','DoubleMat','enum',SealevelEnum(),'timeserieslength',md.mesh.numberofvertices+1)
 		WriteData(fid,'object',self,'class','sealevelrise','fieldname','reltol','format','Double')
 		WriteData(fid,'object',self,'class','sealevelrise','fieldname','abstol','format','Double')
@@ -114,12 +116,11 @@
 		WriteData(fid,'object',self,'class','sealevelrise','fieldname','degacc','format','Double')
 		WriteData(fid,'object',self,'class','sealevelrise','fieldname','transitions','format','MatArray')
-		
+	
 		#process requested outputs
 		outputs = self.requested_outputs
-		pos = find(ismember(outputs,'default'))
-		if (!isempty(pos))
-			outputs(pos) = []                         #remove 'default' from outputs
-			outputs      = [outputs defaultoutputs(self,md)] #add defaults
-		WriteData(fid,'data',outputs,'enum',SealevelriseRequestedOutputsEnum,'format','StringArray')
-
+		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,'data',outputs,'enum',SealevelriseRequestedOutputsEnum(),'format','StringArray')
 	# }}}
