Index: /issm/trunk-jpl/jenkins/ross-debian_linux-solid_earth
===================================================================
--- /issm/trunk-jpl/jenkins/ross-debian_linux-solid_earth	(revision 25341)
+++ /issm/trunk-jpl/jenkins/ross-debian_linux-solid_earth	(revision 25342)
@@ -77,3 +77,3 @@
 #
 MATLAB_NROPTIONS="'benchmark','slr'"
-PYTHON_NROPTIONS="--benchmark=slr"
+PYTHON_NROPTIONS="--benchmark slr --exclude 2004"
Index: /issm/trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh
===================================================================
--- /issm/trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh	(revision 25341)
+++ /issm/trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh	(revision 25342)
@@ -14,5 +14,5 @@
 MATLAB_PATH="/usr/local/MATLAB/R2019b"
 PACKAGE="ISSM-Solid_Earth" # Name of directory to copy distributable files to
-PYTHON_NROPTIONS="--benchmark slr"
+PYTHON_NROPTIONS="--benchmark slr --exclude 2004"
 TARBALL_NAME="issm-linux-solid_earth"
 TARBALL="${TARBALL_NAME}.tar.gz"
Index: /issm/trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh
===================================================================
--- /issm/trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh	(revision 25341)
+++ /issm/trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh	(revision 25342)
@@ -12,5 +12,5 @@
 MATLAB_PATH="/Applications/MATLAB_R2018a.app"
 PACKAGE="ISSM-Solid_Earth" # Name of directory to copy distributable files to
-PYTHON_NROPTIONS="--benchmark slr"
+PYTHON_NROPTIONS="--benchmark slr --exclude 2004"
 TARBALL_NAME="issm-linux-solid_earth"
 TARBALL="${TARBALL_NAME}.tar.gz"
Index: /issm/trunk-jpl/test/NightlyRun/test2085.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test2085.m	(revision 25341)
+++ /issm/trunk-jpl/test/NightlyRun/test2085.m	(revision 25342)
@@ -107,10 +107,10 @@
 	}; 
 field_tolerances={...
-	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,... 
+    3e-7, 3e-7, 3e-7, 1e-7, 6e-8, 9e-7,...
+    2e-7, 7e-8, 3e-7, 9e-8, 9e-10, 8e-10,...
+    2e-8, 4e-8, 4e-7, 3e-8, 2e-10, 1e-10,...
+    4e-6, 1e-6, 4e-6, 3e-6, 8e-7, 2e-6,...
+    2e-6, 1e-7, 5e-6, 3e-7, 2e-7, 2e-7,...
+    2e-6, 9e-10, 5e-5, 3e-8, 5e-7, 2e-9...
 	}; 
 field_values={...
Index: /issm/trunk-jpl/test/NightlyRun/test2085.py
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test2085.py	(revision 25341)
+++ /issm/trunk-jpl/test/NightlyRun/test2085.py	(revision 25342)
@@ -1,5 +1,6 @@
 # Test Name: FourierLoveKernels
 # Homogenous 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.
 
 
@@ -13,10 +14,10 @@
 from solve import *
 
-# Fro volumetric potential
+# For volumetric potential
 md = model()
 
 md.materials = materials('litho')
 
-md.materials.numlayers = 10
+md.materials.numlayers = 40
 md.love.forcing_type = 9
 
@@ -38,5 +39,5 @@
 
 md.love.sh_nmin = 2
-md.love.sh_nmax = 2
+md.love.sh_nmax = 200
 md.love.love_kernels = 1
 
@@ -47,47 +48,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 = md.results.LoveSolution.LoveKernelsReal[:,0,:,0].squeeze()
-y2 = md.results.LoveSolution.LoveKernelsReal[:,0,:,1].squeeze()
-y3 = md.results.LoveSolution.LoveKernelsReal[:,0,:,2].squeeze()
-y4 = md.results.LoveSolution.LoveKernelsReal[:,0,:,3].squeeze()
-y5 = md.results.LoveSolution.LoveKernelsReal[:,0,:,4].squeeze()
-y6 = md.results.LoveSolution.LoveKernelsReal[:,0,:,5].squeeze()
+# degree 2
+y1_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,0].squeeze()
+y2_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,1].squeeze()
+y3_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,2].squeeze()
+y4_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,3].squeeze()
+y5_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,4].squeeze()
+y6_tidal_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,5].squeeze()
 
-y1_tidal_degree2_interface1 = y1[2, 0]
-y1_tidal_degree2_interface2 = y1[2, 1]
-y1_tidal_degree2_interface7 = y1[2, 6]
-y1_tidal_degree2_interface10 = y1[2, 9]
-y1_tidal_degree2_interface11 = y1[2, 10]
+# degree 20
+y1_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,0].squeeze()
+y2_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,1].squeeze()
+y3_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,2].squeeze()
+y4_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,3].squeeze()
+y5_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,4].squeeze()
+y6_tidal_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,5].squeeze()
 
-y2_tidal_degree2_interface1 = y2[2, 0]
-y2_tidal_degree2_interface2 = y2[2, 1]
-y2_tidal_degree2_interface7 = y2[2, 6]
-y2_tidal_degree2_interface10 = y2[2, 9]
-y2_tidal_degree2_interface11 = y2[2, 10]
-
-y3_tidal_degree2_interface1 = y3[2, 0]
-y3_tidal_degree2_interface2 = y3[2, 1]
-y3_tidal_degree2_interface7 = y3[2, 6]
-y3_tidal_degree2_interface10 = y3[2, 9]
-y3_tidal_degree2_interface11 = y3[2, 10]
-
-y4_tidal_degree2_interface1 = y4[2, 0]
-y4_tidal_degree2_interface2 = y4[2, 1]
-y4_tidal_degree2_interface7 = y4[2, 6]
-y4_tidal_degree2_interface10 = y4[2, 9]
-y4_tidal_degree2_interface11 = y4[2, 10]
-
-y5_tidal_degree2_interface1 = y5[2, 0]
-y5_tidal_degree2_interface2 = y5[2, 1]
-y5_tidal_degree2_interface7 = y5[2, 6]
-y5_tidal_degree2_interface10 = y5[2, 9]
-y5_tidal_degree2_interface11 = y5[2, 10]
-
-y6_tidal_degree2_interface1 = y6[2, 0]
-y6_tidal_degree2_interface2 = y6[2, 1]
-y6_tidal_degree2_interface7 = y6[2, 6]
-y6_tidal_degree2_interface10 = y6[2, 9]
-y6_tidal_degree2_interface11 = y6[2, 10]
+# degree 200
+y1_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,0].squeeze()
+y2_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,1].squeeze()
+y3_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,2].squeeze()
+y4_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,3].squeeze()
+y5_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,4].squeeze()
+y6_tidal_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,5].squeeze()
 #}}}
 
@@ -98,91 +83,51 @@
 
 # Extract love kernels #{{{
-y1 = md.results.LoveSolution.LoveKernelsReal[:,0,:,0].squeeze()
-y2 = md.results.LoveSolution.LoveKernelsReal[:,0,:,1].squeeze()
-y3 = md.results.LoveSolution.LoveKernelsReal[:,0,:,2].squeeze()
-y4 = md.results.LoveSolution.LoveKernelsReal[:,0,:,3].squeeze()
-y5 = md.results.LoveSolution.LoveKernelsReal[:,0,:,4].squeeze()
-y6 = md.results.LoveSolution.LoveKernelsReal[:,0,:,5].squeeze()
+# degree 2
+y1_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,0].squeeze()
+y2_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,1].squeeze()
+y3_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,2].squeeze()
+y4_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,3].squeeze()
+y5_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,4].squeeze()
+y6_loading_degree002 = md.results.LoveSolution.LoveKernelsReal[degrees[0],0,1:,5].squeeze()
 
-y1_load_degree2_interface1 = y1[2, 0]
-y1_load_degree2_interface2 = y1[2, 1]
-y1_load_degree2_interface7 = y1[2, 6]
-y1_load_degree2_interface10 = y1[2, 9]
-y1_load_degree2_interface11 = y1[2, 10]
+# degree 20
+y1_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,0].squeeze()
+y2_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,1].squeeze()
+y3_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,2].squeeze()
+y4_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,3].squeeze()
+y5_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,4].squeeze()
+y6_loading_degree020 = md.results.LoveSolution.LoveKernelsReal[degrees[1],0,1:,5].squeeze()
 
-y2_load_degree2_interface1 = y2[2, 0]
-y2_load_degree2_interface2 = y2[2, 1]
-y2_load_degree2_interface7 = y2[2, 6]
-y2_load_degree2_interface10 = y2[2, 9]
-y2_load_degree2_interface11 = y2[2, 10]
-
-y3_load_degree2_interface1 = y3[2, 0]
-y3_load_degree2_interface2 = y3[2, 1]
-y3_load_degree2_interface7 = y3[2, 6]
-y3_load_degree2_interface10 = y3[2, 9]
-y3_load_degree2_interface11 = y3[2, 10]
-
-y4_load_degree2_interface1 = y4[2, 0]
-y4_load_degree2_interface2 = y4[2, 1]
-y4_load_degree2_interface7 = y4[2, 6]
-y4_load_degree2_interface10 = y4[2, 9]
-y4_load_degree2_interface11 = y4[2, 10]
-
-y5_load_degree2_interface1 = y5[2, 0]
-y5_load_degree2_interface2 = y5[2, 1]
-y5_load_degree2_interface7 = y5[2, 6]
-y5_load_degree2_interface10 = y5[2, 9]
-y5_load_degree2_interface11 = y5[2, 10]
-
-y6_load_degree2_interface1 = y6[2, 0]
-y6_load_degree2_interface2 = y6[2, 1]
-y6_load_degree2_interface7 = y6[2, 6]
-y6_load_degree2_interface10 = y6[2, 9]
-y6_load_degree2_interface11 = y6[2, 10]
+# degree 200
+y1_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,0].squeeze()
+y2_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,1].squeeze()
+y3_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,2].squeeze()
+y4_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,3].squeeze()
+y5_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,4].squeeze()
+y6_loading_degree200 = md.results.LoveSolution.LoveKernelsReal[degrees[2],0,1:,5].squeeze()
 #}}}
 
-
-#Fields and tolerances to track changes
-#loading love numbers
 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
+    3e-7, 3e-7, 3e-7, 1e-7, 6e-8, 9e-7,
+    2e-7, 7e-8, 3e-7, 9e-8, 9e-10, 8e-10,
+    2e-8, 4e-8, 4e-7, 3e-8, 2e-10, 1e-10,
+    4e-6, 1e-6, 4e-6, 3e-6, 8e-7, 2e-6,
+    2e-6, 1e-7, 5e-6, 3e-7, 2e-7, 2e-7,
+    2e-6, 9e-10, 5e-5, 3e-8, 5e-7, 2e-9
     ]
 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
     ]
