- Timestamp:
- 01/06/09 10:53:18 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/mode_sahelien/composite_hgt700_EOF12_ER30100_dat.m
r15 r16 1 % 2 1 3 % initialisation 2 clear; close all;3 4 clear; 5 close all; 4 6 5 7 % etape 1 :on selectionne les mois d ete (attention aux annees bixestiles!) … … 8 10 hgt700=zeros(122,49,144,28); 9 11 10 siz=31+28+31+30+31+1; sizbis=31+28+31+30+31+30+31+31+30; 12 siz=31+28+31+30+31+1; 13 sizbis=31+28+31+30+31+30+31+31+30; 11 14 ncload('hgt700.1979.nc'); hgt700(:,:,:,1)=hgt(siz:sizbis,1,:,:); clear hgt; 12 15 ncload('hgt700.1980.nc'); hgt700(:,:,:,2)=hgt(siz+1:sizbis+1,1,:,:); clear hgt; … … 46 49 47 50 %%%%%%%%%%%%%%% FICHIER OLR 48 % ouverture / lecture du fichier 51 % ouverture / lecture du fichier 49 52 load eof12_rossby_30100.txt 50 53 ind_olr=reshape(eof12_rossby_30100,122,28); … … 53 56 % on calcule l ecart type sur la serie entiere de l OLR 54 57 ind_olr1=reshape(ind_olr, k,1); 55 ind_olr2=std(ind_olr1); clear ind_olr1;56 57 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 58 ind_olr2=std(ind_olr1); 59 clear ind_olr1; 60 58 61 % GEOPOTENTIEL 59 62 % intialisation des tableaux 60 hgt700_filtre_compomax=NaN*ones(60,31,49,144); 63 hgt700_filtre_compomax=NaN*ones(60,31,49,144); 61 64 hgt700_filtre_compomin=NaN*ones(60,31,49,144); 62 65 63 compteurmax=0; 66 compteurmax=0; 64 67 compteurmin=0; 65 68 66 for a=1:28; % boucle sur les annees 67 clear delta; 69 % boucle sur les annees 70 for a=1:28; 71 clear delta; 68 72 delta=zeros(122,1); 69 for b=1:122; % boucle sur les jours : on prepare avant 73 % boucle sur les jours : on prepare avant 74 for b=1:122; 70 75 if b>1; 71 76 delta(b)=ind_olr(b,a)-ind_olr(b-1,a); 72 77 end; 73 78 end; 74 for b=1:122; % boucle sur les jours 75 if (b>22 && b<112); % 1ere condition (laisser une marge de 10) 76 % cas 1 : max deltas apres negetifs et deltas avant postifs 77 if (delta(b+1)<0 && delta(b)<0 && delta(b-1)>0 && delta(b-2)>0 && ind_olr(b,a)>ind_olr2); 79 % boucle sur les jours 80 for b=1:122; 81 % 1ere condition (laisser une marge de 10) 82 if (b>22 && b<112); 83 % cas 1 : max deltas apres negetifs et deltas avant postifs 84 if (delta(b+1)<0 && delta(b)<0 && delta(b-1)>0 && delta(b-2)>0 && ind_olr(b,a)>ind_olr2); 78 85 compteurmax=compteurmax+1; 79 86 hgt700_filtre_compomax(compteurmax,1,:,:)=hgt(b-21,a,:,:); … … 111 118 hgt700_filtre_compomax(compteurmax,31,:,:)=hgt(b+9,a,:,:); 112 119 113 % cas 2 : min deltas apres positifs et deltas avant negatifs 120 % cas 2 : min deltas apres positifs et deltas avant negatifs 114 121 elseif (delta(b+1)>0 && delta(b)>0 && delta(b-1)<0 && delta(b-2)<0 && ind_olr(b,a)<(-ind_olr2)); 115 122 compteurmin=compteurmin+1; … … 147 154 hgt700_filtre_compomin(compteurmin,30,:,:)=hgt(b+8,a,:,:); 148 155 hgt700_filtre_compomin(compteurmin,31,:,:)=hgt(b+9,a,:,:); 149 156 150 157 end; 151 158 end; 152 end; 159 end; 153 160 end; 154 161 … … 156 163 % on fait la somme des valeurs de hgt700_filtreentiel sur le nbre d occurences 157 164 % on obtent un tableau de la forme (jours-avant-apres,lon,lat) 158 hgt700_filtre_compomin1(:,:,:)=nanmean(hgt700_filtre_compomin); clear hgt700_filtre_compomin; 159 hgt700_filtre_compomax1(:,:,:)=nanmean(hgt700_filtre_compomax); clear hgt700_filtre_compomax; 160 161 x=[-10:1:10]'; %' 162 163 figure(1); 165 hgt700_filtre_compomin1(:,:,:)=nanmean(hgt700_filtre_compomin); 166 clear hgt700_filtre_compomin; 167 hgt700_filtre_compomax1(:,:,:)=nanmean(hgt700_filtre_compomax); 168 clear hgt700_filtre_compomax; 169 170 x=[-10:1:10]'; 171 172 figure(1); 164 173 orient('landscape'); 165 174 lat=lat';
Note: See TracChangeset
for help on using the changeset viewer.