;+ ; .. _fig15_timeseries_mjo.pro: ; ; ======================== ; fig15_timeseries_mjo.pro ; ======================== ; ; DESCRIPTION ; =========== ; ; .. graphviz:: ; ; digraph fig15_timeseries_mjo { ; ; tropflux_general [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/TropFlux_19890101_20091231.nc"]; ; ncep2 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/NCEP2_flux_19890101_20090729.nc"]; ; erai [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc"]; ; ncep1 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/fluxe_ncep1_19890101_20091231.nc"]; ; shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/shf_oafluxgrid_1985_2008.nc"]; ; lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/lhf_oafluxgrid_1985_2008.nc"]; ; lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/lwr_oafluxgrid_1985_2007.nc"]; ; swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/swr_oafluxgrid_1985_2007.nc"]; ; olr_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/olr_oafluxgrid_30n30s_19890101_20091231.nc"]; ; ; figure [shape=ellipse,fontname=Courier,label="${PROJECT_OD}/WHOTS_validation_net_2004_2007_all_v10.ps"]; ; ; fig15_timeseries_mjo [shape=box, ; fontname=Courier, ; color=blue, ; URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig15/fig15_timeseries_mjo.pro", ; label="${TROPFLUX}/src/paper01/fig15/fig15_timeseries_mjo.pro"]; ; ; {tropflux_general swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid ncep2 ncep1} -> {fig15_timeseries_mjo} -> {figure} ; } ; ; SEE ALSO ; ======== ; ; :ref:`project_profile.sh` ; :ref:`project_init.pro` ; :ref:`cm_project.pro` ; ; EXAMPLES ; ======== ; ; :: ; ; IDL> fig15_timeseries_mjo ; ; TODO ; ==== ; ; make it work on cratos : missing data ; ; coding rules ; ; complete description ; ; handle IO error ; ; EVOLUTIONS ; ========== ; ; $Id$ ; ; $URL$ ; ; - fplod 20110420T122720Z aedon.locean-ipsl.upmc.fr (Darwin) ; ; * remove hard coding path ; * add graphviz ; * externalize functions ; ; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) ; ; * minimal header ; ;- pro fig15_timeseries_mjo @cm_general @cm_project reinitplt, /z,/invert key_portrait = 1 openps, FILENAME = project_od_env+'fig15_timeseries_mjo.ps' date1=20071001 & date2=20080331 date1=19990101 & date2=20021231 box=[50,80,-12,-5] file_trop=project_id_env+'TropFlux_19890101_20091231.nc' initncdf, file_trop shf_trop=read_ncdf("shf", date1, date2, box=box, file=file_trop,/nostr) lhf_trop=read_ncdf("lhf", date1, date2, box=box, file=file_trop,/nostr) swr_trop=read_ncdf("swr", date1, date2, box=box, file=file_trop,/nostr) lwr_trop=read_ncdf("lwr", date1, date2, box=box, file=file_trop,/nostr) ;; & ref_lw=-1*lwr_trop trop=swr_trop+(lwr_trop+lhf_trop+shf_trop) help, trop trop=grossemoyenne(trop, "xy",/nan) file_ncep=project_id_env+'NCEP2_flux_19890101_20090729.nc' initncdf, file_ncep shf=read_ncdf("shf", date1, date2, box=box, file=file_ncep,/nostr) lhf=read_ncdf("lhf", date1, date2, box=box, file=file_ncep,/nostr) lwr=read_ncdf("lwr", date1, date2, box=box, file=file_ncep,/nostr) swr=read_ncdf("swr", date1, date2, box=box, file=file_ncep,/nostr) nce2=swr-(lwr+lhf+shf) nce2=grossemoyenne(nce2, "xy",/nan) help, nce2 file_erai=project_id_env+'erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' initncdf, file_erai shf=read_ncdf("shf", date1, date2, box=box, file=file_erai,/nostr) lhf=read_ncdf("lhf", date1, date2, box=box, file=file_erai,/nostr) lwr=read_ncdf("lwr", date1, date2, box=box, file=file_erai,/nostr) swr=read_ncdf("swr", date1, date2, box=box, file=file_erai,/nostr) & swr=-1*swr era=swr-(lwr+lhf+shf) era=grossemoyenne(era, "xy",/nan) help, era file=project_id_env+'fluxe_ncep1_19890101_20091231.nc' initncdf, file lwr=read_ncdf("lwr", date1, date2, box=box, file=file,/nostr) swr=read_ncdf("swr", date1, date2, box=box, file=file,/nostr) lhf=read_ncdf("lhf", date1, date2, box=box, file=file,/nostr) shf=read_ncdf("shf", date1, date2, box=box, file=file,/nostr) nce=swr+shf+lhf+lwr nce=grossemoyenne(nce, "xy",/nan) help, nce file_oaf=project_id_env+'shf_oafluxgrid_1985_2008.nc' initncdf, file_oaf shf=read_ncdf("shf", date1, date2, box=box, file=file_oaf,/nostr) file_oaf=project_id_env+'lhf_oafluxgrid_1985_2008.nc' initncdf, file_oaf lhf=read_ncdf("lhf", date1, date2, box=box, file=file_oaf,/nostr) file_oaf=project_id_env+'lwr_oafluxgrid_1985_2007.nc' initncdf, file_oaf lwr=read_ncdf("lwr", date1, date2, box=box, file=file_oaf,/nostr) file_oaf=project_id_env+'swr_oafluxgrid_1985_2007.nc' initncdf, file_oaf swr=read_ncdf("swr", date1, date2, box=box, file=file_oaf,/nostr) & swr_trop=swr oafl=swr-(lwr+lhf+shf) help, oafl oafl=grossemoyenne(oafl, "xy",/nan) file=project_id_env+"olr_oafluxgrid_30n30s_19890101_20091231.nc" initncdf, file olr=read_ncdf("olr", date1-1, date2, box=box, file=file,/nostr) olr=grossemoyenne(olr, "xy",/nan) help, olr save, olr,trop, nce2, era, nce, filename="netflux_sctr_1999_2002.idl" trop_hf=trop*0. & nce2_hf=trop*0. era_hf=trop*0. & nce_hf=trop*0. Thf=30 & Tlf=90 tsamp=1. ; monthly freq=findgen(jpt/2+1)/(jpt*tsamp) freq=[freq,-1.*reverse(freq(1:jpt/2))] peri=1./(abs(freq) > 1.e-20)*(2*(freq ge 0)-1.) ; Variance msk_spec=float((abs(peri) ge Thf) and (abs(peri) le Tlf)) ts=reform(trop) ff_ts=fft(ts) ff_ts_f=ff_ts*msk_spec trop_hf=float(fft(ff_ts_f,/inverse)) ; ts=reform(nce2) ff_ts=fft(ts) ff_ts_f=ff_ts*msk_spec nce2_hf=float(fft(ff_ts_f,/inverse)) ; ts=reform(era) ff_ts=fft(ts) ff_ts_f=ff_ts*msk_spec era_hf=float(fft(ff_ts_f,/inverse)) ; ts=reform(nce) ff_ts=fft(ts) ff_ts_f=ff_ts*msk_spec nce_hf=float(fft(ff_ts_f,/inverse)) ; help, trop_hf, nce2_hf, era_hf, nce_hf nsmooth=15. pltt, ts_smooth(olr,nsmooth,/nan), "t",/rempl, small=[1,3,1], $ charsize=1.1, title="a) Outgoing Longwave Radiation", subtitle="" pltt, ts_smooth(trop,nsmooth,/nan), "t",/rempl, -70,130, $ small=[1,3,2],/noer, charsize=1.1, title="b) Net Heat Flux", subtitle="" pltt, ts_smooth(era,nsmooth,/nan), "t",/ov1d, color=250 pltt, ts_smooth(nce2,nsmooth,/nan), "t",/ov1d, color=150 pltt, ts_smooth(nce,nsmooth,/nan), "t",/ov1d, color=50 pltt, trop_hf, "t",/rempl, -80,80, $ small=[1,3,3],/noer, title="c) 30-90 day Net Heat Flux", charsize=1.1, subtitle="" pltt, era_hf, "t",/ov1d, color=250 pltt, nce2_hf, "t",/ov1d, color=150 pltt, nce_hf, "t",/ov1d, color=50 closeps end