radius=1e6;
shelfextent=2e5;

md=roundmesh(model,radius,50000);
%fix center node to 0,0
rad=sqrt(md.mesh.x.^2+md.mesh.y.^2);
pos=find(rad==min(rad));
md.mesh.x(pos)=0; md.mesh.y(pos)=0; %the closest node to the center is changed to be exactly at the center
xelem=md.mesh.x(md.mesh.elements)*[1;1;1]/3;
yelem=md.mesh.y(md.mesh.elements)*[1;1;1]/3;
rad=sqrt(xelem.^2+yelem.^2);
flags=zeros(md.mesh.numberofelements,1);
pos=find(rad>=(radius-shelfextent));
flags(pos)=1;
md=setmask(md,flags,''); 
md=parameterize(md,'../Par/RoundSheetShelf.par');
md=setflowequation(md,'macayeal','all');
md.cluster=generic('name',oshostname(),'np',3);

md.transient.isthermal=0;
md.transient.isprognostic=0;
md.transient.isdiagnostic=0;
md.transient.isgroundingline=1;

%test different grounding line dynamics.
md.groundingline.migration='AgressiveMigration';
md=solve(md,TransientSolutionEnum);
element_on_iceshelf_agressive=(md.results.TransientSolution.MaskElementonfloatingice);

md.groundingline.migration='SoftMigration';
md=solve(md,TransientSolutionEnum);
element_on_iceshelf_soft=(md.results.TransientSolution.MaskElementonfloatingice);

%Fields and tolerances to track changes
field_names     ={'ElementOnIceShelfAgressive','ElementOnIceShelfSoft'};
field_tolerances={1e-13,1e-13};
field_values={element_on_iceshelf_agressive,element_on_iceshelf_soft};
