source: trunk/PROGRAMMES/carte_SST.m @ 25

Last change on this file since 25 was 25, checked in by jmignot, 15 years ago

homogeneisation case noms programmes & sorties

File size: 5.8 KB
Line 
1%CARTE_SST  Ce programme permet de visualiser les cartes mensuelles moyennes de temperature de surface
2%
3% Date: Avril-Mai 2008
4% Auteur: juliette.mignot@locean-ipsl.upmc.fr
5% Contexte Ecole d'ete ENVI-STAT 2008
6
7%+
8%
9% module
10% ======
11%
12% ``carte_SST``
13%
14% DESCRIPTION
15% ===========
16%
17% ``carte_SST`` visualise les cartes mensuelles moyennes de température
18% de surface.
19%
20% ``carte_SST`` lit les fichiers
21% ``../DONNEES/lsmask_tropatl_PacandMedblancs.mat``
22% et ``../DONNEES/skt.mon.tropatl.mat``.
23%
24% ``carte_SST`` calcule les moyennes mensuelles de SST  dans
25% l'Atlantique tropical a partir d'un champ mensuel de 60 ans
26% fourni en entree
27%
28% ``carte_SST`` affiche à l'écran les moyennes mensuelles de SST.
29%
30% ``carte_SST`` sauve cette image dans ``./carte_SST.eps``.
31%
32% EXAMPLES
33% ========
34%
35% ::
36%
37% >> tpacpandreg_startup
38% >> carte_SST
39%
40% SEE ALSO
41% ========
42%
43% tpacpandreg_startup.m_
44%
45% .. _tpacpandreg_startup.m : tpacpandreg_startup.m.html
46%
47% initfig.m_
48%
49% .. _initfig.m : initfig.m.html
50%
51% whorldmap.m_
52%
53% .. _whorldmap.m : whorldmap.m.html
54%
55% colorbartype.m_
56%
57% .. _colorbartype.m : colorbartype.m.html
58%
59% contlab.m_
60%
61% .. _contlab.m : contlab.m.html
62%
63% TODO
64% ====
65%
66% improve description
67%
68% EVOLUTIONS
69% ==========
70%
71% $Id$
72%
73% - fplod 2009-08-25T10:40:16Z aedon.locean-ipsl.upmc.fr (Darwin)
74%
75%  * modif commentaires liée au dernier chgt de Juliette
76%
77% - jmignot 2009-08-25
78%
79%  * remplacement de ``colorbar`` par ``colorbartype``
80%    parce pas beau ni en matlab ni en octave (dégradé, noir et blanc dans
81%    les .jpg)
82%  * contraintes sur les limites x et y de axes car matlab et octave ne
83%    fixent pas les même limites par défaut
84%  * utisation de ``contlab`` pour ++
85%
86% - fplod 2009-08-17T12:39:51Z aedon.locean-ipsl.upmc.fr (Darwin)
87%
88%   * add header
89%   * répertoire de données relatifs au répertoire courant
90%   * suppression de ``clear all`` présent dans ``tpacpandreg_startup.m``
91%   * contournement pb octave pour ``contourf`` :
92%     Dans le fil de discussion [Pkg-octave-devel] Bug#492223: octave3.0: contourf only accepts vector X and Y if same+++,
93%     je comprends que j'ai affaire à un bug de octave 3.0 (donc à surveiller
94%     pour les prochaines versions) qui ne veut pas faire de contourf si les
95%     variables X et Y n'ont pas la même dimension et c'est le cas ici
96%     (lat = 42x1, lon= 70x1 vue avec size).
97%     http://lists.alioth.debian.org/pipermail/pkg-octave-devel/2008-July/004672.html
98%   * sauvegarde de la figure dans ``./carte_SST.eps``
99%
100%-
101
102%%
103%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
104%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
105%%%%              CHARGEMENT ET PREPARATION DES DONNEES
106%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
107
108nannees=60;
109
110   repertoire=[ '..' filesep 'DONNEES' filesep ] % a adapter a chaque cas: chemin d acces aux donnees
111
112%Mask
113%-----
114   file='lsmask_tropatl_PacandMedblancs.mat'
115   load([repertoire file]);
116% Data
117%--------
118  repertoire2=[repertoire 'MAT' filesep] % a adapter a chaque cas: chemin d acces aux donnees
119  file=['skt.mon.tropatl.mat']
120  load([repertoire2 file]); % chargement des donnees
121  tab=permute(tab,[2 3 1]); % permutation des dimensions pour organiser le tableau sous la forme [lat lon temps]
122
123% Application du masque
124%----------------------
125% le masque donne les positions des continents et des oceans
126mask3D=repmat(mask,[1 1 size(tab,3)]);
127tab(mask3D~=0)=NaN;
128
129%---------------------------------------------------
130%  MANIPULATIONS TEMPORELLES: MOYENNES
131%---------------------------------------------------
132tab=reshape(tab,size(tab,1),size(tab,2),12,nannees); %organisation du tableau sous la forme [lat lon mois annees]
133
134% Construction de moyennes mensuelles
135%---------------------------------------
136tab_mens=squeeze(mean(tab,4));
137
138
139%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
140%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
141%%%%               TRACE
142%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
143%parametres geographiques du graphe
144  geo=[-100 20 -30 30]; %[lonmin lonmax latmin latmax];
145  yti=[-30:10:30]; xti=[-100:30:20]; %labels de latitude et de longitude
146
147               
148% Variabilité saisonnière
149%-------------------------
150%niveaux de couleurs
151lev=[0:1:30];%contours a tracer, en unite du champ a dessiner, ici
152             %la SST en degC
153             %a adapter eventuellement
154clip_lev=[20 30];%definit les limites des couleurs: bleu fonce au
155                 %rouge fonce
156             %a adapter eventuellement
157
158
159ifigure=1;
160figure(ifigure);
161clf();
162initfig;
163for iplot=1:12
164  subplot(4,3,iplot)
165  if (run_octave == 0)
166   x=lon;
167   y=lat;
168  else
169   [x,y]=meshgrid(lon,lat);
170  end
171  z=squeeze(tab_mens(:,:,iplot));
172  contourf(x,y,z,lev)
173  caxis(clip_lev)
174  hold on
175  whorldmap
176
177  % limites geographies et labels de longitude et de latitude
178  ylim([geo(3) geo(4)])
179  xlim([geo(1) geo(2)])
180  set(gca, 'Xtick', xti, 'Ytick', yti)
181  if (run_octave == 0)
182    [longstr, latstr] = contlab(xti, yti);
183    set(gca, 'Xticklabel', longstr, 'Yticklabel', latstr)
184  end;
185  if iplot>=10
186    xlabel('longitude')
187  end;
188  if iplot==1|iplot==4|iplot==7|iplot==10
189    ylabel('latitude')
190  end;
191
192  %titre: nom de chaque mois
193  title(['mois ' num2str(iplot)])
194
195end;
196
197%barre de couleur
198if (run_octave == 0)
199  pos=[.2 .03 .6 .013];
200  hpal=jet(100); %carte des couleurs: du bleu au rouge par defaut.
201  colorbartype(pos,lev,1,clip_lev,hpal,0)
202  title('SST mensuelle moyenne en degC')
203else
204  colorbar('East') %colorbar par defaut
205end;
206
207% sauvegarde de la figure
208printer='eps';
209print_printer=['-d', printer];
210fullfilename=['./', mfilename, '.', printer];
211clear printer;
212print(print_printer,fullfilename);
213clear print_printer;
214clear fullfilename;
215
216
217
Note: See TracBrowser for help on using the repository browser.