source:
issm/oecreview/Archive/24684-25833/ISSM-25302-25303.diff
Last change on this file was 25834, checked in by , 4 years ago | |
---|---|
File size: 20.7 KB |
-
../trunk-jpl/test/NightlyRun/test2085.m
10 10 md.materials.numlayers = 10; 11 11 md.love.forcing_type = 9; 12 12 13 md.materials.density= (1:md.materials.numlayers)'*0+5511;14 md.materials.lame_mu= (1:md.materials.numlayers)'*0+0.75e11;15 md.materials.viscosity= (1:md.materials.numlayers)'*0+1e21;16 md.materials.lame_lambda= md.materials.lame_mu*0+5e17;13 md.materials.density=zeros(md.materials.numlayers,1)+5511; 14 md.materials.lame_mu=zeros(md.materials.numlayers,1)+0.75e11; 15 md.materials.viscosity=zeros(md.materials.numlayers,1)+1e21; 16 md.materials.lame_lambda=zeros(md.materials.numlayers,1)+5e17; 17 17 md.materials.issolid=ones(md.materials.numlayers,1); 18 18 md.materials.isburgers=zeros(md.materials.numlayers,1); 19 19 md.materials.burgers_mu=md.materials.lame_mu/3; … … 24 24 25 25 md.love.allow_layer_deletion=1; 26 26 md.love.frequencies=0; 27 md.love.nfreq=length(md.love.frequencies); 27 md.love.nfreq=length(md.love.frequencies); % TODO: Why are we grabbing length of a scalar here? 28 28 29 29 md.love.sh_nmin = 2; 30 30 md.love.sh_nmax = 2; … … 37 37 md=solve(md,'lv'); 38 38 39 39 % extract love kernels {{{ 40 y1=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,1))); 40 y1=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,1))); 41 41 y2=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,2))); 42 42 y3=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,3))); 43 43 y4=squeeze(cell2mat(md.results.LoveSolution.LoveKernelsReal(:,1,:,4))); … … 147 147 'y6_load_degree2_interface1','y6_load_degree2_interface2','y6_load_degree2_interface7','y6_load_degree2_interface10','y6_load_degree2_interface11',... 148 148 }; 149 149 field_tolerances={... 150 1e-10,1e-10,1e-10,1e-10,1e-10,...151 1e-10,1e-10,1e-10,1e-10,1e-10,...152 1e-10,1e-10,1e-10,1e-10,1e-10,...153 1e-10,1e-10,1e-10,1e-10,1e-10,...154 1e-10,1e-10,1e-10,1e-10,1e-10,...155 1e-10,1e-10,1e-10,1e-10,1e-10,...156 1e-10,1e-10,1e-10,1e-10,1e-10,...157 1e-10,1e-10,1e-10,1e-10,1e-10,...158 1e-10,1e-10,1e-10,1e-10,1e-10,...159 1e-10,1e-10,1e-10,1e-10,1e-10,...160 1e-10,1e-10,1e-10,1e-10,1e-10,...161 1e-10,1e-10,1e-10,1e-10,1e-10,...150 9e-8, 1e-7, 3e-7, 3e-7, 3e-7,... 151 9e-8, 1e-7, 3e-7, 3e-7, 1e-10,... 152 9e-8, 8e-8, 2e-8, 2e-7, 4e-7,... 153 9e-8, 9e-8, 2e-7, 4e-7, 1e-10,... 154 4e-7, 4e-7, 2e-7, 3e-8, 2e-8,... 155 2e-5, 2e-6, 2e-6, 1e-6, 2e-7,... 156 3e-6, 3e-6, 3e-6, 4e-6, 4e-6,... 157 3e-6, 3e-6, 2e-6, 6e-7, 1e-10,... 158 3e-6, 3e-6, 5e-7, 3e-6, 5e-6,... 159 3e-6, 3e-6, 9e-7, 7e-7, 1e-10,... 160 4e-6, 4e-6, 3e-6, 5e-7, 3e-7,... 161 3e-6, 3e-6, 2e-6, 7e-7, 2e-7... 162 162 }; 163 163 field_values={... 164 164 y1_tidal_degree2_interface1, y1_tidal_degree2_interface2, y1_tidal_degree2_interface7, y1_tidal_degree2_interface10,y1_tidal_degree2_interface11,... -
../trunk-jpl/test/NightlyRun/test2085.py
1 #Test Name: LovenumberstAtDepth. 2 #Same as test #1 of test2084.m 1 # Test Name: FourierLoveKernels 2 # Homogenous Earth, for which analytic solutions exist. 3 # Love kernels for degree 2 (tested against analytic solns). 3 4 4 from model import * 5 5 6 from socket import gethostname 6 from solve import * 7 from numpy import * 7 8 import numpy as np 9 8 10 from generic import generic 9 11 from materials import * 12 from model import * 13 from solve import * 10 14 15 # Fro volumetric potential 11 16 md = model() 12 md.cluster = generic('name', gethostname(), 'np', 1)13 17 14 18 md.materials = materials('litho') 15 md.miscellaneous.name = 'FourierLoveTest'16 md.groundingline.migration = 'None'17 19 18 md. verbose = verbose('111111101')19 cst = 365.25 * 24 * 3600 * 1000 20 md.materials.numlayers = 10 21 md.love.forcing_type = 9 20 22 21 md.materials. numlayers = 622 md.materials. radius = np.array([10, 1222.5, 3.4800e+03, 5.7010e+03, 5.9510e+03, 6.3010e+03, 6.3710e+03]).reshape(-1, 1) * 1e323 md.materials. density = np.array([1.0750e4, 1.0750e+04, 4.9780e+03, 3.8710e+03, 3.4380e+03, 3.0370e+03]).reshape(-1, 1)24 md.materials.lame_ mu = np.array([1e-5, 0, 2.2834e+00, 1.0549e+00, 7.0363e-01, 5.0605e-01]).reshape(-1, 1) * 1e1125 md.materials. viscosity = np.array([0, 0, 2.0000e+00, 1.0000e+00, 1.0000e+00, 1.0000e+25]).reshape(-1, 1) * 1e2126 md.materials. lame_lambda = np.array(md.materials.lame_mu) * 0 + 5e1427 md.materials. issolid = np.array([1, 0, 1, 1, 1, 1]).reshape(-1, 1)28 md.materials. isburgers = np.zeros((md.materials.numlayers)).reshape(-1, 1)23 md.materials.density = np.zeros((md.materials.numlayers, 1)) + 5511 24 md.materials.lame_mu = np.zeros((md.materials.numlayers, 1)) + 0.75e11 25 md.materials.viscosity = np.zeros((md.materials.numlayers, 1)) + 1e21 26 md.materials.lame_lambda = np.zeros((md.materials.numlayers, 1)) + 0.5e17 27 md.materials.issolid = np.ones((md.materials.numlayers, 1)) 28 md.materials.isburgers = np.zeros((md.materials.numlayers, 1)) 29 md.materials.burgers_mu = md.materials.lame_mu / 3 30 md.materials.burgers_viscosity = md.materials.viscosity / 10 29 31 30 md.love.love_kernels = 1 32 md.materials.radius = np.linspace(10e3, 6371e3, md.materials.numlayers + 1).reshape(-1, 1) 33 md.love.g0 = 9.8134357285509388 # directly grabbed from fourierlovesolver for this particular case 34 31 35 md.love.allow_layer_deletion = 1 32 md.love.frequencies = (np.array([0]) * 2 * pi).reshape(-1, 1) / cst 33 md.love.nfreq = len(md.love.frequencies) 36 md.love.frequencies = 0 37 md.love.nfreq = 1 38 39 md.love.sh_nmin = 2 34 40 md.love.sh_nmax = 2 41 md.love.love_kernels = 1 35 42 36 md.materials.burgers_mu = md.materials.lame_mu 37 md.materials.burgers_viscosity = md.materials.viscosity 43 md.miscellaneous.name = 'kernels' 44 md.cluster = generic('name', gethostname(), 'np', 1) 45 md.verbose = verbose('111111101') 38 46 39 md = solve(md, 47 md = solve(md,'lv') 40 48 49 # Extract love kernels #{{{ 50 y1 = md.results.LoveSolution.LoveKernelsReal[:,0,:,0].squeeze() 51 y2 = md.results.LoveSolution.LoveKernelsReal[:,0,:,1].squeeze() 52 y3 = md.results.LoveSolution.LoveKernelsReal[:,0,:,2].squeeze() 53 y4 = md.results.LoveSolution.LoveKernelsReal[:,0,:,3].squeeze() 54 y5 = md.results.LoveSolution.LoveKernelsReal[:,0,:,4].squeeze() 55 y6 = md.results.LoveSolution.LoveKernelsReal[:,0,:,5].squeeze() 56 57 y1_tidal_degree2_interface1 = y1[2, 0] 58 y1_tidal_degree2_interface2 = y1[2, 1] 59 y1_tidal_degree2_interface7 = y1[2, 6] 60 y1_tidal_degree2_interface10 = y1[2, 9] 61 y1_tidal_degree2_interface11 = y1[2, 10] 62 63 y2_tidal_degree2_interface1 = y2[2, 0] 64 y2_tidal_degree2_interface2 = y2[2, 1] 65 y2_tidal_degree2_interface7 = y2[2, 6] 66 y2_tidal_degree2_interface10 = y2[2, 9] 67 y2_tidal_degree2_interface11 = y2[2, 10] 68 69 y3_tidal_degree2_interface1 = y3[2, 0] 70 y3_tidal_degree2_interface2 = y3[2, 1] 71 y3_tidal_degree2_interface7 = y3[2, 6] 72 y3_tidal_degree2_interface10 = y3[2, 9] 73 y3_tidal_degree2_interface11 = y3[2, 10] 74 75 y4_tidal_degree2_interface1 = y4[2, 0] 76 y4_tidal_degree2_interface2 = y4[2, 1] 77 y4_tidal_degree2_interface7 = y4[2, 6] 78 y4_tidal_degree2_interface10 = y4[2, 9] 79 y4_tidal_degree2_interface11 = y4[2, 10] 80 81 y5_tidal_degree2_interface1 = y5[2, 0] 82 y5_tidal_degree2_interface2 = y5[2, 1] 83 y5_tidal_degree2_interface7 = y5[2, 6] 84 y5_tidal_degree2_interface10 = y5[2, 9] 85 y5_tidal_degree2_interface11 = y5[2, 10] 86 87 y6_tidal_degree2_interface1 = y6[2, 0] 88 y6_tidal_degree2_interface2 = y6[2, 1] 89 y6_tidal_degree2_interface7 = y6[2, 6] 90 y6_tidal_degree2_interface10 = y6[2, 9] 91 y6_tidal_degree2_interface11 = y6[2, 10] 92 #}}} 93 94 # For surface load 95 md.love.forcing_type = 11 96 97 md = solve(md,'lv') 98 99 # Extract love kernels #{{{ 100 y1 = md.results.LoveSolution.LoveKernelsReal[:,0,:,0].squeeze() 101 y2 = md.results.LoveSolution.LoveKernelsReal[:,0,:,1].squeeze() 102 y3 = md.results.LoveSolution.LoveKernelsReal[:,0,:,2].squeeze() 103 y4 = md.results.LoveSolution.LoveKernelsReal[:,0,:,3].squeeze() 104 y5 = md.results.LoveSolution.LoveKernelsReal[:,0,:,4].squeeze() 105 y6 = md.results.LoveSolution.LoveKernelsReal[:,0,:,5].squeeze() 106 107 y1_load_degree2_interface1 = y1[2, 0] 108 y1_load_degree2_interface2 = y1[2, 1] 109 y1_load_degree2_interface7 = y1[2, 6] 110 y1_load_degree2_interface10 = y1[2, 9] 111 y1_load_degree2_interface11 = y1[2, 10] 112 113 y2_load_degree2_interface1 = y2[2, 0] 114 y2_load_degree2_interface2 = y2[2, 1] 115 y2_load_degree2_interface7 = y2[2, 6] 116 y2_load_degree2_interface10 = y2[2, 9] 117 y2_load_degree2_interface11 = y2[2, 10] 118 119 y3_load_degree2_interface1 = y3[2, 0] 120 y3_load_degree2_interface2 = y3[2, 1] 121 y3_load_degree2_interface7 = y3[2, 6] 122 y3_load_degree2_interface10 = y3[2, 9] 123 y3_load_degree2_interface11 = y3[2, 10] 124 125 y4_load_degree2_interface1 = y4[2, 0] 126 y4_load_degree2_interface2 = y4[2, 1] 127 y4_load_degree2_interface7 = y4[2, 6] 128 y4_load_degree2_interface10 = y4[2, 9] 129 y4_load_degree2_interface11 = y4[2, 10] 130 131 y5_load_degree2_interface1 = y5[2, 0] 132 y5_load_degree2_interface2 = y5[2, 1] 133 y5_load_degree2_interface7 = y5[2, 6] 134 y5_load_degree2_interface10 = y5[2, 9] 135 y5_load_degree2_interface11 = y5[2, 10] 136 137 y6_load_degree2_interface1 = y6[2, 0] 138 y6_load_degree2_interface2 = y6[2, 1] 139 y6_load_degree2_interface7 = y6[2, 6] 140 y6_load_degree2_interface10 = y6[2, 9] 141 y6_load_degree2_interface11 = y6[2, 10] 142 #}}} 143 144 41 145 #Fields and tolerances to track changes 42 146 #loading love numbers 43 field_names = ['LoveH_loading_elastic', 'LoveK_loading_elastic', 'LoveL_loading_elastic', 'LoveKernels_degree1', 'LoveKernels_degree2'] 44 field_tolerances = [1e-10, 1e-10, 1e-10, 1e-10, 1e-10] 45 field_values = [md.results.LoveSolution.LoveHr[:, 0], 46 md.results.LoveSolution.LoveKr[:, 0], 47 md.results.LoveSolution.LoveLr[:, 0], 48 md.results.LoveSolution.LoveKernelsReal[1, 0, :, :], 49 md.results.LoveSolution.LoveKernelsReal[2, 0, :, :]] 147 field_names = [ 148 'y1_tidal_degree2_interface1', 'y1_tidal_degree2_interface2', 'y1_tidal_degree2_interface7', 'y1_tidal_degree2_interface10', 'y1_tidal_degree2_interface11', 149 'y2_tidal_degree2_interface1', 'y2_tidal_degree2_interface2', 'y2_tidal_degree2_interface7', 'y2_tidal_degree2_interface10', 'y2_tidal_degree2_interface11', 150 'y3_tidal_degree2_interface1', 'y3_tidal_degree2_interface2', 'y3_tidal_degree2_interface7', 'y3_tidal_degree2_interface10', 'y3_tidal_degree2_interface11', 151 'y4_tidal_degree2_interface1', 'y4_tidal_degree2_interface2', 'y4_tidal_degree2_interface7', 'y4_tidal_degree2_interface10', 'y4_tidal_degree2_interface11', 152 'y5_tidal_degree2_interface1', 'y5_tidal_degree2_interface2', 'y5_tidal_degree2_interface7', 'y5_tidal_degree2_interface10', 'y5_tidal_degree2_interface11', 153 'y6_tidal_degree2_interface1', 'y6_tidal_degree2_interface2', 'y6_tidal_degree2_interface7', 'y6_tidal_degree2_interface10', 'y6_tidal_degree2_interface11', 154 'y1_load_degree2_interface1', 'y1_load_degree2_interface2', 'y1_load_degree2_interface7', 'y1_load_degree2_interface10', 'y1_load_degree2_interface11', 155 'y2_load_degree2_interface1', 'y2_load_degree2_interface2', 'y2_load_degree2_interface7', 'y2_load_degree2_interface10', 'y2_load_degree2_interface11', 156 'y3_load_degree2_interface1', 'y3_load_degree2_interface2', 'y3_load_degree2_interface7', 'y3_load_degree2_interface10', 'y3_load_degree2_interface11', 157 'y4_load_degree2_interface1', 'y4_load_degree2_interface2', 'y4_load_degree2_interface7', 'y4_load_degree2_interface10', 'y4_load_degree2_interface11', 158 'y5_load_degree2_interface1', 'y5_load_degree2_interface2', 'y5_load_degree2_interface7', 'y5_load_degree2_interface10', 'y5_load_degree2_interface11', 159 'y6_load_degree2_interface1', 'y6_load_degree2_interface2', 'y6_load_degree2_interface7', 'y6_load_degree2_interface10', 'y6_load_degree2_interface11' 160 ] 161 field_tolerances = [ 162 9e-8, 1e-7, 3e-7, 3e-7, 3e-7, 163 9e-8, 1e-7, 3e-7, 3e-7, 1e-10, 164 9e-8, 8e-8, 2e-8, 2e-7, 4e-7, 165 9e-8, 9e-8, 2e-7, 4e-7, 1e-10, 166 4e-7, 4e-7, 2e-7, 3e-8, 2e-8, 167 2e-5, 2e-6, 2e-6, 1e-6, 2e-7, 168 3e-6, 3e-6, 3e-6, 4e-6, 4e-6, 169 3e-6, 3e-6, 2e-6, 6e-7, 1e-10, 170 3e-6, 3e-6, 5e-7, 3e-6, 5e-6, 171 3e-6, 3e-6, 9e-7, 7e-7, 1e-10, 172 4e-6, 4e-6, 3e-6, 5e-7, 3e-7, 173 3e-6, 3e-6, 2e-6, 7e-7, 2e-7 174 ] 175 field_values = [ 176 y1_tidal_degree2_interface1, y1_tidal_degree2_interface2, y1_tidal_degree2_interface7, y1_tidal_degree2_interface10,y1_tidal_degree2_interface11, 177 y2_tidal_degree2_interface1, y2_tidal_degree2_interface2, y2_tidal_degree2_interface7, y2_tidal_degree2_interface10,y2_tidal_degree2_interface11, 178 y3_tidal_degree2_interface1, y3_tidal_degree2_interface2, y3_tidal_degree2_interface7, y3_tidal_degree2_interface10,y3_tidal_degree2_interface11, 179 y4_tidal_degree2_interface1, y4_tidal_degree2_interface2, y4_tidal_degree2_interface7, y4_tidal_degree2_interface10,y4_tidal_degree2_interface11, 180 y5_tidal_degree2_interface1, y5_tidal_degree2_interface2, y5_tidal_degree2_interface7, y5_tidal_degree2_interface10,y5_tidal_degree2_interface11, 181 y6_tidal_degree2_interface1, y6_tidal_degree2_interface2, y6_tidal_degree2_interface7, y6_tidal_degree2_interface10,y6_tidal_degree2_interface11, 182 y1_load_degree2_interface1, y1_load_degree2_interface2, y1_load_degree2_interface7, y1_load_degree2_interface10,y1_load_degree2_interface11, 183 y2_load_degree2_interface1, y2_load_degree2_interface2, y2_load_degree2_interface7, y2_load_degree2_interface10,y2_load_degree2_interface11, 184 y3_load_degree2_interface1, y3_load_degree2_interface2, y3_load_degree2_interface7, y3_load_degree2_interface10,y3_load_degree2_interface11, 185 y4_load_degree2_interface1, y4_load_degree2_interface2, y4_load_degree2_interface7, y4_load_degree2_interface10,y4_load_degree2_interface11, 186 y5_load_degree2_interface1, y5_load_degree2_interface2, y5_load_degree2_interface7, y5_load_degree2_interface10,y5_load_degree2_interface11, 187 y6_load_degree2_interface1, y6_load_degree2_interface2, y6_load_degree2_interface7, y6_load_degree2_interface10,y6_load_degree2_interface11 188 ] -
../trunk-jpl/test/NightlyRun/test2052.m
30 30 %% solve for GIA deflection 31 31 md=solve(md,'Gia'); 32 32 33 pause34 35 33 %Test Name: GiaIvinsBenchmarksAB2dC1 36 34 U_AB2dC1 = md.results.GiaSolution.UGia; 37 35 URate_AB2dC1 = md.results.GiaSolution.UGiaRate; -
../trunk-jpl/src/m/classes/geometry.m
89 89 90 90 end % }}} 91 91 function marshall(self,prefix,md,fid) % {{{ 92 disp(md.geometry.thickness)93 92 WriteData(fid,prefix,'object',self,'fieldname','surface','format','DoubleMat','mattype',1); 94 93 WriteData(fid,prefix,'object',self,'fieldname','thickness','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts); 95 disp(md.geometry.thickness)96 pause97 94 WriteData(fid,prefix,'object',self,'fieldname','base','format','DoubleMat','mattype',1); 98 95 WriteData(fid,prefix,'object',self,'fieldname','bed','format','DoubleMat','mattype',1); 99 96 WriteData(fid,prefix,'object',self,'fieldname','hydrostatic_ratio','format','DoubleMat','mattype',1); -
../trunk-jpl/src/m/solve/parseresultsfromdisk.py
247 247 mu0 = md.love.mu0 248 248 rr = md.materials.radius 249 249 rho = md.materials.density 250 rho_avg = (rho * np.diff(np.power(rr, 3), n=1, axis=0)) / np.diff(np.power(rr, 3).sum()).sum() 250 rho_avg_partial = np.diff(np.power(rr, 3), n=1, axis=0) 251 rho_avg = ((rho * rho_avg_partial) / rho_avg_partial.sum()).sum() 251 252 temp_field = np.empty((degmax + 1, nfreq, nlayer + 1, 6)) 252 253 temp_field.fill(0.0) 253 254 for ii in range(degmax + 1): 254 255 for jj in range(nfreq): 255 256 for kk in range(nlayer + 1): 256 if kk < nlayer + 1:257 if kk < nlayer: # NOTE: Upper bound of range is non-inclusive (compare to src/m/solve/parseresultsfromdisk.m) 257 258 ll = ii * (nlayer + 1) * 6 + (kk * 6 + 1) + 3 258 temp_field[ii, jj, kk, 0] = field[ll + (1 - 1), jj] * r0 # mm = 4 259 temp_field[ii, jj, kk, 1] = field[ll + (2 - 1), jj] * mu0 # mm = 5 260 temp_field[ii, jj, kk, 2] = field[ll + (3 - 1), jj] * r0 # mm = 6 261 temp_field[ii, jj, kk, 3] = field[ll + (4 - 1), jj] * mu0 # mm = 1 262 temp_field[ii, jj, kk, 4] = field[ll + (5 - 1), jj] * r0 * g0 # mm = 2 263 temp_field[ii, jj, kk, 5] = field[ll + (6 - 1), jj] * g0 # mm = 3 264 print(temp_field) 259 temp_field[ii, jj, kk, 0] = field[ll + (0 - 1), jj] * r0 # mm = 4 260 temp_field[ii, jj, kk, 1] = field[ll + (1 - 1), jj] * mu0 # mm = 5 261 temp_field[ii, jj, kk, 2] = field[ll + (2 - 1), jj] * r0 # mm = 6 262 temp_field[ii, jj, kk, 3] = field[ll + (3 - 1), jj] * mu0 # mm = 1 263 temp_field[ii, jj, kk, 4] = field[ll + (4 - 1), jj] * r0 * g0 # mm = 2 264 temp_field[ii, jj, kk, 5] = field[ll + (5 - 1), jj] * g0 # mm = 3 265 265 else: # surface 266 ll = ii* (nlayer + 1) * 6 - 2267 temp_field[ii, jj, kk, 0] = field[ll + ( 1- 1), jj] * r0268 temp_field[ii, jj, kk, 2] = field[ll + ( 2- 1), jj] * r0269 temp_field[ii, jj, kk, 4] = field[ll + ( 3- 1), jj] * r0 * g0266 ll = (ii + 1) * (nlayer + 1) * 6 - 2 267 temp_field[ii, jj, kk, 0] = field[ll + (0 - 1), jj] * r0 268 temp_field[ii, jj, kk, 2] = field[ll + (1 - 1), jj] * r0 269 temp_field[ii, jj, kk, 4] = field[ll + (2 - 1), jj] * r0 * g0 270 270 # surface BC 271 271 temp_field[ii, jj, kk, 3] = 0 272 272 if md.love.forcing_type == 9: 273 273 temp_field[ii, jj, kk, 1] = 0 274 temp_field[ii, jj, kk, 5] = (2 * ii - 1) / r0 - ii * field[ll + (3- 1), jj] * g0274 temp_field[ii, jj, kk, 5] = (2 * (ii + 1) - 1) / r0 - (ii + 1) * field[ll + (2 - 1), jj] * g0 275 275 elif md.love.forcing_type == 11: 276 temp_field[ii, jj, kk, 1] = -(2 * (ii - 1)+ 1) * rho_avg / 3277 temp_field[ii, jj, kk, 5] = (2 * ii - 1) / r0 - ii * field[ll + (3- 1), jj] * g0276 temp_field[ii, jj, kk, 1] = -(2 * ii + 1) * rho_avg / 3 277 temp_field[ii, jj, kk, 5] = (2 * (ii + 1) - 1) / r0 - (ii + 1) * field[ll + (2 - 1), jj] * g0 278 278 field = temp_field 279 279 280 280 if time != -9999: -
../trunk-jpl/src/m/solve/parseresultsfromdisk.m
228 228 g0 = md.love.g0; 229 229 mu0 = md.love.mu0; 230 230 rr = md.materials.radius; 231 rho= md.materials.density; 232 rho_avg = sum( rho .* diff(rr.^3)/sum(diff(rr.^3)) );233 temp_field = cell(degmax+1,nfreq,nlayer+1,6); 231 rho= md.materials.density; 232 rho_avg = sum(rho.*diff(rr.^3)/sum(diff(rr.^3))); 233 temp_field = cell(degmax+1,nfreq,nlayer+1,6); 234 234 for ii=1:degmax+1 235 235 for jj=1:nfreq 236 236 for kk=1:nlayer+1 237 237 if (kk<nlayer+1) 238 ll = (ii-1)*(nlayer+1)*6 + ((kk-1)*6+1) + 3; 239 temp_field{ii,jj,kk,1} = field(ll+(1-1),jj)*r0; % mm = 4 238 ll = (ii-1)*(nlayer+1)*6 + ((kk-1)*6+1) + 3; 239 temp_field{ii,jj,kk,1} = field(ll+(1-1),jj)*r0; % mm = 4 240 240 temp_field{ii,jj,kk,2} = field(ll+(2-1),jj)*mu0; % mm = 5 241 241 temp_field{ii,jj,kk,3} = field(ll+(3-1),jj)*r0; % mm = 6 242 242 temp_field{ii,jj,kk,4} = field(ll+(4-1),jj)*mu0; % mm = 1 … … 251 251 temp_field{ii,jj,kk,4} = 0; 252 252 if (md.love.forcing_type==9) 253 253 temp_field{ii,jj,kk,2} = 0; 254 temp_field{ii,jj,kk,6} = (2*ii-1)/r0 - ii*field(ll+(3-1),jj)*g0; 254 temp_field{ii,jj,kk,6} = (2*ii-1)/r0 - ii*field(ll+(3-1),jj)*g0; 255 255 elseif (md.love.forcing_type==11) 256 256 temp_field{ii,jj,kk,2} = -(2*(ii-1)+1)*rho_avg/3; 257 257 temp_field{ii,jj,kk,6} = (2*ii-1)/r0 - ii*field(ll+(3-1),jj)*g0;
Note:
See TracBrowser
for help on using the repository browser.