Index: /issm/trunk-jpl/test/NightlyRun/test2085.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test2085.m	(revision 25330)
+++ /issm/trunk-jpl/test/NightlyRun/test2085.m	(revision 25331)
@@ -1,5 +1,6 @@
 %Test Name: FourierLoveKernels
 % Homogeneous Earth, for which analytic solutions exist. 
-% Love kernels for degree 2 (tested against analytic solns).  
+% Love kernels for degree 2, 20, 200 (tested against analytic solns).  
+% skip benchmarking for the inner-most interface. 
 
 % for volumetric potential
@@ -8,5 +9,5 @@
 	md.materials=materials('litho');
 
-	md.materials.numlayers = 10;
+	md.materials.numlayers = 40;
 	md.love.forcing_type = 9;
 
@@ -28,5 +29,5 @@
 
 	md.love.sh_nmin = 2;
-	md.love.sh_nmax = 2;
+	md.love.sh_nmax = 200;
 	md.love.love_kernels=1; 
 
@@ -37,47 +38,31 @@
 	md=solve(md,'lv');
 
+	% save yi's for all layers except for the inner-most one, at select degrees. 
+	degrees = [2 20 200];  % we archive solutions for degrees 2, 20, 200 
+
 	% extract love kernels {{{ 
-	y1=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,1)));
-	y2=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,2))); 
-	y3=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,3))); 
-	y4=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,4))); 
-	y5=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,5))); 
-	y6=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,6))); 
+	% degree 2. 
+	y1_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,1)));
+	y2_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,2)));
+	y3_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,3)));
+	y4_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,4)));
+	y5_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,5)));
+	y6_tidal_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,6)));
 
-	y1_tidal_degree2_interface1 = y1(3,1);  
-	y1_tidal_degree2_interface2 = y1(3,2);  
-	y1_tidal_degree2_interface7 = y1(3,7);  
-	y1_tidal_degree2_interface10 = y1(3,10);  
-	y1_tidal_degree2_interface11 = y1(3,11);  
+	% degree 20. 
+	y1_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,1)));
+	y2_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,2)));
+	y3_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,3)));
+	y4_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,4)));
+	y5_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,5)));
+	y6_tidal_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,6)));
 
-	y2_tidal_degree2_interface1 = y2(3,1);  
-	y2_tidal_degree2_interface2 = y2(3,2);  
-	y2_tidal_degree2_interface7 = y2(3,7);  
-	y2_tidal_degree2_interface10 = y2(3,10);  
-	y2_tidal_degree2_interface11 = y2(3,11);  
-
-	y3_tidal_degree2_interface1 = y3(3,1);  
-	y3_tidal_degree2_interface2 = y3(3,2);  
-	y3_tidal_degree2_interface7 = y3(3,7);  
-	y3_tidal_degree2_interface10 = y3(3,10);  
-	y3_tidal_degree2_interface11 = y3(3,11);  
-
-	y4_tidal_degree2_interface1 = y4(3,1);  
-	y4_tidal_degree2_interface2 = y4(3,2);  
-	y4_tidal_degree2_interface7 = y4(3,7);  
-	y4_tidal_degree2_interface10 = y4(3,10);  
-	y4_tidal_degree2_interface11 = y4(3,11);  
-
-	y5_tidal_degree2_interface1 = y5(3,1);  
-	y5_tidal_degree2_interface2 = y5(3,2);  
-	y5_tidal_degree2_interface7 = y5(3,7);  
-	y5_tidal_degree2_interface10 = y5(3,10);  
-	y5_tidal_degree2_interface11 = y5(3,11);  
-
-	y6_tidal_degree2_interface1 = y6(3,1);  
-	y6_tidal_degree2_interface2 = y6(3,2);  
-	y6_tidal_degree2_interface7 = y6(3,7);  
-	y6_tidal_degree2_interface10 = y6(3,10);  
-	y6_tidal_degree2_interface11 = y6(3,11);  
+	% degree 200. 
+	y1_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,1)));
+	y2_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,2)));
+	y3_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,3)));
+	y4_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,4)));
+	y5_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,5)));
+	y6_tidal_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,6)));
 	% }}} 
 
@@ -85,93 +70,55 @@
 
 	md.love.forcing_type = 11;
-	
 	md=solve(md,'lv');
 
 	% extract love kernels {{{ 
-	y1=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,1))); 
-	y2=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,2))); 
-	y3=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,3))); 
-	y4=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,4))); 
-	y5=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,5))); 
-	y6=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,6))); 
+	% degree 2. 
+	y1_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,1)));
+	y2_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,2)));
+	y3_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,3)));
+	y4_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,4)));
+	y5_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,5)));
+	y6_loading_degree002 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(1)+1,1,2:end,6)));
 
-	y1_load_degree2_interface1 = y1(3,1);  
-	y1_load_degree2_interface2 = y1(3,2);  
-	y1_load_degree2_interface7 = y1(3,7);  
-	y1_load_degree2_interface10 = y1(3,10);  
-	y1_load_degree2_interface11 = y1(3,11);  
+	% degree 20. 
+	y1_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,1)));
+	y2_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,2)));
+	y3_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,3)));
+	y4_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,4)));
+	y5_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,5)));
+	y6_loading_degree020 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(2)+1,1,2:end,6)));
 
-	y2_load_degree2_interface1 = y2(3,1);  
-	y2_load_degree2_interface2 = y2(3,2);  
-	y2_load_degree2_interface7 = y2(3,7);  
-	y2_load_degree2_interface10 = y2(3,10);  
-	y2_load_degree2_interface11 = y2(3,11);  
-
-	y3_load_degree2_interface1 = y3(3,1);  
-	y3_load_degree2_interface2 = y3(3,2);  
-	y3_load_degree2_interface7 = y3(3,7);  
-	y3_load_degree2_interface10 = y3(3,10);  
-	y3_load_degree2_interface11 = y3(3,11);  
-
-	y4_load_degree2_interface1 = y4(3,1);  
-	y4_load_degree2_interface2 = y4(3,2);  
-	y4_load_degree2_interface7 = y4(3,7);  
-	y4_load_degree2_interface10 = y4(3,10);  
-	y4_load_degree2_interface11 = y4(3,11);  
-
-	y5_load_degree2_interface1 = y5(3,1);  
-	y5_load_degree2_interface2 = y5(3,2);  
-	y5_load_degree2_interface7 = y5(3,7);  
-	y5_load_degree2_interface10 = y5(3,10);  
-	y5_load_degree2_interface11 = y5(3,11);  
-
-	y6_load_degree2_interface1 = y6(3,1);  
-	y6_load_degree2_interface2 = y6(3,2);  
-	y6_load_degree2_interface7 = y6(3,7);  
-	y6_load_degree2_interface10 = y6(3,10);  
-	y6_load_degree2_interface11 = y6(3,11);  
+	% degree 200. 
+	y1_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,1)));
+	y2_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,2)));
+	y3_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,3)));
+	y4_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,4)));
+	y5_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,5)));
+	y6_loading_degree200 = squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(degrees(3)+1,1,2:end,6)));
 	% }}} 
 
 field_names = {...
-	'y1_tidal_degree2_interface1','y1_tidal_degree2_interface2','y1_tidal_degree2_interface7','y1_tidal_degree2_interface10','y1_tidal_degree2_interface11',... 
-	'y2_tidal_degree2_interface1','y2_tidal_degree2_interface2','y2_tidal_degree2_interface7','y2_tidal_degree2_interface10','y2_tidal_degree2_interface11',... 
-	'y3_tidal_degree2_interface1','y3_tidal_degree2_interface2','y3_tidal_degree2_interface7','y3_tidal_degree2_interface10','y3_tidal_degree2_interface11',... 
-	'y4_tidal_degree2_interface1','y4_tidal_degree2_interface2','y4_tidal_degree2_interface7','y4_tidal_degree2_interface10','y4_tidal_degree2_interface11',... 
-	'y5_tidal_degree2_interface1','y5_tidal_degree2_interface2','y5_tidal_degree2_interface7','y5_tidal_degree2_interface10','y5_tidal_degree2_interface11',... 
-	'y6_tidal_degree2_interface1','y6_tidal_degree2_interface2','y6_tidal_degree2_interface7','y6_tidal_degree2_interface10','y6_tidal_degree2_interface11',... 
-	'y1_load_degree2_interface1','y1_load_degree2_interface2','y1_load_degree2_interface7','y1_load_degree2_interface10','y1_load_degree2_interface11',... 
-	'y2_load_degree2_interface1','y2_load_degree2_interface2','y2_load_degree2_interface7','y2_load_degree2_interface10','y2_load_degree2_interface11',... 
-	'y3_load_degree2_interface1','y3_load_degree2_interface2','y3_load_degree2_interface7','y3_load_degree2_interface10','y3_load_degree2_interface11',... 
-	'y4_load_degree2_interface1','y4_load_degree2_interface2','y4_load_degree2_interface7','y4_load_degree2_interface10','y4_load_degree2_interface11',... 
-	'y5_load_degree2_interface1','y5_load_degree2_interface2','y5_load_degree2_interface7','y5_load_degree2_interface10','y5_load_degree2_interface11',... 
-	'y6_load_degree2_interface1','y6_load_degree2_interface2','y6_load_degree2_interface7','y6_load_degree2_interface10','y6_load_degree2_interface11',... 
-	};
+	'y1_tidal_degree002','y2_tidal_degree002','y3_tidal_degree002','y4_tidal_degree002','y5_tidal_degree002','y6_tidal_degree002',...
+	'y1_tidal_degree020','y2_tidal_degree020','y3_tidal_degree020','y4_tidal_degree020','y5_tidal_degree020','y6_tidal_degree020',...
+	'y1_tidal_degree200','y2_tidal_degree200','y3_tidal_degree200','y4_tidal_degree200','y5_tidal_degree200','y6_tidal_degree200',...
+	'y1_loading_degree002','y2_loading_degree002','y3_loading_degree002','y4_loading_degree002','y5_loading_degree002','y6_loading_degree002',...
+	'y1_loading_degree020','y2_loading_degree020','y3_loading_degree020','y4_loading_degree020','y5_loading_degree020','y6_loading_degree020',...
+	'y1_loading_degree200','y2_loading_degree200','y3_loading_degree200','y4_loading_degree200','y5_loading_degree200','y6_loading_degree200',...
+	}; 
 field_tolerances={...
-	9e-8, 1e-7, 3e-7, 3e-7, 3e-7,...
-	9e-8, 1e-7, 3e-7, 3e-7, 1e-10,...
-	9e-8, 8e-8, 2e-8, 2e-7, 4e-7,...
-	9e-8, 9e-8, 2e-7, 4e-7, 1e-10,...
-	4e-7, 4e-7, 2e-7, 3e-8, 2e-8,...
-	2e-5, 2e-6, 2e-6, 1e-6, 2e-7,...
-	3e-6, 3e-6, 3e-6, 4e-6, 4e-6,...
-	3e-6, 3e-6, 2e-6, 6e-7, 1e-10,...
-	3e-6, 3e-6, 5e-7, 3e-6, 5e-6,...
-	3e-6, 3e-6, 9e-7, 7e-7, 1e-10,...
-	4e-6, 4e-6, 3e-6, 5e-7, 3e-7,...
-	3e-6, 3e-6, 2e-6, 7e-7, 2e-7...
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
+	1e-10, 1e-10, 1e-10, 1e-10, 1e-10, 1e-10,... 
 	}; 
 field_values={...
-	y1_tidal_degree2_interface1, y1_tidal_degree2_interface2, y1_tidal_degree2_interface7, y1_tidal_degree2_interface10,y1_tidal_degree2_interface11,... 
-	y2_tidal_degree2_interface1, y2_tidal_degree2_interface2, y2_tidal_degree2_interface7, y2_tidal_degree2_interface10,y2_tidal_degree2_interface11,... 
-	y3_tidal_degree2_interface1, y3_tidal_degree2_interface2, y3_tidal_degree2_interface7, y3_tidal_degree2_interface10,y3_tidal_degree2_interface11,... 
-	y4_tidal_degree2_interface1, y4_tidal_degree2_interface2, y4_tidal_degree2_interface7, y4_tidal_degree2_interface10,y4_tidal_degree2_interface11,... 
-	y5_tidal_degree2_interface1, y5_tidal_degree2_interface2, y5_tidal_degree2_interface7, y5_tidal_degree2_interface10,y5_tidal_degree2_interface11,... 
-	y6_tidal_degree2_interface1, y6_tidal_degree2_interface2, y6_tidal_degree2_interface7, y6_tidal_degree2_interface10,y6_tidal_degree2_interface11,... 
-	y1_load_degree2_interface1, y1_load_degree2_interface2, y1_load_degree2_interface7, y1_load_degree2_interface10,y1_load_degree2_interface11,... 
-	y2_load_degree2_interface1, y2_load_degree2_interface2, y2_load_degree2_interface7, y2_load_degree2_interface10,y2_load_degree2_interface11,... 
-	y3_load_degree2_interface1, y3_load_degree2_interface2, y3_load_degree2_interface7, y3_load_degree2_interface10,y3_load_degree2_interface11,... 
-	y4_load_degree2_interface1, y4_load_degree2_interface2, y4_load_degree2_interface7, y4_load_degree2_interface10,y4_load_degree2_interface11,... 
-	y5_load_degree2_interface1, y5_load_degree2_interface2, y5_load_degree2_interface7, y5_load_degree2_interface10,y5_load_degree2_interface11,... 
-	y6_load_degree2_interface1, y6_load_degree2_interface2, y6_load_degree2_interface7, y6_load_degree2_interface10,y6_load_degree2_interface11,... 
+	y1_tidal_degree002,y2_tidal_degree002,y3_tidal_degree002,y4_tidal_degree002,y5_tidal_degree002,y6_tidal_degree002,...
+	y1_tidal_degree020,y2_tidal_degree020,y3_tidal_degree020,y4_tidal_degree020,y5_tidal_degree020,y6_tidal_degree020,...
+	y1_tidal_degree200,y2_tidal_degree200,y3_tidal_degree200,y4_tidal_degree200,y5_tidal_degree200,y6_tidal_degree200,...
+	y1_loading_degree002,y2_loading_degree002,y3_loading_degree002,y4_loading_degree002,y5_loading_degree002,y6_loading_degree002,...
+	y1_loading_degree020,y2_loading_degree020,y3_loading_degree020,y4_loading_degree020,y5_loading_degree020,y6_loading_degree020,...
+	y1_loading_degree200,y2_loading_degree200,y3_loading_degree200,y4_loading_degree200,y5_loading_degree200,y6_loading_degree200,...
 	};
 
