source: trunk/src/paper01/fig15/fig15_timeseries_mjo.pro @ 41

Last change on this file since 41 was 41, checked in by pinsard, 13 years ago

add paper01 materials

  • Property svn:executable set to *
File size: 6.0 KB
Line 
1;------------------------------------------------------------
2pro fig15_timeseries_mjo
3@common
4;------------------------------------------------------------
5
6reinitplt, /z,/invert
7key_portrait = 1
8
9openps, FILENAME = 'idl.ps'
10;------------------------------------------------------------
11date1=20071001 & date2=20080331
12date1=19990101 & date2=20021231
13box=[50,80,-12,-5]
14
15file_trop='/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc'
16initncdf, file_trop
17shf_trop=read_ncdf("shf", date1, date2, box=box, file=file_trop,/nostr)
18lhf_trop=read_ncdf("lhf", date1, date2, box=box, file=file_trop,/nostr)
19swr_trop=read_ncdf("swr", date1, date2, box=box, file=file_trop,/nostr)
20lwr_trop=read_ncdf("lwr", date1, date2, box=box, file=file_trop,/nostr) ;; & ref_lw=-1*lwr_trop
21trop=swr_trop+(lwr_trop+lhf_trop+shf_trop)
22help, trop
23trop=grossemoyenne(trop, "xy",/nan)
24
25file_ncep='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc'
26initncdf, file_ncep
27shf=read_ncdf("shf", date1, date2, box=box, file=file_ncep,/nostr)
28lhf=read_ncdf("lhf", date1, date2, box=box, file=file_ncep,/nostr)
29lwr=read_ncdf("lwr", date1, date2, box=box, file=file_ncep,/nostr)
30swr=read_ncdf("swr", date1, date2, box=box, file=file_ncep,/nostr)
31
32nce2=swr-(lwr+lhf+shf)
33nce2=grossemoyenne(nce2, "xy",/nan)
34help, nce2
35
36file_erai='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc'
37initncdf, file_erai
38shf=read_ncdf("shf", date1, date2, box=box, file=file_erai,/nostr)
39lhf=read_ncdf("lhf", date1, date2, box=box, file=file_erai,/nostr)
40lwr=read_ncdf("lwr", date1, date2, box=box, file=file_erai,/nostr)
41swr=read_ncdf("swr", date1, date2, box=box, file=file_erai,/nostr) & swr=-1*swr
42era=swr-(lwr+lhf+shf)
43era=grossemoyenne(era, "xy",/nan)
44help, era
45
46file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc'
47initncdf, file
48lwr=read_ncdf("lwr", date1, date2, box=box, file=file,/nostr)
49swr=read_ncdf("swr", date1, date2, box=box, file=file,/nostr)
50lhf=read_ncdf("lhf", date1, date2, box=box, file=file,/nostr)
51shf=read_ncdf("shf", date1, date2, box=box, file=file,/nostr)
52
53nce=swr+shf+lhf+lwr
54nce=grossemoyenne(nce, "xy",/nan)
55help, nce
56
57file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2008.nc'
58initncdf, file_oaf
59shf=read_ncdf("shf", date1, date2, box=box, file=file_oaf,/nostr)
60file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2008.nc'
61initncdf, file_oaf
62lhf=read_ncdf("lhf", date1, date2, box=box, file=file_oaf,/nostr)
63file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc'
64initncdf, file_oaf
65lwr=read_ncdf("lwr", date1, date2, box=box, file=file_oaf,/nostr)
66file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc'
67initncdf, file_oaf
68swr=read_ncdf("swr", date1, date2, box=box, file=file_oaf,/nostr) & swr_trop=swr
69oafl=swr-(lwr+lhf+shf)
70help, oafl
71oafl=grossemoyenne(oafl, "xy",/nan)
72
73file="/Users/pkb/data/heat_budget/NOAA_OLR/olr_oafluxgrid_30n30s_19890101_20091231.nc"
74initncdf, file
75olr=read_ncdf("olr", date1-1, date2, box=box, file=file,/nostr)
76olr=grossemoyenne(olr, "xy",/nan)
77
78help, olr
79
80save, olr,trop, nce2, era, nce, filename="netflux_sctr_1999_2002.idl"
81;------------------------------------------------------------------------------------------------------------------------
82
83trop_hf=trop*0. & nce2_hf=trop*0.
84era_hf=trop*0. & nce_hf=trop*0.
85
86Thf=30 & Tlf=90
87tsamp=1.   ; monthly
88freq=findgen(jpt/2+1)/(jpt*tsamp)
89freq=[freq,-1.*reverse(freq(1:jpt/2))]
90peri=1./(abs(freq) > 1.e-20)*(2*(freq ge 0)-1.)
91; Variance
92     msk_spec=float((abs(peri) ge Thf) and (abs(peri) le Tlf))
93     ts=reform(trop)
94     ff_ts=fft(ts)
95     ff_ts_f=ff_ts*msk_spec
96     trop_hf=float(fft(ff_ts_f,/inverse))
97;
98    ts=reform(nce2)
99    ff_ts=fft(ts)
100    ff_ts_f=ff_ts*msk_spec
101    nce2_hf=float(fft(ff_ts_f,/inverse))
102;
103    ts=reform(era)
104    ff_ts=fft(ts)
105    ff_ts_f=ff_ts*msk_spec
106    era_hf=float(fft(ff_ts_f,/inverse))
107;
108    ts=reform(nce)
109    ff_ts=fft(ts)
110    ff_ts_f=ff_ts*msk_spec
111    nce_hf=float(fft(ff_ts_f,/inverse))
112;
113
114help, trop_hf, nce2_hf, era_hf, nce_hf
115nsmooth=15.
116
117pltt, ts_smooth(olr,nsmooth,/nan), "t",/rempl, small=[1,3,1], $
118   charsize=1.1, title="a) Outgoing Longwave Radiation", subtitle=""
119
120pltt, ts_smooth(trop,nsmooth,/nan), "t",/rempl, -70,130, $
121      small=[1,3,2],/noer, charsize=1.1, title="b) Net Heat Flux", subtitle=""
122pltt, ts_smooth(era,nsmooth,/nan), "t",/ov1d, color=250
123pltt, ts_smooth(nce2,nsmooth,/nan), "t",/ov1d, color=150
124pltt, ts_smooth(nce,nsmooth,/nan), "t",/ov1d, color=50
125
126pltt, trop_hf, "t",/rempl, -80,80, $
127      small=[1,3,3],/noer, title="c) 30-90 day Net Heat Flux", charsize=1.1, subtitle=""
128pltt, era_hf, "t",/ov1d, color=250
129pltt, nce2_hf, "t",/ov1d, color=150
130pltt, nce_hf, "t",/ov1d, color=50
131
132;----------------------------------------------------------
133closeps
134fig='fig15_timeseries_mjo.ps'
135spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig
136spawn, 'gv '+cpsdir+fig
137return
138end
139;--------------------------------------------------------------------------
140function x_site_location, site
141    n1=strpos(site, 's')
142if (n1 gt -1) then begin
143    ns=-1.
144    x=strmid(site, 0, n1)
145    x=float(x)*ns
146endif else begin
147    n1=strpos(site, 'n')
148    x=strmid(site, 0, n1)
149    ny=1.
150    x=float(x)*ny
151endelse
152return, float(x)
153end
154;--------------------------------------------------------------------------
155function y_site_location, site
156    n1=strpos(site, 'e')
157if (n1 gt -1) then begin
158    n=strpos(site, 's')
159    if (n gt -1) then begin
160        y=strmid(site, n+1, n1-n-1)
161    endif else begin
162        n=strpos(site, 'n')
163        y=strmid(site, n+1, n1-n-1)
164    endelse
165
166endif else begin
167    n1=strpos(site, 'w')
168    n=strpos(site, 's')
169    if (n gt -1) then begin
170        y=strmid(site, n+1, n1-n-1)
171        y=180+(180-float(y))
172    endif else begin
173        n=strpos(site, 'n')
174        y=strmid(site, n+1, n1-n-1)
175        y=180+(180-float(y))
176   endelse
177endelse
178return,float(y)
179end
180
181;--------------------------------------------------------------------------
182
Note: See TracBrowser for help on using the repository browser.