Index: /issm/trunk-jpl/src/m/solve/parseresultsfromdisk.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/parseresultsfromdisk.m	(revision 25295)
+++ /issm/trunk-jpl/src/m/solve/parseresultsfromdisk.m	(revision 25296)
@@ -222,19 +222,44 @@
 		field = field*yts;
 	elseif (strcmp(fieldname,'LoveKernelsReal') | strcmp(fieldname,'LoveKernelsImag')),
-		nlayer = md.materials.numlayers;
-		degmax = md.love.sh_nmax;
-		nfreq  = md.love.nfreq;
-		temp_field = cell(degmax+1,nfreq,nlayer+1,6);
+		nlayer = md.materials.numlayers; 
+		degmax = md.love.sh_nmax; 
+		nfreq  = md.love.nfreq; 
+		r0 = md.love.r0; 
+		g0 = md.love.g0; 
+		mu0 = md.love.mu0;
+		rr = md.materials.radius; 
+		rho= md.materials.density; 
+		rho_avg = sum( rho .*  diff(rr.^3)/sum(diff(rr.^3)) ); 
+		temp_field = cell(degmax+1,nfreq,nlayer+1,6); 
 		for ii=1:degmax+1
 			for jj=1:nfreq
 				for kk=1:nlayer+1
-					ll = (ii-1)*(nlayer+1)*6 + ((kk-1)*6+1);
-					for mm=1:6
-						temp_field{ii,jj,kk,mm} = field(ll+(mm-1),jj);
+					if (kk<nlayer+1)
+						ll = (ii-1)*(nlayer+1)*6 + ((kk-1)*6+1) + 3; 
+						temp_field{ii,jj,kk,1} = field(ll+(1-1),jj)*r0;		% mm = 4 
+						temp_field{ii,jj,kk,2} = field(ll+(2-1),jj)*mu0;	% mm = 5 
+						temp_field{ii,jj,kk,3} = field(ll+(3-1),jj)*r0;		% mm = 6 
+						temp_field{ii,jj,kk,4} = field(ll+(4-1),jj)*mu0;	% mm = 1 
+						temp_field{ii,jj,kk,5} = field(ll+(5-1),jj)*r0*g0;	% mm = 2 
+						temp_field{ii,jj,kk,6} = field(ll+(6-1),jj)*g0;		% mm = 3 
+					else % surface  
+						ll = ii*(nlayer+1)*6 - 2; 
+						temp_field{ii,jj,kk,1} = field(ll+(1-1),jj)*r0;	
+						temp_field{ii,jj,kk,3} = field(ll+(2-1),jj)*r0;	
+						temp_field{ii,jj,kk,5} = field(ll+(3-1),jj)*r0*g0; 
+						% surface BC 
+						temp_field{ii,jj,kk,4} = 0; 
+						if (md.love.forcing_type==9)
+							temp_field{ii,jj,kk,2} = 0; 
+							temp_field{ii,jj,kk,6} = (2*ii-1)/r0 - ii*field(ll+(3-1),jj)*g0; 
+						elseif (md.love.forcing_type==11)
+							temp_field{ii,jj,kk,2} = -(2*(ii-1)+1)*rho_avg/3; 
+							temp_field{ii,jj,kk,6} = (2*ii-1)/r0 - ii*field(ll+(3-1),jj)*g0; 
+						end
 					end
 				end
 			end
 		end
-		field=temp_field;
+		field=temp_field; 
 	end
 
