Index: /issm/trunk/src/m/classes/constants.m
===================================================================
--- /issm/trunk/src/m/classes/constants.m	(revision 9619)
+++ /issm/trunk/src/m/classes/constants.m	(revision 9620)
@@ -1,15 +1,15 @@
-%CONSTANTS class definition
+%RADAROVERLAY class definition
 %
 %   Usage:
-%      constants=constants();
+%      radaroverlay=radaroverlay();
 
-classdef constants
+classdef radaroverlay
 	properties (SetAccess=public) 
-		g                    = modelfield('default',0,'marshall',true,'format','Double');
-		yts                  = modelfield('default',0,'marshall',true,'format','Double');
-		referencetemperature = modelfield('default',0,'marshall',true,'format','Double');
+		pwr = modelfield('default',NaN,'marshall',false);
+		x   = modelfield('default',NaN,'marshall',false);
+		y   = modelfield('default',NaN,'marshall',false);
 	end
 	methods
-		function obj = constants(varargin) % {{{
+		function obj = radaroverlay(varargin) % {{{
 			switch nargin
 				case 0
@@ -34,14 +34,4 @@
 				obj.(fieldname)=obj.(fieldname).default;
 			end
-
-			%acceleration due to gravity (m/s^2)
-			obj.g=9.81;
-
-			%converstion from year to seconds
-			obj.yts=365*24*3600;
-
-			%the reference temperature for enthalpy model (cf Aschwanden)
-			obj.referencetemperature=223.15;
-
 		end % }}}
 	end
Index: /issm/trunk/src/m/classes/model/model.m
===================================================================
--- /issm/trunk/src/m/classes/model/model.m	(revision 9619)
+++ /issm/trunk/src/m/classes/model/model.m	(revision 9620)
@@ -21,4 +21,5 @@
 		 rifts     = modelfield('default',0,'marshall',true);
 		 hydrology = modelfield('default',0,'marshall',true);
+		 radaroverlay = modelfield('default',0,'marshall',false);
 
 		 %FIXME: all other fields should belong to other classes
@@ -214,9 +215,4 @@
 		 dummy = modelfield('default',NaN,'marshall',false);
 
-		 %radar power images
-		 sarpwr = modelfield('default',NaN,'marshall',false);
-		 sarxm  = modelfield('default',NaN,'marshall',false);
-		 sarym  = modelfield('default',NaN,'marshall',false);
-
 		 %qmu
 		 variables                       = modelfield('default',struct(),'marshall',false);
@@ -541,4 +537,5 @@
 			 md.rifts=rifts;
 			 md.hydrology=hydrology;
+			 md.radaroverlay=radaroverlay;
 
 			 %Materials parameters
Index: /issm/trunk/src/m/classes/radaroverlay.m
===================================================================
--- /issm/trunk/src/m/classes/radaroverlay.m	(revision 9620)
+++ /issm/trunk/src/m/classes/radaroverlay.m	(revision 9620)
@@ -0,0 +1,48 @@
+%CONSTANTS class definition
+%
+%   Usage:
+%      constants=constants();
+
+classdef constants
+	properties (SetAccess=public) 
+		g                    = modelfield('default',0,'marshall',true,'format','Double');
+		yts                  = modelfield('default',0,'marshall',true,'format','Double');
+		referencetemperature = modelfield('default',0,'marshall',true,'format','Double');
+	end
+	methods
+		function obj = constants(varargin) % {{{
+			switch nargin
+				case 0
+					obj=setdefaultparameters(obj);
+				case 1
+					in=varargin{1};
+					if (isa(in,'numeric') & in==0),
+						% requesting templates do nothing
+					else
+						error('constructor not supported');
+					end 
+				otherwise
+					error('constructor not supported');
+			end
+		end % }}}
+		function obj = setdefaultparameters(obj) % {{{
+
+			%first, use the defaults provided by the properties definition above. 
+			fieldnames=fields(obj);
+			for i=1:length(fieldnames),
+				fieldname=fieldnames{i};
+				obj.(fieldname)=obj.(fieldname).default;
+			end
+
+			%acceleration due to gravity (m/s^2)
+			obj.g=9.81;
+
+			%converstion from year to seconds
+			obj.yts=365*24*3600;
+
+			%the reference temperature for enthalpy model (cf Aschwanden)
+			obj.referencetemperature=223.15;
+
+		end % }}}
+	end
+end
Index: /issm/trunk/src/m/model/modis.m
===================================================================
--- /issm/trunk/src/m/model/modis.m	(revision 9619)
+++ /issm/trunk/src/m/model/modis.m	(revision 9620)
@@ -26,6 +26,6 @@
 %Read in temp.tif:
 modis=double(flipud(imread('temp.tif','TIFF')));
-xm=(x0:(x1-x0)/(size(md.sarpwr,2)-1):x1);
-ym=(y0:(y1-y0)/(size(md.sarpwr,1)-1):y1);
+xm=(x0:(x1-x0)/(size(md.radaroverlay.pwr,2)-1):x1);
+ym=(y0:(y1-y0)/(size(md.radaroverlay.pwr,1)-1):y1);
 
 %Erase image
Index: /issm/trunk/src/m/model/plot/plot_overlay.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_overlay.m	(revision 9619)
+++ /issm/trunk/src/m/model/plot/plot_overlay.m	(revision 9620)
@@ -28,8 +28,8 @@
 
 %radar power
-if ~any(isnan(md.sarxm)) & ~any(isnan(md.sarym)) & ~any(isnan(md.sarpwr)),
+if ~any(isnan(md.radaroverlay.x)) & ~any(isnan(md.radaroverlay.y)) & ~any(isnan(md.radaroverlay.pwr)),
 	disp('plot_overlay info: the radar image held by the model is being used');
-	xlim=[min(md.sarxm) max(md.sarxm)];
-	ylim=[min(md.sarym) max(md.sarym)];
+	xlim=[min(md.radaroverlay.x) max(md.radaroverlay.x)];
+	ylim=[min(md.radaroverlay.y) max(md.radaroverlay.y)];
 else
 	disp('Extracting radar image...');
@@ -43,10 +43,10 @@
 
 %InterpFromMeshToGrid
-xmin=min(md.sarxm);
-ymax=max(md.sarym);
-xspacing=(max(md.sarxm)-min(md.sarxm))/(length(md.sarxm));
-yspacing=(max(md.sarym)-min(md.sarym))/(length(md.sarym));
-nlines=length(md.sarym);
-ncols =length(md.sarxm);
+xmin=min(md.radaroverlay.x);
+ymax=max(md.radaroverlay.y);
+xspacing=(max(md.radaroverlay.x)-min(md.radaroverlay.x))/(length(md.radaroverlay.x));
+yspacing=(max(md.radaroverlay.y)-min(md.radaroverlay.y))/(length(md.radaroverlay.y));
+nlines=length(md.radaroverlay.y);
+ncols =length(md.radaroverlay.x);
 disp('Interpolating data on grid...');
 [x_m y_m data_grid]=InterpFromMeshToGrid(elements,x,y,data,xmin,ymax,xspacing,yspacing,nlines,ncols,NaN);
@@ -104,5 +104,5 @@
 s_data(data_nan)=0;
 %intensity (V)
-radar=(md.sarpwr).^(contrast);
+radar=(md.radaroverlay.pwr).^(contrast);
 v_data=radar/max(radar(:)); %use radar power as intensity
 v_data(find(~v_data))=1;
@@ -119,5 +119,5 @@
 
 %Plot: 
-imagesc(md.sarxm*getfieldvalue(options,'unit',1),md.sarym*getfieldvalue(options,'unit',1),image_rgb);set(gca,'YDir','normal');
+imagesc(md.radaroverlay.x*getfieldvalue(options,'unit',1),md.radaroverlay.y*getfieldvalue(options,'unit',1),image_rgb);set(gca,'YDir','normal');
 
 %last step: mesh overlay?
Index: /issm/trunk/src/m/model/plot/plot_sarpwr.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_sarpwr.m	(revision 9619)
+++ /issm/trunk/src/m/model/plot/plot_sarpwr.m	(revision 9620)
@@ -18,5 +18,5 @@
 end
 					
-imagesc(md.sarxm,md.sarym,double(md.sarpwr)),set(gca,'YDir','normal');colormap(gray);
+imagesc(md.radaroverlay.x,md.radaroverlay.y,double(md.radaroverlay.pwr)),set(gca,'YDir','normal');colormap(gray);
 
 %apply options
Index: /issm/trunk/src/m/model/radarpower.m
===================================================================
--- /issm/trunk/src/m/model/radarpower.m	(revision 9619)
+++ /issm/trunk/src/m/model/radarpower.m	(revision 9620)
@@ -52,7 +52,7 @@
 		im=imread(jpgim);
 		im=im(firstrow:firstrow+numrows-1,firstcol:firstcol+numcols-1);
-		md.sarpwr=double(flipud(im(1:pixelskip:end,1:pixelskip:end)));
-		md.sarxm=(xmin:(xmax-xmin)/(size(md.sarpwr,2)-1):xmax);
-		md.sarym=(ymin:(ymax-ymin)/(size(md.sarpwr,1)-1):ymax);
+		md.radaroverlay.pwr=double(flipud(im(1:pixelskip:end,1:pixelskip:end)));
+		md.radaroverlay.x=(xmin:(xmax-xmin)/(size(md.radaroverlay.pwr,2)-1):xmax);
+		md.radaroverlay.y=(ymin:(ymax-ymin)/(size(md.radaroverlay.pwr,1)-1):ymax);
 
 	elseif strcmpi(md.hemisphere,'s'),
@@ -76,7 +76,7 @@
 		im=imread('temp.tif','TIFF');
 		pixelskip=max(1,ceil(posting/((x1-x0)/(size(im,2)))));
-		md.sarpwr=double(flipud(im(1:pixelskip:end,1:pixelskip:end)));
-		md.sarxm=(x0:(x1-x0)/(size(md.sarpwr,2)-1):x1);
-		md.sarym=(y0:(y1-y0)/(size(md.sarpwr,1)-1):y1);
+		md.radaroverlay.pwr=double(flipud(im(1:pixelskip:end,1:pixelskip:end)));
+		md.radaroverlay.x=(x0:(x1-x0)/(size(md.radaroverlay.pwr,2)-1):x1);
+		md.radaroverlay.y=(y0:(y1-y0)/(size(md.radaroverlay.pwr,1)-1):y1);
 
 		%Erase image
@@ -107,6 +107,6 @@
 	im=imread(overlay_image);
 	im=im(toplefty:toplefty+sizey,topleftx:topleftx+sizex);
-	md.sarpwr=double(flipud(im));
-	md.sarxm=(x0:(x1-x0)/(size(md.sarpwr,2)-1):x1);
-	md.sarym=(y0:(y1-y0)/(size(md.sarpwr,1)-1):y1);
+	md.radaroverlay.pwr=double(flipud(im));
+	md.radaroverlay.x=(x0:(x1-x0)/(size(md.radaroverlay.pwr,2)-1):x1);
+	md.radaroverlay.y=(y0:(y1-y0)/(size(md.radaroverlay.pwr,1)-1):y1);
 end
