/[MITgcm]/MITgcm_contrib/gael/matlab_class/gcmfaces_diags/diags_set_C.m
ViewVC logotype

Annotation of /MITgcm_contrib/gael/matlab_class/gcmfaces_diags/diags_set_C.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.6 - (hide annotations) (download)
Fri Jan 31 03:28:13 2014 UTC (11 years, 5 months ago) by heimbach
Branch: MAIN
Changes since 1.5: +9 -9 lines
Few more unit edits.

1 gforget 1.1
2     if userStep==1;%diags to be computed
3 gforget 1.4 listDiags='fldTzonmean fldSzonmean fldETANzonmean fldSSHzonmean fldSIzonmean fldMLDzonmean';
4 gforget 1.1 listDiags=[listDiags ' IceAreaNorth IceAreaSouth IceVolNorth IceVolSouth SnowVolNorth SnowVolSouth'];
5 gforget 1.4 listDiags=[listDiags ' Ueq Teq SSHglo Tglo Sglo TgloProf SgloProf'];
6 gforget 1.1 elseif userStep==2;%input files and variables
7     listFlds={ 'THETA','SALT','ETAN','SIarea','SIheff','SIhsnow','sIceLoad','MXLDEPTH','UVELMASS','VVELMASS'};
8     listFldsNames=deblank(listFlds);
9     listFiles={'state_2d_set1','other_2d_set1','state_3d_set1','trsp_3d_set1'};
10     listSubdirs={[dirModel 'diags/OTHER/' ],[dirModel 'diags/STATE/' ],[dirModel 'diags/TRSP/']};
11     elseif userStep==3;%computational part;
12     %mask and re-arrange fields:
13     fldT=THETA.*mygrid.mskC; fldS=SALT.*mygrid.mskC;
14     fldETAN=ETAN.*mygrid.mskC(:,:,1);
15 gforget 1.4 fldSSH=(ETAN+sIceLoad/myparms.rhoconst).*mygrid.mskC(:,:,1);
16 gforget 1.1 fldSI=SIarea.*mygrid.mskC(:,:,1);
17     fldMLD=MXLDEPTH.*mygrid.mskC(:,:,1);
18     ux=UVELMASS.*mygrid.mskW; vy=VVELMASS.*mygrid.mskS;
19     [ue,un]=calc_UEVNfromUXVY(ux,vy);
20    
21     %compute zonal means:
22     [fldTzonmean]=calc_zonmean_T(fldT);
23     [fldSzonmean]=calc_zonmean_T(fldS);
24     [fldETANzonmean]=calc_zonmean_T(fldETAN);
25 gforget 1.4 [fldSSHzonmean]=calc_zonmean_T(fldSSH);
26 gforget 1.1 [fldSIzonmean]=calc_zonmean_T(fldSI);
27     [fldMLDzonmean]=calc_zonmean_T(fldMLD);
28    
29     %compute hemispheric ice sums:
30     fld=SIarea.*mygrid.RAC.*(mygrid.YC>0); IceAreaNorth=sum(fld);
31     fld=SIarea.*mygrid.RAC.*(mygrid.YC<0); IceAreaSouth=sum(fld);
32     fld=SIheff.*mygrid.RAC.*(mygrid.YC>0); IceVolNorth=sum(fld);
33     fld=SIheff.*mygrid.RAC.*(mygrid.YC<0); IceVolSouth=sum(fld);
34     fld=SIhsnow.*mygrid.RAC.*(mygrid.YC>0); SnowVolNorth=sum(fld);
35     fld=SIhsnow.*mygrid.RAC.*(mygrid.YC<0); SnowVolSouth=sum(fld);
36    
37     %equatorial sections of T and U:
38     [secX,secY,Teq]=gcmfaces_section([],0,fldT,1);
39     [secX,secY,Ueq]=gcmfaces_section([],0,ue,1);
40    
41     %global means and profiles:
42 gforget 1.4 msk=mygrid.RAC.*mygrid.mskC(:,:,1);
43     SSHglo=nansum(fldSSH.*msk)./nansum(msk);
44     %
45 gforget 1.1 msk=mygrid.mskC.*mygrid.hFacC;
46     msk=msk.*mk3D(mygrid.RAC,msk).*mk3D(mygrid.DRF,msk);
47     Tglo=nansum(fldT.*msk)./nansum(msk);
48     Sglo=nansum(fldS.*msk)./nansum(msk);
49     nr=length(mygrid.RC);
50     TgloProf=zeros(nr,1); SgloProf=zeros(nr,1);
51     for kk=1:nr;
52     rac=mygrid.RAC.*mygrid.mskC(:,:,kk);
53     TgloProf(kk)=nansum(rac.*fldT(:,:,kk))/nansum(rac);
54     SgloProf(kk)=nansum(rac.*fldS(:,:,kk))/nansum(rac);
55     end;
56 gforget 1.2
57    
58     %===================== COMPUTATIONAL SEQUENCE ENDS =========================%
59     %===================== PLOTTING SEQUENCE BEGINS =========================%
60    
61     elseif userStep==-1;%plotting
62    
63     if isempty(setDiagsParams);
64     choicePlot={'all'};
65     else;
66     choicePlot=setDiagsParams;
67     end;
68    
69 gforget 1.4 %ensure backward compatibility
70     if ~isfield(alldiag,'fldSSHzonmean'); alldiag.fldSSHzonmean=alldiag.fldETANLEADSzonmean; end;
71     if ~isfield(alldiag,'SSHglo'); alldiag.SSHglo=NaN*alldiag.Tglo; end;
72    
73 gforget 1.2 if multiTimes&(sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'zmtend')));
74    
75 gforget 1.4 if addToTex; write2tex(fileTex,1,'zonal mean tendencies',2); end;
76    
77 gforget 1.2 figureL; set(gcf,'Renderer','zbuffer');
78     %cc=[-2:0.25:2];
79     cc=1/100*[[-200:50:-100] [-75 -50] [-35:10:35] [50 75] [100:50:200]]
80     if doAnomalies; cc=scaleAnom/10*cc; end;
81     X=mygrid.LATS*ones(1,length(mygrid.RC)); Y=ones(length(mygrid.LATS),1)*(mygrid.RC');
82     %T
83     subplot(2,1,1);
84     fld=annualmean(alldiag.listTimes,alldiag.fldTzonmean,'last')-annualmean(alldiag.listTimes,alldiag.fldTzonmean,'first');
85     depthStretchPlot('pcolor',{X,Y,fld}); shading interp;
86     cbar=gcmfaces_cmap_cbar(cc); title('zonal mean T anomaly');
87     %S
88     subplot(2,1,2);
89     fld=annualmean(alldiag.listTimes,alldiag.fldSzonmean,'last')-annualmean(alldiag.listTimes,alldiag.fldSzonmean,'first');
90     depthStretchPlot('pcolor',{X,Y,fld}); shading interp;
91     cbar=gcmfaces_cmap_cbar(cc/4); title('zonal mean S anomaly');
92     %
93     myCaption={myYmeanTxt,', last year minus first year -- zonal mean temperature (degC; top) and salinity (psu; bottom)'};
94     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
95    
96     end;
97    
98     if sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'eq'));
99    
100 gforget 1.4 if addToTex; write2tex(fileTex,1,'equatorial sections',2); end;
101    
102 gforget 1.2 %time mean equator sections :
103     figureL; set(gcf,'Renderer','zbuffer'); cc0=[-2:0.25:2];
104     [secX,secY,LONeq]=gcmfaces_section([],0,mygrid.XC,1);
105     X=LONeq*ones(1,length(mygrid.RC)); Y=ones(length(LONeq),1)*mygrid.RC';
106     X=circshift(X,[-180 0]); X(X<0)=X(X<0)+360;
107     %T
108     subplot(2,1,1);
109     fld=annualmean(alldiag.listTimes,alldiag.Teq,'all'); fld=circshift(fld,[-180 0]);
110     depthStretchPlot('pcolor',{X,Y,fld},[0:50:350],[0 350 350]); shading interp;
111     if ~doAnomalies; cc=18+6*cc0; else; cc=scaleAnom/10*cc0*2; end;
112     cbar=gcmfaces_cmap_cbar(cc); title('equator T (degC)');
113     %U
114     subplot(2,1,2);
115     fld=annualmean(alldiag.listTimes,alldiag.Ueq,'all'); fld=circshift(fld,[-180 0]);
116     depthStretchPlot('pcolor',{X,Y,fld},[0:50:350],[0 350 350]); shading interp;
117     if ~doAnomalies; cc=cc0/5*2; else; cc=scaleAnom/10*cc0/5; end;
118     cbar=gcmfaces_cmap_cbar(cc); title('equator zonal velocity (m/s)');
119     %
120     myCaption={myYmeanTxt,' mean -- equator temperature (degC;top) and zonal velocity (m/s;bottom)'};
121     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
122    
123     end;
124    
125     if multiTimes&(sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'gmtime')));
126    
127 gforget 1.4 if addToTex; write2tex(fileTex,1,'global mean properties',2); end;
128    
129 gforget 1.2 %global mean T/S:
130     figureL;
131 gforget 1.4 subplot(3,1,1); vec=alldiag.SSHglo;
132     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2);
133     aa=axis; axis([min(TT) max(TT) aa(3:4)]); grid on;
134 gforget 1.5 legend('monthly','annual mean'); title('Global Mean Sea level (m');
135     subplot(3,1,2); vec=alldiag.Tglo;
136 gforget 1.2 plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2);
137     aa=axis; axis([min(TT) max(TT) aa(3:4)]); grid on;
138     legend('monthly','annual mean'); title('Global Mean Temperature (degC)');
139 gforget 1.5 subplot(3,1,3); vec=alldiag.Sglo;
140 gforget 1.2 plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2);
141     aa=axis; axis([min(TT) max(TT) aa(3:4)]); grid on;
142     legend('monthly','annual mean'); title('Global Mean Salinity (psu)');
143     myCaption={'global mean T (degC; top) and S (psu; bottom)'};
144     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
145    
146     %global mean T/S profiles:
147     figureL; set(gcf,'Renderer','zbuffer'); cc0=[-2:0.25:2];
148     X=TT*ones(1,length(mygrid.RC)); Y=ones(length(TT),1)*(mygrid.RC'); X=X'; Y=Y';
149     %T
150     subplot(2,1,1);
151     [tmp1,fld]=annualmean(alldiag.listTimes,squeeze(alldiag.TgloProf),'first');
152     depthStretchPlot('pcolor',{X,Y,fld}); shading interp;
153     if ~doAnomalies; cc=cc0/5; else; cc=scaleAnom/10*cc0/10; end;
154     cbar=gcmfaces_cmap_cbar(cc); title('global mean T minus first year (K)');
155     %S
156     subplot(2,1,2);
157     [tmp1,fld]=annualmean(alldiag.listTimes,squeeze(alldiag.SgloProf),'first');
158     depthStretchPlot('pcolor',{X,Y,fld}); shading interp;
159     if ~doAnomalies; cc=cc0/50; else; cc=scaleAnom/10*cc0/50; end;
160     cbar=gcmfaces_cmap_cbar(cc); title('global mean S minus first year (psu)');
161     %
162     myCaption={'global mean temperature (K; top) and salinity (psu; bottom) minus first year'};
163     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
164    
165     end;
166    
167    
168     if multiTimes&(sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'lzmtime')));
169    
170 gforget 1.4 if addToTex; write2tex(fileTex,1,'zonal mean properties',2); end;
171    
172     listLatPlot=[-75 -65 -45 -25 0 25 45 65 75]
173 gforget 1.2 %zonal mean temperature profile at selected latitude:
174     for iLatPlot=1:length(listLatPlot);
175     tmp1=abs(mygrid.LATS-listLatPlot(iLatPlot));
176     iLat=find(tmp1==min(tmp1)); iLat=iLat(1);
177     figureL; set(gcf,'Renderer','zbuffer'); cc=[-2:0.25:2];
178     if doAnomalies; cc=scaleAnom/10*cc; end;
179     %T
180     subplot(2,1,1);
181     [tmp1,fld]=annualmean(alldiag.listTimes,squeeze(alldiag.fldTzonmean(iLat,:,:)),'first');
182     X=TT*ones(1,length(mygrid.RC)); Y=ones(length(TT),1)*(mygrid.RC'); X=X'; Y=Y';
183     title0=['mean T minus first year (K) at lat ~ ' num2str(listLatPlot(iLatPlot))];
184     depthStretchPlot('pcolor',{X,Y,fld}); shading interp; cbar=gcmfaces_cmap_cbar(cc/5); title(title0);
185     %S
186     subplot(2,1,2);
187     [tmp1,fld]=annualmean(alldiag.listTimes,squeeze(alldiag.fldSzonmean(iLat,:,:)),'first');
188     X=TT*ones(1,length(mygrid.RC)); Y=ones(length(TT),1)*(mygrid.RC'); X=X'; Y=Y';
189     title0=['mean S minus first year (psu) at lat ~ ' num2str(listLatPlot(iLatPlot))];
190     depthStretchPlot('pcolor',{X,Y,fld}); shading interp; cbar=gcmfaces_cmap_cbar(cc/25); title(title0);
191    
192     myCaption={'mean temperature (top; K) and salinity (bottom; psu) minus first year ',...
193     ['at lat $\\approx$ ' num2str(listLatPlot(iLatPlot))]};
194     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
195     end;
196    
197     end;
198    
199    
200     if multiTimes&(sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'szmtime')));
201    
202 gforget 1.4 if addToTex; write2tex(fileTex,1,'zonal mean properties (surface)',2); end;
203    
204 gforget 1.2 %zonal mean SST/SSS:
205     figureL; set(gcf,'Renderer','zbuffer'); cc0=[-2:0.25:2]; kk=1;
206     x=TT*ones(1,length(mygrid.LATS)); y=ones(nt,1)*mygrid.LATS'; x=x'; y=y';
207     %T
208     subplot(2,1,1);
209     fld=squeeze(alldiag.fldTzonmean(:,kk,:)); [tmp1,fld]=annualmean(alldiag.listTimes,fld,'first');
210     if ~doAnomalies; cc=cc0*3; else; cc=scaleAnom/10*cc0; end;
211     pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]); cbar=gcmfaces_cmap_cbar(cc);
212     title('zonal mean SST minus first year (degC)');
213     %S
214     subplot(2,1,2);
215     fld=squeeze(alldiag.fldSzonmean(:,kk,:)); [tmp1,fld]=annualmean(alldiag.listTimes,fld,'first');
216     if ~doAnomalies; cc=cc0*2/5; else; cc=scaleAnom/10*cc0/2; end;
217     pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]); cbar=gcmfaces_cmap_cbar(cc);
218     title('zonal mean SSS minus first year (psu)');
219     %
220     myCaption={'zonal mean temperature (degC; top) and salinity ',...
221     '(psu; bottom) minus first year (psu)',[' at ' num2str(-mygrid.RC(kk)) 'm depth']};
222     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
223    
224     figureL; set(gcf,'Renderer','zbuffer'); cc=[-2:0.25:2]; kk=1;
225     if doAnomalies; cc=scaleAnom/10*cc/2; end;
226     x=TT*ones(1,length(mygrid.LATS)); y=ones(nt,1)*mygrid.LATS'; x=x'; y=y';
227     %SSH
228     subplot(2,1,1);
229 gforget 1.4 [tmp1,fld]=annualmean(alldiag.listTimes,alldiag.fldSSHzonmean,'first');
230 gforget 1.2 pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]);
231     cbar=gcmfaces_cmap_cbar(2*cc/25); title(['zonal mean SSH minus first year (INCLUDING ice, in m)']);
232     %ETAN
233     subplot(2,1,2);
234     [tmp1,fld]=annualmean(alldiag.listTimes,alldiag.fldETANzonmean,'first');
235     pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]);
236     cbar=gcmfaces_cmap_cbar(4*cc/5); title(['zonal mean SSH minus first year (EXCLUDING ice, in m)']);
237     %
238     myCaption={'zonal mean SSH (m) minus first year, including ice (top) and below ice (bottom) '};
239     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
240    
241     figureL; set(gcf,'Renderer','zbuffer'); cc=[-2:0.25:2]; kk=1;
242     if doAnomalies; cc=scaleAnom/10*cc; end;
243     x=TT*ones(1,length(mygrid.LATS)); y=ones(nt,1)*mygrid.LATS'; x=x'; y=y';
244     %SSH
245     subplot(2,1,1);
246     fld=squeeze(alldiag.fldSIzonmean(:,tt));
247     pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]);
248 gforget 1.3 if doAnomalies; cc2=scaleAnom/50*cc; else; cc2=0.5+cc/4; end;
249     cbar=gcmfaces_cmap_cbar(cc2); title(['zonal mean Ice conc. -- in m ']);
250 gforget 1.2 %MLD
251     subplot(2,1,2);
252     fld=squeeze(alldiag.fldMLDzonmean(:,tt));
253     pcolor(x,y,fld); shading interp; axis([TT(1) TT(end) -90 90]);
254 gforget 1.3 if doAnomalies; cc2=scaleAnom*40*cc; else; cc2=200+500*cc/5; end;
255     cbar=gcmfaces_cmap_cbar(cc2); title(['zonal mean MLD -- in m ']);
256 gforget 1.2 %
257     myCaption={'zonal mean ice concentration (no units) and mixed layer depth (m)'};
258     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
259    
260     end;
261    
262    
263     if multiTimes&(sum(strcmp(choicePlot,'all'))|sum(strcmp(choicePlot,'icetime')));
264    
265 gforget 1.4 if addToTex; write2tex(fileTex,1,'seaice time series',2); end;
266    
267 gforget 1.2 %sea ice area
268     figureL;
269     subplot(2,1,1); vec=alldiag.IceAreaNorth/1e12;
270     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 20]);
271     if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
272 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Northern Hemisphere ice cover (in 10^{12}m^2)');
273 gforget 1.2 subplot(2,1,2); vec=alldiag.IceAreaSouth/1e12;
274     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 25]);
275 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Southern Hemisphere ice cover (in 10^{12}m^2)');
276 gforget 1.2 if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
277 heimbach 1.6 myCaption={'sea ice cover (in $10^{12}m^2$) in northern (top) and southern (bottom) hemisphere'};
278 gforget 1.2 if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
279    
280     %sea ice volume
281     figureL;
282     subplot(2,1,1); vec=alldiag.IceVolNorth/1e12;
283     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 50]);
284 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Northern Hemisphere ice volume (in 10^{12m}^3)');
285 gforget 1.2 if doAnomalies; aa(3:4)=scaleAnom*[-1 1]*2; axis(aa); end;
286     subplot(2,1,2); vec=alldiag.IceVolSouth/1e12;
287     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 15]);
288 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Southern Hemisphere ice volume (in 10^{12}m^3)');
289 gforget 1.2 if doAnomalies; aa(3:4)=scaleAnom*[-1 1]*2; axis(aa); end;
290 heimbach 1.6 myCaption={'sea ice volume (in $10^{12}m^3$) in northern (top) and southern (bottom) hemisphere'};
291 gforget 1.2 if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
292    
293     %snow volume
294     figureL;
295     subplot(2,1,1); vec=alldiag.SnowVolNorth/1e12;
296     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 5]);
297 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Northern Hemisphere snow volume (in 10^{12}m^3)');
298 gforget 1.2 if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
299     subplot(2,1,2); vec=alldiag.SnowVolSouth/1e12;
300     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 4]);
301 heimbach 1.6 grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Southern Hemisphere snow volume (in 10^{12}m^3)');
302 gforget 1.2 if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
303 heimbach 1.6 myCaption={'snow volume (in $10^{12}m^3$) in northern (top) and southern (bottom) hemisphere'};
304 gforget 1.2 if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
305    
306     if ~doAnomalies; %does not work for anomalies -> need to compute ratio in basic_diags_ecco
307     %sea ice thickness
308     figureL;
309     subplot(2,1,1); vec=alldiag.IceVolNorth./alldiag.IceAreaNorth;
310     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 5]);
311     grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Northern Hemisphere ice thickness (in m)');
312     if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
313     subplot(2,1,2); vec=alldiag.IceVolSouth./alldiag.IceAreaSouth;
314     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 2]);
315     grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Southern Hemisphere ice thickness (in m)');
316     if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
317     myCaption={'sea ice thickness (in m) in northern (top) and southern (bottom) hemisphere'};
318     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
319    
320     %sea ice thickness
321     figureL;
322     subplot(2,1,1); vec=alldiag.SnowVolNorth./alldiag.IceAreaNorth;
323     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 0.4]);
324     grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Northern Hemisphere snow thickness (in m)');
325     if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
326     subplot(2,1,2); vec=alldiag.SnowVolSouth./alldiag.IceAreaSouth;
327     plot(TT,vec,'LineWidth',2); hold on; plot(TT,runmean(vec,myNmean,2),'r','LineWidth',2); axis([min(TT) max(TT) 0 0.25]);
328     grid on; if myNmean>0; legend('monthly','annual mean'); end; title('Southern Hemisphere snow thickness (in m)');
329     if doAnomalies; aa(3:4)=scaleAnom*[-1 1]; axis(aa); end;
330     myCaption={'snow thickness (in m) in northern (top) and southern (bottom) hemisphere'};
331     if addToTex; write2tex(fileTex,2,myCaption,gcf); end;
332     end;
333    
334     end;
335    
336 gforget 1.1 end;

  ViewVC Help
Powered by ViewVC 1.1.22