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
  • ../trunk-jpl/test/NightlyRun/test2003.m

     
     1%Test Name: EarthSlr_rotationalFeedback
     2
     3%mesh earth:
     4md=model;
     5md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',1000.); %500 km resolution mesh
     6
     7%parameterize slr solution:
     8%slr loading:  {{{
     9md.slr.deltathickness=zeros(md.mesh.numberofelements,1);
     10md.slr.sealevel=zeros(md.mesh.numberofvertices,1);
     11%antarctica
     12late=sum(md.mesh.lat(md.mesh.elements),2)/3;
     13longe=sum(md.mesh.long(md.mesh.elements),2)/3;
     14pos=find(late <-80);
     15md.slr.deltathickness(pos)=-100;
     16
     17%elastic loading from love numbers:
     18nlov=1001;
     19md.slr.love_h = love_numbers('h'); md.slr.love_h(nlov+1:end)=[];
     20md.slr.love_k = love_numbers('k'); md.slr.love_k(nlov+1:end)=[];
     21md.slr.love_l = love_numbers('l'); md.slr.love_l(nlov+1:end)=[];
     22
     23%}}}
     24%mask:  {{{
     25md.mask=maskpsl(); % use maskpsl class (instead of mask) to store the ocean function as a ocean_levelset
     26mask=gmtmask(md.mesh.lat,md.mesh.long);
     27
     28icemask=ones(md.mesh.numberofvertices,1);
     29pos=find(mask==0);  icemask(pos)=-1;
     30pos=find(sum(mask(md.mesh.elements),2)<3);   icemask(md.mesh.elements(pos,:))=-1;
     31md.mask.ice_levelset=icemask;
     32md.mask.ocean_levelset=zeros(md.mesh.numberofvertices,1);
     33pos=find(md.mask.ice_levelset==1); md.mask.ocean_levelset(pos)=1;
     34
     35%make sure that the ice level set is all inclusive:
     36md.mask.land_levelset=zeros(md.mesh.numberofvertices,1);
     37md.mask.groundedice_levelset=-ones(md.mesh.numberofvertices,1);
     38
     39%make sure wherever there is an ice load, that the mask is set to ice:
     40pos=find(md.slr.deltathickness); md.mask.ice_levelset(md.mesh.elements(pos,:))=-1;
     41% }}}
     42
     43% use model representation of ocea area (not the ture area)
     44md.slr.ocean_area_scaling = 0;
     45
     46%geometry
     47di=md.materials.rho_ice/md.materials.rho_water;
     48md.geometry.thickness=ones(md.mesh.numberofvertices,1);
     49md.geometry.surface=(1-di)*zeros(md.mesh.numberofvertices,1);
     50md.geometry.base=md.geometry.surface-md.geometry.thickness;
     51md.geometry.bed=md.geometry.base;
     52
     53%materials
     54md.initialization.temperature=273.25*ones(md.mesh.numberofvertices,1);
     55md.materials.rheology_B=paterson(md.initialization.temperature);
     56md.materials.rheology_n=3*ones(md.mesh.numberofelements,1);
     57
     58%Miscellaneous
     59md.miscellaneous.name='test2003';
     60
     61return
     62%Solution parameters
     63md.slr.reltol=NaN;
     64md.slr.abstol=1e-3;
     65
     66%eustatic + rigid + elastic run:
     67md.slr.rigid=1; md.slr.elastic=1; md.slr.rotation=0;
     68md=solve(md,'Sealevelrise');
     69SnoRotation=md.results.SealevelriseSolution.Sealevel;
     70
     71%eustatic + rigid + elastic + rotation run:
     72md.slr.rigid=1; md.slr.elastic=1; md.slr.rotation=1;
     73md=solve(md,'Sealevelrise');
     74Srotation=md.results.SealevelriseSolution.Sealevel;
     75
     76%Fields and tolerances to track changes
     77field_names     ={'noRotation','Rotation'};
     78field_tolerances={1e-13,1e-13};
     79field_values={SnoRotation,Srotation};
  • ../trunk-jpl/test/NightlyRun/test2110.m

     
    1616
    1717%love numbers:
    1818nlov=10001;     % horizontal displacements do not work for low degree truncation, e.g., 101
    19 md.esa.love_h = love_numbers('h','CM'); md.esa.love_h(nlov+1:end)=[];
    20 md.esa.love_l = love_numbers('l','CM'); md.esa.love_l(nlov+1:end)=[];
     19%md.esa.love_h = love_numbers('h','CM'); md.esa.love_h(nlov+1:end)=[];
     20%md.esa.love_l = love_numbers('l','CM'); md.esa.love_l(nlov+1:end)=[];
     21md.esa.love_h = love_numbers('h'); md.esa.love_h(nlov+1:end)=[];
     22md.esa.love_l = love_numbers('l'); md.esa.love_l(nlov+1:end)=[];
    2123
    2224%mask:  {{{
    2325        %make sure wherever there is an ice load, that the mask is set to ice:
Note: See TracBrowser for help on using the repository browser.