Index: issm/trunk-jpl/src/m/classes/issmsettings.m
===================================================================
--- issm/trunk-jpl/src/m/classes/issmsettings.m	(revision 23472)
+++ issm/trunk-jpl/src/m/classes/issmsettings.m	(revision 23474)
@@ -10,4 +10,5 @@
 		lowmem              = 0;
 		output_frequency    = 0;
+		sb_coupling_frequency   = 0;
 		recording_frequency   = 0;
 		waitonlock          = 0;
@@ -39,4 +40,7 @@
 			self.output_frequency=1;
 
+			%coupling frequency of the stress balance solver by default every step
+			self.sb_coupling_frequency=1;
+			
 			%checkpoints frequency, by default never: 
 			self.recording_frequency=0;
@@ -61,4 +65,5 @@
 			md = checkfield(md,'fieldname','settings.lowmem','numel',[1],'values',[0 1]);
 			md = checkfield(md,'fieldname','settings.output_frequency','numel',[1],'>=',1);
+			md = checkfield(md,'fieldname','settings.sb_coupling_frequency','numel',[1],'>=',1);
 			md = checkfield(md,'fieldname','settings.recording_frequency','numel',[1],'>=',0);
 			md = checkfield(md,'fieldname','settings.waitonlock','numel',[1]);
@@ -73,4 +78,5 @@
 			fielddisplay(self,'lowmem','is the memory limited ? (0 or 1)');
 			fielddisplay(self,'output_frequency','frequency at which results are saved in all solutions with multiple time_steps');
+			fielddisplay(self,'sb_coupling_frequency','frequency at which StressBalance solver is coupled (default 1)');
 			fielddisplay(self,'recording_frequency','frequency at which the runs are being recorded, allowing for a restart');
 			fielddisplay(self,'waitonlock','maximum number of minutes to wait for batch results (NaN to deactivate)');
@@ -88,4 +94,5 @@
 			WriteData(fid,prefix,'object',self,'class','settings','fieldname','lowmem','format','Boolean');
 			WriteData(fid,prefix,'object',self,'class','settings','fieldname','output_frequency','format','Integer');
+			WriteData(fid,prefix,'object',self,'class','settings','fieldname','sb_coupling_frequency','format','Integer');
 			WriteData(fid,prefix,'object',self,'class','settings','fieldname','recording_frequency','format','Integer');
 			WriteData(fid,prefix,'object',self,'class','settings','fieldname','waitonlock','data',self.waitonlock>0,'format','Boolean');
@@ -98,4 +105,5 @@
 			writejsdouble(fid,[modelname '.settings.lowmem'],self.lowmem);
 			writejsdouble(fid,[modelname '.settings.output_frequency'],self.output_frequency);
+			writejsdouble(fid,[modelname '.settings.sb_coupling_frequency'],self.sb_coupling_frequency);
 			writejsdouble(fid,[modelname '.settings.recording_frequency'],self.recording_frequency);
 			writejsdouble(fid,[modelname '.settings.waitonlock'],self.waitonlock);
Index: issm/trunk-jpl/src/m/classes/issmsettings.py
===================================================================
--- issm/trunk-jpl/src/m/classes/issmsettings.py	(revision 23472)
+++ issm/trunk-jpl/src/m/classes/issmsettings.py	(revision 23474)
@@ -16,4 +16,5 @@
 		self.lowmem              = 0
 		self.output_frequency    = 0
+		self.coupling_frequency		= 0
 		self.recording_frequency = 0
 		self.waitonlock          = 0
@@ -31,4 +32,5 @@
 		string="%s\n%s"%(string,fielddisplay(self,"lowmem","is the memory limited ? (0 or 1)"))
 		string="%s\n%s"%(string,fielddisplay(self,"output_frequency","frequency at which results are saved in all solutions with multiple time_steps"))
+		string="%s\n%s"%(string,fielddisplay(self,"sb_coupling_frequency","frequency at which StressBalance solver is coupled (default 1)"))
 		string="%s\n%s"%(string,fielddisplay(self,"recording_frequency","frequency at which the runs are being recorded, allowing for a restart"))
 		string="%s\n%s"%(string,fielddisplay(self,"waitonlock","maximum number of minutes to wait for batch results, or return 0"))
@@ -47,4 +49,7 @@
 		self.output_frequency=1
 
+		#coupling frequency of the stress balance solver by default every step
+		self.sb_coupling_frequency=1
+		
 		#checkpoints frequency, by default never: 
 		self.recording_frequency=0
@@ -67,4 +72,5 @@
 		md = checkfield(md,'fieldname','settings.lowmem','numel',[1],'values',[0,1])
 		md = checkfield(md,'fieldname','settings.output_frequency','numel',[1],'>=',1)
+		md = checkfield(md,'fieldname','settings.sb_coupling_frequency','numel',[1],'>=',1)
 		md = checkfield(md,'fieldname','settings.recording_frequency','numel',[1],'>=',0)
 		md = checkfield(md,'fieldname','settings.waitonlock','numel',[1])
@@ -78,4 +84,5 @@
 		WriteData(fid,prefix,'object',self,'class','settings','fieldname','lowmem','format','Boolean')
 		WriteData(fid,prefix,'object',self,'class','settings','fieldname','output_frequency','format','Integer')
+		WriteData(fid,prefix,'object',self,'class','settings','fieldname','sb_coupling_frequency','format','Integer')
 		WriteData(fid,prefix,'object',self,'class','settings','fieldname','recording_frequency','format','Integer')
 		
