Changeset 4869
- Timestamp:
- 07/29/10 09:29:57 (15 years ago)
- Location:
- issm/trunk/test/Validation/EISMINT
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/test/Validation/EISMINT/Diagnostic1/Square.par
r3768 r4869 6 6 md.thickness=500*ones(md.numberofgrids,1); 7 7 md.firn_layer=0*ones(md.numberofgrids,1); 8 md.bed=- di*md.thickness;8 md.bed=-md.rho_ice/md.rho_water*md.thickness; 9 9 md.surface=md.bed+md.thickness; 10 10 … … 15 15 pos=find(md.elementoniceshelf); 16 16 md.drag_coefficient(md.elements(pos,:))=0; 17 md.drag -p=ones(md.numberofelements,1);17 md.drag_p=ones(md.numberofelements,1); 18 18 md.drag_q=ones(md.numberofelements,1); 19 19 -
issm/trunk/test/Validation/EISMINT/Diagnostic1/runme.m
r899 r4869 8 8 md=parameterize(md,'Square.par'); 9 9 md=setelementstype(md,'macayeal','all'); %MacAyeal's model and 2d 10 md.verbose=10; 10 11 11 12 %Compute solution for MacAyeal's model 12 md=solve(md,'analysis_type', 'diagnostic','package','ice');13 md=solve(md,'analysis_type',DiagnosticSolutionEnum); 13 14 14 15 %plot results 15 plotmodel(md,'data','vx','data','vy','contourlevels',{0,20,40,-20,-40},'contourlevels',{-100,-200,-300,-400,-500,-600}) 16 vx=zeros(md.numberofgrids,1); 17 vx(md.results.DiagnosticSolution.Vx.index)=md.results.DiagnosticSolution.Vx.value; 18 vy=zeros(md.numberofgrids,1); 19 vy(md.results.DiagnosticSolution.Vy.index)=md.results.DiagnosticSolution.Vy.value; 20 21 plotmodel(md,'data',vx,'data',vy,'contourlevels',{0,20,40,-20,-40},'contourlevels',{-100,-200,-300,-400,-500,-600}) -
issm/trunk/test/Validation/EISMINT/Diagnostic2/Square.par
r3768 r4869 6 6 md.thickness=500*ones(md.numberofgrids,1); 7 7 md.firn_layer=0*ones(md.numberofgrids,1); 8 md.bed=- di*md.thickness;8 md.bed=-md.rho_ice/md.rho_water*md.thickness; 9 9 md.surface=md.bed+md.thickness; 10 10 … … 32 32 md=SetMarineIceSheetBC(md,'Front.exp'); 33 33 pos=find(md.y==max(md.y)); %grids on the upper boundary condition 34 md.dirichletvalues_diag(pos,2)=400*(((md.x(pos)-100000)/25000).^2-ones(size(pos,1),1)).*heaviside((1+eps)*ones(size(pos,1),1)-((md.x(pos)-100000)/25000).^2); 34 md.spcvelocity(pos,5)=400*(((md.x(pos)-100000)/25000).^2-ones(size(pos,1),1)).*heaviside((1+eps)*ones(size(pos,1),1)-((md.x(pos)-100000)/25000).^2); 35 36 disp(' cluster properties'); 37 md.np=3; 38 md.cluster='wilkes'; -
issm/trunk/test/Validation/EISMINT/Diagnostic2/runme.m
r899 r4869 8 8 md=parameterize(md,'Square.par'); 9 9 md=setelementstype(md,'macayeal','all'); %MacAyeal's model and 2d 10 md.verbose=10; 10 11 11 12 %Compute solution for MacAyeal's model 12 md=solve(md,'analysis_type', 'diagnostic','package','ice');13 md=solve(md,'analysis_type',DiagnosticSolutionEnum); 13 14 14 15 %plot results 15 plotmodel(md,'data','vx','data','vy','contourlevels',{0,20,40,-20,-40,-60,60},'contourlevels',{-100,-200,-300,-400,-500,-600,-700,-800}) 16 vx=zeros(md.numberofgrids,1); 17 vx(md.results.DiagnosticSolution.Vx.index)=md.results.DiagnosticSolution.Vu.value; 18 vy=zeros(md.numberofgrids,1); 19 vy(md.results.DiagnosticSolution.Vy.index)=md.results.DiagnosticSolution.Vy.value; 20 plotmodel(md,'data',vx,'data',vy,'contourlevels',{0,20,40,-20,-40,-60,60},'contourlevels',{-100,-200,-300,-400,-500,-600,-700,-800}) -
issm/trunk/test/Validation/EISMINT/MassConservation/Square.par
r3768 r4869 15 15 pos=find(md.elementoniceshelf); 16 16 md.drag_coefficient(md.elements(pos,:))=0; 17 md.drag -p=ones(md.numberofelements,1);17 md.drag_p=ones(md.numberofelements,1); 18 18 md.drag_q=ones(md.numberofelements,1); 19 19 … … 48 48 md.spcthickness(pos,1)=1; 49 49 md.spcthickness(pos,2)=500; 50 md.prognostic_DG=1; -
issm/trunk/test/Validation/EISMINT/MassConservation/runme.m
r3573 r4869 28 28 i=i+1; 29 29 time=time+md.dt; 30 md=solve(md,'analysis_type','prognostic2','package','ice'); 31 %thickness=full(sparse(reshape(md.elements',3*md.numberofelements,1),1,md.results.prognostic2.thickness)); 32 %md.thickness=thickness./connectivity; 33 md.thickness=md.results.prognostic2.thickness; 30 md=solve(md,'analysis_type',PrognosticSolutionEnum); 31 thickness =zeros(md.numberofgrids,1); 32 connectivity=sparse(md.results.PrognosticSolution.Thickness.index(:),1,1); 33 thickness =sparse(md.results.PrognosticSolution.Thickness.index(:),1,md.results.PrognosticSolution.Thickness.value(:)); 34 md.thickness=full(thickness./connectivity); 34 35 md.thickness(pos)=500+100*sin(2*pi*time/200)*ones(size(pos,1),1); 35 36 md.surface=md.bed+md.thickness; -
issm/trunk/test/Validation/EISMINT/MassConservation/runme2.m
r3581 r4869 33 33 i=i+1; 34 34 time=time+md.dt; 35 md=solve(md,'analysis_type','prognostic2','package','ice'); 36 %thickness=full(sparse(reshape(md.elements',3*md.numberofelements,1),1,md.results.prognostic2.thickness)); 37 %md.thickness=thickness./connectivity; 38 md.thickness=md.results.prognostic2.thickness; 35 md=solve(md,'analysis_type',PrognosticSolutionEnum); 36 thickness =zeros(md.numberofgrids,1); 37 connectivity=sparse(md.results.PrognosticSolution.Thickness.index(:),1,1); 38 thickness =sparse(md.results.PrognosticSolution.Thickness.index(:),1,md.results.PrognosticSolution.Thickness.value(:)); 39 md.thickness=full(thickness./connectivity); 39 40 md.thickness(posLEFT)=500+100*sin((2*pi/200)*(time-sinus*md.y(posLEFT)/sqrt(md.vx(1)^2+md.vy(1)^2))); 40 41 md.thickness(posDOWN)=500+100*sin((2*pi/200)*(time-cosinus*md.x(posDOWN)/sqrt(md.vx(1)^2+md.vy(1)^2))); -
issm/trunk/test/Validation/EISMINT/Transient/Square.par
r3768 r4869 6 6 md.thickness=500*ones(md.numberofgrids,1); 7 7 md.firn_layer=0*ones(md.numberofgrids,1); 8 md.bed=- di*md.thickness;8 md.bed=-md.rho_ice/md.rho_water*md.thickness; 9 9 md.surface=md.bed+md.thickness; 10 10 … … 26 26 27 27 disp(' creating accumulation rates'); 28 md.accumulation_rate= 0.2*ones(md.numberofgrids,1); %0.2m/a28 md.accumulation_rate=200*ones(md.numberofgrids,1); %0.2m/a 29 29 md.melting_rate=0*ones(md.numberofgrids,1); %0m/a 30 30 31 31 disp(' boundary conditions '); 32 32 md=SetMarineIceSheetBC(md,'Front.exp'); 33 pos=find(md.y==max(md.y)); %grids on the upper boundary condition 34 md.spcvelocity(pos,5)=400*(((md.x(pos)-100000)/25000).^2-ones(size(pos,1),1)).*heaviside((1+eps)*ones(size(pos,1),1)-((md.x(pos)-100000)/25000).^2); 33 35 34 disp(' boundary conditions for prognostic model:');35 md. gridondirichlet_prog=zeros(md.numberofgrids,1);36 md. dirichletvalues_prog=zeros(md.numberofgrids,1);36 disp(' cluster properties'); 37 md.np=3; 38 md.cluster='wilkes'; 37 39 38 pos=find(md.y==max(md.y)); %grids on the upper boundary condition 39 md.dirichletvalues_diag(pos,2)=400*(((md.x(pos)-100000)/25000).^2-ones(size(pos,1),1)).*heaviside((1+eps)*ones(size(pos,1),1)-((md.x(pos)-100000)/25000).^2); 40 md.neumannvalues_prog=zeros(size(md.segmentonneumann_prog,1),1); 41 md.neumannvalues_prog(:)=NaN; %free radiation 42 43 pos=find(md.y==max(md.y)); %grids on the upper boundary condition 44 md.gridondirichlet_prog(pos)=1; 45 md.dirichletvalues_prog(pos)=500; 40 disp(' prognostic boundary conditions '); 41 pos=find(md.y==max(md.y)); 42 md.spcthickness(pos,1)=1; 43 md.spcthickness(pos,2)=md.thickness(pos); -
issm/trunk/test/Validation/EISMINT/Transient/runme.m
r899 r4869 3 3 %Evolution of the ice shelf 4 4 md=model; 5 md=mesh(md,'DomainOutline.exp', 7100);5 md=mesh(md,'DomainOutline.exp',5100); 6 6 md=geography(md,'all',''); 7 7 md=parameterize(md,'Square.par'); 8 8 md=setelementstype(md,'macayeal','all'); %MacAyeal's model and 2d 9 9 10 md.np=5; 11 md.cluster='wilkes'; 12 md.verbose=3; 10 13 %Compute solution for MacAyeal's model 11 md=solve(md,'analysis_type', 'diagnostic','package','ice');14 md=solve(md,'analysis_type',DiagnosticSolutionEnum); 12 15 13 16 %Launch transient solution 14 md.ndt=5000*md.yts; %time of evolution 15 md.dt=500*md.yts; %time vetween two iterations 16 md=solve(md,'analysis_type','transient'); 17 vx=zeros(md.numberofgrids,1); 18 vx(md.results.DiagnosticSolution.Vx.index)=md.results.DiagnosticSolution.Vx.value; 19 vy=zeros(md.numberofgrids,1); 20 vy(md.results.DiagnosticSolution.Vy.index)=md.results.DiagnosticSolution.Vy.value; 21 md.vx=vx; 22 md.vy=vy; 23 24 md.ndt=1000*md.yts; %time of evolution 25 md.dt=20*md.yts; %time vetween two iterations 26 md=solve(md,'analysis_type',Transient2DSolutionEnum); 17 27 18 28 %plot results 19 plotmodel(md,'data',md.results. transient(end).vx,'data',md.results.transient(end).vy,'data',md.results.transient(end).thickness)29 plotmodel(md,'data',md.results.Transient2DSolution(end).Vx,'data',md.results.Transient2DSolution(end).Vy,'data',md.results.Transient2DSolution(end).Thickness)
Note:
See TracChangeset
for help on using the changeset viewer.