Changeset 16 for trunk/src/SIMULS_IRCAAM/composite_hgt500_AFR_eof2_30100.m
- Timestamp:
- 01/06/09 10:53:18 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/SIMULS_IRCAAM/composite_hgt500_AFR_eof2_30100.m
r15 r16 1 % 2 1 3 % initialisation 2 clear; close all; 4 clear; 5 close all; 3 6 4 7 load hgt500_afr.mat … … 12 15 hgt500b(:,:,:,1:64)=hgt500(:,:,:,65:128); 13 16 hgt500b(:,:,:,65:128)=hgt500(:,:,:,1:64); 14 clear hgt500; hgt500=hgt500b; clear hgt500b 17 clear hgt500; 18 hgt500=hgt500b; 19 clear hgt500b 15 20 16 21 % on desaisonalise 17 22 hgt1=permute(hgt500,[2 1 3 4]); 18 hgt2(:,:,:)=nanmean(hgt1); clear hgt1; 23 hgt2(:,:,:)=nanmean(hgt1); 24 clear hgt1; 19 25 hgt3=reshape(hgt500, 3538,64,128); 20 hgt4(:,:)=nanmean(hgt3); clear hgt3; 26 hgt4(:,:)=nanmean(hgt3); 27 clear hgt3; 21 28 22 29 for a=1:122; 23 30 for b=1:28; 24 31 for c=1:37; 25 for d=1:128; 26 hgt500(a,b,c,d)=hgt500(a,b,c,d)-(hgt2(a,c,d)-hgt4(c,d)); 32 for d=1:128; 33 hgt500(a,b,c,d)=hgt500(a,b,c,d)-(hgt2(a,c,d)-hgt4(c,d)); 27 34 end; 28 35 end; … … 31 38 clear hgt2 hgt4; 32 39 33 34 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%35 36 40 load eof2_AFR_30100.txt 37 41 38 42 % on met sous la forme annee mois 39 hgt500_eof=reshape(eof2_AFR_30100,122,29); clear eof2_AFR_30100; 43 hgt500_eof=reshape(eof2_AFR_30100,122,29); 44 clear eof2_AFR_30100; 40 45 41 46 % on calcule l ecart type sur la serie temporelle de l HGT500 42 k=122*29; 47 k=122*29; 43 48 hgt500bis=reshape(hgt500_eof,k,1); 44 hgt500bis=std(hgt500bis); 49 hgt500bis=std(hgt500bis); 45 50 46 51 % intialisation des tableaux 47 hgt500_filtre_compomax=NaN*ones(50,31,64,128); 52 hgt500_filtre_compomax=NaN*ones(50,31,64,128); 48 53 hgt500_filtre_compomin=NaN*ones(50,31,64,128); 49 54 50 compteurmax=0; 55 compteurmax=0; 51 56 compteurmin=0; 52 57 53 for a=1:29; % boucle sur les annees 54 clear delta; 58 % boucle sur les annees 59 for a=1:29; 60 clear delta; 55 61 delta=zeros(122,1); 56 for b=1:122; % boucle sur les jours : on prepare avant 62 % boucle sur les jours : on prepare avant 63 for b=1:122; 57 64 if b>1; 58 65 delta(b)=hgt500_eof(b,a)-hgt500_eof(b-1,a); 59 66 end; 60 67 end; 61 for b=1:122; % boucle sur les jours 62 if (b>20 && b<112); % 1ere condition (laisser une marge de 10) 63 % cas 1 : max deltas apres negetifs et deltas avant postifs 64 if (delta(b+1)<0 && delta(b)<0 && delta(b-1)>0 && delta(b-2)>0 && hgt500_eof(b,a)>(hgt500bis)); 68 % boucle sur les jours 69 for b=1:122; 70 % 1ere condition (laisser une marge de 10) 71 if (b>20 && b<112); 72 % cas 1 : max deltas apres negetifs et deltas avant postifs 73 if (delta(b+1)<0 && delta(b)<0 && delta(b-1)>0 && delta(b-2)>0 && hgt500_eof(b,a)>(hgt500bis)); 65 74 compteurmax=compteurmax+1; 66 75 hgt500_filtre_compomax(compteurmax,1,:,:)=hgt500(b-20,a,:,:); … … 97 106 hgt500_filtre_compomax(compteurmax,30,:,:)=hgt500(b+9,a,:,:); 98 107 hgt500_filtre_compomax(compteurmax,31,:,:)=hgt500(b+10,a,:,:); 99 % cas 2 : min deltas apres positifs et deltas avant negatifs 108 % cas 2 : min deltas apres positifs et deltas avant negatifs 100 109 elseif (delta(b+1)>0 && delta(b)>0 && delta(b-1)<0 && delta(b-2)<0 && hgt500_eof(b,a)<(hgt500bis)); 101 110 compteurmin=compteurmin+1; … … 136 145 end; 137 146 end; 138 end; 147 end; 139 148 end; 140 149 hgt500_filtre_compomin=hgt500_filtre_compomin(1:compteurmin,:,:,:); … … 143 152 % on fait la somme des valeurs de hgt500_filtreentiel sur le nbre d occurences 144 153 % on obtent un tableau de la forme (jours-avant-apres,lon,lat) 145 hgt500_filtre_compomin1(:,:,:)=mean(hgt500_filtre_compomin); clear hgt500_filtre_compomin; 146 hgt500_filtre_compomax1(:,:,:)=mean(hgt500_filtre_compomax); clear hgt500_filtre_compomax; 147 148 x=[-10:1:10]'; %' 149 150 figure(1); orient('landscape'); 151 152 lat=lat'; 154 hgt500_filtre_compomin1(:,:,:)=mean(hgt500_filtre_compomin); 155 clear hgt500_filtre_compomin; 156 hgt500_filtre_compomax1(:,:,:)=mean(hgt500_filtre_compomax); 157 clear hgt500_filtre_compomax; 158 159 x=[-10:1:10]'; 160 161 figure(1); 162 orient('landscape'); 163 164 lat=lat'; 153 165 lon=lon-180; 154 166 for e=1:7; … … 176 188 delta_hgt500_filtre_min(1,2)=100.0001; 177 189 fin=-30+24*2.5; 178 190 179 191 clear fin 180 192 fin=-10+16*2.5; … … 184 196 else 185 197 set (gca,'XTick',[-180:60:180],'XTickLabel',[' ';' ';' ';' ';' ';' '],'fontname','Arial','fontsize',6); 186 end 198 end 187 199 set (gca,'YTick',[30:10:70],'YTickLabel',['30N';'40N';'50N';'60N';'70N'],'fontname','Arial','fontsize',6); 188 200 if e==4; 189 co=colorbar; 201 co=colorbar; 190 202 set(co,'ytick',[-80:40:80],'yticklabel',[-80:40:80],'fontname','Arial','fontsize',5); 191 203 end; 192 hold on; cartemonde1; 204 hold on; 205 cartemonde1; 193 206 set (gca,'tickDir','out'); 194 207 axis equal 195 208 axis([-180 180 20 80]); 196 if e==7; 209 if e==7; 197 210 title('HGT500 composite EOF2 30100j simulation AFR ','fontsize',8) ; 198 211 end 199 212 text(-270,40,['day = ',num2str(f-21)],'fontname','Arial','fontsize',10); 200 213 pos_vert=e/10; 201 set (gca,'position',[0.2 pos_vert 0.5 0.1]) 214 set (gca,'position',[0.2 pos_vert 0.5 0.1]) 202 215 end; 203 216 print -depsc2 composite_hgt500_afr_eof2_30100a.eps 204 217 205 figure(2); orient('landscape'); 218 figure(2); 219 orient('landscape'); 206 220 207 221 for e=1:7; … … 229 243 delta_hgt500_filtre_min(1,2)=100.0001; 230 244 fin=-30+24*2.5; 231 245 232 246 clear fin 233 247 fin=-10+16*2.5; … … 237 251 else 238 252 set (gca,'XTick',[-180:60:180],'XTickLabel',[' ';' ';' ';' ';' ';' '],'fontname','Arial','fontsize',6); 239 end 253 end 240 254 set (gca,'YTick',[30:10:70],'YTickLabel',['30N';'40N';'50N';'60N';'70N'],'fontname','Arial','fontsize',6); 241 255 if e==4; 242 co=colorbar; 256 co=colorbar; 243 257 set(co,'ytick',[-80:40:80],'yticklabel',[-80:40:80],'fontname','Arial','fontsize',5); 244 258 end; 245 hold on; cartemonde1; 259 hold on; 260 cartemonde1; 246 261 set (gca,'tickDir','out'); 247 262 axis equal … … 252 267 text(-270,40,['day = ',num2str(f-21)],'fontname','Arial','fontsize',10); 253 268 pos_vert=e/10; 254 set (gca,'position',[0.2 pos_vert 0.5 0.1]) 269 set (gca,'position',[0.2 pos_vert 0.5 0.1]) 255 270 end; 256 271 print -depsc2 composite_hgt500_afr_eof2_30100b.eps 257 258 259
Note: See TracChangeset
for help on using the changeset viewer.