source: trunk/src/scripts_Laura/test_laura.py @ 55

Last change on this file since 55 was 18, checked in by lahlod, 10 years ago

ajout scripts Laura

File size: 8.6 KB
Line 
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3import string
4import numpy as np
5import matplotlib.pyplot as plt
6from pylab import *
7from mpl_toolkits.basemap import Basemap
8from mpl_toolkits.basemap import shiftgrid, cm
9import netCDF4
10
11
12
13###################################################
14# definir variables du script 'read_data_test.py' #
15###################################################
16
17
18## sur un zone de l'ANTARC (autour de DomeC) ##
19bbzone_CH1_JAN=nonzero((lon1_JAN>=100.)&(lon1_JAN<=150.)&(lat1_JAN>=-85.)&(lat1_JAN<=-65.))
20bbzone_CH2_JAN=nonzero((lon2_JAN>=100.)&(lon2_JAN<=150.)&(lat2_JAN>=-85.)&(lat2_JAN<=-65.))
21bbzone_CH3_JAN=nonzero((lon3_JAN>=100.)&(lon3_JAN<=150.)&(lat3_JAN>=-85.)&(lat3_JAN<=-65.))
22bbzone_CH4_JAN=nonzero((lon4_JAN>=100.)&(lon4_JAN<=150.)&(lat4_JAN>=-85.)&(lat4_JAN<=-65.))
23bbzone_CH1_JUL=nonzero((lon1_JUL>=100.)&(lon1_JUL<=150.)&(lat1_JUL>=-85.)&(lat1_JUL<=-65.))
24bbzone_CH2_JUL=nonzero((lon2_JUL>=100.)&(lon2_JUL<=150.)&(lat2_JUL>=-85.)&(lat2_JUL<=-65.))
25bbzone_CH3_JUL=nonzero((lon3_JUL>=100.)&(lon3_JUL<=150.)&(lat3_JUL>=-85.)&(lat3_JUL<=-65.))
26bbzone_CH4_JUL=nonzero((lon4_JUL>=100.)&(lon4_JUL<=150.)&(lat4_JUL>=-85.)&(lat4_JUL<=-65.))
27## sur Dome C (lon=123.23;lat=-75.06) - Pour JANUARY ##
28ind_lon=np.where(lon_JAN==123.23)[0] 
29d=abs(abs(lat_JAN[ind_lon])-75.06)
30ind_d=np.where(d==min(d))[0]
31ind_lat=lat_JAN[ind_lon][ind_d][0] # coord lat du Dome C
32lonDC=lon_JAN[ind_lon][ind_d][0]
33latDC=ind_lat
34emis_JAN[ind_lon][ind_d]
35## sur une zone de l'ANTARC (en altitude) ##
36bbalt_CH1_JAN=nonzero((orog1_JAN>=2000.)&(orog1_JAN<=4000.))
37bbalt_CH2_JAN=nonzero((orog2_JAN>=2000.)&(orog2_JAN<=4000.))
38bbalt_CH3_JAN=nonzero((orog3_JAN>=2000.)&(orog3_JAN<=4000.))
39bbalt_CH4_JAN=nonzero((orog4_JAN>=2000.)&(orog4_JAN<=4000.))
40## sur une zone de l'ANTARC (en altitude) ##
41bbalt_CH1_JAN=nonzero((orog1_JAN>=2000.)&(orog1_JAN<=4000.))
42bbalt_CH2_JAN=nonzero((orog2_JAN>=2000.)&(orog2_JAN<=4000.))
43bbalt_CH3_JAN=nonzero((orog3_JAN>=2000.)&(orog3_JAN<=4000.))
44bbalt_CH4_JAN=nonzero((orog4_JAN>=2000.)&(orog4_JAN<=4000.))
45
46
47nbjr=np.array(31,28,31,30,31,30,31)
48i=0 # JANUARY
49emis1_JAN_moy=np.zeros([31],float)
50emis2_JAN_moy=np.zeros([31],float)
51emis3_JAN_moy=np.zeros([31],float)
52emis4_JAN_moy=np.zeros([31],float)
53#emis1_JUL_moy=np.zeros([31],float)
54#emis2_JUL_moy=np.zeros([31],float)
55#emis3_JUL_moy=np.zeros([31],float)
56#emis4_JUL_moy=np.zeros([31],float)
57ts1_JAN_moy=np.zeros([31],float)
58ts2_JAN_moy=np.zeros([31],float)
59ts3_JAN_moy=np.zeros([31],float)
60ts4_JAN_moy=np.zeros([31],float)
61#ts1_JUL_moy=np.zeros([31],float)
62#ts2_JUL_moy=np.zeros([31],float)
63#ts3_JUL_moy=np.zeros([31],float)
64#ts4_JUL_moy=np.zeros([31],float)
65tb1_JAN_moy=np.zeros([31],float)
66tb2_JAN_moy=np.zeros([31],float)
67tb3_JAN_moy=np.zeros([31],float)
68tb4_JAN_moy=np.zeros([31],float)
69#tb1_JUL_moy=np.zeros([31],float)
70#tb2_JUL_moy=np.zeros([31],float)
71#tb3_JUL_moy=np.zeros([31],float)
72#tb4_JUL_moy=np.zeros([31],float)
73orog1_JAN_moy=np.zeros([31],float)
74orog2_JAN_moy=np.zeros([31],float)
75orog3_JAN_moy=np.zeros([31],float)
76orog4_JAN_moy=np.zeros([31],float)
77#orog1_JUL_moy=np.zeros([31],float)
78#orog2_JUL_moy=np.zeros([31],float)
79#orog3_JUL_moy=np.zeros([31],float)
80#orog4_JUL_moy=np.zeros([31],float)
81
82for ijr in range(0,nbjr[i]):
83     print 'jour=', ijr+1
84     ind_jr1=np.where(jjr1_JAN[bbalt_CH1_JAN]==ijr+1)[0]
85     ind_jr2=np.where(jjr2_JAN[bbalt_CH2_JAN]==ijr+1)[0]
86     ind_jr3=np.where(jjr3_JAN[bbalt_CH3_JAN]==ijr+1)[0]
87     ind_jr4=np.where(jjr4_JAN[bbalt_CH4_JAN]==ijr+1)[0]
88     a=emis1_JAN[bbalt_CH1_JAN][ind_jr1]
89     b=emis2_JAN[bbalt_CH2_JAN][ind_jr2]
90     c=emis3_JAN[bbalt_CH3_JAN][ind_jr3]
91     d=emis4_JAN[bbalt_CH4_JAN][ind_jr4]
92     e=ts1_JAN[bbalt_CH1_JAN][ind_jr1]
93     f=ts2_JAN[bbalt_CH2_JAN][ind_jr2]
94     g=ts3_JAN[bbalt_CH3_JAN][ind_jr3]
95     h=ts4_JAN[bbalt_CH4_JAN][ind_jr4]
96     l=tb1_JAN[bbalt_CH1_JAN][ind_jr1]
97     m=tb2_JAN[bbalt_CH2_JAN][ind_jr2]
98     n=tb3_JAN[bbalt_CH3_JAN][ind_jr3]
99     o=tb4_JAN[bbalt_CH4_JAN][ind_jr4]
100     p=orog1_JAN[bbalt_CH1_JAN][ind_jr1]
101     q=orog2_JAN[bbalt_CH2_JAN][ind_jr2]
102     r=orog3_JAN[bbalt_CH3_JAN][ind_jr3]
103     s=orog4_JAN[bbalt_CH4_JAN][ind_jr4]
104     emis1_JAN_moy[ijr]=mean(a[nonzero((a!=-500.)&(a<=1.))])
105     emis2_JAN_moy[ijr]=mean(b[nonzero((b!=-500.)&(b<=1.))])
106     emis3_JAN_moy[ijr]=mean(c[nonzero((c!=-500.)&(c<=1.))])
107     emis4_JAN_moy[ijr]=mean(d[nonzero((d!=-500.)&(d<=1.))])
108     ts1_JAN_moy[ijr]=mean(e[nonzero((e!=-500.))])
109     ts2_JAN_moy[ijr]=mean(f[nonzero((f!=-500.))])
110     ts3_JAN_moy[ijr]=mean(g[nonzero((g!=-500.))])
111     ts4_JAN_moy[ijr]=mean(h[nonzero((h!=-500.))])   
112     tb1_JAN_moy[ijr]=mean(l[nonzero((l!=-500.))])
113     tb2_JAN_moy[ijr]=mean(m[nonzero((m!=-500.))])
114     tb3_JAN_moy[ijr]=mean(n[nonzero((n!=-500.))])
115     tb4_JAN_moy[ijr]=mean(o[nonzero((o!=-500.))]) 
116     orog1_JAN_moy[ijr]=mean(p[nonzero((p!=-500.))])
117     orog2_JAN_moy[ijr]=mean(q[nonzero((q!=-500.))])
118     orog3_JAN_moy[ijr]=mean(r[nonzero((r!=-500.))])
119     orog4_JAN_moy[ijr]=mean(s[nonzero((s!=-500.))]) 
120
121
122
123i=1 # FEBRUARY
124emis_FEB_moy=np.zeros([nbjr[i]],float)
125tb_FEB_moy=np.zeros([nbjr[i]],float)
126ts_FEB_moy=np.zeros([nbjr[i]],float)
127for ijr in range(0,nbjr[i]):
128     #print 'jour=', ijr+1
129     ind_jr1=np.where(jjr_FEB[bbplat_FEB]==ijr+1)[0] 
130#     ind_jr2=np.where(jjr_FEB[bb_tb_FEB]==ijr+1)[0]
131  #   ind_jr3=np.where(jjr_FEB[bb_ts_FEB]==ijr+1)[0]
132     emis_FEB_moy[ijr]=emis_FEB[ind_jr1][nonzero(emis_FEB[ind_jr1]<=1.)].mean()
133     tb_FEB_moy[ijr]=tb_FEB[ind_jr1][nonzero(tb_FEB[ind_jr1]!=-500.)].mean()
134     ts_FEB_moy[ijr]=ts_FEB[ind_jr1][nonzero(ts_FEB[ind_jr1]!=-500.)].mean()
135
136
137i=2 # MARCH
138emis_MAR_moy=np.zeros([nbjr[i]],float)
139tb_MAR_moy=np.zeros([nbjr[i]],float)
140ts_MAR_moy=np.zeros([nbjr[i]],float)
141for ijr in range(0,nbjr[i]):
142     #print 'jour=', ijr+1
143     ind_jr1=np.where(jjr_MAR[bb_emis_MAR]==ijr+1)[0] 
144#     ind_jr2=np.where(jjr_MAR[bb_tb_MAR]==ijr+1)[0]
145#     ind_jr3=np.where(jjr_MAR[bb_ts_MAR]==ijr+1)[0]
146     emis_MAR_moy[ijr]=emis_MAR[ind_jr1][nonzero(emis_MAR[ind_jr1]<=1.)].mean()
147     tb_MAR_moy[ijr]=tb_MAR[ind_jr1][nonzero(tb_MAR[ind_jr1]!=500.)].mean()
148     ts_MAR_moy[ijr]=ts_MAR[ind_jr1][nonzero(ts_MAR[ind_jr1]!=-500.)].mean()
149
150
151
152fig=plt.figure()
153plt.subplot(3,1,1)
154plt.plot(arange(1,32,1),emis1_JAN_moy,label='ch1',c='r')
155plt.plot(arange(1,32,1),emis2_JAN_moy,label='ch2',c='y')
156plt.plot(arange(1,32,1),emis3_JAN_moy,label='ch3',c='g')
157plt.plot(arange(1,32,1),emis4_JAN_moy,label='ch4',c='b')
158plt.xticks(arange(1,32,5))
159grid(True)
160ylabel('emissivity')
161legend(loc=7)
162plt.title('JANUARY 2010')
163plt.subplot(3,1,2)
164plt.plot(arange(1,32,1),ts1_JAN_moy,label='ch1',c='r')
165plt.plot(arange(1,32,1),ts2_JAN_moy,label='ch2',c='y')
166plt.plot(arange(1,32,1),ts3_JAN_moy,label='ch3',c='g')
167plt.plot(arange(1,32,1),ts4_JAN_moy,label='ch4',c='b')
168plt.xticks(arange(1,32,5))
169grid(True)
170ylabel('surface temp')
171legend(loc=7)
172plt.subplot(3,1,3)
173plt.plot(arange(1,32,1),tb1_JAN_moy,label='ch1',c='r')
174plt.plot(arange(1,32,1),tb2_JAN_moy,label='ch2',c='y')
175plt.plot(arange(1,32,1),tb3_JAN_moy,label='ch3',c='g')
176plt.plot(arange(1,32,1),tb4_JAN_moy,label='ch4',c='b')
177plt.xticks(arange(1,32,5))
178grid(True)
179ylabel('brightness temp')
180legend(loc=7)
181#plt.subplot(4,1,4)
182plt.plot(arange(1,32,1),orog1_JAN_moy,label='ch1',c='r')
183plt.plot(arange(1,32,1),orog2_JAN_moy,label='ch2',c='y')
184plt.plot(arange(1,32,1),orog3_JAN_moy,label='ch3',c='g')
185plt.plot(arange(1,32,1),orog4_JAN_moy,label='ch4',c='b')
186plt.xticks(arange(1,32,5))
187grid(True)
188ylabel('orography')
189legend(loc=7)
190fig.show()
191
192
193
194i=0
195plt.subplot(3,1,1)
196plt.plot(arange(1,nbjr[i]+1,1),emis_JAN_moy,'o-',c='r',label='emis')
197legend()
198plt.subplot(3,1,2)
199plt.plot(arange(1,nbjr[i]+1,1),tb_JAN_moy,'+-',c='b', label='Tb')
200legend()
201plt.subplot(3,1,3)
202plt.plot(arange(1,nbjr[i]+1,1),ts_JAN_moy,'.-',c='y', label='Ts')
203plt.legend()
204plt.title('JANUARY')
205plt.hold()
206plt.show()
207
208i=1
209fig=plt.figure()
210plt.subplot(3,1,1)
211plt.plot(arange(1,nbjr[i]+1,1),emis_FEB_moy,'o-',c='r',label='emis')
212legend()
213plt.subplot(3,1,2)
214plt.plot(arange(1,nbjr[i]+1,1),tb_FEB_moy,'+-',c='b', label='Tb')
215legend()
216plt.subplot(3,1,3)
217plt.plot(arange(1,nbjr[i]+1,1),ts_FEB_moy,'.-',c='y', label='Ts')
218plt.legend()
219plt.title('FEBRUARY')
220fig.show()
221
222e1=np.append(emis_JAN_moy,emis_FEB_moy)
223emis_month=np.append(emis_month1,emis_MAR_moy)
224ts1=np.append(ts_JAN_moy,ts_FEB_moy)
225ts_month=np.append(ts1,ts_MAR_moy)
226tb1=np.append(tb_JAN_moy,tb_FEB_moy)
227tb_month=np.append(tb1,tb_MAR_moy)
228
229fig=plt.figure()
230plt.subplot(3,1,1)
231plt.plot(arange(0,len(emis_month)),emis_month,'o-',c='r',label='emissivity')
232plt.legend()
233plt.grid()
234plt.subplot(3,1,2)
235plt.plot(arange(0,len(ts_month)),ts_month,'+-',c='g',label='Ts')
236plt.legend()
237plt.grid()
238plt.subplot(3,1,3)
239plt.plot(arange(0,len(tb_month)),tb_month,'.-',c='y',label='Tb')
240plt.legend()
241plt.grid()
242fig.show()
Note: See TracBrowser for help on using the repository browser.