Changeset 27029
- Timestamp:
- 05/30/22 10:22:28 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/examples/SlrGRACE/runme.m
r26881 r27029 1 clear all;1 %clear all; 2 2 addpath('../Data','../Functions'); 3 3 4 steps=[1:7];4 %steps=[1:7]; 5 5 6 6 if any(steps==1) % {{{ 7 7 disp(' Step 1: Global mesh creation'); 8 8 9 numrefine= 5;9 numrefine=1; 10 10 resolution=150*1e3; % inital resolution [m] 11 11 radius = 6.371012*10^6; % mean radius of Earth, m … … 50 50 save ./Models/SlrGRACE_Mesh md; 51 51 52 plotmodel (md,'data',md.mask.ocean_levelset,'edgecolor','k'); 52 plotmodel (md,'data',md.mask.ocean_levelset,'edgecolor','k','view',[45 45]); 53 53 54 end % }}} 54 55 if any(steps==2) % {{{ … … 70 71 md.geometry.surface=md.geometry.bed+md.geometry.thickness; 71 72 72 md.masstransport.spcthickness = [md.geometry.thickness + ice_load; 0]; 73 md.masstransport.spcthickness = repmat(md.geometry.thickness,1,2); 74 md.masstransport.spcthickness(:,end) = md.masstransport.spcthickness(:,end) + ice_load; 75 md.masstransport.spcthickness(end+1,:) = [0 1]; % dummy time. 73 76 74 77 md.smb.mass_balance=zeros(md.mesh.numberofvertices,1); … … 140 143 md = loadmodel('./Models/SlrGRACE_Solution'); 141 144 142 sol1 = (md.masstransport.spcthickness(1:end-1 )-md.geometry.thickness)*100; % [cm]145 sol1 = (md.masstransport.spcthickness(1:end-1,2)-md.masstransport.spcthickness(1:end-1,1))*100; % [cm] 143 146 sol2 = (md.results.TransientSolution.Sealevel-md.results.TransientSolution.Bed)*1000; % [mm] 144 147 … … 208 211 % masstransport evalulates diff between the successive times, so we should cumsum. 209 212 num_time = size(ice_load,2); 210 md.masstransport.spcthickness = [repmat(md.geometry.thickness,1,size(ice_load,2)) + ice_load]; 211 md.masstransport.spcthickness =[ md.masstransport.spcthickness; 0:num_time-1]; 213 md.masstransport.spcthickness = repmat(md.geometry.thickness,1,num_time+1); 214 md.masstransport.spcthickness(:,2:end) = md.masstransport.spcthickness(:,2:end) + ice_load; 215 md.masstransport.spcthickness(end+1,:) = 0:num_time; % dummy time. 212 216 213 217 %Physics … … 241 245 md = loadmodel('./Models/SlrGRACE_Transient'); 242 246 243 time = md.masstransport.spcthickness(end, :);247 time = md.masstransport.spcthickness(end,2:end); 244 248 245 249 for tt=1:length(time) 246 250 gmsl(tt) = md.results.TransientSolution(tt).CumBslc*1000; % [mm] 247 sol1(:,tt) = (md.masstransport.spcthickness(1:end-1,tt )-md.geometry.thickness)*100; % [cm]251 sol1(:,tt) = (md.masstransport.spcthickness(1:end-1,tt+1)-md.geometry.thickness)*100; % [cm] 248 252 sol2(:,tt) = (md.results.TransientSolution(tt).Sealevel-md.results.TransientSolution(tt).Bed)*1000; % [mm] 249 253 end 250 254 sol_name = {'Change in water equivalent height [cm]', 'Relative sea level [mm]'}; 251 movie_name = {'Movie_dH .mp4','Movie_slr.mp4'};255 movie_name = {'Movie_dH','Movie_slr'}; 252 256 253 257 res = 1.0; … … 273 277 vidObj = VideoWriter(movie_name{kk}); 274 278 vidObj.FrameRate=2; % frames per second 275 vifObj.FileFormat='mp4';276 279 open(vidObj); 277 280 … … 311 314 close(vidObj); 312 315 end 313 !open *.mp4;314 316 315 317 % plot GMSL time series
Note:
See TracChangeset
for help on using the changeset viewer.