Index: /issm/trunk/src/m/classes/public/plot/applyoptions.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/applyoptions.m	(revision 2818)
+++ /issm/trunk/src/m/classes/public/plot/applyoptions.m	(revision 2819)
@@ -87,5 +87,10 @@
 %Caxis
 if exist(options,'caxis'),
-	caxis(getfieldvalue(options,'caxis'));
+	if exist(options,'log'),
+		logvalue=getfieldvalue(options,'log');
+		caxis(log(getfieldvalue(options,'caxis'))/log(logvalue));
+	else
+		caxis(getfieldvalue(options,'caxis'));
+	end
 end
 
Index: /issm/trunk/src/m/classes/public/plot/plot_manager.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/plot_manager.m	(revision 2818)
+++ /issm/trunk/src/m/classes/public/plot/plot_manager.m	(revision 2819)
@@ -1,3 +1,3 @@
-function plot_manager(md,options,width,i);
+function plot_manager(md,options,subplotwidth,nlines,ncols,i);
 %PLOT__MANAGER - distribute the plots, called by plotmodel
 %
@@ -122,5 +122,5 @@
 
 %standard plot:
-subplot(width,width,i);
+subplot(nlines,ncols,i);
 plot_unit(x,y,z,elements,data2,isongrid,is2d,isquiver,options);
 
Index: /issm/trunk/src/m/classes/public/plot/plot_mesh.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/plot_mesh.m	(revision 2818)
+++ /issm/trunk/src/m/classes/public/plot/plot_mesh.m	(revision 2819)
@@ -1,3 +1,3 @@
-function plot_mesh(md,options,width,i);
+function plot_mesh(md,options,nlines,ncols,i);
 %PLOT_MESH - plot model mesh
 %
@@ -11,5 +11,5 @@
 
 %plot mesh
-subplot(width,width,i); 
+subplot(nlines,ncols,i); 
 
 %plot mesh
Index: /issm/trunk/src/m/classes/public/plot/plotmodel.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/plotmodel.m	(revision 2818)
+++ /issm/trunk/src/m/classes/public/plot/plotmodel.m	(revision 2819)
@@ -10,6 +10,24 @@
 options=plotoptions(varargin{:});
 
-%get numberof subplot
+%get number of subplots
 subplotwidth=ceil(sqrt(options.numberofplots));
+
+%if nlines and ncols specified, then bypass.
+if exist(options.list{1},'nlines'),
+	nlines=getfieldvalue(options.list{1},'nlines');
+else 
+	nlines=subplotwidth;
+end
+
+if exist(options.list{1},'ncols'),
+	ncols=getfieldvalue(options.list{1},'ncols');
+else 
+	ncols=subplotwidth;
+end
+
+%check that nlines and ncols were given at the same time!
+if ((exist(options.list{1},'ncols') & ~exist(options.list{1},'ncols')) | (~exist(options.list{1},'ncols') & exist(options.list{1},'ncols')))
+	error('plotmodel error message: nlines and ncols  need to be specified together, or not at all');
+end
 
 %Get figure number and number of plots
@@ -30,5 +48,5 @@
 
 		%call unit plot
-		plot_manager(md,options.list{i},subplotwidth,i);
+		plot_manager(md,options.list{i},subplotwidth,nlines,ncols,i);
 
 	end
