Index: /issm/trunk-jpl/src/m/classes/friction.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/friction.m	(revision 27486)
+++ /issm/trunk-jpl/src/m/classes/friction.m	(revision 27487)
@@ -10,4 +10,5 @@
 		q                        = NaN;
 		coupling                 = 0;
+		linearize                = 0;
 		effective_pressure       = NaN;
 		effective_pressure_limit = 0;
@@ -34,5 +35,6 @@
 		function self = setdefaultparameters(self) % {{{
 
-			self.coupling = 0;
+			self.linearize = 0;
+			self.coupling  = 0;
 			self.effective_pressure_limit = 0;
 
@@ -47,4 +49,5 @@
 			md = checkfield(md,'fieldname','friction.q','NaN',1,'Inf',1,'size',[md.mesh.numberofelements 1]);
 			md = checkfield(md,'fieldname','friction.p','NaN',1,'Inf',1,'size',[md.mesh.numberofelements 1]);
+			md = checkfield(md,'fieldname','friction.linearize','numel',[1],'values',[0:2]);
 			md = checkfield(md,'fieldname','friction.coupling','numel',[1],'values',[0:4]);
 			md = checkfield(md,'fieldname','friction.effective_pressure_limit','numel',[1],'>=',0);
@@ -58,6 +61,7 @@
 			fielddisplay(self,'p','p exponent');
 			fielddisplay(self,'q','q exponent');
+			fielddisplay(self,'coupling','Coupling flag 0: uniform sheet (negative pressure ok, default), 1: ice pressure only, 2: water pressure assuming uniform sheet (no negative pressure), 3: use provided effective_pressure, 4: use coupled model (not implemented yet)');
+			fielddisplay(self,'linearize','0: not linearized, 1: interpolated linearly, 2: constant per element (default is 0)');
 			fielddisplay(self,'effective_pressure','Effective Pressure for the forcing if not coupled [Pa]');
-			fielddisplay(self,'coupling','Coupling flag 0: uniform sheet (negative pressure ok, default), 1: ice pressure only, 2: water pressure assuming uniform sheet (no negative pressure), 3: use provided effective_pressure, 4: use coupled model (not implemented yet)');
 			fielddisplay(self,'effective_pressure_limit','Neff do not allow to fall below a certain limit: effective_pressure_limit*rho_ice*g*thickness (default 0)');
 		end % }}}
@@ -75,4 +79,5 @@
 			WriteData(fid,prefix,'object',self,'fieldname','q','format','DoubleMat','mattype',2);
 			WriteData(fid,prefix,'class','friction','object',self,'fieldname','coupling','format','Integer');
+			WriteData(fid,prefix,'class','friction','object',self,'fieldname','linearize','format','Integer');
 			WriteData(fid,prefix,'object',self,'class','friction','fieldname','effective_pressure_limit','format','Double');
 			if self.coupling==3 || self.coupling==4
@@ -86,4 +91,5 @@
 			writejs1Darray(fid,[modelname '.friction.q'],self.q);
 			writejs1Darray(fid,[modelname '.friction.coupling'],self.coupling);
+			writejs1Darray(fid,[modelname '.friction.linearize'],self.linearize);
 			writejs1Darray(fid,[modelname '.friction.effective_pressure'],self.effective_pressure);
 			writejs1Darray(fid,[modelname '.friction.effective_pressure_limit'],self.effective_pressure_limit);
