source: issm/oecreview/Archive/20545-21336/ISSM-21331-21332.diff@ 21337

Last change on this file since 21337 was 21337, checked in by Mathieu Morlighem, 8 years ago

CHG: added Archive/20545-21336

File size: 4.2 KB
RevLine 
[21337]1Index: ../trunk-jpl/test/NightlyRun/test2003.m
2===================================================================
3--- ../trunk-jpl/test/NightlyRun/test2003.m (revision 0)
4+++ ../trunk-jpl/test/NightlyRun/test2003.m (revision 21332)
5@@ -0,0 +1,79 @@
6+%Test Name: EarthSlr_rotationalFeedback
7+
8+%mesh earth:
9+md=model;
10+md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',1000.); %500 km resolution mesh
11+
12+%parameterize slr solution:
13+%slr loading: {{{
14+md.slr.deltathickness=zeros(md.mesh.numberofelements,1);
15+md.slr.sealevel=zeros(md.mesh.numberofvertices,1);
16+%antarctica
17+late=sum(md.mesh.lat(md.mesh.elements),2)/3;
18+longe=sum(md.mesh.long(md.mesh.elements),2)/3;
19+pos=find(late <-80);
20+md.slr.deltathickness(pos)=-100;
21+
22+%elastic loading from love numbers:
23+nlov=1001;
24+md.slr.love_h = love_numbers('h'); md.slr.love_h(nlov+1:end)=[];
25+md.slr.love_k = love_numbers('k'); md.slr.love_k(nlov+1:end)=[];
26+md.slr.love_l = love_numbers('l'); md.slr.love_l(nlov+1:end)=[];
27+
28+%}}}
29+%mask: {{{
30+md.mask=maskpsl(); % use maskpsl class (instead of mask) to store the ocean function as a ocean_levelset
31+mask=gmtmask(md.mesh.lat,md.mesh.long);
32+
33+icemask=ones(md.mesh.numberofvertices,1);
34+pos=find(mask==0); icemask(pos)=-1;
35+pos=find(sum(mask(md.mesh.elements),2)<3); icemask(md.mesh.elements(pos,:))=-1;
36+md.mask.ice_levelset=icemask;
37+md.mask.ocean_levelset=zeros(md.mesh.numberofvertices,1);
38+pos=find(md.mask.ice_levelset==1); md.mask.ocean_levelset(pos)=1;
39+
40+%make sure that the ice level set is all inclusive:
41+md.mask.land_levelset=zeros(md.mesh.numberofvertices,1);
42+md.mask.groundedice_levelset=-ones(md.mesh.numberofvertices,1);
43+
44+%make sure wherever there is an ice load, that the mask is set to ice:
45+pos=find(md.slr.deltathickness); md.mask.ice_levelset(md.mesh.elements(pos,:))=-1;
46+% }}}
47+
48+% use model representation of ocea area (not the ture area)
49+md.slr.ocean_area_scaling = 0;
50+
51+%geometry
52+di=md.materials.rho_ice/md.materials.rho_water;
53+md.geometry.thickness=ones(md.mesh.numberofvertices,1);
54+md.geometry.surface=(1-di)*zeros(md.mesh.numberofvertices,1);
55+md.geometry.base=md.geometry.surface-md.geometry.thickness;
56+md.geometry.bed=md.geometry.base;
57+
58+%materials
59+md.initialization.temperature=273.25*ones(md.mesh.numberofvertices,1);
60+md.materials.rheology_B=paterson(md.initialization.temperature);
61+md.materials.rheology_n=3*ones(md.mesh.numberofelements,1);
62+
63+%Miscellaneous
64+md.miscellaneous.name='test2003';
65+
66+return
67+%Solution parameters
68+md.slr.reltol=NaN;
69+md.slr.abstol=1e-3;
70+
71+%eustatic + rigid + elastic run:
72+md.slr.rigid=1; md.slr.elastic=1; md.slr.rotation=0;
73+md=solve(md,'Sealevelrise');
74+SnoRotation=md.results.SealevelriseSolution.Sealevel;
75+
76+%eustatic + rigid + elastic + rotation run:
77+md.slr.rigid=1; md.slr.elastic=1; md.slr.rotation=1;
78+md=solve(md,'Sealevelrise');
79+Srotation=md.results.SealevelriseSolution.Sealevel;
80+
81+%Fields and tolerances to track changes
82+field_names ={'noRotation','Rotation'};
83+field_tolerances={1e-13,1e-13};
84+field_values={SnoRotation,Srotation};
85Index: ../trunk-jpl/test/NightlyRun/test2110.m
86===================================================================
87--- ../trunk-jpl/test/NightlyRun/test2110.m (revision 21331)
88+++ ../trunk-jpl/test/NightlyRun/test2110.m (revision 21332)
89@@ -16,8 +16,10 @@
90
91 %love numbers:
92 nlov=10001; % horizontal displacements do not work for low degree truncation, e.g., 101
93-md.esa.love_h = love_numbers('h','CM'); md.esa.love_h(nlov+1:end)=[];
94-md.esa.love_l = love_numbers('l','CM'); md.esa.love_l(nlov+1:end)=[];
95+%md.esa.love_h = love_numbers('h','CM'); md.esa.love_h(nlov+1:end)=[];
96+%md.esa.love_l = love_numbers('l','CM'); md.esa.love_l(nlov+1:end)=[];
97+md.esa.love_h = love_numbers('h'); md.esa.love_h(nlov+1:end)=[];
98+md.esa.love_l = love_numbers('l'); md.esa.love_l(nlov+1:end)=[];
99
100 %mask: {{{
101 %make sure wherever there is an ice load, that the mask is set to ice:
102Index: ../trunk-jpl/test/Archives/Archive2003.arch
103===================================================================
104Cannot display: file marked as a binary type.
105svn:mime-type = application/octet-stream
106
107Property changes on: ../trunk-jpl/test/Archives/Archive2003.arch
108___________________________________________________________________
109Added: svn:mime-type
110 + application/octet-stream
111
Note: See TracBrowser for help on using the repository browser.