Changeset 46


Ignore:
Timestamp:
04/20/11 16:45:53 (13 years ago)
Author:
pinsard
Message:

going on consolidation of paper01 materials

Location:
trunk/src/paper01
Files:
43 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/paper01/fig1/fig1_no_obs_map.pro

    r44 r46  
    4242; :ref:`tropflux_init.pro` 
    4343; 
     44; :func:`x_site_location` 
     45; :func:`y_site_location` 
     46; 
    4447; :ref:`oaflux_mask_30N30S.pro` 
    4548; 
     
    6972; 
    7073; $Id$ 
     74; 
     75; - fplod 20110420T134821Z aedon.locean-ipsl.upmc.fr (Darwin) 
     76; 
     77;   * externalize functions 
    7178; 
    7279; - fplod 20110412T073818Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    222229spawn, 'gv '+fig 
    223230end 
    224  
    225 function x_site_location, site 
    226     n1=strpos(site, 's') 
    227 if (n1 gt -1) then begin 
    228     ns=-1. 
    229     x=strmid(site, 0, n1) 
    230     x=float(x)*ns 
    231 endif else begin 
    232     n1=strpos(site, 'n') 
    233     x=strmid(site, 0, n1) 
    234     ny=1. 
    235     x=float(x)*ny 
    236 endelse 
    237 return, float(x) 
    238 end 
    239  
    240 function y_site_location, site 
    241     n1=strpos(site, 'e') 
    242 if (n1 gt -1) then begin 
    243     n=strpos(site, 's') 
    244     if (n gt -1) then begin 
    245         y=strmid(site, n+1, n1-n-1) 
    246     endif else begin 
    247         n=strpos(site, 'n') 
    248         y=strmid(site, n+1, n1-n-1) 
    249     endelse 
    250  
    251 endif else begin 
    252     n1=strpos(site, 'w') 
    253     n=strpos(site, 's') 
    254     if (n gt -1) then begin 
    255         y=strmid(site, n+1, n1-n-1) 
    256         y=180+(180-float(y)) 
    257     endif else begin 
    258         n=strpos(site, 'n') 
    259         y=strmid(site, n+1, n1-n-1) 
    260         y=180+(180-float(y)) 
    261    endelse 
    262 endelse 
    263 return,float(y) 
    264 end 
  • trunk/src/paper01/fig10/fig10_swr_correction.pro

    r43 r46  
    11;+ 
    2 ; .. _fig10_swr_correction.pro 
     2; .. _fig10_swr_correction.pro: 
    33; 
    44; ======================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph fig10_swr_correction { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       swr_isccp [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_isccp_correction.txt"]; 
     18; 
     19;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/fig10_swr_correction.ps"]; 
     20; 
     21;       fig10_swr_correction [shape=box, 
     22;       fontname=Courier, 
     23;       color=blue, 
     24;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig10/fig10_swr_correction.pro", 
     25;       label="${TROPFLUX}/src/paper01/fig10/fig10_swr_correction.pro"]; 
     26; 
     27;       {swr_isccp} -> {fig10_swr_correction} -> {figure} 
     28;    } 
     29; 
    1130; SEE ALSO 
    1231; ======== 
    1332; 
    1433; :ref:`tropflux_profile.sh` 
     34; :ref:`tropflux_init.pro` 
     35; :ref:`cm_tropflux.pro` 
     36; 
     37; :ref:`significance_test_99.pro` 
    1538; 
    1639; EXAMPLES 
     
    2245;  IDL> fig10_swr_correction 
    2346; 
     47; TODO 
     48; ==== 
     49; 
     50; check results 
     51; 
     52; improve plot 
     53; 
     54; coding rules 
     55; 
     56; get rid of spwan 
     57; 
     58; complete description 
     59; 
     60; handle IO error 
     61; 
    2462; EVOLUTIONS 
    2563; ========== 
    2664; 
    2765; $Id$ 
     66; 
     67; - fplod 20110420T140853Z aedon.locean-ipsl.upmc.fr (Darwin) 
     68; 
     69;   * make it work on cratos 
     70;   * replace significance_test by significance_test_99 
     71; 
     72; - fplod 20110420T105744Z aedon.locean-ipsl.upmc.fr (Darwin) 
     73; 
     74;   * remove hard coding path 
     75;   * add graphviz 
    2876; 
    2977; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3280; 
    3381;- 
    34  
    3582pro fig10_swr_correction 
    36 @common 
     83@cm_general 
     84@cm_tropflux 
    3785reinitplt, /z,/invert 
    3886key_portrait = 1 
     
    4189close,/all 
    4290 
    43 fi='/Users/pkb/work/MY_SAXO/flux_automat/swr_isccp_correction.txt' 
     91fi=tropflux_id_env+'swr_isccp_correction.txt' 
    4492res=read_ascii(fi,data_start=0) 
    4593ff=res.field1 
     
    61109significance_test_99,mean,bias 
    62110 
    63 fi='/Users/pkb/work/MY_SAXO/flux_automat/swr_isccp_correction.txt' 
     111fi=tropflux_id_env+'swr_isccp_correction.txt' 
    64112res=read_ascii(fi,data_start=0) 
    65113ff=res.field1 
     
    78126 
    79127;; significant test 
    80 significance_test,mean,std 
     128significance_test_99,mean,std 
    81129 
    82130closeps 
    83131 
    84 fig='fig10_swr_correction.ps' 
    85 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    86 spawn, 'gv '+cpsdir+fig 
     132fig=tropflux_od_env+'fig10_swr_correction.ps' 
     133spawn, 'mv '+psdir+'idl.ps '+fig 
     134spawn, 'gv '+fig 
    87135 
    88136end 
  • trunk/src/paper01/fig11/swr_isccp_tropflux_correlation_fig10.pro

    r43 r46  
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph swr_isccp_tropflux_correlation_fig10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_sst_19890101_20091231.nc"]; 
     18; 
     19;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/correlation_rmsd_olra_swra_smooth.ps"]; 
     20; 
     21;       swr_isccp_tropflux_correlation_fig10 [shape=box, 
     22;       fontname=Courier, 
     23;       color=blue, 
     24;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig11/swr_isccp_tropflux_correlation_fig10.pro", 
     25;       label="${TROPFLUX}/src/paper01/fig11/swr_isccp_tropflux_correlation_fig10.pro"]; 
     26; 
     27;       {sst} -> {swr_isccp_tropflux_correlation_fig10} -> {figure} 
     28;    } 
     29; 
    1130; SEE ALSO 
    1231; ======== 
    1332; 
    1433; :ref:`tropflux_profile.sh` 
     34; :ref:`tropflux_init.pro` 
     35; :ref:`cm_tropflux.pro` 
    1536; 
    1637; EXAMPLES 
     
    2243;  IDL> swr_isccp_tropflux_correlation_fig10 
    2344; 
     45; TODO 
     46; ==== 
     47; 
     48; make it work on cratos : get rid of restore 
     49; 
     50; coding rules 
     51; 
     52; get rid of spwan 
     53; 
     54; complete description 
     55; 
     56; handle IO error 
     57; 
    2458; EVOLUTIONS 
    2559; ========== 
    2660; 
    2761; $Id$ 
     62; 
     63; - fplod 20110420T110411Z aedon.locean-ipsl.upmc.fr (Darwin) 
     64; 
     65;   * remove hard coding path 
     66;   * add graphviz 
    2867; 
    2968; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3372;- 
    3473pro swr_isccp_tropflux_correlation_fig10 
    35 @common 
     74@cm_general 
     75@cm_tropflux 
    3676reinitplt, /z,/invert 
    3777key_portrait = 1 
     
    4282restore, "/Users/pkb/work/MY_SAXO/correlation_isccp_olr.idl" 
    4383 
    44 file="/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_sst_19890101_20091231.nc" 
     84file=tropflux_id_env+'TropFlux_sst_19890101_20091231.nc" 
    4585initncdf, file 
    4686sst=read_ncdf("sst", 20000101, 20091231, file=file,/nostr) 
     
    5696 
    5797closeps 
    58 fig='correlation_rmsd_olra_swra_smooth.ps' 
    59 spawn, 'mv '+psdir+'idl.ps '+psdir+fig 
    60 spawn, 'gv '+psdir+fig 
    61  
    62 stop 
     98fig=tropflux_od_env+'correlation_rmsd_olra_swra_smooth.ps' 
     99spawn, 'mv '+psdir+'idl.ps '+fig 
     100spawn, 'gv '+fig 
    63101end 
  • trunk/src/paper01/fig11/swr_isccp_tropflux_new_v1.pro

    r43 r46  
    1010; =========== 
    1111; 
     12; .. graphviz:: 
     13; 
     14;    digraph swr_isccp_tropflux_new_v1 { 
     15;       graph [ 
     16;       rankdir="LR", 
     17;       ] 
     18;       swr [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     19;       sw [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sw_reconstred_1989_2009.nc"]; 
     20;       olr [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/olr_oafluxgrid_30n30s.nc"]; 
     21;       sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_sst_19890101_20091231_v20.nc"]; 
     22; 
     23;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/correlation_rmsd_olra_swra_smooth.ps"]; 
     24; 
     25;       swr_isccp_tropflux_new_v1 [shape=box, 
     26;       fontname=Courier, 
     27;       color=blue, 
     28;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig11/swr_isccp_tropflux_new_v1.pro", 
     29;       label="${TROPFLUX}/src/paper01/fig11/swr_isccp_tropflux_new_v1.pro"]; 
     30; 
     31;       {swr sw olr sst} -> {swr_isccp_tropflux_new_v1} -> {figure} 
     32;    } 
     33; 
    1234; SEE ALSO 
    1335; ======== 
    1436; 
    1537; :ref:`tropflux_profile.sh` 
     38; :ref:`tropflux_init.pro` 
     39; :ref:`cm_tropflux.pro` 
    1640; 
    1741; EXAMPLES 
     
    2347;  IDL> swr_isccp_tropflux_new_v1 
    2448; 
     49; TODO 
     50; ==== 
     51; 
     52; make it work on cratos : mising data 
     53; 
     54; coding rules 
     55; 
     56; get rid of spwan 
     57; 
     58; complete description 
     59; 
     60; handle IO error 
     61; 
    2562; EVOLUTIONS 
    2663; ========== 
    2764; 
    2865; $Id$ 
     66; 
     67; - fplod 20110420T113330Z aedon.locean-ipsl.upmc.fr (Darwin) 
     68; 
     69;   * remove hard coding path 
     70;   * add graphviz 
    2971; 
    3072; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3476;- 
    3577pro swr_isccp_tropflux_new_v1 
    36 @common 
     78@cm_general 
     79@cm_tropflux 
    3780reinitplt, /z,/invert 
    3881key_portrait = 1 
     
    4184st=19890101 & en=20071231 
    4285 
    43 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     86file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    4487initncdf, file 
    4588sw_isccp=read_ncdf("swr", st, en, file=file,/nostr) 
    4689 
    47 file='/Volumes/Iomega_HDD/flux_reconstruction/basic_data/sw_reconstred_1989_2009.nc' 
     90file=tropflux_id_env+'sw_reconstred_1989_2009.nc' 
    4891initncdf, file 
    4992sw_trop=read_ncdf("sw", st, en+1, file=file,/nostr) 
    5093 
    51 file='/Volumes/Iomega_HDD/flux_reconstruction/basic_data/olr_oafluxgrid_30n30s.nc' 
     94file=tropflux_id_env+'olr_oafluxgrid_30n30s.nc' 
    5295initncdf, file 
    5396olr=read_ncdf("olr", st, en, file=file,/nostr) 
     
    132175     subt='',title='a) Correlation (OLRA, SWRA)',xminor=1,yminor=1 
    133176 
    134 file="/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_sst_19890101_20091231_v20.nc" 
     177file=tropflux_id_env+'TropFlux_sst_19890101_20091231_v20.nc" 
    135178initncdf, file 
    136179sst=read_ncdf("sst", 19890101, 20091231, file=file,/nostr) 
     
    149192 
    150193closeps 
    151 fig='correlation_rmsd_olra_swra_smooth.ps' 
    152 spawn, 'mv '+psdir+'idl.ps '+psdir+fig 
    153 spawn, 'gv '+psdir+fig 
    154  
    155 return 
    156  
     194fig=tropflux_od_env+'correlation_rmsd_olra_swra_smooth.ps' 
     195spawn, 'mv '+psdir+'idl.ps '+fig 
     196spawn, 'gv '+fig 
    157197end 
  • trunk/src/paper01/fig12/swr_statistics_map_2000_2009_v50.pro

    r43 r46  
    11;+ 
    2 ; .. _swr_statistics_map_2000_2009_v50.pro 
     2; .. _swr_statistics_map_2000_2009_v50.pro: 
    33; 
    44; ==================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph swr_statistics_map_2000_2009_v50 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_2000_2009_erai_v50.txt"]; 
     18;       swr_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_2000_2009_trop_v50.txt"]; 
     19;       swr_oaflx [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_2000_2009_oaflx_v50.txt"]; 
     20;       swr_olr [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_2000_2009_olr_v50.txt"]; 
     21;       mask [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/longwave_IO_mask.nc"]; 
     22; 
     23;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_statistics_map_2000_2009_v50.ps"]; 
     24; 
     25;       swr_statistics_map_2000_2009_v50 [shape=box, 
     26;       fontname=Courier, 
     27;       color=blue, 
     28;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig12/swr_statistics_map_2000_2009_v50.pro", 
     29;       label="${TROPFLUX}/src/paper01/fig12/swr_statistics_map_2000_2009_v50.pro"]; 
     30; 
     31;       {swr_erai swr_trop swr_oaflx swr_olr mask} -> {swr_statistics_map_2000_2009_v50} -> {figure} 
     32;    } 
     33; 
    1134; SEE ALSO 
    1235; ======== 
    1336; 
    1437; :ref:`tropflux_profile.sh` 
     38; :ref:`tropflux_init.pro` 
     39; :ref:`cm_tropflux.pro` 
    1540; 
    1641; EXAMPLES 
     
    2247;  IDL> swr_statistics_map_2000_2009_v50 
    2348; 
     49; TODO 
     50; ==== 
     51; 
     52; make it work on cratos : missing data 
     53; 
     54; coding rules 
     55; 
     56; get rid of spwan 
     57; 
     58; complete description 
     59; 
     60; handle IO error 
     61; 
    2462; EVOLUTIONS 
    2563; ========== 
     
    2765; $Id$ 
    2866; 
     67; - fplod 20110420T113846Z aedon.locean-ipsl.upmc.fr (Darwin) 
     68; 
     69;   * remove stop 
     70;   * remove hard coding path 
     71;   * add graphviz 
     72; 
    2973; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3074; 
     
    3377;- 
    3478pro swr_statistics_map_2000_2009_v50 
    35 @common 
     79@cm_general 
     80@cm_tropflux 
    3681reinitplt, /z,/invert 
    3782key_portrait = 1 
     
    4489rmsd_mi=10  & rmsd_ma=30 & rmsd_int=1.25 
    4590cor_mi=0.5   & cor_ma=1.  & cor_int=0.02 
    46 fi_swr_erai='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2009_erai_v50.txt' 
    47 fi_swr_trop='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2009_trop_v50.txt' 
    48 fi_swr_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2009_oaflx_v50.txt' 
    49 fi_swr_olr='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2009_olr_v50.txt' 
     91fi_swr_erai=tropflux_id_env+'swr_2000_2009_erai_v50.txt' 
     92fi_swr_trop=tropflux_id_env+'swr_2000_2009_trop_v50.txt' 
     93fi_swr_oaflx=tropflux_id_env+'swr_2000_2009_oaflx_v50.txt' 
     94fi_swr_olr=tropflux_id_env+'swr_2000_2009_olr_v50.txt' 
    5095 
    5196res=read_ascii(fi_swr_erai,data_start=1) 
     
    92137 
    93138;ind=where(std_olr ge std_ma) & std_olr(ind)=std_ma-0.01 
    94 stop 
    95 file='/Users/pkb/data/heat_budget/OAFLUX/longwave_IO_mask.nc' 
     139file=tropflux_id_env+'longwave_IO_mask.nc' 
    96140initncdf, file 
    97141domdef, 30,390,-30,30 
     
    516560endfor 
    517561closeps 
    518 fig='swr_statistics_map_2000_2009_v50.ps' 
    519 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    520 spawn, 'gv '+cpsdir+fig 
    521 return 
     562fig=tropflux_od_env+'swr_statistics_map_2000_2009_v50.ps' 
     563spawn, 'mv '+psdir+'idl.ps '+fig 
     564spawn, 'gv '+fig 
    522565end 
  • trunk/src/paper01/fig13/net_flux_validation_scatter_2000_2007.pro

    r43 r46  
    11;+ 
    2 ; .. _net_flux_validation_scatter_2000_2007.pro 
     2; .. _net_flux_validation_scatter_2000_2007.pro: 
    33; 
    44; ========================================= 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph net_flux_validation_scatter_2000_2007 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     18;       tropflux_dt_swr [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20071231_DT_v50.nc"]; 
     19;       tropflux_nrt_swr [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     20;       ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     21;       erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc"]; 
     22;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2008.nc"]; 
     23;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2008.nc"]; 
     24;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     25;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     26;       net_nrt_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_2000_2007_erai_v50.txt"]; 
     27;       net_nrt_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_2000_2007_trop_v50.txt"]; 
     28;       net_nrt_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_2000_2007_ncep_v50.txt"]; 
     29;       net_nrt_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_2000_2007_ncep1_v50.txt"]; 
     30;       net_nrt_tropd [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_2000_2007_tropd_v50.txt"]; 
     31; 
     32;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/net_flux_validation_scatter_2000_2007.ps"]; 
     33; 
     34;       net_flux_validation_scatter_2000_2007 [shape=box, 
     35;       fontname=Courier, 
     36;       color=blue, 
     37;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig13/net_flux_validation_scatter_2000_2007.pro", 
     38;       label="${TROPFLUX}/src/paper01/fig13/net_flux_validation_scatter_2000_2007.pro"]; 
     39; 
     40;       {tropflux_general tropflux_dt_swr tropflux_nrt_swr ncep2 erai shf_oafluxgrid lhf_oafluxgrid lwr_oafluxgrid ncep1} -> {net_flux_validation_scatter_2000_2007} -> {net_nrt_erai net_nrt_trop net_nrt_ncep net_nrt_ncep1 net_nrt_tropd figure} 
     41;    } 
     42; 
    1143; SEE ALSO 
    1244; ======== 
    1345; 
    1446; :ref:`tropflux_profile.sh` 
     47; :ref:`tropflux_init.pro` 
     48; :ref:`cm_tropflux.pro` 
     49; 
     50; :func:`x_site_location` 
     51; :func:`y_site_location` 
     52; 
     53; :ref:`statistics_3var_v1.pro` 
    1554; 
    1655; EXAMPLES 
     
    2059; 
    2160;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     61;  IDL> date1=19890101L 
     62;  IDL> date2=20091231L 
    2463;  IDL> net_flux_validation_scatter_2000_2007, date1, date2 
     64; 
     65; TODO 
     66; ==== 
     67; 
     68; make it work on cratos : missing data 
     69; 
     70; coding rules 
     71; 
     72; get rid of spwan 
     73; 
     74; complete description 
     75; 
     76; handle IO error 
    2577; 
    2678; EVOLUTIONS 
     
    2981; $Id$ 
    3082; 
     83; - fplod 20110420T114953Z aedon.locean-ipsl.upmc.fr (Darwin) 
     84; 
     85;   * remove hard coding path 
     86;   * add graphviz 
     87;   * externalize functions 
     88; 
    3189; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3290; 
     
    3593;- 
    3694pro net_flux_validation_scatter_2000_2007, date1, date2 
    37 @common 
    38  
     95@cm_general 
     96@cm_tropflux 
    3997reinitplt, /z,/invert 
    4098key_portrait = 1 
     
    61119nsmooth=1. 
    62120;;   This program will create the following text files with statistics of respective variables 
    63 file_trop='/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc' 
     121file_trop=tropflux_id_env+'TropFlux_19890101_20091231.nc' 
    64122initncdf, file_trop 
    65123shf_trop=read_ncdf("shf", date1, date2, file=file_trop,/nostr) 
     
    67125lwr_trop=read_ncdf("lwr", date1, date2, file=file_trop,/nostr) 
    68126 
    69 file_trop='/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20071231_DT_v50.nc' 
     127file_trop=tropflux_id_env+'TropFlux_swr_19890101_20071231_DT_v50.nc' 
    70128initncdf, file_trop 
    71129swr_dt=read_ncdf("swr", date1, date2, file=file_trop,/nostr) 
     
    73131help, trop 
    74132 
    75 file_trop='/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc' 
     133file_trop=tropflux_id_env+'TropFlux_swr_19890101_20091231_NRT_v50.nc' 
    76134initncdf, file_trop 
    77135swr_nrt=read_ncdf("sw", date1-1, date2, file=file_trop,/nostr) 
     
    79137help, tropd 
    80138 
    81 file_ncep='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc' 
     139file_ncep=tropflux_id_env+'NCEP2_flux_19890101_20090729.nc' 
    82140initncdf, file_ncep 
    83141shf=read_ncdf("shf", date1, date2, file=file_ncep,/nostr) 
     
    90148help, ncep 
    91149 
    92 file_erai='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
     150file_erai=tropflux_id_env+'erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
    93151initncdf, file_erai 
    94152shf=read_ncdf("shf", date1, date2, file=file_erai,/nostr) 
     
    99157help, erai 
    100158 
    101 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2008.nc' 
     159file_oaf=tropflux_id_env+'shf_oafluxgrid_1985_2008.nc' 
    102160initncdf, file_oaf 
    103161shf=read_ncdf("shf", date1, date2, file=file_oaf,/nostr) 
    104 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2008.nc' 
     162file_oaf=tropflux_id_env+'lhf_oafluxgrid_1985_2008.nc' 
    105163initncdf, file_oaf 
    106164lhf=read_ncdf("lhf", date1, date2, file=file_oaf,/nostr) 
    107 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     165file_oaf=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    108166initncdf, file_oaf 
    109167lwr=read_ncdf("lwr", date1, date2, file=file_oaf,/nostr) 
    110 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     168file_oaf=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    111169initncdf, file_oaf 
    112170swr=read_ncdf("swr", date1, date2, file=file_oaf,/nostr) & swr_trop=swr 
     
    114172help, oafl 
    115173 
    116 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     174file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    117175initncdf, file 
    118176lwr=read_ncdf("lwr", date1, date2, file=file,/nostr) 
     
    126184close,/all 
    127185 
    128 fi_net_NRT_erai='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_erai_v50.txt' 
     186fi_net_NRT_erai=tropflux_id_env+'net_2000_2007_erai_v50.txt' 
    129187openw,1,fi_net_NRT_erai 
    130 fi_net_NRT_trop='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_trop_v50.txt' 
     188fi_net_NRT_trop=tropflux_id_env+'net_2000_2007_trop_v50.txt' 
    131189openw,2,fi_net_NRT_trop 
    132 fi_net_NRT_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_oaflx_v50.txt' 
     190fi_net_NRT_oaflx=tropflux_id_env+'net_2000_2007_oaflx_v50.txt' 
    133191openw,3,fi_net_NRT_oaflx 
    134 fi_net_NRT_ncep='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_ncep_v50.txt' 
     192fi_net_NRT_ncep=tropflux_id_env+'net_2000_2007_ncep_v50.txt' 
    135193openw,4,fi_net_NRT_ncep 
    136 fi_net_NRT_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_ncep1_v50.txt' 
     194fi_net_NRT_ncep1=tropflux_id_env+'net_2000_2007_ncep1_v50.txt' 
    137195openw,5,fi_net_NRT_ncep1 
    138 fi_net_NRT_tropd='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_tropd_v50.txt' 
     196fi_net_NRT_tropd=tropflux_id_env+'net_2000_2007_tropd_v50.txt' 
    139197openw,6,fi_net_NRT_tropd 
    140198 
     
    149207nn=n_elements(sitelist) 
    150208 
    151 date1=date1 
    152 date2=date2 
    153209for n=0, nn-1 do begin 
    154210 
     
    219275close,/all 
    220276 
    221 fi_net_NRT_erai='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_erai_v50.txt' 
     277fi_net_NRT_erai=tropflux_id_env+'net_2000_2007_erai_v50.txt' 
    222278res=read_ascii(fi_net_NRT_erai,data_start=1) 
    223279ff=res.field1 
     
    251307 
    252308 
    253 fi_net_NRT_trop='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_trop_v50.txt' 
     309fi_net_NRT_trop=tropflux_id_env+'net_2000_2007_trop_v50.txt' 
    254310res=read_ascii(fi_net_NRT_trop,data_start=1) 
    255311ff=res.field1 
     
    283339 
    284340 
    285 fi_net_NRT_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_oaflx_v50.txt' 
     341fi_net_NRT_oaflx=tropflux_id_env+'net_2000_2007_oaflx_v50.txt' 
    286342res=read_ascii(fi_net_NRT_oaflx,data_start=1) 
    287343ff=res.field1 
     
    316372 
    317373 
    318 fi_net_NRT_ncep='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_ncep_v50.txt' 
     374fi_net_NRT_ncep=tropflux_id_env+'net_2000_2007_ncep_v50.txt' 
    319375res=read_ascii(fi_net_NRT_ncep,data_start=1) 
    320376ff=res.field1 
     
    348404 
    349405 
    350 fi_net_NRT_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_ncep1_v50.txt' 
     406fi_net_NRT_ncep1=tropflux_id_env+'net_2000_2007_ncep1_v50.txt' 
    351407res=read_ascii(fi_net_NRT_ncep1,data_start=1) 
    352408ff=res.field1 
     
    380436 
    381437 
    382 fi_net_NRT_tropd='/Users/pkb/work/MY_SAXO/flux_automat/net_2000_2007_tropd_v50.txt' 
     438fi_net_NRT_tropd=tropflux_id_env+'net_2000_2007_tropd_v50.txt' 
    383439res=read_ascii(fi_net_NRT_tropd,data_start=1) 
    384440ff=res.field1 
     
    413469closeps 
    414470 
    415 fig='net_flux_validation_scatter_2000_2007.ps' 
    416 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    417 spawn, 'gv '+cpsdir+fig 
    418 return 
     471fig=tropflux_od_env+'net_flux_validation_scatter_2000_2007.ps' 
     472spawn, 'mv '+psdir+'idl.ps '+fig 
     473spawn, 'gv '+fig 
    419474end 
    420 function x_site_location, site 
    421     n1=strpos(site, 's') 
    422 if (n1 gt -1) then begin 
    423     ns=-1. 
    424     x=strmid(site, 0, n1) 
    425     x=float(x)*ns 
    426 endif else begin 
    427     n1=strpos(site, 'n') 
    428     x=strmid(site, 0, n1) 
    429     ny=1. 
    430     x=float(x)*ny 
    431 endelse 
    432 return, float(x) 
    433 end 
    434 function y_site_location, site 
    435     n1=strpos(site, 'e') 
    436 if (n1 gt -1) then begin 
    437     n=strpos(site, 's') 
    438     if (n gt -1) then begin 
    439         y=strmid(site, n+1, n1-n-1) 
    440     endif else begin 
    441         n=strpos(site, 'n') 
    442         y=strmid(site, n+1, n1-n-1) 
    443     endelse 
    444  
    445 endif else begin 
    446     n1=strpos(site, 'w') 
    447     n=strpos(site, 's') 
    448     if (n gt -1) then begin 
    449         y=strmid(site, n+1, n1-n-1) 
    450         y=180+(180-float(y)) 
    451     endif else begin 
    452         n=strpos(site, 'n') 
    453         y=strmid(site, n+1, n1-n-1) 
    454         y=180+(180-float(y)) 
    455    endelse 
    456 endelse 
    457 return,float(y) 
    458 end 
  • trunk/src/paper01/fig14/as_validation_net_1994_95_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _as_validation_net_1994_95_v10.pro 
     2; .. _as_validation_net_1994_95_v10.pro: 
    33; 
    44; ================================= 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph as_validation_net_1994_95_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_as_expt_19*.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     22;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     23;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     24;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     25;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     26;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     27;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     28;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     29;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     30;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31; 
     32;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     33; 
     34;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/as_validation_net_1994_95_v10.ps"]; 
     35; 
     36;       as_validation_net_1994_95_v10 [shape=box, 
     37;       fontname=Courier, 
     38;       color=blue, 
     39;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/as_validation_net_1994_95_v10.pro", 
     40;       label="${TROPFLUX}/src/paper01/fig14/as_validation_net_1994_95_v10.pro"]; 
     41; 
     42;       {met_data swr_erai  lwr_erai lhf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {as_validation_net_1994_95_v10} -> {figure} 
     43;    } 
     44; 
    1145; SEE ALSO 
    1246; ======== 
    1347; 
    1448; :ref:`tropflux_profile.sh` 
     49; :ref:`tropflux_init.pro` 
     50; :ref:`cm_tropflux.pro` 
     51; 
     52; :ref:`statistics.pro` 
    1553; 
    1654; EXAMPLES 
     
    2361; 
    2462; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; coding rules 
     68; 
     69; get rid of spwan 
     70; 
     71; complete description 
     72; 
     73; handle IO error 
     74; 
    2575; EVOLUTIONS 
    2676; ========== 
     
    2878; $Id$ 
    2979; 
     80; - fplod 20110420T115926Z aedon.locean-ipsl.upmc.fr (Darwin) 
     81; 
     82;   * remove hard coding path 
     83;   * add graphviz 
     84; 
    3085; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3186; 
     
    3489;- 
    3590pro as_validation_net_1994_95_v10 
    36 @common 
     91@cm_general 
     92@cm_tropflux 
    3793reinitplt, /z,/invert 
    3894key_portrait = 1 
     
    44100date1=19941016 & date2=19951019 
    45101 
    46 fi="/Users/pkb/data/Mooring_data/AS_expt/met_data_as_expt_1994.txt" 
     102fi=tropflux_id_env+"met_data_as_expt_1994.txt" 
    47103res=read_ascii(fi,data_start=1) 
    48104ff=res.field1 
     
    53109net94=swr94+lwr94+lhf94+shf94 
    54110 
    55 fi="/Users/pkb/data/Mooring_data/AS_expt/met_data_as_expt_1995.txt" 
     111fi=tropflux_id_env+"met_data_as_expt_1995.txt" 
    56112res=read_ascii(fi,data_start=1) 
    57113ff=res.field1 
     
    71127help, net 
    72128;; reading other data sets 
    73 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     129file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    74130initncdf, file 
    75131swr=read_ncdf('swr',date1,date2,file=file,/nostr, box=asbox) & swr=reform(swr) 
    76 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     132file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    77133initncdf, file 
    78134lwr=read_ncdf('lwr',date1-1,date2,file=file,/nostr, box=asbox) & lwr=reform(lwr) 
    79 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     135file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    80136initncdf, file 
    81137shf=-1*read_ncdf('shf',date1,date2,file=file,/nostr, box=asbox) & shf=reform(shf) 
    82 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     138file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    83139initncdf, file 
    84140lhf=-1*read_ncdf('lhf',date1,date2,file=file,/nostr, box=asbox) & lhf=reform(lhf) 
     
    91147swr=0. & lwr=0. & shf=0. & lhf=0. 
    92148 
    93 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     149file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    94150initncdf, file 
    95151swr=read_ncdf('swr',date1,date2,file=file,/nostr, box=asbox) & swr=reform(swr) 
     
    100156help, trop 
    101157 
    102 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     158file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    103159initncdf, file 
    104160olr1=read_ncdf("sw", date1-1, date2, file=file,/nostr, box=asbox) ;; & olr1=grossemoyenne(olr1, "xy",/nan, box=asbox) & 
     
    112168help, trop, olr 
    113169 
    114 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     170file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    115171initncdf, file 
    116172swr=read_ncdf("swr", date1, date2, file=file,/nostr, box=asbox) & swr=reform(swr) 
    117173 
    118 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     174file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    119175initncdf, file 
    120176lwr=read_ncdf("lwr", date1, date2, file=file,/nostr, box=asbox) & lwr=-1*reform(lwr) 
    121177 
    122 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     178file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    123179initncdf, file 
    124180lhf=read_ncdf("lhf", date1, date2, file=file,/nostr, box=asbox) & lhf=-1*reform(lhf) 
    125181 
    126 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     182file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    127183initncdf, file 
    128184shf=read_ncdf("shf", date1, date2, file=file,/nostr, box=asbox) & shf=-1*reform(shf) 
     
    134190swr=0. & lwr=0. & shf=0. & lhf=0. 
    135191 
    136 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     192fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    137193initncdf, fi 
    138194swr=read_ncdf("swr", date1, date2, file=fi,/nostr, box=asbox) & swr=reform(swr) 
    139195 
    140 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     196fi=tropflux_id_env+"NCEP2_flux_19890101_20090729.nc" 
    141197initncdf, fi 
    142198lwr=read_ncdf("lwr", date1, date2, file=fi,/nostr, box=asbox) & lwr=grossemoyenne(lwr, "xy",/nan, box=asbox) & lwr=reform(lwr) 
     
    144200lwr=-1*lwr 
    145201 
    146 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     202fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    147203initncdf, fi 
    148204lhf=read_ncdf("lhf", date1, date2, file=fi,/nostr, box=asbox) & lhf=-1*reform(lhf) 
    149205 
    150 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     206fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    151207initncdf, fi 
    152208shf=read_ncdf("shf", date1, date2, file=fi,/nostr, box=asbox) & shf=-1*reform(shf) 
     
    159215swr=0. & lwr=0. & shf=0. & lhf=0. 
    160216 
    161 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     217file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    162218initncdf, file 
    163219swr=read_ncdf("swr", date1, date2, file=file,/nostr, box=asbox) & swr=reform(swr) 
     
    235291xyouts, -150,-175, cstat_olr, charsize=1. 
    236292 
    237 stop 
    238293closeps 
    239 fig='as_validation_net_1994_95_v10.ps' 
    240 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    241 spawn, 'gv '+cpsdir+fig 
    242 return 
     294fig=tropflux_od_env+'as_validation_net_1994_95_v10.ps' 
     295spawn, 'mv '+psdir+'idl.ps '+fig 
     296spawn, 'gv '+fig 
    243297end 
  • trunk/src/paper01/fig14/coare_validation_net_1992_93_all_v10.pro

    r43 r46  
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph coare_validation_net_1992_93_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_as_expt_199*_p*.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/coare_validation_net_1992_93_all_v11.ps"]; 
     36; 
     37;       coare_validation_net_1992_93_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/coare_validation_net_1992_93_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/coare_validation_net_1992_93_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {coare_validation_net_1992_93_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> coare_validation_net_1992_93_all_v10 
    2362; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; coding rules 
     69; 
     70; get rid of spwan 
     71; 
     72; complete description 
     73; 
     74; handle IO error 
     75; 
    2476; EVOLUTIONS 
    2577; ========== 
     
    2779; $Id$ 
    2880; 
     81; - fplod 20110420T120449Z aedon.locean-ipsl.upmc.fr (Darwin) 
     82; 
     83;   * remove hard coding path 
     84;   * add graphviz 
     85; 
    2986; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3087; 
     
    3390;- 
    3491pro coare_validation_net_1992_93_all_v10 
    35 @common 
     92@cm_general 
     93@cm_tropflux 
    3694reinitplt, /z,/invert 
    3795key_portrait = 1 
     
    45103;; first leg 
    46104;; start data - 11/11/92 and end date 03/12/92 
    47 fi="/Users/pkb/data/Mooring_data/COARE/met_data_coare_expt_1992_p1.txt" 
     105fi=tropflux_id_env+"met_data_coare_expt_1992_p1.txt" 
    48106res=read_ascii(fi,data_start=1) 
    49107ff=res.field1 
     
    60118;; second leg 
    61119 
    62 fi="/Users/pkb/data/Mooring_data/COARE/met_data_coare_expt_1992_p2.txt" 
     120fi=tropflux_id_env+"met_data_coare_expt_1992_p2.txt" 
    63121res=read_ascii(fi,data_start=1) 
    64122ff=res.field1 
     
    75133;; third leg 
    76134 
    77 fi="/Users/pkb/data/Mooring_data/COARE/met_data_coare_expt_1993_p1.txt" 
     135fi=tropflux_id_env+"met_data_coare_expt_1993_p1.txt" 
    78136res=read_ascii(fi,data_start=1) 
    79137ff=res.field1 
     
    90148;; fourth leg 
    91149 
    92 fi="/Users/pkb/data/Mooring_data/COARE/met_data_coare_expt_1993_p2.txt" 
     150fi=tropflux_id_env+"met_data_coare_expt_1993_p2.txt" 
    93151res=read_ascii(fi,data_start=1) 
    94152ff=res.field1 
     
    113171st4=19930128 & en4=19930216 
    114172 
    115 ;file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_swr_19890101_20091231_oafluxgrid.nc' 
    116 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     173file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    117174initncdf, file 
    118175swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy", box=box,/nan) & swr1=reform(swr1) 
     
    121178swr4=read_ncdf('swr',st4,en4,file=file,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy", box=box,/nan) & swr4=reform(swr4) 
    122179 
    123 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     180file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    124181initncdf, file 
    125182lwr1=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy", box=box,/nan) & lwr1=reform(lwr1) 
     
    128185lwr4=read_ncdf('lwr',st4-1,en4,file=file,/nostr, box=box) & lwr4=grossemoyenne(lwr4, "xy", box=box,/nan) & lwr4=reform(lwr4) 
    129186 
    130 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     187file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    131188initncdf, file 
    132189lhf1=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    135192lhf4=-1*read_ncdf('lhf',st4,en4,file=file,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy", box=box,/nan) & lhf4=reform(lhf4) 
    136193 
    137 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     194file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    138195initncdf, file 
    139196shf1=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy", box=box,/nan) & shf1=reform(shf1) 
     
    151208net1=0 & net2=0 & net3=0 & net4=0 
    152209 
    153 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     210file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    154211initncdf, file 
    155212swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    176233net3=swr3+lwr3+lhf3+shf3 & net4=swr4+lwr4+lhf4+shf4 
    177234 
    178 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     235file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    179236initncdf, file 
    180237olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    194251net1=0 & net2=0 & net3=0 & net4=0 & neto_1=0 & neto_2=0 & neto_3=0 & neto_4=0 
    195252 
    196 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     253file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    197254initncdf, file 
    198255swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    201258swr4=read_ncdf("swr", st4, en4, file=file,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy",/nan, box=box) & swr4=reform(swr4) 
    202259 
    203 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     260file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    204261initncdf, file 
    205262lwr1=-1*read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    208265lwr4=-1*read_ncdf("lwr", st4, en4, file=file,/nostr, box=box) & lwr4=grossemoyenne(lwr4, "xy",/nan, box=box) & lwr4=reform(lwr4) 
    209266 
    210 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     267file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    211268initncdf, file 
    212269lhf1=-1*read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    215272lhf4=-1*read_ncdf("lhf", st4, en4, file=file,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy",/nan, box=box) & lhf4=reform(lhf4) 
    216273 
    217 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     274file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    218275initncdf, file 
    219276shf1=-1*read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    232289net1=0 & net2=0 & net3=0 & net4=0 
    233290 
    234 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     291fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    235292initncdf, fi 
    236293swr1=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    239296swr4=read_ncdf("swr", st4, en4, file=fi,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy",/nan, box=box) & swr4=reform(swr4) 
    240297 
    241 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     298fi=tropflux_id_env+"NCEP2_flux_19890101_20090729.nc" 
    242299initncdf, fi 
    243300lwr1=-1*read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    246303lwr4=-1*read_ncdf("lwr", st4, en4, file=fi,/nostr, box=box) & lwr4=grossemoyenne(lwr4, "xy",/nan, box=box) & lwr4=reform(lwr4) 
    247304 
    248 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     305fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    249306initncdf, fi 
    250307lhf1=-1*read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    253310lhf4=-1*read_ncdf("lhf", st4, en4, file=fi,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy",/nan, box=box) & lhf4=reform(lhf4) 
    254311 
    255 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     312fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    256313initncdf, fi 
    257314shf1=-1*read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    270327net1=0 & net2=0 & net3=0 & net4=0 
    271328 
    272 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
    273 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     329file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    274330initncdf, file 
    275331swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    370426xyouts, -150,-175, cstat_olr, charsize=1. 
    371427 
    372 stop 
    373428closeps 
    374 fig="coare_validation_net_1992_93_all_v11.ps" 
    375 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    376 spawn, 'gv '+cpsdir+fig 
    377 return 
     429fig=tropflux_od_env+"coare_validation_net_1992_93_all_v11.ps" 
     430spawn, 'mv '+psdir+'idl.ps '+fig 
     431spawn, 'gv '+fig 
    378432end 
  • trunk/src/paper01/fig14/stratus_validation_net_2001_2002_all_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _stratus_validation_net_2001_2002_all_v10.pro 
     2; .. _stratus_validation_net_2001_2002_all_v10.pro: 
    33; 
    44; ============================================ 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph stratus_validation_net_2001_2002_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_stratus_2001_2002.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/stratus_validation_net_2001_2002_all_v11.ps"]; 
     36; 
     37;       stratus_validation_net_2001_2002_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/stratus_validation_net_2001_2002_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/stratus_validation_net_2001_2002_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {stratus_validation_net_2001_2002_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> stratus_validation_net_2001_2002_all_v10 
    2362; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; ++ mooring data in graphviz 
     69; 
     70; coding rules 
     71; 
     72; get rid of spwan 
     73; 
     74; complete description 
     75; 
     76; handle IO error 
     77; 
    2478; EVOLUTIONS 
    2579; ========== 
     
    2781; $Id$ 
    2882; 
     83; - fplod 20110420T120826Z aedon.locean-ipsl.upmc.fr (Darwin) 
     84; 
     85;   * remove hard coding path 
     86;   * add graphviz 
     87; 
    2988; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3089; 
     
    3392;- 
    3493pro stratus_validation_net_2001_2002_all_v10 
    35 @common 
     94@cm_general 
     95@cm_tropflux 
    3696reinitplt, /z,/invert 
    3797key_portrait = 1 
     
    47107;; first leg 
    48108 
    49 fi="/Users/pkb/data/Mooring_data/stratus/met_data_stratus_2001_2002.txt" 
     109fi=tropflux_id_env+"met_data_stratus_2001_2002.txt" 
    50110res=read_ascii(fi,data_start=1) 
    51111ff=res.field1 
     
    62122st1=20011019 & en1=20021022 
    63123 
    64 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     124file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    65125initncdf, file 
    66126swr=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr=grossemoyenne(swr, "xy", box=box,/nan) & swr=reform(swr) 
    67 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     127file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    68128initncdf, file 
    69129lwr=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr=reform(lwr) 
    70 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     130file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    71131initncdf, file 
    72132shf=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf=reform(shf) 
    73 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     133file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    74134initncdf, file 
    75135lhf=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf=reform(lhf) 
     
    80140swr=0 & lwr=0 & lhf=0 & shf=0 
    81141 
    82 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     142file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    83143initncdf, file 
    84144swr=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr=grossemoyenne(swr, "xy",/nan, box=box) & swr=reform(swr) 
     
    87147lhf=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf=grossemoyenne(lhf, "xy",/nan, box=box) & lhf=reform(lhf) 
    88148 
    89 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     149file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    90150initncdf, file 
    91151olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    96156swr=0 & lwr=0 & lhf=0 & shf=0 & olr1=0 
    97157 
    98 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     158file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    99159initncdf, file 
    100160swr=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr=grossemoyenne(swr, "xy",/nan, box=box) & swr=reform(swr) 
    101161 
    102 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     162file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    103163initncdf, file 
    104164lwr=read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr=-1*reform(lwr) 
    105165 
    106 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     166file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    107167initncdf, file 
    108168lhf=read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf=-1*reform(lhf) 
    109169 
    110 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     170file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    111171initncdf, file 
    112172shf=read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf=-1*reform(shf) 
     
    116176swr=0 & lwr=0 & lhf=0 & shf=0 
    117177 
    118 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     178fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    119179initncdf, fi 
    120180swr=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr=grossemoyenne(swr, "xy",/nan, box=box) & swr=reform(swr) 
    121181 
    122 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     182fi=tropflux_id_env+"NCEP2_flux_19890101_20090729.nc" 
    123183initncdf, fi 
    124184lwr=read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr=grossemoyenne(lwr, "xy",/nan, box=box) & lwr=reform(lwr) 
    125185lwr=-1*lwr 
    126186 
    127 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     187fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    128188initncdf, fi 
    129189lhf=read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf=-1*reform(lhf) 
    130190 
    131 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     191fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    132192initncdf, fi 
    133193shf=read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf=-1*reform(shf) 
     
    138198swr=0 & lwr=0 & lhf=0 & shf=0 
    139199 
    140 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
    141 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     200file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    142201initncdf, file 
    143202swr=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr=grossemoyenne(swr, "xy",/nan, box=box) & swr=reform(swr) 
     
    214273xyouts, -150,-175, cstat_olr, charsize=1. 
    215274 
    216 stop 
    217275closeps 
    218 fig="stratus_validation_net_2001_2002_all_v11.ps" 
    219 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    220 spawn, 'gv '+cpsdir+fig 
    221 return 
     276fig=tropflux_od_env+"stratus_validation_net_2001_2002_all_v11.ps" 
     277spawn, 'mv '+psdir+'idl.ps '+fig 
     278spawn, 'gv '+fig 
    222279end 
  • trunk/src/paper01/fig14/subdctn_cs_validation_net_1991_93_all_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _subdctn_cs_validation_net_1991_93_all_v10.pro 
     2; .. _subdctn_cs_validation_net_1991_93_all_v10.pro: 
    33; 
    44; ============================================= 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph subdctn_cs_validation_net_1991_93_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_subduct_cs_9*.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/subdctn_cs_validation_net_1991_93_all_v10.ps"]; 
     36; 
     37;       subdctn_cs_validation_net_1991_93_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/subdctn_cs_validation_net_1991_93_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/subdctn_cs_validation_net_1991_93_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {subdctn_cs_validation_net_1991_93_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> subdctn_cs_validation_net_1991_93_all_v10 
    2362; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; coding rules 
     69; 
     70; get rid of spwan 
     71; 
     72; complete description 
     73; 
     74; handle IO error 
     75; 
    2476; EVOLUTIONS 
    2577; ========== 
     
    2779; $Id$ 
    2880; 
     81; - fplod 20110420T121121Z aedon.locean-ipsl.upmc.fr (Darwin) 
     82; 
     83;   * remove hard coding path 
     84;   * add graphviz 
     85; 
    2986; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3087; 
     
    3390;- 
    3491pro subdctn_cs_validation_net_1991_93_all_v10 
    35 @common 
     92@cm_general 
     93@cm_tropflux 
    3694reinitplt, /z,/invert 
    3795key_portrait = 1 
     
    46104;; first leg 
    47105 
    48 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_cs_91.txt" 
     106fi=tropflux_id_env+"met_data_subduct_cs_91.txt" 
    49107res=read_ascii(fi,data_start=1) 
    50108ff=res.field1 
     
    59117;; second leg 
    60118 
    61 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_cs_92.txt" 
     119fi=tropflux_id_env+"met_data_subduct_cs_92.txt" 
    62120res=read_ascii(fi,data_start=1) 
    63121ff=res.field1 
     
    70128;; second leg 
    71129 
    72 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_cs_93.txt" 
     130fi=tropflux_id_env+"met_data_subduct_cs_93.txt" 
    73131res=read_ascii(fi,data_start=1) 
    74132ff=res.field1 
     
    86144st1=19910623 & en1=19930616 
    87145 
    88 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     146file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    89147initncdf, file 
    90148swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy", box=box,/nan) & swr1=reform(swr1) 
    91 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     149file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    92150initncdf, file 
    93151lhf1=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
    94 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     152file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    95153initncdf, file 
    96154shf1=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy", box=box,/nan) & shf1=reform(shf1) 
    97 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     155file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    98156initncdf, file 
    99157lwr1=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy", box=box,/nan) & lwr1=reform(lwr1) 
     
    103161help, era 
    104162 
    105 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     163file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    106164initncdf, file 
    107165lhf1=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    111169trop=swr1+lwr1+lhf1+shf1 
    112170 
    113 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     171file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    114172initncdf, file 
    115173olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    119177swr1=0 & lwr1=0 & shf1=0 & lhf1=0 & olr1=0 
    120178 
    121 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     179file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    122180initncdf, file 
    123181swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
    124 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     182file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    125183initncdf, file 
    126184lwr1=-1*read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
    127 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     185file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    128186initncdf, file 
    129187lhf1=-1*read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
    130 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     188file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    131189initncdf, file 
    132190shf1=-1*read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    136194swr1=0 & lwr1=0 & shf1=0 & lhf1=0 & olr1=0 
    137195 
    138 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     196fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    139197initncdf, fi 
    140198swr1=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
    141 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     199fi=tropflux_id_env+"NCEP2_flux_19890101_20090729.nc" 
    142200initncdf, fi 
    143201lwr1=-1*read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
    144 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     202fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    145203initncdf, fi 
    146204lhf1=-1*read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
    147 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     205fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    148206initncdf, fi 
    149207shf1=-1*read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    153211swr1=0 & lwr1=0 & shf1=0 & lhf1=0 & olr1=0 
    154212 
    155 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     213file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    156214initncdf, file 
    157215 
     
    228286xyouts, 0,-175, cstat_olr, charsize=1. 
    229287 
    230 stop 
    231288closeps 
    232 fig="subdctn_cs_validation_net_1991_93_all_v10.ps" 
    233 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    234 spawn, 'gv '+cpsdir+fig 
    235 return 
     289fig=tropflux_od_env+"subdctn_cs_validation_net_1991_93_all_v10.ps" 
     290spawn, 'mv '+psdir+'idl.ps '+fig 
     291spawn, 'gv '+fig 
    236292end 
  • trunk/src/paper01/fig14/subdctn_ses_validation_net_1991_93_all_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _subdctn_ses_validation_net_1991_93_all_v10.pro 
     2; .. _subdctn_ses_validation_net_1991_93_all_v10.pro: 
    33; 
    44; ============================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph subdctn_ses_validation_net_1991_93_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_subduct_ses_9*.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/subdctn_ses_validation_net_1991_93_all_v10.ps"]; 
     36; 
     37;       subdctn_ses_validation_net_1991_93_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/subdctn_ses_validation_net_1991_93_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/subdctn_ses_validation_net_1991_93_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {subdctn_ses_validation_net_1991_93_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> subdctn_ses_validation_net_1991_93_all_v10 
    2362; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; coding rules 
     69; 
     70; get rid of spwan 
     71; 
     72; complete description 
     73; 
     74; handle IO error 
    2475; 
    2576; EVOLUTIONS 
     
    2879; $Id$ 
    2980; 
     81; - fplod 20110420T121359Z aedon.locean-ipsl.upmc.fr (Darwin) 
     82; 
     83;   * remove hard coding path 
     84;   * add graphviz 
     85; 
    3086; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3187; 
     
    3490;- 
    3591pro subdctn_ses_validation_net_1991_93_all_v10 
    36 @common 
     92@cm_general 
     93@cm_tropflux 
    3794reinitplt, /z,/invert 
    3895key_portrait = 1 
     
    49106;; second leg 
    50107 
    51 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_ses_92.txt" 
     108fi=tropflux_id_env+"met_data_subduct_ses_92.txt" 
    52109res=read_ascii(fi,data_start=1) 
    53110ff=res.field1 
     
    61118;; second leg 
    62119 
    63 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_ses_93.txt" 
     120fi=tropflux_id_env+"met_data_subduct_ses_93.txt" 
    64121res=read_ascii(fi,data_start=1) 
    65122ff=res.field1 
     
    79136st2=19920921 & en2=19930618 
    80137 
    81 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     138file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    82139initncdf, file 
    83140swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy", box=box,/nan) & swr1=reform(swr1) 
    84141swr2=read_ncdf('swr',st2,en2,file=file,/nostr, box=box) & swr2=grossemoyenne(swr2, "xy", box=box,/nan) & swr2=reform(swr2) 
    85142 
    86 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     143file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    87144initncdf, file 
    88145lhf1=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
    89146lhf2=-1*read_ncdf('lhf',st2,en2,file=file,/nostr, box=box) & lhf2=grossemoyenne(lhf2, "xy", box=box,/nan) & lhf2=reform(lhf2) 
    90147 
    91 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     148file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    92149initncdf, file 
    93150shf1=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy", box=box,/nan) & shf1=reform(shf1) 
    94151shf2=-1*read_ncdf('shf',st2,en2,file=file,/nostr, box=box) & shf2=grossemoyenne(shf2, "xy", box=box,/nan) & shf2=reform(shf2) 
    95152 
    96 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     153file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    97154initncdf, file 
    98155lwr1=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy", box=box,/nan) & lwr1=reform(lwr1) 
     
    107164net1=0. & net2=0. 
    108165 
    109 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     166file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    110167initncdf, file 
    111168lhf1=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    118175swr2=read_ncdf('swr',st2,en2,file=file,/nostr, box=box) & swr2=grossemoyenne(swr2, "xy", box=box,/nan) & swr2=reform(swr2) 
    119176 
    120 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     177file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    121178initncdf, file 
    122179olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    128185help, trop, olr 
    129186 
    130 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     187file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    131188initncdf, file 
    132189swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
    133190swr2=read_ncdf("swr", st2, en2, file=file,/nostr, box=box) & swr2=grossemoyenne(swr2, "xy",/nan, box=box) & swr2=reform(swr2) 
    134191 
    135 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     192file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    136193initncdf, file 
    137194lwr1=-1*read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
    138195lwr2=-1*read_ncdf("lwr", st2, en2, file=file,/nostr, box=box) & lwr2=grossemoyenne(lwr2, "xy",/nan, box=box) & lwr2=reform(lwr2) 
    139196 
    140 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     197file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    141198initncdf, file 
    142199lhf1=-1*read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
    143200lhf2=-1*read_ncdf("lhf", st2, en2, file=file,/nostr, box=box) & lhf2=grossemoyenne(lhf2, "xy",/nan, box=box) & lhf2=reform(lhf2) 
    144201 
    145 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     202file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    146203initncdf, file 
    147204shf1=-1*read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    152209help, oaf 
    153210 
    154 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     211fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    155212initncdf, fi 
    156213swr1=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
    157214swr2=read_ncdf("swr", st2, en2, file=fi,/nostr, box=box) & swr2=grossemoyenne(swr2, "xy",/nan, box=box) & swr2=reform(swr2) 
    158215 
    159 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     216fi=tropflux_id_env+"NCEP2_flux_19890101_20090729.nc" 
    160217initncdf, fi 
    161218lwr1=-1*read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
    162219lwr2=-1*read_ncdf("lwr", st2, en2, file=fi,/nostr, box=box) & lwr2=grossemoyenne(lwr2, "xy",/nan, box=box) & lwr2=reform(lwr2) 
    163220 
    164 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     221fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    165222initncdf, fi 
    166223lhf1=-1*read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
    167224lhf2=-1*read_ncdf("lhf", st2, en2, file=fi,/nostr, box=box) & lhf2=grossemoyenne(lhf2, "xy",/nan, box=box) & lhf2=reform(lhf2) 
    168225 
    169 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     226fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    170227initncdf, fi 
    171228shf1=-1*read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    176233help, nce2 
    177234 
    178 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     235file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    179236initncdf, file 
    180237lhf1=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    256313xyouts, 0,-175, cstat_olr, charsize=1. 
    257314 
    258 stop 
    259315closeps 
    260 fig="subdctn_ses_validation_net_1991_93_all_v10.ps" 
    261 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    262 spawn, 'gv '+cpsdir+fig 
    263 return 
     316fig=tropflux_od_env+"subdctn_ses_validation_net_1991_93_all_v10.ps" 
     317spawn, 'mv '+psdir+'idl.ps '+fig 
     318spawn, 'gv '+fig 
    264319end 
  • trunk/src/paper01/fig14/subdctn_sws_validation_net_1991_93_all_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _subdctn_sws_validation_net_1991_93_all_v10.pro 
     2; .. _subdctn_sws_validation_net_1991_93_all_v10.pro: 
    33; 
    44; ============================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph subdctn_sws_validation_net_1991_93_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_subduct_sws_9*.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/subdctn_sws_validation_net_1991_93_all_v10.ps"]; 
     36; 
     37;       subdctn_sws_validation_net_1991_93_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/subdctn_sws_validation_net_1991_93_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/subdctn_sws_validation_net_1991_93_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {subdctn_sws_validation_net_1991_93_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> subdctn_sws_validation_net_1991_93_all_v10 
    2362; 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; coding rules 
     69; 
     70; get rid of spwan 
     71; 
     72; complete description 
     73; 
     74; handle IO error 
     75; 
    2476; EVOLUTIONS 
    2577; ========== 
     
    2779; $Id$ 
    2880; 
     81; - fplod 20110420T121730Z aedon.locean-ipsl.upmc.fr (Darwin) 
     82; 
     83;   * remove hard coding path 
     84;   * add graphviz 
     85; 
    2986; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3087; 
     
    3390;- 
    3491pro subdctn_sws_validation_net_1991_93_all_v10 
    35 @common 
     92@cm_general 
     93@cm_tropflux 
    3694reinitplt, /z,/invert 
    3795key_portrait = 1 
     
    46104;; first leg 
    47105 
    48 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_sws_91_v1.txt" 
     106fi=tropflux_id_env+"met_data_subduct_sws_91_v1.txt" 
    49107res=read_ascii(fi,data_start=1) 
    50108ff=res.field1 
     
    59117;; second leg 
    60118 
    61 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_sws_92_v1.txt" 
     119fi=tropflux_id_env+"met_data_subduct_sws_92_v1.txt" 
    62120res=read_ascii(fi,data_start=1) 
    63121ff=res.field1 
     
    71129;; second leg 
    72130 
    73 fi="/Users/pkb/data/Mooring_data/subduction_expt_atl/met_data_subduct_sws_93_v1.txt" 
     131fi=tropflux_id_env+"met_data_subduct_sws_93_v1.txt" 
    74132res=read_ascii(fi,data_start=1) 
    75133ff=res.field1 
     
    89147st4=19930101 & en4=19930521 
    90148 
    91 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     149file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    92150initncdf, file 
    93151swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy", box=box,/nan) & swr1=reform(swr1) 
     
    96154swr4=read_ncdf('swr',st4,en4,file=file,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy", box=box,/nan) & swr4=reform(swr4) 
    97155 
    98 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     156file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    99157initncdf, file 
    100158lhf1=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    103161lhf4=-1*read_ncdf('lhf',st4,en4,file=file,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy", box=box,/nan) & lhf4=reform(lhf4) 
    104162 
    105 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     163file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    106164initncdf, file 
    107165shf1=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy", box=box,/nan) & shf1=reform(shf1) 
     
    110168shf4=-1*read_ncdf('shf',st4,en4,file=file,/nostr, box=box) & shf4=grossemoyenne(shf4, "xy", box=box,/nan) & shf4=reform(shf4) 
    111169 
    112 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     170file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    113171initncdf, file 
    114172lwr1=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy", box=box,/nan) & lwr1=reform(lwr1) 
     
    126184help, era 
    127185 
    128 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     186file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    129187initncdf, file 
    130188lhf1=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    148206swr4=read_ncdf('swr',st4,en4,file=file,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy", box=box,/nan) & swr4=reform(swr4) 
    149207 
    150 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     208file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    151209initncdf, file 
    152210olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    169227help, trop, olr 
    170228 
    171 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     229file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    172230initncdf, file 
    173231swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    176234swr4=read_ncdf("swr", st4, en4, file=file,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy",/nan, box=box) & swr4=reform(swr4) 
    177235 
    178 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     236file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    179237initncdf, file 
    180238lwr1=-1*read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    183241lwr4=-1*read_ncdf("lwr", st4, en4, file=file,/nostr, box=box) & lwr4=grossemoyenne(lwr4, "xy",/nan, box=box) & lwr4=reform(lwr4) 
    184242 
    185 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     243file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    186244initncdf, file 
    187245lhf1=-1*read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    190248lhf4=-1*read_ncdf("lhf", st4, en4, file=file,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy",/nan, box=box) & lhf4=reform(lhf4) 
    191249 
    192 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     250file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    193251initncdf, file 
    194252shf1=-1*read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    209267help, oaf 
    210268 
    211 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     269fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    212270initncdf, fi 
    213271swr1=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    216274swr4=read_ncdf("swr", st4, en4, file=fi,/nostr, box=box) & swr4=grossemoyenne(swr4, "xy",/nan, box=box) & swr4=reform(swr4) 
    217275 
    218 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     276fi=tropflux_id_env+'"NCEP2_flux_19890101_20090729.nc" 
    219277initncdf, fi 
    220278lwr1=-1*read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    223281lwr4=-1*read_ncdf("lwr", st4, en4, file=fi,/nostr, box=box) & lwr4=grossemoyenne(lwr4, "xy",/nan, box=box) & lwr4=reform(lwr4) 
    224282 
    225 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     283fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    226284initncdf, fi 
    227285lhf1=-1*read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    230288lhf4=-1*read_ncdf("lhf", st4, en4, file=fi,/nostr, box=box) & lhf4=grossemoyenne(lhf4, "xy",/nan, box=box) & lhf4=reform(lhf4) 
    231289 
    232 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     290fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    233291initncdf, fi 
    234292shf1=-1*read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    248306net1=0. & net2=0. & net3=0. & net4=0 
    249307 
    250 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     308file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    251309initncdf, file 
    252310 
     
    344402xyouts, 0,-175, cstat_olr, charsize=1. 
    345403 
    346 stop 
    347404closeps 
    348 fig="subdctn_sws_validation_net_1991_93_all_v10.ps" 
    349 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    350 spawn, 'gv '+cpsdir+fig 
    351 return 
     405fig=tropflux_od_env+"subdctn_sws_validation_net_1991_93_all_v10.ps" 
     406spawn, 'mv '+psdir+'idl.ps '+fig 
     407spawn, 'gv '+fig 
    352408end 
  • trunk/src/paper01/fig14/whots_validation_net_2004_2007_all_v10.pro

    r43 r46  
    11;+ 
    2 ; .. _whots_validation_net_2004_2007_all_v10.pro 
     2; .. _whots_validation_net_2004_2007_all_v10.pro: 
    33; 
    44; ========================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph whots_validation_net_2004_2007_all_v10 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       met_data [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/met_data_WHOTS_200?_200?.txt"]; 
     18;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; 
     19;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; 
     20;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; 
     21;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; 
     22;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     23;       swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2007.nc"]; 
     27;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     30;       lhf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     31;       shf_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     32; 
     33;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ncep1_flux_19890101_20091231.nc"]; 
     34; 
     35;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/WHOTS_validation_net_2004_2007_all_v10.ps"]; 
     36; 
     37;       whots_validation_net_2004_2007_all_v10 [shape=box, 
     38;       fontname=Courier, 
     39;       color=blue, 
     40;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/whots_validation_net_2004_2007_all_v10.pro", 
     41;       label="${TROPFLUX}/src/paper01/fig14/whots_validation_net_2004_2007_all_v10.pro"]; 
     42; 
     43;       {met_data swr_erai  lwr_erai lhf_erai shf_erai tropflux_general swr_tropflux_nrt swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid swr_ncep2 lwr_ncep2 lhf_ncep2 shf_ncep2 ncep1} -> {whots_validation_net_2004_2007_all_v10} -> {figure} 
     44;    } 
     45; 
    1146; SEE ALSO 
    1247; ======== 
    1348; 
    1449; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :ref:`statistics.pro` 
    1554; 
    1655; EXAMPLES 
     
    2261;  IDL> whots_validation_net_2004_2007_all_v10 
    2362; 
    24 ;  EVOLUTIONS 
     63; TODO 
     64; ==== 
     65; 
     66; make it work on cratos : missing data 
     67; 
     68; coding rules 
     69; 
     70; get rid of spwan 
     71; 
     72; complete description 
     73; 
     74; handle IO error 
     75; 
     76; EVOLUTIONS 
    2577; ========== 
    2678; 
    2779; $Id$ 
     80; 
     81; - fplod 20110420T122057Z aedon.locean-ipsl.upmc.fr (Darwin) 
     82; 
     83;   * remove hard coding path 
     84;   * add graphviz 
    2885; 
    2986; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3390;- 
    3491pro whots_validation_net_2004_2007_all_v10 
    35 @common 
     92@cm_general 
     93@cm_tropflux 
    3694reinitplt, /z,/invert 
    3795key_portrait = 1 
     
    47105;; first leg 
    48106 
    49 fi="/Users/pkb/data/Mooring_data/WHOTS/met_data_WHOTS_2004_2005.txt" 
     107fi=tropflux_id_env+"met_data_WHOTS_2004_2005.txt" 
    50108res=read_ascii(fi,data_start=1) 
    51109ff=res.field1 
     
    56114net_04=[lhf_04+shf_04+swr_04+lwr_04] 
    57115 
    58 fi="/Users/pkb/data/Mooring_data/WHOTS/met_data_WHOTS_2005_2006.txt" 
     116fi=tropflux_id_env+"met_data_WHOTS_2005_2006.txt" 
    59117res=read_ascii(fi,data_start=1) 
    60118ff=res.field1 
     
    65123net_05=[lhf_05+shf_05+swr_05+lwr_05] 
    66124 
    67 fi="/Users/pkb/data/Mooring_data/WHOTS/met_data_WHOTS_2006_2007.txt" 
     125fi=tropflux_id_env+"met_data_WHOTS_2006_2007.txt" 
    68126res=read_ascii(fi,data_start=1) 
    69127ff=res.field1 
     
    86144;st5=20080605 & en5=20090715 
    87145 
    88 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     146file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    89147initncdf, file 
    90148lhf1=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy", box=box,/nan) & lhf1=reform(lhf1) 
     
    92150lhf3=-1*read_ncdf('lhf',st3,en3,file=file,/nostr, box=box) & lhf3=grossemoyenne(lhf3, "xy", box=box,/nan) & lhf3=reform(lhf3) 
    93151 
    94 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     152file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    95153initncdf, file 
    96154shf1=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy", box=box,/nan) & shf1=reform(shf1) 
     
    98156shf3=-1*read_ncdf('shf',st3,en3,file=file,/nostr, box=box) & shf3=grossemoyenne(shf3, "xy", box=box,/nan) & shf3=reform(shf3) 
    99157 
    100 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lwr_19890101_20091231_oafluxgrid.nc' 
     158file=tropflux_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' 
    101159initncdf, file 
    102160lwr1=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy", box=box,/nan) & lwr1=reform(lwr1) 
     
    104162lwr3=read_ncdf('lwr',st3-1,en3,file=file,/nostr, box=box) & lwr3=grossemoyenne(lwr3, "xy", box=box,/nan) & lwr3=reform(lwr3) 
    105163 
    106 file="/Users/pkb/data/ERA-I/erai_swr_19910101_20091231_oafluxgrid.nc" 
     164file=tropflux_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" 
    107165initncdf, file 
    108166swr1=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy", box=box,/nan) & swr1=reform(swr1) 
     
    119177help, era 
    120178 
    121 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     179file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    122180initncdf, file 
    123181 
     
    138196swr3=read_ncdf('swr',st3,en3,file=file,/nostr, box=box) & swr3=grossemoyenne(swr3, "xy", box=box,/nan) & swr3=reform(swr3) 
    139197 
    140 file="/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc" 
     198file=tropflux_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" 
    141199initncdf, file 
    142200olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) & olr1=grossemoyenne(olr1, "xy",/nan, box=box) & olr1=reform(olr1) 
     
    158216help, trop, olr 
    159217 
    160 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     218file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    161219initncdf, file 
    162220swr1=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    164222swr3=read_ncdf("swr", st3, en3, file=file,/nostr, box=box) & swr3=grossemoyenne(swr3, "xy",/nan, box=box) & swr3=reform(swr3) 
    165223 
    166 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     224file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    167225initncdf, file 
    168226lwr1=-1*read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    170228lwr3=-1*read_ncdf("lwr", st3, en3, file=file,/nostr, box=box) & lwr3=grossemoyenne(lwr3, "xy",/nan, box=box) & lwr3=reform(lwr3) 
    171229 
    172 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     230file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    173231initncdf, file 
    174232lhf1=-1*read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    176234lhf3=-1*read_ncdf("lhf", st3, en3, file=file,/nostr, box=box) & lhf3=grossemoyenne(lhf3, "xy",/nan, box=box) & lhf3=reform(lhf3) 
    177235 
    178 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     236file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    179237initncdf, file 
    180238shf1=-1*read_ncdf("shf", st1, en1, file=file,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    192250help, oaf 
    193251 
    194 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     252fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    195253initncdf, fi 
    196254swr1=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) & swr1=grossemoyenne(swr1, "xy",/nan, box=box) & swr1=reform(swr1) 
     
    198256swr3=read_ncdf("swr", st3, en3, file=fi,/nostr, box=box) & swr3=grossemoyenne(swr3, "xy",/nan, box=box) & swr3=reform(swr3) 
    199257 
    200 fi="/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc" 
     258fi=tropflux_id_env+'NCEP2_flux_19890101_20090729.nc" 
    201259initncdf, fi 
    202260lwr1=-1*read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) & lwr1=grossemoyenne(lwr1, "xy",/nan, box=box) & lwr1=reform(lwr1) 
     
    204262lwr3=-1*read_ncdf("lwr", st3, en3, file=fi,/nostr, box=box) & lwr3=grossemoyenne(lwr3, "xy",/nan, box=box) & lwr3=reform(lwr3) 
    205263 
    206 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     264fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    207265initncdf, fi 
    208266lhf1=-1*read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) & lhf1=grossemoyenne(lhf1, "xy",/nan, box=box) & lhf1=reform(lhf1) 
     
    210268lhf3=-1*read_ncdf("lhf", st3, en3, file=fi,/nostr, box=box) & lhf3=grossemoyenne(lhf3, "xy",/nan, box=box) & lhf3=reform(lhf3) 
    211269 
    212 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     270fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    213271initncdf, fi 
    214272shf1=-1*read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) & shf1=grossemoyenne(shf1, "xy",/nan, box=box) & shf1=reform(shf1) 
     
    227285net1=0. & net2=0. & net3=0. 
    228286 
    229 file="/Users/pkb/data/heat_budget/ncep/ncep1_flux_19890101_20091231.nc" 
     287file=tropflux_id_env+"ncep1_flux_19890101_20091231.nc" 
    230288initncdf, file 
    231289 
     
    323381 
    324382closeps 
    325 fig="WHOTS_validation_net_2004_2007_all_v10.ps" 
    326 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    327 spawn, 'gv '+cpsdir+fig 
    328 return 
     383fig=tropflux_od_env+"WHOTS_validation_net_2004_2007_all_v10.ps" 
     384spawn, 'mv '+psdir+'idl.ps '+fig 
     385spawn, 'gv '+fig 
    329386end 
  • trunk/src/paper01/fig15/fig15_timeseries_mjo.pro

    r43 r46  
    66; ======================== 
    77; 
    8 ; 
    98; DESCRIPTION 
    109; =========== 
    1110; 
     11; .. graphviz:: 
     12; 
     13;    digraph fig15_timeseries_mjo { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       tropflux_general [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     18;       ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     19;       erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc"]; 
     20;       ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     21;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2008.nc"]; 
     22;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2008.nc"]; 
     23;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     24;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     25;       olr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/olr_oafluxgrid_30n30s_19890101_20091231.nc"]; 
     26; 
     27;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/WHOTS_validation_net_2004_2007_all_v10.ps"]; 
     28; 
     29;       fig15_timeseries_mjo [shape=box, 
     30;       fontname=Courier, 
     31;       color=blue, 
     32;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig15/fig15_timeseries_mjo.pro", 
     33;       label="${TROPFLUX}/src/paper01/fig15/fig15_timeseries_mjo.pro"]; 
     34; 
     35;       {tropflux_general swr_oafluxgrid lwr_oafluxgrid lhf_oafluxgrid shf_oafluxgrid ncep2 ncep1} -> {fig15_timeseries_mjo} -> {figure} 
     36;    } 
     37; 
    1238; SEE ALSO 
    1339; ======== 
    1440; 
    1541; :ref:`tropflux_profile.sh` 
     42; :ref:`tropflux_init.pro` 
     43; :ref:`cm_tropflux.pro` 
    1644; 
    1745; EXAMPLES 
     
    2351;  IDL> fig15_timeseries_mjo 
    2452; 
     53; TODO 
     54; ==== 
     55; 
     56; make it work on cratos : missing data 
     57; 
     58; coding rules 
     59; 
     60; get rid of spwan 
     61; 
     62; complete description 
     63; 
     64; handle IO error 
     65; 
    2566; EVOLUTIONS 
    2667; ========== 
     
    2869; $Id$ 
    2970; 
     71; - fplod 20110420T122720Z aedon.locean-ipsl.upmc.fr (Darwin) 
     72; 
     73;   * remove hard coding path 
     74;   * add graphviz 
     75;   * externalize functions 
     76; 
    3077; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3178; 
     
    3481;- 
    3582pro fig15_timeseries_mjo 
    36 @common 
    37  
     83@cm_general 
     84@cm_tropflux 
    3885reinitplt, /z,/invert 
    3986key_portrait = 1 
     
    4491box=[50,80,-12,-5] 
    4592 
    46 file_trop='/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc' 
     93file_trop=tropflux_id_env+'TropFlux_19890101_20091231.nc' 
    4794initncdf, file_trop 
    4895shf_trop=read_ncdf("shf", date1, date2, box=box, file=file_trop,/nostr) 
     
    54101trop=grossemoyenne(trop, "xy",/nan) 
    55102 
    56 file_ncep='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc' 
     103file_ncep=tropflux_id_env+'NCEP2_flux_19890101_20090729.nc' 
    57104initncdf, file_ncep 
    58105shf=read_ncdf("shf", date1, date2, box=box, file=file_ncep,/nostr) 
     
    65112help, nce2 
    66113 
    67 file_erai='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
     114file_erai=tropflux_id_env+'erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
    68115initncdf, file_erai 
    69116shf=read_ncdf("shf", date1, date2, box=box, file=file_erai,/nostr) 
     
    75122help, era 
    76123 
    77 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     124file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    78125initncdf, file 
    79126lwr=read_ncdf("lwr", date1, date2, box=box, file=file,/nostr) 
     
    86133help, nce 
    87134 
    88 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2008.nc' 
     135file_oaf=tropflux_id_env+'shf_oafluxgrid_1985_2008.nc' 
    89136initncdf, file_oaf 
    90137shf=read_ncdf("shf", date1, date2, box=box, file=file_oaf,/nostr) 
    91 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2008.nc' 
     138file_oaf=tropflux_id_env+'lhf_oafluxgrid_1985_2008.nc' 
    92139initncdf, file_oaf 
    93140lhf=read_ncdf("lhf", date1, date2, box=box, file=file_oaf,/nostr) 
    94 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     141file_oaf=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    95142initncdf, file_oaf 
    96143lwr=read_ncdf("lwr", date1, date2, box=box, file=file_oaf,/nostr) 
    97 file_oaf='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     144file_oaf=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    98145initncdf, file_oaf 
    99146swr=read_ncdf("swr", date1, date2, box=box, file=file_oaf,/nostr) & swr_trop=swr 
     
    102149oafl=grossemoyenne(oafl, "xy",/nan) 
    103150 
    104 file="/Users/pkb/data/heat_budget/NOAA_OLR/olr_oafluxgrid_30n30s_19890101_20091231.nc" 
     151file=tropflux_id_env+"olr_oafluxgrid_30n30s_19890101_20091231.nc" 
    105152initncdf, file 
    106153olr=read_ncdf("olr", date1-1, date2, box=box, file=file,/nostr) 
     
    161208 
    162209closeps 
    163 fig='fig15_timeseries_mjo.ps' 
    164 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    165 spawn, 'gv '+cpsdir+fig 
    166 return 
     210fig=tropflux_od_env+'fig15_timeseries_mjo.ps' 
     211spawn, 'mv '+psdir+'idl.ps '+fig 
     212spawn, 'gv '+fig 
    167213end 
    168  
    169 function x_site_location, site 
    170     n1=strpos(site, 's') 
    171 if (n1 gt -1) then begin 
    172     ns=-1. 
    173     x=strmid(site, 0, n1) 
    174     x=float(x)*ns 
    175 endif else begin 
    176     n1=strpos(site, 'n') 
    177     x=strmid(site, 0, n1) 
    178     ny=1. 
    179     x=float(x)*ny 
    180 endelse 
    181 return, float(x) 
    182 end 
    183  
    184 function y_site_location, site 
    185     n1=strpos(site, 'e') 
    186 if (n1 gt -1) then begin 
    187     n=strpos(site, 's') 
    188     if (n gt -1) then begin 
    189         y=strmid(site, n+1, n1-n-1) 
    190     endif else begin 
    191         n=strpos(site, 'n') 
    192         y=strmid(site, n+1, n1-n-1) 
    193     endelse 
    194  
    195 endif else begin 
    196     n1=strpos(site, 'w') 
    197     n=strpos(site, 's') 
    198     if (n gt -1) then begin 
    199         y=strmid(site, n+1, n1-n-1) 
    200         y=180+(180-float(y)) 
    201     endif else begin 
    202         n=strpos(site, 'n') 
    203         y=strmid(site, n+1, n1-n-1) 
    204         y=180+(180-float(y)) 
    205    endelse 
    206 endelse 
    207 return,float(y) 
    208 end 
  • trunk/src/paper01/fig16/fig16_timeseries_nino3.pro

    r43 r46  
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph fig16_timeseries_nino3 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       tropflux_sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_sst_19890101_20091231.nc"]; 
     18; 
     19;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/WHOTS_validation_net_2004_2007_all_v10.ps"]; 
     20; 
     21;       fig16_timeseries_nino3 [shape=box, 
     22;       fontname=Courier, 
     23;       color=blue, 
     24;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig16/fig16_timeseries_nino3.pro", 
     25;       label="${TROPFLUX}/src/paper01/fig16/fig16_timeseries_nino3.pro"]; 
     26; 
     27;       {tropflux_sst} -> {fig16_timeseries_nino3} -> {figure} 
     28;    } 
     29; 
    1130; SEE ALSO 
    1231; ======== 
    1332; 
    1433; :ref:`tropflux_profile.sh` 
     34; :ref:`tropflux_init.pro` 
     35; :ref:`cm_tropflux.pro` 
     36; 
     37; :func:`x_site_location` 
     38; :func:`y_site_location` 
    1539; 
    1640; EXAMPLES 
     
    2246;  IDL> fig16_timeseries_nino3 
    2347; 
     48; TODO 
     49; ==== 
     50; 
     51; make it work on cratos : missing data 
     52; 
     53; coding rules 
     54; 
     55; get rid of spwan 
     56; 
     57; complete description 
     58; 
     59; handle IO error 
     60; 
    2461; EVOLUTIONS 
    2562; ========== 
     
    2764; $Id$ 
    2865; 
     66; - fplod 20110420T123110Z aedon.locean-ipsl.upmc.fr (Darwin) 
     67; 
     68;   * remove hard coding path 
     69;   * add graphviz 
     70;   * externalize functions 
     71; 
    2972; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3073; 
     
    3376;- 
    3477pro fig16_timeseries_nino3 
    35 @common 
    36  
     78@cm_general 
     79@cm_tropflux 
    3780reinitplt, /z,/invert 
    3881key_portrait = 1 
     
    4285box=[240,330,-5,5] 
    4386 
    44 file_trop='/Users/pkb/data/TropFlux/TropFlux_sst_19890101_20091231.nc' 
     87file_trop=tropflux_id_env+'TropFlux_sst_19890101_20091231.nc' 
    4588initncdf, file_trop 
    4689sst=read_ncdf("sst", date1, date2, box=box, file=file_trop,/nostr) 
     
    157200 
    158201closeps 
    159 fig='fig16_timeseries_nino3.ps' 
    160 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    161 spawn, 'gv '+cpsdir+fig 
    162 return 
     202fig=tropflux_od_env+'fig16_timeseries_nino3.ps' 
     203spawn, 'mv '+psdir+'idl.ps '+fig 
     204spawn, 'gv '+fig 
    163205end 
    164 function x_site_location, site 
    165     n1=strpos(site, 's') 
    166 if (n1 gt -1) then begin 
    167     ns=-1. 
    168     x=strmid(site, 0, n1) 
    169     x=float(x)*ns 
    170 endif else begin 
    171     n1=strpos(site, 'n') 
    172     x=strmid(site, 0, n1) 
    173     ny=1. 
    174     x=float(x)*ny 
    175 endelse 
    176 return, float(x) 
    177 end 
    178 function y_site_location, site 
    179     n1=strpos(site, 'e') 
    180 if (n1 gt -1) then begin 
    181     n=strpos(site, 's') 
    182     if (n gt -1) then begin 
    183         y=strmid(site, n+1, n1-n-1) 
    184     endif else begin 
    185         n=strpos(site, 'n') 
    186         y=strmid(site, n+1, n1-n-1) 
    187     endelse 
    188  
    189 endif else begin 
    190     n1=strpos(site, 'w') 
    191     n=strpos(site, 's') 
    192     if (n gt -1) then begin 
    193         y=strmid(site, n+1, n1-n-1) 
    194         y=180+(180-float(y)) 
    195     endif else begin 
    196         n=strpos(site, 'n') 
    197         y=strmid(site, n+1, n1-n-1) 
    198         y=180+(180-float(y)) 
    199    endelse 
    200 endelse 
    201 return,float(y) 
    202 end 
  • trunk/src/paper01/fig2/fig2_timeline_diagram.pro

    r44 r46  
    5555; 
    5656; make it work on cratos :: 
    57 ;    % Error:  
     57;    % Error: 
    5858;    % the vector size (7670) is incompatible 
    59 ;    % with the domain dimensions  
     59;    % with the domain dimensions 
    6060;    % [jpi/nx, jpj/ny, jpk/nz, jpt] = [1/1, 1/1, 1/1, 1] 
    6161; 
     
    149149 
    150150nn=n_elements(sitelist) 
    151 date1=date1 
    152 date2=date2 
    153151 
    154152for n=0, nn-1 do begin 
  • trunk/src/paper01/fig2/read_lw.pro

    r44 r46  
    7777@cm_tropflux 
    7878 
    79 dir='/Users/pkb/data/TPR/' 
    80 ; 
    8179;; DEFINE THE OUTPUT TIME AXIS 
    8280; 
  • trunk/src/paper01/fig2/read_sw.pro

    r44 r46  
    5353; ==== 
    5454; 
    55 ; make it work with a file  
     55; make it work with a file 
    5656; 
    5757; 
     
    106106    sw_q(tt0(ind))=sw_q0(ind) 
    107107  endif 
    108 endif else begin  
     108endif else begin 
    109109  print, fi, ' not found' 
    110110endelse 
  • trunk/src/paper01/fig2/time_lec.pro

    r44 r46  
    11;+ 
    2 ;  
     2; 
    33; ============ 
    44; time_lec.pro 
    55; ============ 
    6 ;  
     6; 
    77; .. function:: time_lec(fi) 
    88; 
    9 ;     :param fi: file  
     9;     :param fi: file 
    1010; 
    1111; EXAMPLES 
  • trunk/src/paper01/fig2/x_site_location.pro

    r44 r46  
    1010; =========== 
    1111; 
    12 ;     :param site: ++ 
     12;    :param site: ++ 
     13; 
    1314; EXAMPLES 
    1415; ======== 
    1516; 
    1617; :: 
    17 ;  
     18; 
    1819;   IDL> site=++ 
    1920;   IDL> result=x_site_location(site) 
     
    2223; ======== 
    2324; 
     25; :func:`y_site_location` 
     26; 
     27; :ref:`fig1_no_obs_map.pro` 
     28; :ref:`net_flux_validation_scatter_2000_2007.pro` 
     29; :ref:`fig16_timeseries_nino3.pro` 
    2430; :ref:`fig2_timeline_diagram.pro` 
     31; :ref:`air_validation_scatter_2000_2009_v50.pro` 
     32; :ref:`q2m_validation_scatter_2000_2009_v50.pro` 
     33; :ref:`sst_validation_scatter_2000_2009_v50.pro` 
     34; :ref:`ws_validation_scatter_2000_2009_v50.pro` 
     35; :ref:`air_validation_scatter_2000_2009_basin.pro` 
     36; :ref:`q2m_validation_scatter_2000_2009_basin.pro` 
     37; :ref:`sst_validation_scatter_2000_2009_basin.pro` 
     38; :ref:`ws_validation_scatter_2000_2009_basin.pro` 
     39; :ref:`lhf_validation_scatter_2000_2009.pro` 
     40; :ref:`shf_validation_scatter_2000_2009.pro` 
     41; :ref:`lwr_validation_scatter_2000_2007.pro` 
     42; :ref:`swr_validation_scatter_2000_2007.pro` 
    2543; 
    2644; TODO 
     
    2846; 
    2947; coding rules 
    30 ;  
     48; 
    3149; EVOLUTIONS 
    3250; ========== 
     
    3553; 
    3654; - fplod 20110412T083358Z aedon.locean-ipsl.upmc.fr (Darwin) 
    37 ;  
     55; 
    3856;   * creation from fig2_timeline_diagram.pro 
    3957; 
  • trunk/src/paper01/fig2/y_site_location.pro

    r44 r46  
    1010; =========== 
    1111; 
    12 ;     :param site: ++ 
     12;    :param site: ++ 
    1313; 
    1414; EXAMPLES 
     
    1616; 
    1717; :: 
    18 ;  
     18; 
    1919;   IDL> site=++ 
    2020;   IDL> result=y_site_location(site) 
     
    2323; ======== 
    2424; 
     25; :func:`x_site_location` 
     26; 
     27; :ref:`fig1_no_obs_map.pro` 
     28; :ref:`net_flux_validation_scatter_2000_2007.pro` 
     29; :ref:`fig16_timeseries_nino3.pro` 
    2530; :ref:`fig2_timeline_diagram.pro` 
     31; :ref:`air_validation_scatter_2000_2009_v50.pro` 
     32; :ref:`q2m_validation_scatter_2000_2009_v50.pro` 
     33; :ref:`sst_validation_scatter_2000_2009_v50.pro` 
     34; :ref:`ws_validation_scatter_2000_2009_v50.pro` 
     35; :ref:`air_validation_scatter_2000_2009_basin.pro` 
     36; :ref:`q2m_validation_scatter_2000_2009_basin.pro` 
     37; :ref:`sst_validation_scatter_2000_2009_basin.pro` 
     38; :ref:`ws_validation_scatter_2000_2009_basin.pro` 
     39; :ref:`lhf_validation_scatter_2000_2009.pro` 
     40; :ref:`shf_validation_scatter_2000_2009.pro` 
     41; :ref:`lwr_validation_scatter_2000_2007.pro` 
     42; :ref:`swr_validation_scatter_2000_2007.pro` 
    2643; 
    2744; TODO 
     
    2946; 
    3047; coding rules 
    31 ;  
     48; 
    3249; EVOLUTIONS 
    3350; ========== 
     
    3653; 
    3754; - fplod 20110412T083358Z aedon.locean-ipsl.upmc.fr (Darwin) 
    38 ;  
     55; 
    3956;   * creation from fig2_timeline_diagram.pro 
    4057; 
  • trunk/src/paper01/fig3/air_validation_scatter_2000_2009_v50.pro

    r44 r46  
    1919;       air_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_erai_v50.txt"]; 
    2020; 
    21 ;       air_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_trop_v50.txt"]; 
    22 ;       air_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_oaflx_v50.txt"]; 
     21;       air_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_trop_v50.txt"]; 
     22;       air_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_oaflx_v50.txt"]; 
    2323;       air_ncep  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_ncep_v50.txt"]; 
    24 ;       air_ncep1  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_ncep1_v50.txt"]; 
    25 ;       air_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_ncep2_v50.txt"]; 
     24;       air_ncep1  [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_ncep1_v50.txt"]; 
     25;       air_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_ncep2_v50.txt"]; 
    2626;       air_ncep2_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2m_ncep2_oafluxgrid_19890101_20091231.nc"]; 
    2727; 
     
    3232; 
    3333;       tropflux_t2m [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_t2m_19890101_20091231_v50.nc"]; 
    34 ;      
     34; 
    3535;       oaflux_basic [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/OAFlux_basic_variables_1985_2009.nc"]; 
    3636; 
     
    4141;       label="${TROPFLUX}/src/paper01/fig3/air_validation_scatter_2000_2009_v50.pro"]; 
    4242; 
    43 ;       {air_erai air_trop air_oaflux air_ncep air_ncep1 air_ncep2 erai_t2m tropflux_t2m oaflux_basic air_ncep2_oafluxgrid t2m_ncep1} -> {air_validation_scatter_2000_2009_v50} -> {figure} 
     43;       {air_erai air_ncep erai_t2m tropflux_t2m oaflux_basic air_ncep2_oafluxgrid t2m_ncep1} -> {air_validation_scatter_2000_2009_v50} -> { air_trop air_oaflux air_ncep1 air_ncep2 figure} 
    4444; 
    4545;    } 
     
    4949; 
    5050; :ref:`tropflux_profile.sh` 
     51; :ref:`tropflux_init.pro` 
     52; :ref:`cm_tropflux.pro` 
     53; 
     54; :func:`x_site_location` 
     55; :func:`y_site_location` 
    5156; 
    5257; :ref:`read_variables_v2.pro` 
     58; :ref:`statistics_3var_v1.pro` 
    5359; 
    5460; EXAMPLES 
     
    102108 
    103109openps, FILENAME = 'idl.ps' 
    104 ;; Before running this program, you have to compile the following subrutines 
    105 ;;   1.  .r read_era_total 
    106 ;;   2.  .r read_variables_v2 
    107 ;;   3.  .r read_era_box 
    108110 
    109111;; Give the location of mooring for validation of basic meteorological variables 
     
    152154help, unc 
    153155 
    154 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_t2m_19890101_20091231_v3.nc' 
    155156file=tropflux_id_env+'TropFlux_t2m_19890101_20091231_v50.nc' 
    156157initncdf, file 
     
    176177 
    177178nn=n_elements(sitelist) 
    178 date1=date1 
    179 date2=date2 
    180179for n=0, nn-1 do begin 
    181180 
  • trunk/src/paper01/fig3/q2m_validation_scatter_2000_2009_v50.pro

    r44 r46  
    1919;       q2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_erai_v50.txt"]; 
    2020; 
    21 ;       q2m_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_trop_v50.txt"]; 
    22 ;       q2m_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_oaflx_v50.txt"]; 
    23 ;       q2m_ncep  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_ncep_v50.txt"]; 
    24 ;       q2m_ncep1  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_ncep1_v50.txt"]; 
     21;       q2m_trop [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_trop_v50.txt"]; 
     22;       q2m_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_oaflx_v50.txt"]; 
     23;       q2m_ncep  [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_ncep_v50.txt"]; 
     24;       q2m_ncep1  [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_ncep1_v50.txt"]; 
    2525; 
    2626;       erai_q2m_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_t2m_19890101_20091231_oafluxgrid.nc"]; 
     
    4040;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_validation_scatter_2000_2009_v50.ps"]; 
    4141; 
    42 ;       {q2m_erai q2m_trop q2m_oaflux q2m_ncep q2m_ncep1 erai_q2m_oafluxgrid tropflux_q2m oaflux_basic sphum_ncep2_oafluxgrid} -> {q2m_validation_scatter_2000_2009_v50} -> {figure} 
     42;       {q2m_erai erai_q2m_oafluxgrid tropflux_q2m oaflux_basic sphum_ncep2_oafluxgrid} -> {q2m_validation_scatter_2000_2009_v50} -> {q2m_trop q2m_oaflux q2m_ncep q2m_ncep1 figure} 
    4343; 
    4444;     } 
     
    4848; 
    4949; :ref:`tropflux_profile.sh` 
     50; :ref:`tropflux_init.pro` 
     51; :ref:`cm_tropflux.pro` 
     52; 
     53; :func:`x_site_location` 
     54; :func:`y_site_location` 
     55; 
     56; :ref:`read_variables_v2.pro` 
     57; :ref:`statistics_3var_v1.pro` 
    5058; 
    5159; EXAMPLES 
     
    99107 
    100108openps, FILENAME = 'idl.ps' 
    101 ;; Before running this program, you have to compile the following subrutines 
    102 ;;   1.  .r read_era_total 
    103 ;;   2.  .r read_variables_v2 
    104 ;;   3.  .r read_era_box 
    105109 
    106110;; Give the location of mooring for validation of basic meteorological variables 
     
    165169help, nce 
    166170 
    167 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/q2m_ncep1_19890101_20091231.nc' 
     171file=tropflux_id_env+''q2m_ncep1_19890101_20091231.nc' 
    168172initncdf, file 
    169173nce1=read_ncdf("q2m", date1, date2, file=file,/nostr) 
     
    172176 
    173177nn=n_elements(sitelist) 
    174 date1=date1 
    175 date2=date2 
    176178for n=0, nn-1 do begin 
    177179 
     
    241243close,/all 
    242244 
    243 fi_q2m_erai='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_erai_v50.txt' 
     245fi_q2m_erai=tropflux_id_env+'q2m_2000_2009_erai_v50.txt' 
    244246res=read_ascii(fi_q2m_erai,data_start=1) 
    245247ff=res.field1 
     
    267269oplot, mean_tao, yfit, color=250, thick=2 
    268270 
    269 fi_q2m_trop='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_trop_v50.txt' 
     271fi_q2m_trop=tropflux_id_env+'q2m_2000_2009_trop_v50.txt' 
    270272res=read_ascii(fi_q2m_trop,data_start=1) 
    271273ff=res.field1 
     
    294296oplot, mean_tao, yfit, color=250, thick=2 
    295297 
    296 fi_q2m_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_oaflx_v50.txt' 
     298fi_q2m_oaflx=tropflux_id_env+'q2m_2000_2009_oaflx_v50.txt' 
    297299res=read_ascii(fi_q2m_oaflx,data_start=1) 
    298300ff=res.field1 
     
    322324 
    323325 
    324 fi_q2m_ncep='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep_v50.txt' 
     326fi_q2m_ncep=tropflux_id_env+'q2m_2000_2009_ncep_v50.txt' 
    325327res=read_ascii(fi_q2m_ncep,data_start=1) 
    326328ff=res.field1 
     
    349351oplot, mean_tao, yfit, color=250, thick=2 
    350352 
    351 fi_q2m_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep1_v50.txt' 
     353fi_q2m_ncep1=tropflux_id_env+'q2m_2000_2009_ncep1_v50.txt' 
    352354res=read_ascii(fi_q2m_ncep1,data_start=1) 
    353355ff=res.field1 
  • trunk/src/paper01/fig3/read_variables_v2.pro

    r44 r46  
    4848; :ref:`sst_validation_scatter_2000_2009_v50.pro` 
    4949; :ref:`ws_validation_scatter_2000_2009_v50.pro` 
     50; :ref:`air_validation_scatter_2000_2009_basin.pro` 
     51; :ref:`q2m_validation_scatter_2000_2009_basin.pro` 
     52; :ref:`sst_validation_scatter_2000_2009_basin.pro` 
     53; :ref:`ws_validation_scatter_2000_2009_basin.pro` 
     54; :ref:`lhf_validation_scatter_2000_2009.pro` 
     55; :ref:`shf_validation_scatter_2000_2009.pro` 
    5056; 
    5157; EXAMPLES 
     
    6167; TODO 
    6268; ==== 
    63 ;  
     69; 
    6470; externalize function 
    6571; 
  • trunk/src/paper01/fig3/sst_validation_scatter_2000_2009_v50.pro

    r44 r46  
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph sst_validation_scatter_2000_2009_v50 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17; 
     18;       sst_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_2000_2009_erai_v50.txt"]; 
     19;       sst_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_trop_v50.txt"]; 
     20;       sst_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_oaflx_v50.txt"]; 
     21;       sst_tmi [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_tmi_v50.txt"]; 
     22;       sst_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_ncep_v50.txt"]; 
     23;       sst_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_ncep1_v50.txt"]; 
     24;       sst_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_sst_19890101_20091231_oafluxgrid.nc"]; 
     25;       sst_tropflux_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_sst_19890101_20091231_v20.nc"]; 
     26;       oaflux_basic [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/OAFlux_basic_variables_1985_2009.nc"]; 
     27;       sst_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_NCEP2_global_monthly_1989_2009.nc"]; 
     28;       sst_tmi_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/tmi_OI_oafluxgrid_30N30S.nc"]; 
     29;       sst_ncep1_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_ncep1_19890101_20091231.nc"]; 
     30; 
     31;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/WHOTS_validation_net_2004_2007_all_v10.ps"]; 
     32; 
     33;       sst_validation_scatter_2000_2009_v50 [shape=box, 
     34;       fontname=Courier, 
     35;       color=blue, 
     36;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig3/sst_validation_scatter_2000_2009_v50.pro", 
     37;       label="${TROPFLUX}/src/paper01/fig3/sst_validation_scatter_2000_2009_v50.pro"]; 
     38; 
     39;       {sst_erai sst_erai_oafluxgrid sst_tropflux_2 oaflux_basic sst_ncep2 sst_tmi_2 sst_ncep1_2} -> {sst_validation_scatter_2000_2009_v50} -> {sst_tropflux sst_oaflux sst_tmi sst_ncep sst_ncep figure} 
     40;    } 
     41; 
    1142; SEE ALSO 
    1243; ======== 
    1344; 
    1445; :ref:`tropflux_profile.sh` 
     46; :ref:`tropflux_init.pro` 
     47; :ref:`cm_tropflux.pro` 
     48; 
     49; :func:`x_site_location` 
     50; :func:`y_site_location` 
     51; 
     52; :ref:`read_variables_v2.pro` 
     53; :ref:`statistics_3var_v1.pro` 
    1554; 
    1655; EXAMPLES 
     
    2059; 
    2160;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     61;  IDL> date1=19890101L 
     62;  IDL> date2=20091231L 
    2463;  IDL> sst_validation_scatter_2000_2009_v50, date1, date2 
     64; 
     65; TODO 
     66; ==== 
     67; 
     68; ++ plus de licences sur cratos 
     69; 
     70; ++ mooring data in graphviz 
     71; 
     72; coding rules 
     73; 
     74; get rid of spwan 
     75; 
     76; complete description 
     77; 
     78; handle IO error 
    2579; 
    2680; EVOLUTIONS 
     
    2983; $Id$ 
    3084; 
     85; - fplod 20110420T131533Z aedon.locean-ipsl.upmc.fr (Darwin) 
     86; 
     87;   * remove hard coding path 
     88;   * add graphviz 
     89;   * externalize functions 
     90; 
    3191; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3292; 
     
    3595;- 
    3696pro sst_validation_scatter_2000_2009_v50, date1, date2 
    37 @common 
    38  
     97@cm_general 
     98@cm_tropflux 
    3999reinitplt, /z,/invert 
    40100key_portrait = 1 
    41101 
    42102openps, FILENAME = 'idl.ps' 
    43 ;; Before running this program, you have to compile the following subrutines 
    44 ;;   1.  .r read_era_total 
    45 ;;   2.  .r read_variables_v2 
    46 ;;   3.  .r read_era_box 
    47103 
    48104;; Give the location of mooring for validation of basic meteorological variables 
     
    66122close,/all 
    67123 
    68 fi_sst_erai='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_erai_v50.txt' 
     124fi_sst_erai=tropflux_id_env+'sst_2000_2009_erai_v50.txt' 
    69125openw,1,fi_sst_erai 
    70 fi_sst_trop='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_trop_v50.txt' 
     126fi_sst_trop=tropflux_id_env+'sst_2000_2009_trop_v50.txt' 
    71127openw,2,fi_sst_trop 
    72 fi_sst_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_oaflx_v50.txt' 
     128fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_oaflx_v50.txt' 
    73129openw,3,fi_sst_oaflx 
    74 fi_sst_ncep='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep_v50.txt' 
     130fi_sst_ncep=tropflux_id_env+'sst_2000_2009_ncep_v50.txt' 
    75131openw,4,fi_sst_ncep 
    76 fi_sst_tmi='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_tmi_v50.txt' 
     132fi_sst_tmi=tropflux_id_env+'sst_2000_2009_tmi_v50.txt' 
    77133openw,5,fi_sst_tmi 
    78 fi_sst_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep1_v50.txt' 
     134fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_ncep1_v50.txt' 
    79135openw,6,fi_sst_ncep1 
    80136 
     
    90146;; first reading the whole ERAI uncorrected and corrected data 
    91147 
    92 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_sst_19890101_20091231_oafluxgrid.nc' 
     148file=tropflux_id_env+'erai_sst_19890101_20091231_oafluxgrid.nc' 
    93149initncdf, file 
    94150unc=read_ncdf('sst',date1,date2,file=file,/nostr) & unc=unc-273.15 
    95151help, unc 
    96152 
    97 file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_sst_19890101_20091231_v20.nc' 
     153file=tropflux_id_env+'TropFlux_sst_19890101_20091231_v20.nc' 
    98154initncdf, file 
    99155cor=read_ncdf('sst',date1,date2,file=file,/nostr) & cor=cor-273.15 
    100156help, cor 
    101157 
    102 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
     158file=tropflux_id_env+'OAFlux_basic_variables_1985_2009.nc' 
    103159initncdf, file 
    104160oaf=read_ncdf("sst", date1, date2, file=file,/nostr) 
    105161help, oaf 
    106162 
    107 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/sst_ncep2_oafluxgrid_19890101_20091231.nc' 
     163fi=tropflux_id_env+'sst_ncep2_oafluxgrid_19890101_20091231.nc' 
    108164initncdf, fi 
    109165nce=read_ncdf("sst", date1-1, date2, file=fi,/nostr) 
     
    111167help, nce 
    112168 
    113 fi='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/tmi_OI_oafluxgrid_30N30S.nc' 
     169fi=tropflux_id_env+'tmi_OI_oafluxgrid_30N30S.nc' 
    114170initncdf, fi 
    115171sst_tmi=read_ncdf("sst", date1, date2, file=fi,/nostr) 
    116172help, sst_tmi 
    117173 
    118 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/sst_ncep1_19890101_20091231.nc' 
     174file=tropflux_id_env+'sst_ncep1_19890101_20091231.nc' 
    119175initncdf, file 
    120176nce1=read_ncdf("sst", date1, date2, file=file,/nostr) 
     
    123179 
    124180nn=n_elements(sitelist) 
    125 date1=date1 
    126 date2=date2 
    127181for n=0, nn-1 do begin 
    128182 
     
    196250close,/all 
    197251 
    198 fi_sst_erai='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_erai.txt' 
     252fi_sst_erai=tropflux_id_env+'sst_2000_2009_v50_erai.txt' 
    199253res=read_ascii(fi_sst_erai,data_start=1) 
    200254ff=res.field1 
     
    222276oplot, mean_tao, yfit, color=250, thick=2 
    223277 
    224 fi_sst_trop='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_trop.txt' 
     278fi_sst_trop=tropflux_id_env+'sst_2000_2009_v50_trop.txt' 
    225279res=read_ascii(fi_sst_trop,data_start=1) 
    226280ff=res.field1 
     
    249303oplot, mean_tao, yfit, color=250, thick=2 
    250304 
    251 fi_sst_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_oaflx.txt' 
     305fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_v50_oaflx.txt' 
    252306res=read_ascii(fi_sst_oaflx,data_start=1) 
    253307ff=res.field1 
     
    278332 
    279333 
    280 fi_sst_ncep='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_ncep.txt' 
     334fi_sst_ncep=tropflux_id_env+'sst_2000_2009_v50_ncep.txt' 
    281335res=read_ascii(fi_sst_ncep,data_start=1) 
    282336ff=res.field1 
     
    306360 
    307361 
    308 fi_sst_tmi='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_tmi.txt' 
     362fi_sst_tmi=tropflux_id_env+'sst_2000_2009_v50_tmi.txt' 
    309363res=read_ascii(fi_sst_tmi,data_start=1) 
    310364ff=res.field1 
     
    333387oplot, mean_tao, yfit, color=250, thick=2 
    334388 
    335 fi_sst_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_ncep1.txt' 
     389fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_v50_ncep1.txt' 
    336390res=read_ascii(fi_sst_ncep1,data_start=1) 
    337391ff=res.field1 
     
    365419spawn, 'mv '+psdir+'idl.ps '+fig 
    366420spawn, 'gv '+fig 
    367 return 
    368421end 
    369 function x_site_location, site 
    370     n1=strpos(site, 's') 
    371 if (n1 gt -1) then begin 
    372     ns=-1. 
    373     x=strmid(site, 0, n1) 
    374     x=float(x)*ns 
    375 endif else begin 
    376     n1=strpos(site, 'n') 
    377     x=strmid(site, 0, n1) 
    378     ny=1. 
    379     x=float(x)*ny 
    380 endelse 
    381 return, float(x) 
    382 end 
    383 function y_site_location, site 
    384     n1=strpos(site, 'e') 
    385 if (n1 gt -1) then begin 
    386     n=strpos(site, 's') 
    387     if (n gt -1) then begin 
    388         y=strmid(site, n+1, n1-n-1) 
    389     endif else begin 
    390         n=strpos(site, 'n') 
    391         y=strmid(site, n+1, n1-n-1) 
    392     endelse 
    393  
    394 endif else begin 
    395     n1=strpos(site, 'w') 
    396     n=strpos(site, 's') 
    397     if (n gt -1) then begin 
    398         y=strmid(site, n+1, n1-n-1) 
    399         y=180+(180-float(y)) 
    400     endif else begin 
    401         n=strpos(site, 'n') 
    402         y=strmid(site, n+1, n1-n-1) 
    403         y=180+(180-float(y)) 
    404    endelse 
    405 endelse 
    406 return,float(y) 
    407 end 
  • trunk/src/paper01/fig3/statistics_3var_v1.pro

    r44 r46  
    1313; 
    1414; :ref:`tropflux_profile.sh` 
     15; 
     16; :ref:`net_flux_validation_scatter_2000_2007.pro` 
     17; :ref:`air_validation_scatter_2000_2009_v50.pro` 
     18; :ref:`q2m_validation_scatter_2000_2009_v50.pro` 
     19; :ref:`sst_validation_scatter_2000_2009_v50.pro` 
     20; :ref:`ws_validation_scatter_2000_2009_v50.pro` 
     21; :ref:`air_validation_scatter_2000_2009_basin.pro` 
     22; :ref:`q2m_validation_scatter_2000_2009_basin.pro` 
     23; :ref:`sst_validation_scatter_2000_2009_basin.pro` 
     24; :ref:`ws_validation_scatter_2000_2009_basin.pro` 
     25; :ref:`lhf_validation_scatter_2000_2009.pro` 
     26; :ref:`shf_validation_scatter_2000_2009.pro` 
     27; :ref:`lwr_validation_scatter_2000_2007.pro` 
     28; :ref:`swr_validation_scatter_2000_2007.pro` 
    1529; 
    1630; EXAMPLES 
     
    3448; 
    3549;- 
    36  
    37  
    3850pro statistics_3var_v1, tao,var1,var2, $ 
    3951    cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 
    4052 
    41  
    42 @common 
     53@cm_tropflux 
    4354x=tao & y=var1 & z=var2 
    4455 
  • trunk/src/paper01/fig3/ws_validation_scatter_2000_2009_v50.pro

    r44 r46  
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph ws_validation_scatter_2000_2009_v50 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17; 
     18;       ws_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_2000_2009_erai_v50.txt"]; 
     19;       ws_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_trop_v50.txt"]; 
     20;       ws_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_oaflx_v50.txt"]; 
     21;       ws_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_ncep_v50.txt"]; 
     22;       ws_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_ncep1_v50.txt"]; 
     23;       ws_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_ws_19890101_20091231_oafluxgrid.nc"]; 
     24;       ws_tropflux_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_ws_19890101_20091231_v20.nc"]; 
     25;       oaflux_basic [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/OAFlux_basic_variables_1985_2009.nc"]; 
     26;       uwind_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/uwind_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     27;       vwind_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/bwind_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     28;       ws_tmi [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/zonal_wind_speed_oafluxgrid_30N30S.nc"]; 
     29; 
     30;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_validation_scatter_2000_2009_v50.ps"]; 
     31; 
     32;       ws_validation_scatter_2000_2009_v50 [shape=box, 
     33;       fontname=Courier, 
     34;       color=blue, 
     35;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig3/ws_validation_scatter_2000_2009_v50.pro", 
     36;       label="${TROPFLUX}/src/paper01/fig3/ws_validation_scatter_2000_2009_v50.pro"]; 
     37; 
     38;       {ws_erai ws_erai_oafluxgrid ws_tropflux_2 oaflux_basic ws_ncep2 ws_tmi_2 ws_ncep1_2} -> {ws_validation_scatter_2000_2009_v50} -> {ws_tropflux ws_oaflux ws_tmi ws_ncep ws_ncep1 figure} 
     39;    } 
     40; 
    1141; SEE ALSO 
    1242; ======== 
    1343; 
    1444; :ref:`tropflux_profile.sh` 
     45; :ref:`tropflux_init.pro` 
     46; :ref:`cm_tropflux.pro` 
     47; 
     48; :func:`x_site_location` 
     49; :func:`y_site_location` 
     50; 
     51; :ref:`read_variables_v2.pro` 
     52; :ref:`statistics_3var_v1.pro` 
    1553; 
    1654; EXAMPLES 
     
    2058; 
    2159;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     60;  IDL> date1=19890101L 
     61;  IDL> date2=20091231L 
    2462;  IDL> ws_validation_scatter_2000_2009_v50, date1, date2 
     63; 
     64; TODO 
     65; ==== 
     66; 
     67; ++ plus de licences sur cratos 
     68; 
     69; ++ mooring data in graphviz 
     70; 
     71; coding rules 
     72; 
     73; get rid of spwan 
     74; 
     75; complete description 
     76; 
     77; handle IO error 
    2578; 
    2679; 
     
    3083; $Id$ 
    3184; 
     85; - fplod 20110420T132401Z aedon.locean-ipsl.upmc.fr (Darwin) 
     86; 
     87;   * remove hard coding path 
     88;   * add graphviz 
     89;   * externalize functions 
     90; 
    3291; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3392; 
     
    3594; 
    3695;- 
    37 pro ws_validation_scatter_2000_2009_v50,date1,date2 
    38 @common 
    39  
     96pro ws_validation_scatter_2000_2009_v50, date1, date2 
     97@cm_general 
     98@cm_tropflux 
    4099reinitplt, /z,/invert 
    41100key_portrait = 1 
    42101 
    43102openps, FILENAME = 'idl.ps' 
    44 ;; Before running this program, you have to compile the following subrutines 
    45 ;;   1.  .r read_era_total 
    46 ;;   2.  .r read_variables_v2 
    47 ;;   3.  .r read_era_box 
    48103 
    49104;; Give the location of mooring for validation of basic meteorological variables 
     
    68123close,/all 
    69124 
    70 fi_ws_erai='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_v50.txt' 
     125fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_v50.txt' 
    71126openw,1,fi_ws_erai 
    72 fi_ws_trop='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_v50.txt' 
     127fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_v50.txt' 
    73128openw,2,fi_ws_trop 
    74 fi_ws_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_v50.txt' 
     129fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_v50.txt' 
    75130openw,3,fi_ws_oaflx 
    76 fi_ws_ncep='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_v50.txt' 
     131fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_v50.txt' 
    77132openw,4,fi_ws_ncep 
    78 fi_ws_tmi='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_v50.txt' 
     133fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_v50.txt' 
    79134openw,5,fi_ws_tmi 
    80 fi_ws_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_v50.txt' 
     135fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_v50.txt' 
    81136openw,6,fi_ws_ncep1 
    82137 
     
    91146;; first reading the whole ERAI uncorrected and corrected data 
    92147 
    93 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_ws_19890101_20091231_oafluxgrid.nc' 
     148file=tropflux_id_env+'erai_ws_19890101_20091231_oafluxgrid.nc' 
    94149initncdf, file 
    95150u=read_ncdf('u10',date1,date2,file=file,/nostr) 
     
    98153help, unc 
    99154 
    100 file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_ws_19890101_20091231_v20.nc' 
     155file=tropflux_id_env+'TropFlux_ws_19890101_20091231_v20.nc' 
    101156initncdf, file 
    102157cor=read_ncdf('ws',date1,date2,file=file,/nostr) 
    103158help, cor 
    104159 
    105 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
     160file=tropflux_id_env+'OAFlux_basic_variables_1985_2009.nc' 
    106161initncdf, file 
    107162oaf=read_ncdf("wind", date1, date2, file=file,/nostr) 
    108163help, oaf 
    109164 
    110 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/uwind_ncep2_oafluxgrid_19890101_20091231.nc' 
     165fi=tropflux_id_env+'uwind_ncep2_oafluxgrid_19890101_20091231.nc' 
    111166initncdf, fi 
    112167u=read_ncdf("u", date1-1, date2, file=fi,/nostr) 
    113 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/vwind_ncep2_oafluxgrid_19890101_20091231.nc' 
     168fi=tropflux_id_env+'vwind_ncep2_oafluxgrid_19890101_20091231.nc' 
    114169initncdf, fi 
    115170v=read_ncdf("v", date1-1, date2, file=fi,/nostr) 
     
    126181help, ws_tmi 
    127182 
    128 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/wind_ncep1_19890101_20091231.nc' 
     183file=tropflux_id_env+'wind_ncep1_19890101_20091231.nc' 
    129184initncdf, file 
    130185u=read_ncdf("u", date1, date2, file=file,/nostr) 
     
    134189 
    135190nn=n_elements(sitelist) 
    136 date1=date1 
    137 date2=date2 
    138191for n=0, nn-1 do begin 
    139192 
     
    201254endfor 
    202255close,/all 
    203 fi_ws_erai='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_v50.txt' 
     256fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_v50.txt' 
    204257res=read_ascii(fi_ws_erai,data_start=1) 
    205258ff=res.field1 
     
    227280oplot, mean_tao, yfit, color=250, thick=2 
    228281 
    229 fi_ws_trop='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_v50.txt' 
     282fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_v50.txt' 
    230283res=read_ascii(fi_ws_trop,data_start=1) 
    231284ff=res.field1 
     
    254307oplot, mean_tao, yfit, color=250, thick=2 
    255308 
    256 fi_ws_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_v50.txt' 
     309fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_v50.txt' 
    257310res=read_ascii(fi_ws_oaflx,data_start=1) 
    258311ff=res.field1 
     
    283336 
    284337 
    285 fi_ws_ncep='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_v50.txt' 
     338fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_v50.txt' 
    286339res=read_ascii(fi_ws_ncep,data_start=1) 
    287340ff=res.field1 
     
    310363oplot, mean_tao, yfit, color=250, thick=2 
    311364 
    312 fi_ws_tmi='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_v50.txt' 
     365fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_v50.txt' 
    313366res=read_ascii(fi_ws_tmi,data_start=1) 
    314367ff=res.field1 
     
    338391 
    339392 
    340 fi_ws_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_v50.txt' 
     393fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_v50.txt' 
    341394res=read_ascii(fi_ws_ncep1,data_start=1) 
    342395ff=res.field1 
     
    370423spawn, 'mv '+psdir+'idl.ps '+fig 
    371424spawn, 'gv '+fig 
    372 return 
    373425end 
    374 function x_site_location, site 
    375     n1=strpos(site, 's') 
    376 if (n1 gt -1) then begin 
    377     ns=-1. 
    378     x=strmid(site, 0, n1) 
    379     x=float(x)*ns 
    380 endif else begin 
    381     n1=strpos(site, 'n') 
    382     x=strmid(site, 0, n1) 
    383     ny=1. 
    384     x=float(x)*ny 
    385 endelse 
    386 return, float(x) 
    387 end 
    388 function y_site_location, site 
    389     n1=strpos(site, 'e') 
    390 if (n1 gt -1) then begin 
    391     n=strpos(site, 's') 
    392     if (n gt -1) then begin 
    393         y=strmid(site, n+1, n1-n-1) 
    394     endif else begin 
    395         n=strpos(site, 'n') 
    396         y=strmid(site, n+1, n1-n-1) 
    397     endelse 
    398  
    399 endif else begin 
    400     n1=strpos(site, 'w') 
    401     n=strpos(site, 's') 
    402     if (n gt -1) then begin 
    403         y=strmid(site, n+1, n1-n-1) 
    404         y=180+(180-float(y)) 
    405     endif else begin 
    406         n=strpos(site, 'n') 
    407         y=strmid(site, n+1, n1-n-1) 
    408         y=180+(180-float(y)) 
    409    endelse 
    410 endelse 
    411 return,float(y) 
    412 end 
  • trunk/src/paper01/fig4/fig4_met_var_correction_scatter.pro

    r43 r46  
    11;+ 
    2 ; .. _fig4_met_var_correction_scatter.pro 
     2; .. _fig4_met_var_correction_scatter.pro: 
    33; 
    44; =================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph fig4_met_var_correction_scatter { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_correction_final.txt"]; 
     18;       t2m [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_correction_final.txt"]; 
     19;       q2m [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_correction_final.txt"]; 
     20;       ws  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_correction_final.txt"]; 
     21; 
     22;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/fig4_met_var_correction_scatter.ps"]; 
     23; 
     24;       fig4_met_var_correction_scatter [shape=box, 
     25;       fontname=Courier, 
     26;       color=blue, 
     27;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig4/fig4_met_var_correction_scatter.pro", 
     28;       label="${TROPFLUX}/src/paper01/fig4/fig4_met_var_correction_scatter.pro"]; 
     29; 
     30;       {sst t2m q2m ws} -> {fig4_met_var_correction_scatter} -> {figure} 
     31;    } 
     32; 
    1133; SEE ALSO 
    1234; ======== 
    1335; 
    1436; :ref:`tropflux_profile.sh` 
     37; :ref:`tropflux_init.pro` 
     38; 
     39; :ref:`significance_test_99.pro` 
    1540; 
    1641; EXAMPLES 
     
    2247;  IDL> fig4_met_var_correction_scatter 
    2348; 
     49; TODO 
     50; ==== 
     51; 
     52; coding rules 
     53; 
     54; get rid of spwan 
     55; 
     56; complete description 
     57; 
     58; handle IO error 
     59; 
    2460; EVOLUTIONS 
    2561; ========== 
    2662; 
    2763; $Id$ 
     64; 
     65; - fplod 20110420T085113Z aedon.locean-ipsl.upmc.fr (Darwin) 
     66; 
     67;   * make it work on cratos 
     68;   * remove hard coding path 
     69;   * add graphviz 
    2870; 
    2971; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3274; 
    3375;- 
    34  
    3576pro fig4_met_var_correction_scatter 
    36 @common 
     77@cm_general 
     78@cm_tropflux 
    3779reinitplt, /z,/invert 
    3880key_portrait = 1 
    3981 
    4082openps, FILENAME = 'idl.ps' 
    41 fi='/Users/pkb/work/MY_SAXO/flux_automat/sst_correction_final.txt' 
     83fi=tropflux_id_env+'sst_correction_final.txt' 
    4284res=read_ascii(fi,data_start=0) 
    4385ff=res.field1 
     
    66108significance_test_99,mean,bias 
    67109 
    68 fi='/Users/pkb/work/MY_SAXO/flux_automat/t2m_correction_final.txt' 
     110fi=tropflux_id_env+'t2m_correction_final.txt' 
    69111res=read_ascii(fi,data_start=0) 
    70112ff=res.field1 
     
    94136significance_test_99,mean,bias 
    95137 
    96 fi='/Users/pkb/work/MY_SAXO/flux_automat/q2m_correction_final.txt' 
     138fi=tropflux_id_env+'q2m_correction_final.txt' 
    97139res=read_ascii(fi,data_start=0) 
    98140ff=res.field1 
     
    120162;; significant test 
    121163significance_test_99,mean,bias 
    122 fi='/Users/pkb/work/MY_SAXO/flux_automat/ws_correction_final.txt' 
     164fi=tropflux_id_env+'ws_correction_final.txt' 
    123165res=read_ascii(fi,data_start=0) 
    124166ff=res.field1 
     
    150192closeps 
    151193 
    152 fig='fig4_met_var_correction_scatter.ps' 
    153 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    154 spawn, 'gv '+cpsdir+fig 
     194fig=tropflux_od_env+'fig4_met_var_correction_scatter.ps' 
     195spawn, 'mv '+psdir+'idl.ps '+fig 
     196spawn, 'gv '+fig 
    155197 
    156198end 
  • trunk/src/paper01/fig4/significance_test_99.pro

    r43 r46  
    11;+ 
    2 ; .. _significance_test_99.pro 
     2; .. _significance_test_99.pro: 
    33; 
    44; ======================== 
     
    1414; :ref:`tropflux_profile.sh` 
    1515; 
     16; :ref:`fig10_swr_correction.pro` 
     17; :ref:`fig4_met_var_correction_scatter.pro` 
     18; 
    1619; EXAMPLES 
    1720; ======== 
     
    2427;  IDL> sig_value=++ 
    2528;  IDL> significance_test_99, x, y, sig_value 
     29; 
     30; TODO 
     31; ==== 
     32; 
     33; coding rules 
     34; 
     35; complete description 
     36; 
     37; complete example 
    2638; 
    2739; EVOLUTIONS 
  • trunk/src/paper01/fig5/fig5_gustiness_scatter.pro

    r43 r46  
    11;+ 
    2 ; .. _fig5_gustiness_scatter.pro 
     2; .. _fig5_gustiness_scatter.pro: 
    33; 
    44; ========================== 
     
    66; ========================== 
    77; 
    8 ; ; 
    98; DESCRIPTION 
    109; =========== 
     10; 
     11; .. graphviz:: 
     12; 
     13;    digraph fig5_gustiness_scatter { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       ws  [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_gustiness_bias.txt"]; 
     18;       sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/raw_sst_2000_2008_gustiness.txt"]; 
     19; 
     20;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/fig5_gustiness_scatter.ps"]; 
     21; 
     22;       fig5_gustiness_scatter [shape=box, 
     23;       fontname=Courier, 
     24;       color=blue, 
     25;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig5/fig5_gustiness_scatter.pro", 
     26;       label="${TROPFLUX}/src/paper01/fig5/fig5_gustiness_scatter.pro"]; 
     27; 
     28;       {ws sst} -> {fig5_gustiness_scatter} -> {figure} 
     29;    } 
    1130; 
    1231; SEE ALSO 
     
    1433; 
    1534; :ref:`tropflux_profile.sh` 
     35; :ref:`tropflux_init.pro` 
    1636; 
    1737; EXAMPLES 
     
    2343;  IDL> fig5_gustiness_scatter 
    2444; 
     45; TODO 
     46; ==== 
     47; 
     48; coding rules 
     49; 
     50; get rid of spwan 
     51; 
     52; complete description 
     53; 
     54; handle IO error 
     55; 
    2556; EVOLUTIONS 
    2657; ========== 
    2758; 
    2859; $Id$ 
     60; 
     61; - fplod 20110420T090057Z aedon.locean-ipsl.upmc.fr (Darwin) 
     62; 
     63;   * make it work on cratos 
     64;   * remove hard coding path 
     65;   * add graphviz 
    2966; 
    3067; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    3471;- 
    3572pro fig5_gustiness_scatter 
    36 @common 
     73@cm_general 
     74@cm_tropflux 
    3775reinitplt, /z,/invert 
    3876key_portrait = 1 
    3977 
    4078openps, FILENAME = 'idl.ps' 
    41 fi_ws='/Users/pkb/work/MY_SAXO/flux_automat/wind_gustiness_bias.txt' 
     79fi_ws=tropflux_id_env+'wind_gustiness_bias.txt' 
    4280res=read_ascii(fi_ws,data_start=1) 
    4381ff=res.field01 
     
    4785print, correlate(erai_wind,gust) 
    4886 
    49 fi_sst='/Users/pkb/work/MY_SAXO/flux_automat/raw_sst_2000_2008_gustiness.txt' 
     87fi_sst=tropflux_id_env+'raw_sst_2000_2008_gustiness.txt' 
    5088res=read_ascii(fi_sst,data_start=1) 
    5189ff=res.field1 
     
    76114print, a,b 
    77115closeps 
    78 fig='fig5_gustiness_scatter.ps' 
    79 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    80 spawn, 'gv '+cpsdir+fig 
     116fig=tropflux_od_env+'fig5_gustiness_scatter.ps' 
     117spawn, 'mv '+psdir+'idl.ps '+fig 
     118spawn, 'gv '+fig 
    81119end 
  • trunk/src/paper01/fig6/icoads_q2m_stats_paper.pro

    r43 r46  
    11;+ 
    2 ; .. _icoads_q2m_stats_paper.pro 
     2; .. _icoads_q2m_stats_paper.pro: 
    33; 
    44; ========================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph icoads_q2m_stats_paper { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       sphum [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sphum_monthly_1960_2010_oafluxgrid.nc"]; 
     18;       q2m_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_TropFlux_global_monthly_1989_2009.nc"]; 
     19;       q2m_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_OAFlux_global_monthly_1989_2009.nc"]; 
     20;       q2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_ERAI_global_monthly_1989_2009.nc"]; 
     21;       q2m_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_NCEP2_global_monthly_1989_2009.nc"]; 
     22;       q2m_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_NCEP1_global_monthly_1989_2009.nc"]; 
     23; 
     24;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/icoads_q2m_stats_paper.ps"]; 
     25; 
     26;       icoads_q2m_stats_paper [shape=box, 
     27;       fontname=Courier, 
     28;       color=blue, 
     29;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig6/icoads_q2m_stats_paper.pro", 
     30;       label="${TROPFLUX}/src/paper01/fig6/icoads_q2m_stats_paper.pro"]; 
     31; 
     32;       {sphum q2m_tropflux q2m_oaflux q2m_erai q2m_ncep2 q2m_ncep1} -> {icoads_q2m_stats_paper} -> {figure} 
     33;    } 
     34; 
    1135; SEE ALSO 
    1236; ======== 
    1337; 
    1438; :ref:`tropflux_profile.sh` 
     39; :ref:`tropflux_init.pro` 
     40; 
     41; :ref:`statistics.pro` 
    1542; 
    1643; EXAMPLES 
     
    2249;  IDL> icoads_q2m_stats_paper 
    2350; 
     51; TODO 
     52; ==== 
     53; 
     54; make it work (missing data) 
     55; 
     56; coding rules 
     57; 
     58; get rid of spwan 
     59; 
     60; complete description 
     61; 
     62; handle IO error 
     63; 
    2464; EVOLUTIONS 
    2565; ========== 
     
    2767; $Id$ 
    2868; 
     69; - fplod 20110420T090949Z aedon.locean-ipsl.upmc.fr (Darwin) 
     70; 
     71;   * remove hard coding path 
     72;   * add graphviz 
     73; 
    2974; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3075; 
     
    3378;- 
    3479pro icoads_q2m_stats_paper 
    35 @common 
     80@cm_general 
     81@cm_tropflux 
    3682reinitplt, /z,/invert 
    3783key_portrait = 1 
     
    4490domdef, box 
    4591 
    46 file="/Volumes/Sanathana/ICOADS/Median/sphum_monthly_1960_2010_oafluxgrid.nc" 
     92file=tropflux_id_env+'sphum_monthly_1960_2010_oafluxgrid.nc' 
    4793initncdf, file 
    4894icoads=read_ncdf("sphum", st, en , file=file,/nostr, box=box) 
    4995help, icoads 
    5096 
    51 dir="/Volumes/Sanathana/monthly_met_var/" 
    52 file=dir+"q2m_TropFlux_global_monthly_1989_2009.nc" 
     97file=tropflux_id_env+'q2m_TropFlux_global_monthly_1989_2009.nc' 
    5398initncdf, file 
    5499trop=read_ncdf("q2m", st, en , file=file,/nostr, box=box) 
    55100help, trop 
    56101 
    57 file=dir+"q2m_OAFlux_global_monthly_1989_2009.nc" 
     102file=tropflux_id_env+"q2m_OAFlux_global_monthly_1989_2009.nc" 
    58103initncdf, file 
    59104oaf=read_ncdf("q2m", st, en , file=file,/nostr, box=box) 
    60105help, oaf 
    61106 
    62 file=dir+"q2m_ERAI_global_monthly_1989_2009.nc" 
     107file=tropflux_id_env+"q2m_ERAI_global_monthly_1989_2009.nc" 
    63108initncdf, file 
    64109erai=read_ncdf("q2m", st, en , file=file,/nostr, box=box) 
    65110help, erai 
    66111 
    67 file=dir+"q2m_NCEP2_global_monthly_1989_2009.nc" 
     112file=tropflux_id_env+"q2m_NCEP2_global_monthly_1989_2009.nc" 
    68113initncdf, file 
    69114ncep2=1000*read_ncdf("q2m", st, en , file=file,/nostr, box=box) 
    70115help, ncep2 
    71116 
    72 file=dir+"q2m_NCEP1_global_monthly_1989_2009.nc" 
     117file=tropflux_id_env+"q2m_NCEP1_global_monthly_1989_2009.nc" 
    73118initncdf, file 
    74119ncep1=1000*read_ncdf("q2m", st, en , file=file,/nostr, box=box) 
     
    209254 
    210255closeps 
    211 fig="icoads_q2m_stats_paper.ps" 
    212 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    213 spawn, 'gv '+cpsdir+fig 
     256fig=tropflux_od_env+"icoads_q2m_stats_paper.ps" 
     257spawn, 'mv '+psdir+'idl.ps '+fig 
     258spawn, 'gv '+fig 
    214259return 
    215260end 
  • trunk/src/paper01/fig6/icoads_sst_stats_paper.pro

    r43 r46  
    11;+ 
    2 ; .. _icoads_sst_stats_paper.pro 
     2; .. _icoads_sst_stats_paper.pro: 
    33; 
    44; ========================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph icoads_sst_stats_paper { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       sst [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_monthly_1960_2010_oafluxgrid.nc"]; 
     18;       sst_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_TropFlux_global_monthly_1989_2009.nc"]; 
     19;       sst_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_OAFlux_global_monthly_1989_2009.nc"]; 
     20;       sst_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_ERAI_global_monthly_1989_2009.nc"]; 
     21;       sst_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_NCEP2_global_monthly_1989_2009.nc"]; 
     22;       sst_noc [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/nocv2_sst_19890101_20091231_oafluxgrid.nc"]; 
     23;       sst_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_NCEP1_global_monthly_1989_2009.nc"]; 
     24; 
     25;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/icoads_sst_stats_paper.ps"]; 
     26; 
     27;       icoads_sst_stats_paper [shape=box, 
     28;       fontname=Courier, 
     29;       color=blue, 
     30;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig6/icoads_sst_stats_paper.pro", 
     31;       label="${TROPFLUX}/src/paper01/fig6/icoads_sst_stats_paper.pro"]; 
     32; 
     33;       {sst sst_tropflux sst_oaflux sst_erai sst_ncep2 sst_noc sst_ncep1} -> {icoads_sst_stats_paper} -> {figure} 
     34;    } 
     35; 
    1136; SEE ALSO 
    1237; ======== 
    1338; 
    1439; :ref:`tropflux_profile.sh` 
     40; :ref:`tropflux_init.pro` 
     41; 
     42; :ref:`statistics.pro` 
    1543; 
    1644; EXAMPLES 
     
    2250;  IDL> icoads_sst_stats_paper 
    2351; 
     52; TODO 
     53; ==== 
     54; 
     55; make it work (missing data) 
     56; 
     57; coding rules 
     58; 
     59; get rid of spwan 
     60; 
     61; complete description 
     62; 
     63; handle IO error 
     64; 
    2465; EVOLUTIONS 
    2566; ========== 
     
    2768; $Id$ 
    2869; 
     70; - fplod 20110420T091734Z aedon.locean-ipsl.upmc.fr (Darwin) 
     71; 
     72;   * remove hard coding path 
     73;   * add graphviz 
     74; 
    2975; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3076; 
     
    3379;- 
    3480pro icoads_sst_stats_paper 
    35 @common 
     81@cm_tropflux 
    3682reinitplt, /z,/invert 
    3783key_portrait = 1 
     
    4490domdef, box 
    4591 
    46 file="/Volumes/Sanathana/ICOADS/Median/sst_monthly_1960_2010_oafluxgrid.nc" 
     92file=tropflux_id_env+'sst_monthly_1960_2010_oafluxgrid.nc' 
    4793initncdf, file 
    4894icoads=read_ncdf("sst", st-1, en , file=file,/nostr, box=box) 
    4995help, icoads 
    5096 
    51 dir="/Volumes/Sanathana/monthly_met_var/" 
    52 file=dir+"sst_TropFlux_global_monthly_1989_2009.nc" 
     97file=tropflux_id_env+'sst_TropFlux_global_monthly_1989_2009.nc' 
    5398initncdf, file 
    5499trop=read_ncdf("sst", st, en , file=file,/nostr, box=box)-273.15 
    55100help, trop 
    56101 
    57 file=dir+"sst_OAFlux_global_monthly_1989_2009.nc" 
     102file=tropflux_id_env+"sst_OAFlux_global_monthly_1989_2009.nc" 
    58103initncdf, file 
    59104oaf=read_ncdf("sst", st, en , file=file,/nostr, box=box) 
    60105help, oaf 
    61106 
    62 file=dir+"sst_ERAI_global_monthly_1989_2009.nc" 
     107file=tropflux_id_env+"sst_ERAI_global_monthly_1989_2009.nc" 
    63108initncdf, file 
    64109erai=read_ncdf("sst", st, en , file=file,/nostr, box=box)-273.15 
    65110help, erai 
    66111 
    67 file=dir+"sst_NCEP2_global_monthly_1989_2009.nc" 
     112file=tropflux_id_env+"sst_NCEP2_global_monthly_1989_2009.nc" 
    68113initncdf, file 
    69114ncep2=read_ncdf("sst", st, en , file=file,/nostr, box=box)-273.15 
    70115help, ncep2 
    71116 
    72 file="/Volumes/Sanathana/NOC_v2/oaflux_grid/nocv2_sst_19890101_20091231_oafluxgrid.nc" 
     117file=tropflux_id_env+'nocv2_sst_19890101_20091231_oafluxgrid.nc' 
    73118initncdf, file 
    74119noc=read_ncdf("sst", st, en , file=file,/nostr, box=box) 
    75120help, noc 
    76121 
    77 file=dir+"sst_NCEP1_global_monthly_1989_2009.nc" 
     122file=tropflux_id_env+"sst_NCEP1_global_monthly_1989_2009.nc" 
    78123initncdf, file 
    79124ncep1=read_ncdf("sst", st, en , file=file,/nostr, box=box)-273.15 
     
    236281 
    237282closeps 
    238 fig="icoads_sst_stats_paper.ps" 
    239 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    240 spawn, 'gv '+cpsdir+fig 
    241 return 
     283fig=tropflux_od_env+"icoads_sst_stats_paper.ps" 
     284spawn, 'mv '+psdir+'idl.ps '+fig 
     285spawn, 'gv '+fig 
     286end 
  • trunk/src/paper01/fig6/icoads_t2m_stats_paper.pro

    r43 r46  
    11;+ 
    2 ; .. _icoads_t2m_stats_paper.pro 
     2; .. _icoads_t2m_stats_paper.pro: 
    33; 
    44; ========================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph icoads_t2m_stats_paper { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       airt [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/airt_monthly_1960_2010_oafluxgrid.nc"]; 
     18;       t2m_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_TropFlux_global_monthly_1989_2009.nc"]; 
     19;       t2m_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_OAFlux_global_monthly_1989_2009.nc"]; 
     20;       t2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_ERAI_global_monthly_1989_2009.nc"]; 
     21;       t2m_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_NCEP2_global_monthly_1989_2009.nc"]; 
     22;       t2m_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/t2m_NCEP1_global_monthly_1989_2009.nc"]; 
     23; 
     24;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/icoads_t2m_stats_paper.ps"]; 
     25; 
     26;       icoads_t2m_stats_paper [shape=box, 
     27;       fontname=Courier, 
     28;       color=blue, 
     29;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig6/icoads_t2m_stats_paper.pro", 
     30;       label="${TROPFLUX}/src/paper01/fig6/icoads_t2m_stats_paper.pro"]; 
     31; 
     32;       {airt t2m_tropflux t2m_oaflux t2m_erai t2m_ncep2 t2m_ncep1} -> {icoads_t2m_stats_paper} -> {figure} 
     33;    } 
     34; 
    1135; SEE ALSO 
    1236; ======== 
    1337; 
    1438; :ref:`tropflux_profile.sh` 
     39; :ref:`tropflux_init.pro` 
     40; 
     41; :ref:`statistics.pro` 
    1542; 
    1643; EXAMPLES 
     
    2249;  IDL> icoads_t2m_stats_paper 
    2350; 
     51; 
     52; TODO 
     53; ==== 
     54; 
     55; make it work (missing data) 
     56; 
     57; coding rules 
     58; 
     59; get rid of spwan 
     60; 
     61; complete description 
     62; 
     63; handle IO error 
     64; 
    2465; EVOLUTIONS 
    2566; ========== 
     
    2768; $Id$ 
    2869; 
     70; - fplod 20110420T092151Z aedon.locean-ipsl.upmc.fr (Darwin) 
     71; 
     72;   * remove hard coding path 
     73;   * add graphviz 
     74; 
    2975; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3076; 
     
    3379;- 
    3480pro icoads_t2m_stats_paper 
    35 @common 
     81@cm_general 
     82@cm_tropflux 
    3683reinitplt, /z,/invert 
    3784key_portrait = 1 
     
    4491domdef, box 
    4592 
    46 file="/Volumes/Sanathana/ICOADS/Median/airt_monthly_1960_2010_oafluxgrid.nc" 
     93file=tropflux_id_env+'airt_monthly_1960_2010_oafluxgrid.nc' 
    4794initncdf, file 
    4895icoads=read_ncdf("airt", st-1, en , file=file,/nostr, box=box) 
    4996help, icoads 
    5097 
    51 dir="/Volumes/Sanathana/monthly_met_var/" 
    52 file=dir+"t2m_TropFlux_global_monthly_1989_2009.nc" 
     98file=tropflux_id_env+'t2m_TropFlux_global_monthly_1989_2009.nc' 
    5399initncdf, file 
    54100trop=read_ncdf("t2m", st, en , file=file,/nostr, box=box)-273.15 
    55101help, trop 
    56102 
    57 file=dir+"t2m_OAFlux_global_monthly_1989_2009.nc" 
     103file=tropflux_id_env+"t2m_OAFlux_global_monthly_1989_2009.nc" 
    58104initncdf, file 
    59105oaf=read_ncdf("t2m", st, en , file=file,/nostr, box=box) 
    60106help, oaf 
    61107 
    62 file=dir+"t2m_ERAI_global_monthly_1989_2009.nc" 
     108file=tropflux_id_env+"t2m_ERAI_global_monthly_1989_2009.nc" 
    63109initncdf, file 
    64110erai=read_ncdf("t2m", st, en , file=file,/nostr, box=box)-273.15 
    65111help, erai 
    66112 
    67 file=dir+"t2m_NCEP2_global_monthly_1989_2009.nc" 
     113file=tropflux_id_env+"t2m_NCEP2_global_monthly_1989_2009.nc" 
    68114initncdf, file 
    69115ncep2=read_ncdf("t2m", st, en , file=file,/nostr, box=box)-273.15 
    70116help, ncep2 
    71117 
    72 file=dir+"t2m_NCEP1_global_monthly_1989_2009.nc" 
     118file=tropflux_id_env+"t2m_NCEP1_global_monthly_1989_2009.nc" 
    73119initncdf, file 
    74120ncep1=read_ncdf("t2m", st, en , file=file,/nostr, box=box)-273.15 
     
    217263 
    218264closeps 
    219 fig="icoads_t2m_stats_paper.ps" 
    220 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    221 spawn, 'gv '+cpsdir+fig 
    222 return 
     265fig=tropflux_od_env+"icoads_t2m_stats_paper.ps" 
     266spawn, 'mv '+psdir+'idl.ps '+fig 
     267spawn, 'gv '+fig 
    223268end 
  • trunk/src/paper01/fig6/icoads_ws_stats_paper.pro

    r43 r46  
    11;+ 
    2 ; .. _icoads_ws_stats_paper.pro 
     2; .. _icoads_ws_stats_paper.pro: 
    33; 
    44; ========================= 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph icoads_ws_stats_paper { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       ws [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_monthly_1960_2010_oafluxgrid.nc"]; 
     18;       ws_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_TropFlux_global_monthly_1989_2009.nc"]; 
     19;       ws_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_OAFlux_global_monthly_1989_2009.nc"]; 
     20;       ws_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_ERAI_global_monthly_1989_2009.nc"]; 
     21;       ws_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_NCEP2_global_monthly_1989_2009.nc"]; 
     22;       ws_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_NCEP1_global_monthly_1989_2009.nc"]; 
     23;       ws_noc [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/nocv2_ws_19890101_20091231_oafluxgrid.nc"]; 
     24; 
     25;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/icoads_ws_stats_paper.ps"]; 
     26; 
     27;       icoads_ws_stats_paper [shape=box, 
     28;       fontname=Courier, 
     29;       color=blue, 
     30;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig6/icoads_ws_stats_paper.pro", 
     31;       label="${TROPFLUX}/src/paper01/fig6/icoads_ws_stats_paper.pro"]; 
     32; 
     33;       {ws ws_tropflux ws_oaflux ws_erai ws_ncep2 ws_ncep1 ws_noc} -> {icoads_ws_stats_paper} -> {figure} 
     34;    } 
     35; 
    1136; SEE ALSO 
    1237; ======== 
    1338; 
    1439; :ref:`tropflux_profile.sh` 
     40; :ref:`tropflux_init.pro` 
     41; 
     42; :ref:`statistics.pro` 
    1543; 
    1644; EXAMPLES 
     
    2250;  IDL> icoads_ws_stats_paper 
    2351; 
     52; 
     53; TODO 
     54; ==== 
     55; 
     56; make it work (missing data) 
     57; 
     58; coding rules 
     59; 
     60; get rid of spwan 
     61; 
     62; complete description 
     63; 
     64; handle IO error 
     65; 
    2466; EVOLUTIONS 
    2567; ========== 
     
    2769; $Id$ 
    2870; 
     71; - fplod 20110420T092454Z aedon.locean-ipsl.upmc.fr (Darwin) 
     72; 
     73;   * remove hard coding path 
     74;   * add graphviz 
     75; 
    2976; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3077; 
     
    3380;- 
    3481pro icoads_ws_stats_paper 
    35 @common 
     82@cm_general 
     83@cm_tropflux 
    3684reinitplt, /z,/invert 
    3785key_portrait = 1 
     
    4492domdef, box 
    4593 
    46 file="/Volumes/Sanathana/ICOADS/Median/ws_monthly_1960_2010_oafluxgrid.nc" 
     94file=tropflux_id_env+'ws_monthly_1960_2010_oafluxgrid.nc" 
    4795initncdf, file 
    4896icoads=read_ncdf("ws", st-1, en , file=file,/nostr, box=box) 
    4997help, icoads 
    5098 
    51 dir="/Volumes/Sanathana/monthly_met_var/" 
    52 file=dir+"ws_TropFlux_global_monthly_1989_2009.nc" 
     99file=tropflux_id_env+"ws_TropFlux_global_monthly_1989_2009.nc" 
    53100initncdf, file 
    54101trop=read_ncdf("ws", st, en , file=file,/nostr, box=box) 
    55102help, trop 
    56103 
    57 file=dir+"ws_OAFlux_global_monthly_1989_2009.nc" 
     104file=tropflux_id_env+"ws_OAFlux_global_monthly_1989_2009.nc" 
    58105initncdf, file 
    59106oaf=read_ncdf("ws", st, en , file=file,/nostr, box=box) 
    60107help, oaf 
    61108 
    62 file=dir+"ws_ERAI_global_monthly_1989_2009.nc" 
     109file=tropflux_id_env+"ws_ERAI_global_monthly_1989_2009.nc" 
    63110initncdf, file 
    64111erai=read_ncdf("ws", st, en , file=file,/nostr, box=box) 
    65112help, erai 
    66113 
    67 file=dir+"ws_NCEP2_global_monthly_1989_2009.nc" 
     114file=tropflux_id_env+"ws_NCEP2_global_monthly_1989_2009.nc" 
    68115initncdf, file 
    69116ncep2=read_ncdf("wsm", st, en , file=file,/nostr, box=box) 
    70117help, ncep2 
    71118 
    72 file=dir+"ws_NCEP1_global_monthly_1989_2009.nc" 
     119file=tropflux_id_env+"ws_NCEP1_global_monthly_1989_2009.nc" 
    73120initncdf, file 
    74121ncep1=read_ncdf("ws", st, en , file=file,/nostr, box=box) 
    75122help, ncep1 
    76123 
    77 file="/Volumes/Sanathana/NOC_v2/oaflux_grid/nocv2_ws_19890101_20091231_oafluxgrid.nc" 
     124file=tropflux_id_env+'nocv2_ws_19890101_20091231_oafluxgrid.nc' 
    78125initncdf, file 
    79126noc=read_ncdf("ws", st, en , file=file,/nostr, box=box) 
     
    233280 
    234281closeps 
    235 fig="icoads_ws_stats_paper.ps" 
    236 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    237 spawn, 'gv '+cpsdir+fig 
    238 return 
     282fig=tropflux_od_env+"icoads_ws_stats_paper.ps" 
     283spawn, 'mv '+psdir+'idl.ps '+fig 
     284spawn, 'gv '+fig 
    239285end 
  • trunk/src/paper01/fig6/statistics.pro

    r43 r46  
    11;+ 
    2 ; .. _statistics.pro 
     2; .. _statistics.pro: 
    33; 
    44; ============== 
     
    1414; :ref:`tropflux_profile.sh` 
    1515; 
     16; :ref:`as_validation_net_1994_95_v10.pro` 
     17; :ref:`coare_validation_net_1992_93_all_v10.pro` 
     18; :ref:`stratus_validation_net_2001_2002_all_v10.pro` 
     19; :ref:`subdctn_cs_validation_net_1991_93_all_v10.pro` 
     20; :ref:`subdctn_ses_validation_net_1991_93_all_v10.pro` 
     21; :ref:`subdctn_sws_validation_net_1991_93_all_v10.pro` 
     22; :ref:`whots_validation_net_2004_2007_all_v10.pro` 
     23; :ref:`icoads_q2m_stats_paper.pro` 
     24; :ref:`icoads_sst_stats_paper.pro` 
     25; :ref:`icoads_t2m_stats_paper.pro` 
     26; :ref:`icoads_ws_stats_paper.pro` 
     27; 
    1628; EXAMPLES 
    1729; ======== 
     
    2335;  IDL> ++ 
    2436;  IDL> statistics, moor, erai, cor, bias, std, rmsd 
     37; 
     38; TODO 
     39; ==== 
     40; 
     41; coding rules 
     42; 
     43; complete description 
     44; 
     45; complete example 
    2546; 
    2647; EVOLUTIONS 
     
    3758pro statistics, moor, erai, $ 
    3859   cor, bias, std, rmsd 
    39 @common 
     60@cm_tropflux 
    4061;; mean1= mean of mooring variable      std1=std of mooring variable 
    4162;; mean2= mean of erai variable         std2=std of erai variable 
  • trunk/src/paper01/fig7/air_validation_scatter_2000_2009_basin.pro

    r43 r46  
    11;+ 
    2 ; .. _air_validation_scatter_2000_2009.pro 
    3 ; 
    4 ; ==================================== 
    5 ; air_validation_scatter_2000_2009.pro 
    6 ; ==================================== 
     2; .. _air_validation_scatter_2000_2009_basin.pro: 
     3; 
     4; ========================================== 
     5; air_validation_scatter_2000_2009_basin.pro 
     6; ========================================== 
     7; 
    78; DESCRIPTION 
    89; =========== 
    910; 
     11; .. graphviz:: 
     12; 
     13;    digraph air_validation_scatter_2000_2009_basin { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       air_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_erai_*.txt"]; 
     18;       air_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_trop_*.txt"]; 
     19;       air_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_oaflx_*.txt"]; 
     20;       air_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_ncep2_*.txt"]; 
     21;       air_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_2000_2009_ncep1_*.txt"]; 
     22;       t2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_t2m_19890101_20091231_oafluxgrid.nc"]; 
     23; 
     24;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/air_validation_scatter_2000_2009_basin.ps"]; 
     25; 
     26;       air_validation_scatter_2000_2009_basin [shape=box, 
     27;       fontname=Courier, 
     28;       color=blue, 
     29;       URL="http://forge.ipsl.jussieu.fr/tropflux/broairer/trunk/src/paper01/fig7/air_validation_scatter_2000_2009_basin.pro", 
     30;       label="${TROPFLUX}/src/paper01/fig7/air_validation_scatter_2000_2009_basin.pro"]; 
     31; 
     32;       {air_tropflux t2m_erai} -> {air_validation_scatter_2000_2009_basin} -> {air_oaflux air_erai air_ncep2 air_ncep1 figure} 
     33;    } 
     34; 
    1035; SEE ALSO 
    1136; ======== 
    1237; 
    1338; :ref:`tropflux_profile.sh` 
     39; :ref:`tropflux_init.pro` 
     40; :ref:`cm_tropflux.pro` 
     41; 
     42; :func:`x_site_location` 
     43; :func:`y_site_location` 
     44; 
     45; :ref:`read_variables_v2.pro` 
     46; :ref:`statistics_3var_v1.pro` 
    1447; 
    1548; EXAMPLES 
     
    1952; 
    2053;  IDL> @tropflux_init 
    21 ;  IDL> .r read_era_total 
    22 ;  IDL> .r read_variables_v2 
    23 ;  IDL> .r read_era_box 
    24 ;  IDL> date1=++ 
    25 ;  IDL> date2=++ 
    26 ;  IDL> air_validation_scatter_2000_2009, date1, date2 
     54;  IDL> date1=19890101L 
     55;  IDL> date2=20091231L 
     56;  IDL> air_validation_scatter_2000_2009_basin, date1, date2 
     57; 
     58; TODO 
     59; ==== 
     60; 
     61; make it work on cratos : pb restore 
     62; 
     63; ++ mooring data in graphviz 
     64; 
     65; coding rules 
     66; 
     67; get rid of spwan 
     68; 
     69; complete description 
     70; 
     71; handle IO error 
    2772; 
    2873; EVOLUTIONS 
     
    3176; $Id$ 
    3277; 
     78; - fplod 20110420T093206Z aedon.locean-ipsl.upmc.fr (Darwin) 
     79; 
     80;   * remove hard coding path 
     81;   * add graphviz 
     82;   * externalize functions 
     83;   * change name of procedure according to filename 
     84; 
    3385; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3486; 
     
    3688; 
    3789;- 
    38 pro air_validation_scatter_2000_2009,date1,date2 
    39 @common 
    40  
     90pro air_validation_scatter_2000_2009_basin, date1, date2 
     91@cm_general 
     92@cm_tropflux 
    4193reinitplt, /z,/invert 
    4294key_portrait = 1 
     
    98150close,/all 
    99151 
    100 fi_air_erai='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_erai_'+ocean+'.txt' 
     152fi_air_erai=tropflux_id_env+'air_2000_2009_erai_'+ocean+'.txt' 
    101153openw,1,fi_air_erai 
    102 fi_air_trop='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_trop_'+ocean+'.txt' 
     154fi_air_trop=tropflux_id_env+'air_2000_2009_trop_'+ocean+'.txt' 
    103155openw,2,fi_air_trop 
    104 fi_air_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_oaflx_'+ocean+'.txt' 
     156fi_air_oaflx=tropflux_id_env+'air_2000_2009_oaflx_'+ocean+'.txt' 
    105157openw,3,fi_air_oaflx 
    106 fi_air_ncep2='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_ncep2_'+ocean+'.txt' 
     158fi_air_ncep2=tropflux_id_env+'air_2000_2009_ncep2_'+ocean+'.txt' 
    107159openw,4,fi_air_ncep2 
    108 fi_air_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_ncep1_'+ocean+'.txt' 
     160fi_air_ncep1=tropflux_id_env+'air_2000_2009_ncep1_'+ocean+'.txt' 
    109161openw,5,fi_air_ncep1 
    110162 
     
    118170;; first reading the whole ERAI uncorrected and corrected data 
    119171 
    120 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_t2m_19890101_20091231_oafluxgrid.nc' 
     172file=tropflux_id_env+'erai_t2m_19890101_20091231_oafluxgrid.nc' 
    121173initncdf, file 
    122174unc=read_ncdf('t2m',date1,date2,file=file,/nostr) & unc=unc-273.15 
    123175help, unc 
    124176 
    125 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_t2m_19890101_20091231_v3.nc' 
    126 ;file="/Users/pkb/data/TropFlux/TropFlux_t2m_19890101_20091231_v50.nc" 
    127 ;initncdf, file 
    128 ;cor=read_ncdf('t2m',date1,date2,file=file,/nostr) & cor=cor-273.15 
    129 ;help, cor 
    130  
    131 ;file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
    132 ;initncdf, file 
    133 ;oaf=read_ncdf("air", date1, date2, file=file,/nostr) 
    134 ;help, oaf 
    135  
    136 ;fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/air_2m_ncep2_oafluxgrid_19890101_20091231.nc' 
    137 ;initncdf, fi 
    138 ;nce=read_ncdf("air", date1-1, date2, file=fi,/nostr) 
    139 ;nce=nce-273.15 
    140 ;help, nce 
    141  
    142 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/t2m_ncep1_19890101_20091231.nc' 
    143 ;initncdf, file 
    144 ;nce1=read_ncdf("t2m", date1, date2, file=file,/nostr) 
    145 ;nce1=nce1-273.15 
    146 ;help, nce1 
    147  
    148177;save, unc, cor, oaf, nce, nce1, filename="airt_unc_cor_oaf_nce_nce1_2000_2009_global.idl" 
    149178restore, file="/Users/pkb/work/MY_SAXO/airt_unc_cor_oaf_nce_nce1_2000_2009_global.idl" 
     
    151180 
    152181nn=n_elements(sitelist) 
    153 date1=date1 
    154 date2=date2 
    155182for n=0, nn-1 do begin 
    156183 
     
    221248close,/all 
    222249 
    223 fi_air_erai='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_erai_'+ocean+'.txt' 
     250fi_air_erai=tropflux_id_env+'air_2000_2009_erai_'+ocean+'.txt' 
    224251res=read_ascii(fi_air_erai,data_start=1) 
    225252ff=res.field1 
     
    247274oplot, mean_tao, yfit, color=250, thick=2 
    248275 
    249 fi_air_trop='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_trop_'+ocean+'.txt' 
     276fi_air_trop=tropflux_id_env+'air_2000_2009_trop_'+ocean+'.txt' 
    250277res=read_ascii(fi_air_trop,data_start=1) 
    251278ff=res.field1 
     
    274301oplot, mean_tao, yfit, color=250, thick=2 
    275302 
    276 fi_air_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_oaflx_'+ocean+'.txt' 
     303fi_air_oaflx=tropflux_id_env+'air_2000_2009_oaflx_'+ocean+'.txt' 
    277304res=read_ascii(fi_air_oaflx,data_start=1) 
    278305ff=res.field1 
     
    303330 
    304331 
    305 fi_air_ncep='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_ncep2_'+ocean+'.txt' 
     332fi_air_ncep=tropflux_id_env+'air_2000_2009_ncep2_'+ocean+'.txt' 
    306333res=read_ascii(fi_air_ncep,data_start=1) 
    307334ff=res.field1 
     
    330357oplot, mean_tao, yfit, color=250, thick=2 
    331358 
    332 fi_air_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/air_2000_2009_ncep1_'+ocean+'.txt' 
     359fi_air_ncep1=tropflux_id_env+'air_2000_2009_ncep1_'+ocean+'.txt' 
    333360res=read_ascii(fi_air_ncep1,data_start=1) 
    334361ff=res.field1 
     
    359386closeps 
    360387 
    361 fig='air_validation_scatter_2000_2009_'+ocean+'.ps' 
    362 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    363 spawn, 'gv '+cpsdir+fig 
    364 return 
     388fig=tropflux_od_env+'air_validation_scatter_2000_2009_'+ocean+'.ps' 
     389spawn, 'mv '+psdir+'idl.ps '+fig 
     390spawn, 'gv '+fig 
    365391end 
    366 function x_site_location, site 
    367     n1=strpos(site, 's') 
    368 if (n1 gt -1) then begin 
    369     ns=-1. 
    370     x=strmid(site, 0, n1) 
    371     x=float(x)*ns 
    372 endif else begin 
    373     n1=strpos(site, 'n') 
    374     x=strmid(site, 0, n1) 
    375     ny=1. 
    376     x=float(x)*ny 
    377 endelse 
    378 return, float(x) 
    379 end 
    380 function y_site_location, site 
    381     n1=strpos(site, 'e') 
    382 if (n1 gt -1) then begin 
    383     n=strpos(site, 's') 
    384     if (n gt -1) then begin 
    385         y=strmid(site, n+1, n1-n-1) 
    386     endif else begin 
    387         n=strpos(site, 'n') 
    388         y=strmid(site, n+1, n1-n-1) 
    389     endelse 
    390  
    391 endif else begin 
    392     n1=strpos(site, 'w') 
    393     n=strpos(site, 's') 
    394     if (n gt -1) then begin 
    395         y=strmid(site, n+1, n1-n-1) 
    396         y=180+(180-float(y)) 
    397     endif else begin 
    398         n=strpos(site, 'n') 
    399         y=strmid(site, n+1, n1-n-1) 
    400         y=180+(180-float(y)) 
    401    endelse 
    402 endelse 
    403 return,float(y) 
    404 end 
  • trunk/src/paper01/fig7/q2m_validation_scatter_2000_2009_basin.pro

    r43 r46  
    11;+ 
    2 ; .. _q2m_validation_scatter_2000_2009_basin.pro 
     2; .. _q2m_validation_scatter_2000_2009_basin.pro: 
    33; 
    44; ========================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph q2m_validation_scatter_2000_2009_basin { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       q2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_erai_*.txt"]; 
     18;       q2m_erai_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_q2m_19890101_20091231_oafluxgrid.nc"]; 
     19;       q2m_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_trop_*.txt"]; 
     20;       q2m_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_oaflx_*.txt"]; 
     21;       q2m_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_ncep_*.txt"]; 
     22;       q2m_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_2000_2009_ncep1_*.txt"]; 
     23; 
     24;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_validation_scatter_2000_2009_basin.ps"]; 
     25; 
     26;       q2m_validation_scatter_2000_2009_basin [shape=box, 
     27;       fontname=Courier, 
     28;       color=blue, 
     29;       URL="http://forge.ipsl.jussieu.fr/tropflux/broq2mer/trunk/src/paper01/fig7/q2m_validation_scatter_2000_2009_basin.pro", 
     30;       label="${TROPFLUX}/src/paper01/fig7/q2m_validation_scatter_2000_2009_basin.pro"]; 
     31; 
     32;       {q2m_erai q2m_erai_2} -> {q2m_validation_scatter_2000_2009_basin} -> {q2m_tropflux q2m_oafluxq2m_ncep q2m_ncep1 figure} 
     33;    } 
     34; 
    1135; SEE ALSO 
    1236; ======== 
    1337; 
    1438; :ref:`tropflux_profile.sh` 
     39; :ref:`tropflux_init.pro` 
     40; :ref:`cm_tropflux.pro` 
     41; 
     42; :func:`x_site_location` 
     43; :func:`y_site_location` 
     44; 
     45; :ref:`read_variables_v2.pro` 
     46; :ref:`statistics_3var_v1.pro` 
    1547; 
    1648; EXAMPLES 
     
    2052; 
    2153;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     54;  IDL> date1=19890101L 
     55;  IDL> date2=20091231L 
    2456;  IDL> q2m_validation_scatter_2000_2009_basin, date1, date2 
     57; 
     58; TODO 
     59; ==== 
     60; 
     61; make it work on cratos : pb restore 
     62; 
     63; ++ mooring data in graphviz 
     64; 
     65; coding rules 
     66; 
     67; get rid of spwan 
     68; 
     69; complete description 
     70; 
     71; handle IO error 
    2572; 
    2673; EVOLUTIONS 
     
    2976; $Id$ 
    3077; 
     78; - fplod 20110420T101050Z aedon.locean-ipsl.upmc.fr (Darwin) 
     79; 
     80;   * remove hard coding path 
     81;   * add graphviz 
     82;   * externalize functions 
     83; 
    3184; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3285; 
     
    3689 
    3790pro q2m_validation_scatter_2000_2009_basin, date1, date2 
    38 @common 
    39  
     91@cm_general 
     92@cm_tropflux 
    4093reinitplt, /z,/invert 
    4194key_portrait = 1 
    4295 
    4396openps, FILENAME = 'idl.ps' 
    44 ;; Before running this program, you have to compile the following subrutines 
    45 ;;   1.  .r read_era_total 
    46 ;;   2.  .r read_variables_v2 
    47 ;;   3.  .r read_era_box 
    4897 
    4998;; Give the location of mooring for validation of basic meteorological variables 
    50  
    51  
    5299sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 
    53100           '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ 
     
    101148close,/all 
    102149 
    103 fi_q2m_erai='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_erai_'+ocean+'.txt' 
     150fi_q2m_erai=tropflux_id_env+'q2m_2000_2009_erai_'+ocean+'.txt' 
    104151openw,1,fi_q2m_erai 
    105 fi_q2m_trop='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_trop_'+ocean+'.txt' 
     152fi_q2m_trop=tropflux_id_env+'q2m_2000_2009_trop_'+ocean+'.txt' 
    106153openw,2,fi_q2m_trop 
    107 fi_q2m_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_oaflx_'+ocean+'.txt' 
     154fi_q2m_oaflx=tropflux_id_env+'q2m_2000_2009_oaflx_'+ocean+'.txt' 
    108155openw,3,fi_q2m_oaflx 
    109 fi_q2m_ncep='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep_'+ocean+'.txt' 
     156fi_q2m_ncep=tropflux_id_env+'q2m_2000_2009_ncep_'+ocean+'.txt' 
    110157openw,4,fi_q2m_ncep 
    111 fi_q2m_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep1_'+ocean+'.txt' 
     158fi_q2m_ncep1=tropflux_id_env+'q2m_2000_2009_ncep1_'+ocean+'.txt' 
    112159openw,5,fi_q2m_ncep1 
    113160 
     
    121168;; first reading the whole ERAI uncorrected and corrected data 
    122169 
    123 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_q2m_19890101_20091231_oafluxgrid.nc' 
     170file=tropflux_id_env+'erai_q2m_19890101_20091231_oafluxgrid.nc' 
    124171initncdf, file 
    125172unc=read_ncdf('q2m',date1,date2,file=file,/nostr) 
    126173help, unc 
    127174 
    128 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_q2m_19890101_20091231_v20.nc' 
    129 ;initncdf, file 
    130 ;cor=read_ncdf('q2m',date1,date2,file=file,/nostr) 
    131 ;help, cor 
    132  
    133 ;file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
    134 ;initncdf, file 
    135 ;oaf=read_ncdf("sphum", date1, date2, file=file,/nostr) 
    136 ;help, oaf 
    137  
    138 ;fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/sphum_ncep2_oafluxgrid_19890101_20091231.nc' 
    139 ;initncdf, fi 
    140 ;nce=read_ncdf("shum", date1-1, date2, file=fi,/nostr) 
    141 ;nce=nce*1000 
    142 ;help, nce 
    143  
    144 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/q2m_ncep1_19890101_20091231.nc' 
    145 ;initncdf, file 
    146 ;nce1=read_ncdf("q2m", date1, date2, file=file,/nostr) 
    147 ;nce1=nce1*1000 
    148 ;help, nce1 
    149  
    150175;save, unc, cor, oaf, nce, nce1, filename="q2m_era_trop_oaf_nce_nce1_2000_2009_global.idl" 
    151176restore, file="/Users/pkb/work/MY_SAXO/q2m_era_trop_oaf_nce_nce1_2000_2009_global.idl" 
     
    153178 
    154179nn=n_elements(sitelist) 
    155 date1=date1 
    156 date2=date2 
    157180for n=0, nn-1 do begin 
    158181 
     
    222245close,/all 
    223246 
    224 fi_q2m_erai='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_erai_'+ocean+'.txt' 
     247fi_q2m_erai=tropflux_id_env+'q2m_2000_2009_erai_'+ocean+'.txt' 
    225248res=read_ascii(fi_q2m_erai,data_start=1) 
    226249ff=res.field1 
     
    248271oplot, mean_tao, yfit, color=250, thick=2 
    249272 
    250 fi_q2m_trop='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_trop_'+ocean+'.txt' 
     273fi_q2m_trop=tropflux_id_env+'q2m_2000_2009_trop_'+ocean+'.txt' 
    251274res=read_ascii(fi_q2m_trop,data_start=1) 
    252275ff=res.field1 
     
    275298oplot, mean_tao, yfit, color=250, thick=2 
    276299 
    277 fi_q2m_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_oaflx_'+ocean+'.txt' 
     300fi_q2m_oaflx=tropflux_id_env+'q2m_2000_2009_oaflx_'+ocean+'.txt' 
    278301res=read_ascii(fi_q2m_oaflx,data_start=1) 
    279302ff=res.field1 
     
    303326 
    304327 
    305 fi_q2m_ncep='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep_'+ocean+'.txt' 
     328fi_q2m_ncep=tropflux_id_env+'q2m_2000_2009_ncep_'+ocean+'.txt' 
    306329res=read_ascii(fi_q2m_ncep,data_start=1) 
    307330ff=res.field1 
     
    330353oplot, mean_tao, yfit, color=250, thick=2 
    331354 
    332 fi_q2m_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep1_'+ocean+'.txt' 
     355fi_q2m_ncep1=tropflux_id_env+'q2m_2000_2009_ncep1_'+ocean+'.txt' 
    333356res=read_ascii(fi_q2m_ncep1,data_start=1) 
    334357ff=res.field1 
     
    359382closeps 
    360383 
    361 fig='q2m_validation_scatter_2000_2009_'+ocean+'.ps' 
    362 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    363 spawn, 'gv '+cpsdir+fig 
    364 return 
     384fig=tropflux_od_env+'q2m_validation_scatter_2000_2009_'+ocean+'.ps' 
     385spawn, 'mv '+psdir+'idl.ps '+fig 
     386spawn, 'gv '+fig 
    365387end 
    366 function x_site_location, site 
    367     n1=strpos(site, 's') 
    368 if (n1 gt -1) then begin 
    369     ns=-1. 
    370     x=strmid(site, 0, n1) 
    371     x=float(x)*ns 
    372 endif else begin 
    373     n1=strpos(site, 'n') 
    374     x=strmid(site, 0, n1) 
    375     ny=1. 
    376     x=float(x)*ny 
    377 endelse 
    378 return, float(x) 
    379 end 
    380 function y_site_location, site 
    381     n1=strpos(site, 'e') 
    382 if (n1 gt -1) then begin 
    383     n=strpos(site, 's') 
    384     if (n gt -1) then begin 
    385         y=strmid(site, n+1, n1-n-1) 
    386     endif else begin 
    387         n=strpos(site, 'n') 
    388         y=strmid(site, n+1, n1-n-1) 
    389     endelse 
    390  
    391 endif else begin 
    392     n1=strpos(site, 'w') 
    393     n=strpos(site, 's') 
    394     if (n gt -1) then begin 
    395         y=strmid(site, n+1, n1-n-1) 
    396         y=180+(180-float(y)) 
    397     endif else begin 
    398         n=strpos(site, 'n') 
    399         y=strmid(site, n+1, n1-n-1) 
    400         y=180+(180-float(y)) 
    401    endelse 
    402 endelse 
    403 return,float(y) 
    404 end 
  • trunk/src/paper01/fig7/sst_validation_scatter_2000_2009_basin.pro

    r43 r46  
    11;+ 
    2 ; .. _sst_validation_scatter_2000_2009_basin.pro 
     2; .. _sst_validation_scatter_2000_2009_basin.pro: 
    33; 
    44; ========================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph sst_validation_scatter_2000_2009_basin { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       sst_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/sst_2000_2009_erai_*.txt"]; 
     18;       sst_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_trop_*.txt"]; 
     19;       sst_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_oaflx_*.txt"]; 
     20;       sst_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_ncep_*.txt"]; 
     21;       sst_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_ncep1_*.txt"]; 
     22;       sst_tmi [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_2000_2009_tmi_*.txt"]; 
     23; 
     24;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/sst_validation_scatter_2000_2009_basin.ps"]; 
     25; 
     26;       sst_validation_scatter_2000_2009_basin [shape=box, 
     27;       fontname=Courier, 
     28;       color=blue, 
     29;       URL="http://forge.ipsl.jussieu.fr/tropflux/brosster/trunk/src/paper01/fig7/sst_validation_scatter_2000_2009_basin.pro", 
     30;       label="${TROPFLUX}/src/paper01/fig7/sst_validation_scatter_2000_2009_basin.pro"]; 
     31; 
     32;       {sst_erai} -> {sst_validation_scatter_2000_2009_basin} -> {sst_tropflux sst_oaflux sst_ncep sst_ncep1 figure} 
     33;    } 
     34; 
    1135; SEE ALSO 
    1236; ======== 
    1337; 
    1438; :ref:`tropflux_profile.sh` 
     39; :ref:`tropflux_init.pro` 
     40; :ref:`cm_tropflux.pro` 
     41; 
     42; :func:`x_site_location` 
     43; :func:`y_site_location` 
     44; 
     45; :ref:`read_variables_v2.pro` 
     46; :ref:`statistics_3var_v1.pro` 
    1547; 
    1648; EXAMPLES 
     
    2052; 
    2153;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     54;  IDL> date1=19890101L 
     55;  IDL> date2=20091231L 
    2456;  IDL> sst_validation_scatter_2000_2009_basin, date1, date2 
    2557; 
     58; TODO 
     59; ==== 
     60; 
     61; make it work on cratos : pb restore 
     62; 
     63; ++ mooring data in graphviz 
     64; 
     65; coding rules 
     66; 
     67; get rid of spwan 
     68; 
     69; complete description 
     70; 
     71; handle IO error 
    2672; 
    2773; EVOLUTIONS 
     
    3076; $Id$ 
    3177; 
     78; - fplod 20110420T101535Z aedon.locean-ipsl.upmc.fr (Darwin) 
     79; 
     80;   * remove hard coding path 
     81;   * add graphviz 
     82;   * externalize functions 
     83; 
    3284; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3385; 
     
    3587; 
    3688;- 
    37 pro sst_validation_scatter_2000_2009_basin,date1,date2 
    38 @common 
    39  
     89pro sst_validation_scatter_2000_2009_basin, date1, date2 
     90@cm_general 
     91@cm_tropflux 
    4092reinitplt, /z,/invert 
    4193key_portrait = 1 
    4294 
    4395openps, FILENAME = 'idl.ps' 
    44 ;; Before running this program, you have to compile the following subrutines 
    45 ;;   1.  .r read_era_total 
    46 ;;   2.  .r read_variables_v2 
    47 ;;   3.  .r read_era_box 
    4896 
    4997;; Give the location of mooring for validation of basic meteorological variables 
    50  
    51  
    5298sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 
    5399           '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ 
     
    80126close,/all 
    81127 
    82 fi_sst_erai='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_erai_'+ocean+'.txt' 
     128fi_sst_erai=tropflux_id_env+'sst_2000_2009_erai_'+ocean+'.txt' 
    83129openw,1,fi_sst_erai 
    84 fi_sst_trop='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_trop_'+ocean+'.txt' 
     130fi_sst_trop=tropflux_id_env+'sst_2000_2009_trop_'+ocean+'.txt' 
    85131openw,2,fi_sst_trop 
    86 fi_sst_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_oaflx_'+ocean+'.txt' 
     132fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_oaflx_'+ocean+'.txt' 
    87133openw,3,fi_sst_oaflx 
    88 fi_sst_ncep='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep_'+ocean+'.txt' 
     134fi_sst_ncep=tropflux_id_env+'sst_2000_2009_ncep_'+ocean+'.txt' 
    89135openw,4,fi_sst_ncep 
    90 fi_sst_tmi='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_tmi_'+ocean+'.txt' 
     136fi_sst_tmi=tropflux_id_env+'sst_2000_2009_tmi_'+ocean+'.txt' 
    91137openw,5,fi_sst_tmi 
    92 fi_sst_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep1_'+ocean+'.txt' 
     138fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_ncep1_'+ocean+'.txt' 
    93139openw,6,fi_sst_ncep1 
    94140 
     
    104150;; first reading the whole ERAI uncorrected and corrected data 
    105151 
    106 ;file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_sst_19890101_20091231_oafluxgrid.nc' 
    107 ;initncdf, file 
    108 ;unc=read_ncdf('sst',date1,date2,file=file,/nostr) & unc=unc-273.15 
    109 ;help, unc 
    110  
    111 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_sst_19890101_20091231_v20.nc' 
    112 ;initncdf, file 
    113 ;cor=read_ncdf('sst',date1,date2,file=file,/nostr) & cor=cor-273.15 
    114 ;help, cor 
    115  
    116 ;file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
    117 ;initncdf, file 
    118 ;oaf=read_ncdf("sst", date1, date2, file=file,/nostr) 
    119 ;help, oaf 
    120  
    121 ;fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/sst_ncep2_oafluxgrid_19890101_20091231.nc' 
    122 ;initncdf, fi 
    123 ;nce=read_ncdf("sst", date1-1, date2, file=fi,/nostr) 
    124 ;nce=nce-273.15 
    125 ;help, nce 
    126  
    127 ;fi='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/tmi_OI_oafluxgrid_30N30S.nc' 
    128 ;initncdf, fi 
    129 ;sst_tmi=read_ncdf("sst", date1, date2, file=fi,/nostr) 
    130 ;help, sst_tmi 
    131  
    132 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/sst_ncep1_19890101_20091231.nc' 
    133 ;initncdf, file 
    134 ;nce1=read_ncdf("sst", date1, date2, file=file,/nostr) 
    135 ;nce1=nce1-273.15 
    136 ;help, nce1 
    137  
    138152;save, unc, cor, oaf, nce, sst_tmi, nce1, filename="sst_era_trop_oaf_nce_tmi_2000_2009_global.idl" 
    139153;; full data from 2000-2009 period are read first, and hence the above lines are commented 
     
    143157;; data from 20000101, 20090931 
    144158nn=n_elements(sitelist) 
    145 date1=date1 
    146 date2=date2 
    147159for n=0, nn-1 do begin 
    148160 
     
    216228close,/all 
    217229 
    218 fi_sst_erai='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_erai_'+ocean+'.txt' 
     230fi_sst_erai=tropflux_id_env+'sst_2000_2009_erai_'+ocean+'.txt' 
    219231res=read_ascii(fi_sst_erai,data_start=1) 
    220232ff=res.field1 
     
    242254oplot, mean_tao, yfit, color=250, thick=2 
    243255 
    244 fi_sst_trop='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_trop_'+ocean+'.txt' 
     256fi_sst_trop=tropflux_id_env+'sst_2000_2009_trop_'+ocean+'.txt' 
    245257res=read_ascii(fi_sst_trop,data_start=1) 
    246258ff=res.field1 
     
    269281oplot, mean_tao, yfit, color=250, thick=2 
    270282 
    271 fi_sst_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_oaflx_'+ocean+'.txt' 
     283fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_oaflx_'+ocean+'.txt' 
    272284res=read_ascii(fi_sst_oaflx,data_start=1) 
    273285ff=res.field1 
     
    298310 
    299311 
    300 fi_sst_ncep='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep_'+ocean+'.txt' 
     312fi_sst_ncep=tropflux_id_env+'sst_2000_2009_ncep_'+ocean+'.txt' 
    301313res=read_ascii(fi_sst_ncep,data_start=1) 
    302314ff=res.field1 
     
    326338 
    327339 
    328 fi_sst_tmi='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_tmi_'+ocean+'.txt' 
     340fi_sst_tmi=tropflux_id_env+'sst_2000_2009_tmi_'+ocean+'.txt' 
    329341res=read_ascii(fi_sst_tmi,data_start=1) 
    330342ff=res.field1 
     
    353365oplot, mean_tao, yfit, color=250, thick=2 
    354366 
    355 fi_sst_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep1_'+ocean+'.txt' 
     367fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_ncep1_'+ocean+'.txt' 
    356368res=read_ascii(fi_sst_ncep1,data_start=1) 
    357369ff=res.field1 
     
    382394closeps 
    383395 
    384 fig='sst_validation_scatter_2000_2009_'+ocean+'.ps' 
    385 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    386 spawn, 'gv '+cpsdir+fig 
    387 return 
     396fig=tropflux_od_env+'sst_validation_scatter_2000_2009_'+ocean+'.ps' 
     397spawn, 'mv '+psdir+'idl.ps '+fig 
     398spawn, 'gv '+fig 
    388399end 
    389 function x_site_location, site 
    390     n1=strpos(site, 's') 
    391 if (n1 gt -1) then begin 
    392     ns=-1. 
    393     x=strmid(site, 0, n1) 
    394     x=float(x)*ns 
    395 endif else begin 
    396     n1=strpos(site, 'n') 
    397     x=strmid(site, 0, n1) 
    398     ny=1. 
    399     x=float(x)*ny 
    400 endelse 
    401 return, float(x) 
    402 end 
    403 function y_site_location, site 
    404     n1=strpos(site, 'e') 
    405 if (n1 gt -1) then begin 
    406     n=strpos(site, 's') 
    407     if (n gt -1) then begin 
    408         y=strmid(site, n+1, n1-n-1) 
    409     endif else begin 
    410         n=strpos(site, 'n') 
    411         y=strmid(site, n+1, n1-n-1) 
    412     endelse 
    413  
    414 endif else begin 
    415     n1=strpos(site, 'w') 
    416     n=strpos(site, 's') 
    417     if (n gt -1) then begin 
    418         y=strmid(site, n+1, n1-n-1) 
    419         y=180+(180-float(y)) 
    420     endif else begin 
    421         n=strpos(site, 'n') 
    422         y=strmid(site, n+1, n1-n-1) 
    423         y=180+(180-float(y)) 
    424    endelse 
    425 endelse 
    426 return,float(y) 
    427 end 
  • trunk/src/paper01/fig7/ws_validation_scatter_2000_2009_basin.pro

    r43 r46  
    11;+ 
    22; 
    3 ; .. _ws_validation_scatter_2000_2009_basin.pro 
     3; .. _ws_validation_scatter_2000_2009_basin.pro: 
    44; 
    55; ========================================= 
     
    1010; =========== 
    1111; 
     12; .. graphviz:: 
     13; 
     14;    digraph ws_validation_scatter_2000_2009_basin { 
     15;       graph [ 
     16;       rankdir="LR", 
     17;       ] 
     18;       ws_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/ws_2000_2009_erai_*.txt"]; 
     19;       ws_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_trop_*.txt"]; 
     20;       ws_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_oaflx_*.txt"]; 
     21;       ws_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_ncep_*.txt"]; 
     22;       ws_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_ncep1_*.txt"]; 
     23;       ws_tmi [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_2000_2009_tmi_*.txt"]; 
     24; 
     25;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/ws_validation_scatter_2000_2009_basin.ps"]; 
     26; 
     27;       ws_validation_scatter_2000_2009_basin [shape=box, 
     28;       fontname=Courier, 
     29;       color=blue, 
     30;       URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/paper01/fig7/ws_validation_scatter_2000_2009_basin.pro", 
     31;       label="${TROPFLUX}/src/paper01/fig7/ws_validation_scatter_2000_2009_basin.pro"]; 
     32; 
     33;       {ws_erai} -> {ws_validation_scatter_2000_2009_basin} -> {ws_tropflux ws_oaflux ws_ncep ws_ncep1 ws_tmi figure} 
     34;    } 
     35; 
    1236; SEE ALSO 
    1337; ======== 
    1438; 
    1539; :ref:`tropflux_profile.sh` 
     40; :ref:`tropflux_init.pro` 
     41; :ref:`cm_tropflux.pro` 
     42; 
     43; :func:`x_site_location` 
     44; :func:`y_site_location` 
     45; 
     46; :ref:`read_variables_v2.pro` 
     47; :ref:`statistics_3var_v1.pro` 
    1648; 
    1749; EXAMPLES 
     
    2153; 
    2254;  IDL> @tropflux_init 
    23 ;  IDL> date1=++ 
    24 ;  IDL> date2=++ 
     55;  IDL> date1=19890101L 
     56;  IDL> date2=20091231L 
    2557;  IDL> ws_validation_scatter_2000_2009_basin, date1, date2 
     58; 
     59; TODO 
     60; ==== 
     61; 
     62; make it work on cratos : pb restore, missing data 
     63; 
     64; ++ mooring data in graphviz 
     65; 
     66; coding rules 
     67; 
     68; get rid of spwan 
     69; 
     70; complete description 
     71; 
     72; handle IO error 
    2673; 
    2774; EVOLUTIONS 
     
    3683;- 
    3784pro ws_validation_scatter_2000_2009_basin,date1,date2 
    38 @common 
    39  
     85@cm_general 
     86@cm_tropflux 
    4087reinitplt, /z,/invert 
    4188key_portrait = 1 
    4289 
    4390openps, FILENAME = 'idl.ps' 
    44 ;; Before running this program, you have to compile the following subrutines 
    45 ;;   1.  .r read_era_total 
    46 ;;   2.  .r read_variables_v2 
    47 ;;   3.  .r read_era_box 
    48  
    4991;; Give the location of mooring for validation of basic meteorological variables 
    5092 
     
    101143close,/all 
    102144 
    103 fi_ws_erai='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_'+ocean+'.txt' 
     145fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_'+ocean+'.txt' 
    104146openw,1,fi_ws_erai 
    105 fi_ws_trop='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_'+ocean+'.txt' 
     147fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_'+ocean+'.txt' 
    106148openw,2,fi_ws_trop 
    107 fi_ws_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_'+ocean+'.txt' 
     149fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_'+ocean+'.txt' 
    108150openw,3,fi_ws_oaflx 
    109 fi_ws_ncep='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_'+ocean+'.txt' 
     151fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_'+ocean+'.txt' 
    110152openw,4,fi_ws_ncep 
    111 fi_ws_tmi='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_'+ocean+'.txt' 
     153fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_'+ocean+'.txt' 
    112154openw,5,fi_ws_tmi 
    113 fi_ws_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_'+ocean+'.txt' 
     155fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_'+ocean+'.txt' 
    114156openw,6,fi_ws_ncep1 
    115157 
     
    125167;; date1=20000101 & date2=20090931 
    126168 
    127 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_ws_19890101_20091231_oafluxgrid.nc' 
     169file=tropflux_id_env+'erai_ws_19890101_20091231_oafluxgrid.nc' 
    128170initncdf, file 
    129171u=read_ncdf('u10',date1,date2,file=file,/nostr) 
     
    132174;help, unc 
    133175 
    134 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_ws_19890101_20091231_v20.nc' 
    135 ;initncdf, file 
    136 ;cor=read_ncdf('ws',date1,date2,file=file,/nostr) 
    137 ;help, cor 
    138  
    139 ;file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc' 
    140 ;initncdf, file 
    141 ;oaf=read_ncdf("wind", date1, date2, file=file,/nostr) 
    142 ;help, oaf 
    143  
    144 ;fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/uwind_ncep2_oafluxgrid_19890101_20091231.nc' 
    145 ;initncdf, fi 
    146 ;u=read_ncdf("u", date1-1, date2, file=fi,/nostr) 
    147 ;fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/vwind_ncep2_oafluxgrid_19890101_20091231.nc' 
    148 ;initncdf, fi 
    149 ;v=read_ncdf("v", date1-1, date2, file=fi,/nostr) 
    150 ;nce=sqrt(u*u+v*v) 
    151 ;help, nce 
    152  
    153 ;dir='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/' 
    154 ;fi=dir+'zonal_wind_speed_oafluxgrid_30N30S.nc' 
    155 ;initncdf, fi 
    156 ;u=read_ncdf("u", date1, date2, file=fi,/nostr) 
    157 ;fi=dir+'meridional_wind_speed_oafluxgrid_30N30S.nc' 
    158 ;initncdf, fi 
    159 ;v=read_ncdf("v", date1, date2, file=fi,/nostr) 
    160 ;ws_tmi=sqrt(u*u+v*v) 
    161 ;help, ws_tmi 
    162  
    163 ;file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/wind_ncep1_19890101_20091231.nc' 
    164 ;initncdf, file 
    165 ;u=read_ncdf("u", date1, date2, file=file,/nostr) 
    166 ;v=read_ncdf("v", date1, date2, file=file,/nostr) 
    167 ;nce1=sqrt(u*u+v*v) 
    168 ;help, nce1 
    169  
    170176;save, unc, cor, oaf, nce, ws_tmi, nce1, filename="ws_era_trop_oaf_nce_qscat_2000_2009_global.idl" 
    171177restore, file="/Users/pkb/work/MY_SAXO/ws_era_trop_oaf_nce_qscat_2000_2009_global.idl" 
     
    173179 
    174180nn=n_elements(sitelist) 
    175 date1=date1 
    176 date2=date2 
    177181for n=0, nn-1 do begin 
    178182 
     
    240244endfor 
    241245close,/all 
    242 fi_ws_erai='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_'+ocean+'.txt' 
     246fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_'+ocean+'.txt' 
    243247res=read_ascii(fi_ws_erai,data_start=1) 
    244248ff=res.field1 
     
    266270oplot, mean_tao, yfit, color=250, thick=2 
    267271 
    268 fi_ws_trop='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_'+ocean+'.txt' 
     272fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_'+ocean+'.txt' 
    269273res=read_ascii(fi_ws_trop,data_start=1) 
    270274ff=res.field1 
     
    293297oplot, mean_tao, yfit, color=250, thick=2 
    294298 
    295 fi_ws_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_'+ocean+'.txt' 
     299fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_'+ocean+'.txt' 
    296300res=read_ascii(fi_ws_oaflx,data_start=1) 
    297301ff=res.field1 
     
    322326 
    323327 
    324 fi_ws_ncep='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_'+ocean+'.txt' 
     328fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_'+ocean+'.txt' 
    325329res=read_ascii(fi_ws_ncep,data_start=1) 
    326330ff=res.field1 
     
    349353oplot, mean_tao, yfit, color=250, thick=2 
    350354 
    351 fi_ws_tmi='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_'+ocean+'.txt' 
     355fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_'+ocean+'.txt' 
    352356res=read_ascii(fi_ws_tmi,data_start=1) 
    353357ff=res.field1 
     
    377381 
    378382 
    379 fi_ws_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_'+ocean+'.txt' 
     383fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_'+ocean+'.txt' 
    380384res=read_ascii(fi_ws_ncep1,data_start=1) 
    381385ff=res.field1 
     
    406410closeps 
    407411 
    408 fig='ws_validation_scatter_2000_2009_'+ocean+'.ps' 
    409 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    410 spawn, 'gv '+cpsdir+fig 
    411 return 
     412fig=tropflux_od_env+'ws_validation_scatter_2000_2009_'+ocean+'.ps' 
     413spawn, 'mv '+psdir+'idl.ps '+fig 
     414spawn, 'gv '+fig 
    412415end 
    413 function x_site_location, site 
    414     n1=strpos(site, 's') 
    415 if (n1 gt -1) then begin 
    416     ns=-1. 
    417     x=strmid(site, 0, n1) 
    418     x=float(x)*ns 
    419 endif else begin 
    420     n1=strpos(site, 'n') 
    421     x=strmid(site, 0, n1) 
    422     ny=1. 
    423     x=float(x)*ny 
    424 endelse 
    425 return, float(x) 
    426 end 
    427 function y_site_location, site 
    428     n1=strpos(site, 'e') 
    429 if (n1 gt -1) then begin 
    430     n=strpos(site, 's') 
    431     if (n gt -1) then begin 
    432         y=strmid(site, n+1, n1-n-1) 
    433     endif else begin 
    434         n=strpos(site, 'n') 
    435         y=strmid(site, n+1, n1-n-1) 
    436     endelse 
    437  
    438 endif else begin 
    439     n1=strpos(site, 'w') 
    440     n=strpos(site, 's') 
    441     if (n gt -1) then begin 
    442         y=strmid(site, n+1, n1-n-1) 
    443         y=180+(180-float(y)) 
    444     endif else begin 
    445         n=strpos(site, 'n') 
    446         y=strmid(site, n+1, n1-n-1) 
    447         y=180+(180-float(y)) 
    448    endelse 
    449 endelse 
    450 return,float(y) 
    451 end 
  • trunk/src/paper01/fig8/lhf_validation_scatter_2000_2009.pro

    r43 r46  
    11;+ 
    2 ; .. _lhf_validation_scatter_2000_2009.pro 
     2; .. _lhf_validation_scatter_2000_2009.pro: 
    33; 
    44; ==================================== 
     
    66; ==================================== 
    77; 
    8 ;  DESCRIPTION 
     8; DESCRIPTION 
    99; =========== 
     10; 
     11; .. graphviz:: 
     12; 
     13;    digraph lhf_validation_scatter_2000_2009 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       lhf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_2000_2009_erai_v52.txt"]; 
     18;       lhf_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lhf_2000_2009_trop_v52.txt"]; 
     19;       lhf_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lhf_2000_2009_oaflx_v52.txt"]; 
     20;       lhf_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lhf_2000_2009_ncep_v52.txt"]; 
     21;       lhf_ncep2_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     22;       lhf_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lhf_2000_2009_ncep1_v52.txt"]; 
     23;       lhf_ncep1_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     24;       lhf_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_lhf_19890101_20091231_oafluxgrid.nc"]; 
     25;       lhf_tropflux2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     26;       lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lhf_oafluxgrid_1985_2009.nc"]; 
     27; 
     28;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lhf_validation_scatter_2000_2009.ps"]; 
     29; 
     30;       lhf_validation_scatter_2000_2009 [shape=box, 
     31;       fontname=Courier, 
     32;       color=blue, 
     33;       URL="http://forge.ipsl.jussieu.fr/tropflux/brolhfer/trunk/src/paper01/fig7/lhf_validation_scatter_2000_2009.pro", 
     34;       label="${TROPFLUX}/src/paper01/fig7/lhf_validation_scatter_2000_2009.pro"]; 
     35; 
     36;       {lhf_erai lhf_ncep2_oafluxgrid lhf_ncep1_2 lhf_erai_oafluxgrid lhf_tropflux2 lhf_oafluxgrid} -> {lhf_validation_scatter_2000_2009} -> {lhf_tropflux lhf_oaflux lhf_ncep lhf_ncep1 figure} 
     37;    } 
    1038; 
    1139; SEE ALSO 
     
    1341; 
    1442; :ref:`tropflux_profile.sh` 
     43; :ref:`tropflux_init.pro` 
     44; :ref:`cm_tropflux.pro` 
     45; 
     46; :func:`x_site_location` 
     47; :func:`y_site_location` 
     48; 
     49; :ref:`read_variables_v2.pro` 
     50; :ref:`statistics_3var_v1.pro` 
    1551; 
    1652; EXAMPLES 
     
    2056; 
    2157;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     58;  IDL> date1=19890101L 
     59;  IDL> date2=20091231L 
    2460;  IDL> lhf_validation_scatter_2000_2009, date1, date2 
     61; 
     62; TODO 
     63; ==== 
     64; 
     65; make it work on cratos : missing data 
     66; 
     67; ++ mooring data in graphviz 
     68; 
     69; coding rules 
     70; 
     71; get rid of spwan 
     72; 
     73; complete description 
     74; 
     75; handle IO error 
    2576; 
    2677; EVOLUTIONS 
     
    2980; $Id$ 
    3081; 
     82; - fplod 20110420T102937Z aedon.locean-ipsl.upmc.fr (Darwin) 
     83; 
     84;   * remove hard coding path 
     85;   * add graphviz 
     86;   * externalize functions 
     87; 
    3188; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3289; 
     
    3592;- 
    3693pro lhf_validation_scatter_2000_2009,date1,date2 
    37 @common 
    38  
     94@cm_general 
     95@cm_tropflux 
    3996reinitplt, /z,/invert 
    4097key_portrait = 1 
    4198 
    4299openps, FILENAME = 'idl.ps' 
    43 ;; Before running this program, you have to compile the following subrutines 
    44  
    45 ;;  1.    read_variables_v2 
    46 ;;  2.    statistics_3var_v1 
    47100 
    48101;; evaluation is done for 20000101 - 20091231 period 
     
    66119close,/all 
    67120 
    68 fi_lhf_erai='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_erai_v52.txt' 
     121fi_lhf_erai=tropflux_id_env+'lhf_2000_2009_erai_v52.txt' 
    69122openw,1,fi_lhf_erai 
    70 fi_lhf_trop='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_trop_v52.txt' 
     123fi_lhf_trop=tropflux_id_env+'lhf_2000_2009_trop_v52.txt' 
    71124openw,2,fi_lhf_trop 
    72 fi_lhf_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_oaflx_v52.txt' 
     125fi_lhf_oaflx=tropflux_id_env+'lhf_2000_2009_oaflx_v52.txt' 
    73126openw,3,fi_lhf_oaflx 
    74 fi_lhf_ncep='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_ncep_v52.txt' 
     127fi_lhf_ncep=tropflux_id_env+'lhf_2000_2009_ncep_v52.txt' 
    75128openw,4,fi_lhf_ncep 
    76 fi_lhf_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_ncep1_v52.txt' 
     129fi_lhf_ncep1=tropflux_id_env+'lhf_2000_2009_ncep1_v52.txt' 
    77130openw,5,fi_lhf_ncep1 
    78131 
     
    85138;; first reading the whole ERAI uncorrected and corrected data 
    86139 
    87 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_lhf_19890101_20091231_oafluxgrid.nc' 
     140file=tropflux_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' 
    88141initncdf, file 
    89142unc=read_ncdf('lhf',date1,date2,file=file,/nostr) 
    90143help, unc 
    91144 
    92 file="/Users/pkb/data/TropFlux/TropFlux_19890101_20091231.nc" 
     145file=tropflux_id_env+"TropFlux_19890101_20091231.nc" 
    93146initncdf, file 
    94147cor=read_ncdf('lhf',date1,date2,file=file,/nostr) 
     
    96149help, cor 
    97150 
    98 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lhf_oafluxgrid_1985_2009.nc' 
     151file=tropflux_id_env+'lhf_oafluxgrid_1985_2009.nc' 
    99152initncdf, file 
    100153oaf=read_ncdf("lhf", date1, date2, file=file,/nostr) 
    101154help, oaf 
    102155 
    103 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
     156fi=tropflux_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' 
    104157initncdf, fi 
    105158nce=read_ncdf("lhf", date1, date2, file=fi,/nostr) 
    106159help, nce 
    107160 
    108 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     161file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    109162initncdf, file 
    110163nce1=-1*read_ncdf("lhf", date1, date2, file=file,/nostr) 
     
    113166nsmooth=1. 
    114167nn=n_elements(sitelist) 
    115 date1=date1 
    116 date2=date2 
    117168for n=0, nn-1 do begin 
    118169 
     
    177228close,/all 
    178229 
    179 fi_lhf_erai='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_erai_v52.txt' 
     230fi_lhf_erai=tropflux_id_env+'lhf_2000_2009_erai_v52.txt' 
    180231res=read_ascii(fi_lhf_erai,data_start=1) 
    181232ff=res.field1 
     
    208259oplot, [20,200], [20,200] 
    209260 
    210 fi_lhf_trop='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_trop_v52.txt' 
     261fi_lhf_trop=tropflux_id_env+'lhf_2000_2009_trop_v52.txt' 
    211262res=read_ascii(fi_lhf_trop,data_start=1) 
    212263ff=res.field1 
     
    240291 
    241292 
    242 fi_lhf_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_oaflx_v52.txt' 
     293fi_lhf_oaflx=tropflux_id_env+'lhf_2000_2009_oaflx_v52.txt' 
    243294res=read_ascii(fi_lhf_oaflx,data_start=1) 
    244295ff=res.field1 
     
    271322oplot, [20,200], [20,200] 
    272323 
    273 fi_lhf_ncep='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_ncep_v52.txt' 
     324fi_lhf_ncep=tropflux_id_env+'lhf_2000_2009_ncep_v52.txt' 
    274325res=read_ascii(fi_lhf_ncep,data_start=1) 
    275326ff=res.field1 
     
    302353oplot, [20,200], [20,200] 
    303354 
    304 fi_lhf_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/lhf_2000_2009_ncep1_v52.txt' 
     355fi_lhf_ncep1=tropflux_id_env+'lhf_2000_2009_ncep1_v52.txt' 
    305356res=read_ascii(fi_lhf_ncep1,data_start=1) 
    306357ff=res.field1 
     
    335386closeps 
    336387 
    337 fig='lhf_validation_scatter_2000_2009.ps' 
    338 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    339 spawn, 'gv '+cpsdir+fig 
    340 return 
     388fig=tropflux_od_env+'lhf_validation_scatter_2000_2009.ps' 
     389spawn, 'mv '+psdir+'idl.ps '+fig 
     390spawn, 'gv '+fig 
    341391end 
    342 function x_site_location, site 
    343     n1=strpos(site, 's') 
    344 if (n1 gt -1) then begin 
    345     ns=-1. 
    346     x=strmid(site, 0, n1) 
    347     x=float(x)*ns 
    348 endif else begin 
    349     n1=strpos(site, 'n') 
    350     x=strmid(site, 0, n1) 
    351     ny=1. 
    352     x=float(x)*ny 
    353 endelse 
    354 return, float(x) 
    355 end 
    356 function y_site_location, site 
    357     n1=strpos(site, 'e') 
    358 if (n1 gt -1) then begin 
    359     n=strpos(site, 's') 
    360     if (n gt -1) then begin 
    361         y=strmid(site, n+1, n1-n-1) 
    362     endif else begin 
    363         n=strpos(site, 'n') 
    364         y=strmid(site, n+1, n1-n-1) 
    365     endelse 
    366  
    367 endif else begin 
    368     n1=strpos(site, 'w') 
    369     n=strpos(site, 's') 
    370     if (n gt -1) then begin 
    371         y=strmid(site, n+1, n1-n-1) 
    372         y=180+(180-float(y)) 
    373     endif else begin 
    374         n=strpos(site, 'n') 
    375         y=strmid(site, n+1, n1-n-1) 
    376         y=180+(180-float(y)) 
    377    endelse 
    378 endelse 
    379 return,float(y) 
    380 end 
  • trunk/src/paper01/fig8/shf_validation_scatter_2000_2009.pro

    r43 r46  
    11;+ 
    2 ; .. _shf_validation_scatter_2000_2009.pro 
     2; .. _shf_validation_scatter_2000_2009.pro: 
    33; 
    44; ==================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph shf_validation_scatter_2000_2009 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       shf_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_2000_2009_erai_v52.txt"]; 
     18;       shf_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/shf_2000_2009_trop_v52.txt"]; 
     19;       shf_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/shf_2000_2009_oaflx_v52.txt"]; 
     20;       shf_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/shf_2000_2009_ncep_v52.txt"]; 
     21;       shf_ncep2_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; 
     22;       shf_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/shf_2000_2009_ncep1_v52.txt"]; 
     23;       shf_ncep1_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     24;       shf_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_shf_19890101_20091231_oafluxgrid.nc"]; 
     25;       shf_tropflux2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     26;       shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/shf_oafluxgrid_1985_2009.nc"]; 
     27; 
     28;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/shf_validation_scatter_2000_2009.ps"]; 
     29; 
     30;       shf_validation_scatter_2000_2009 [shape=box, 
     31;       fontname=Courier, 
     32;       color=blue, 
     33;       URL="http://forge.ipsl.jussieu.fr/tropflux/broshfer/trunk/src/paper01/fig8/shf_validation_scatter_2000_2009.pro", 
     34;       label="${TROPFLUX}/src/paper01/fig8/shf_validation_scatter_2000_2009.pro"]; 
     35; 
     36;       {shf_erai shf_ncep2_oafluxgrid shf_ncep1_2 shf_erai_oafluxgrid shf_tropflux2 shf_oafluxgrid} -> {shf_validation_scatter_2000_2009} -> {shf_tropflux shf_oaflux shf_ncep shf_ncep1 figure} 
     37;    } 
     38; 
    1139; SEE ALSO 
    1240; ======== 
    1341; 
    1442; :ref:`tropflux_profile.sh` 
     43; :ref:`tropflux_init.pro` 
     44; :ref:`cm_tropflux.pro` 
     45; 
     46; :func:`x_site_location` 
     47; :func:`y_site_location` 
     48; 
     49; :ref:`read_variables_v2.pro` 
     50; :ref:`statistics_3var_v1.pro` 
    1551; 
    1652; EXAMPLES 
     
    2056; 
    2157;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     58;  IDL> date1=19890101L 
     59;  IDL> date2=20091231L 
    2460;  IDL> shf_validation_scatter_2000_2009, date1, date2 
     61; 
     62; TODO 
     63; ==== 
     64; 
     65; make it work on cratos : missing data 
     66; 
     67; ++ mooring data in graphviz 
     68; 
     69; coding rules 
     70; 
     71; get rid of spwan 
     72; 
     73; complete description 
     74; 
     75; handle IO error 
    2576; 
    2677; EVOLUTIONS 
     
    2980; $Id$ 
    3081; 
     82; - fplod 20110420T103316Z aedon.locean-ipsl.upmc.fr (Darwin) 
     83; 
     84;   * remove hard coding path 
     85;   * add graphviz 
     86;   * externalize functions 
     87; 
    3188; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3289; 
     
    3491; 
    3592;- 
    36 pro shf_validation_scatter_2000_2009,date1,date2 
    37 @common 
    38  
     93pro shf_validation_scatter_2000_2009, date1, date2 
     94@cm_general 
     95@cm_tropflux 
    3996reinitplt, /z,/invert 
    4097key_portrait = 1 
    4198 
    4299openps, FILENAME = 'idl.ps' 
    43 ;; Before running this program, you have to compile the following subrutines 
    44 ;;   1.  .r read_variables_sh 
    45 ;;   2.  .r statistics_3var_v1 
    46100 
    47101;; evaluation is done for 20000101, 20091231 period 
     
    66120close,/all 
    67121 
    68 fi_shf_erai='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_erai_v52.txt' 
     122fi_shf_erai=tropflux_id_env+'shf_2000_2009_erai_v52.txt' 
    69123openw,1,fi_shf_erai 
    70 fi_shf_trop='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_trop_v52.txt' 
     124fi_shf_trop=tropflux_id_env+'shf_2000_2009_trop_v52.txt' 
    71125openw,2,fi_shf_trop 
    72 fi_shf_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_oaflx_v52.txt' 
     126fi_shf_oaflx=tropflux_id_env+'shf_2000_2009_oaflx_v52.txt' 
    73127openw,3,fi_shf_oaflx 
    74 fi_shf_ncep='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_ncep_v52.txt' 
     128fi_shf_ncep=tropflux_id_env+'shf_2000_2009_ncep_v52.txt' 
    75129openw,4,fi_shf_ncep 
    76130 
    77 fi_shf_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_ncep1_v52.txt' 
     131fi_shf_ncep1=tropflux_id_env+'shf_2000_2009_ncep1_v52.txt' 
    78132openw,5,fi_shf_ncep1 
    79133 
     
    87141;; first reading the whole ERAI uncorrected and corrected data 
    88142 
    89 file='/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_shf_19890101_20091231_oafluxgrid.nc' 
     143file=tropflux_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' 
    90144initncdf, file 
    91145unc=read_ncdf('shf',date1,date2,file=file,/nostr) 
    92146help, unc 
    93147 
    94 file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_19890101_20091231_v51.nc' 
     148file=tropflux_id_env+'TropFlux_19890101_20091231_v51.nc' 
    95149initncdf, file 
    96150cor=read_ncdf('shf',date1,date2,file=file,/nostr) 
     
    98152help, cor 
    99153 
    100 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/shf_oafluxgrid_1985_2009.nc' 
     154file=tropflux_id_env+'shf_oafluxgrid_1985_2009.nc' 
    101155initncdf, file 
    102156oaf=read_ncdf("shf", date1, date2, file=file,/nostr) 
    103157help, oaf 
    104158 
    105 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/shf_ncep2_oafluxgrid_19890101_20091231.nc' 
     159fi=tropflux_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' 
    106160initncdf, fi 
    107161nce=read_ncdf("shf", date1, date2, file=fi,/nostr) 
    108162help, nce 
    109163 
    110 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     164file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    111165initncdf, file 
    112166nce1=-1*read_ncdf("shf", date1, date2, file=file,/nostr) 
     
    114168 
    115169nn=n_elements(sitelist) 
    116 date1=date1 
    117 date2=date2 
    118170for n=0, nn-1 do begin 
    119171 
     
    176228close,/all 
    177229 
    178 fi_shf_erai='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_erai_v52.txt' 
     230fi_shf_erai=tropflux_id_env+'shf_2000_2009_erai_v52.txt' 
    179231res=read_ascii(fi_shf_erai,data_start=1) 
    180232ff=res.field1 
     
    208260 
    209261 
    210 fi_shf_trop='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_trop_v52.txt' 
     262fi_shf_trop=tropflux_id_env+'shf_2000_2009_trop_v52.txt' 
    211263res=read_ascii(fi_shf_trop,data_start=1) 
    212264ff=res.field1 
     
    240292 
    241293 
    242 fi_shf_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_oaflx_v52.txt' 
     294fi_shf_oaflx=tropflux_id_env+'shf_2000_2009_oaflx_v52.txt' 
    243295res=read_ascii(fi_shf_oaflx,data_start=1) 
    244296ff=res.field1 
     
    271323oplot, [-5,25], [-5,25] 
    272324 
    273 fi_shf_ncep='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_ncep_v52.txt' 
     325fi_shf_ncep=tropflux_id_env+'shf_2000_2009_ncep_v52.txt' 
    274326res=read_ascii(fi_shf_ncep,data_start=1) 
    275327ff=res.field1 
     
    302354oplot, [-5,25], [-5,25] 
    303355 
    304 fi_shf_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/shf_2000_2009_ncep1_v52.txt' 
     356fi_shf_ncep1=tropflux_id_env+'shf_2000_2009_ncep1_v52.txt' 
    305357res=read_ascii(fi_shf_ncep1,data_start=1) 
    306358ff=res.field1 
     
    335387closeps 
    336388 
    337 fig='shf_validation_scatter_2000_2009.ps' 
    338 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    339 spawn, 'gv '+cpsdir+fig 
    340 return 
     389fig=tropflux_od_env+'shf_validation_scatter_2000_2009.ps' 
     390spawn, 'mv '+psdir+'idl.ps '+fig 
     391spawn, 'gv '+fig 
    341392end 
    342 function x_site_location, site 
    343     n1=strpos(site, 's') 
    344 if (n1 gt -1) then begin 
    345     ns=-1. 
    346     x=strmid(site, 0, n1) 
    347     x=float(x)*ns 
    348 endif else begin 
    349     n1=strpos(site, 'n') 
    350     x=strmid(site, 0, n1) 
    351     ny=1. 
    352     x=float(x)*ny 
    353 endelse 
    354 return, float(x) 
    355 end 
    356 function y_site_location, site 
    357     n1=strpos(site, 'e') 
    358 if (n1 gt -1) then begin 
    359     n=strpos(site, 's') 
    360     if (n gt -1) then begin 
    361         y=strmid(site, n+1, n1-n-1) 
    362     endif else begin 
    363         n=strpos(site, 'n') 
    364         y=strmid(site, n+1, n1-n-1) 
    365     endelse 
    366  
    367 endif else begin 
    368     n1=strpos(site, 'w') 
    369     n=strpos(site, 's') 
    370     if (n gt -1) then begin 
    371         y=strmid(site, n+1, n1-n-1) 
    372         y=180+(180-float(y)) 
    373     endif else begin 
    374         n=strpos(site, 'n') 
    375         y=strmid(site, n+1, n1-n-1) 
    376         y=180+(180-float(y)) 
    377    endelse 
    378 endelse 
    379 return,float(y) 
    380 end 
  • trunk/src/paper01/fig9/lwr_validation_scatter_2000_2007.pro

    r43 r46  
    11;+ 
    2 ; .. _lwr_validation_scatter_2000_2007.pro 
     2; .. _lwr_validation_scatter_2000_2007.pro: 
    33; 
    44; ==================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph lwr_validation_scatter_2000_2007 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       lwr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_2000_2007_erai.txt"]; 
     18;       lwr_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lwr_2000_2007_trop.txt"]; 
     19;       lwr_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lwr_2000_2007_oaflx.txt"]; 
     20;       lwr_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lwr_2000_2007_ncep.txt"]; 
     21;       lwr_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lwr_2000_2007_ncep1.txt"]; 
     22;       lwr_ncep1_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     23;       lwr_clark [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_2000_2007_clark.txt"]; 
     24;       lwr_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc"]; 
     25;       lwr_tropflux2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_lwr_19890101_20091231.nc"]; 
     26;       lwr_tropflux3 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     27;       lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/lwr_oafluxgrid_1985_2007.nc"]; 
     28;       lwr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/NCEP2_flux_19890101_20090729.nc"]; 
     29; 
     30;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/lwr_validation_scatter_2000_2007.ps"]; 
     31; 
     32;       lwr_validation_scatter_2000_2007 [shape=box, 
     33;       fontname=Courier, 
     34;       color=blue, 
     35;       URL="http://forge.ipsl.jussieu.fr/tropflux/brolwrer/trunk/src/paper01/fig9/lwr_validation_scatter_2000_2007.pro", 
     36;       label="${TROPFLUX}/src/paper01/fig9/lwr_validation_scatter_2000_2007.pro"]; 
     37; 
     38;       {lwr_erai lwr_nceplwr_ncep1 lwr_ncep1_2 lwr_clark lwr_erai_oafluxgrid lwr_tropflux2 lwr_tropflux3 lwr_oafluxgrid lwr_ncep2} -> {lwr_validation_scatter_2000_2007} -> {lwr_tropflux lwr_oaflux lwr_ncep lwr_ncep1 figure} 
     39;    } 
     40; 
    1141; SEE ALSO 
    1242; ======== 
     
    1444; :ref:`tropflux_profile.sh` 
    1545; 
     46; :ref:`tropflux_init.pro` 
     47; :ref:`cm_tropflux.pro` 
     48; 
     49; :func:`x_site_location` 
     50; :func:`y_site_location` 
     51; 
     52; :ref:`read_lw_global_v2.pro` 
     53; :ref:`statistics_3var_v1.pro` 
     54; 
    1655; EXAMPLES 
    1756; ======== 
     
    2059; 
    2160;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     61;  IDL> date1=19890101L 
     62;  IDL> date2=20091231L 
    2463;  IDL> lwr_validation_scatter_2000_2007, date1, date2 
     64; 
     65; TODO 
     66; ==== 
     67; 
     68; mùake it work on cratos : missing data 
     69; 
     70; ++ mooring data in graphviz 
     71; 
     72; coding rules 
     73; 
     74; get rid of spwan 
     75; 
     76; complete description 
     77; 
     78; handle IO error 
    2579; 
    2680; EVOLUTIONS 
     
    2983; $Id$ 
    3084; 
     85; - fplod 20110420T104246Z aedon.locean-ipsl.upmc.fr (Darwin) 
     86; 
     87;   * remove hard coding path 
     88;   * add graphviz 
     89;   * externalize functions 
     90; 
    3191; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3292; 
     
    3494; 
    3595;- 
    36 pro lwr_validation_scatter_2000_2007,date1,date2 
    37 @common 
    38  
     96pro lwr_validation_scatter_2000_2007, date1, date2 
     97@cm_general 
     98@cm_tropflux 
    3999reinitplt, /z,/invert 
    40100key_portrait = 1 
    41101 
    42102openps, FILENAME = 'idl.ps' 
    43 ;; Before running this program, you have to compile the following subrutines 
    44 ;;   1.  .r read_lw_global_v2 
    45 ;;   2.  .r statistics_3var_v1 
    46  
    47103;; evaluation is done for 20000101-20071231 period 
    48104 
     
    70126close,/all 
    71127 
    72 fi_lwr_erai='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_erai.txt' 
     128fi_lwr_erai=tropflux_id_env+'lwr_2000_2007_erai.txt' 
    73129openw,1,fi_lwr_erai 
    74 fi_lwr_trop='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_trop.txt' 
     130fi_lwr_trop=tropflux_id_env+'lwr_2000_2007_trop.txt' 
    75131openw,2,fi_lwr_trop 
    76 fi_lwr_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_oaflx.txt' 
     132fi_lwr_oaflx=tropflux_id_env+'lwr_2000_2007_oaflx.txt' 
    77133openw,3,fi_lwr_oaflx 
    78 fi_lwr_ncep='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_ncep.txt' 
     134fi_lwr_ncep=tropflux_id_env+'lwr_2000_2007_ncep.txt' 
    79135openw,4,fi_lwr_ncep 
    80 fi_lwr_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_ncep1.txt' 
     136fi_lwr_ncep1=tropflux_id_env+'lwr_2000_2007_ncep1.txt' 
    81137openw,5,fi_lwr_ncep1 
    82 fi_lwr_clark='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_clark.txt' 
     138fi_lwr_clark=tropflux_id_env+'lwr_2000_2007_clark.txt' 
    83139openw,6,fi_lwr_clark 
    84140 
     
    92148;; first reading the whole ERAI uncorrected and corrected data 
    93149 
    94 file='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
     150file=tropflux_id_env+'erai_fluxes_19930101_20090801_TROP_oafluxgrid.nc' 
    95151initncdf, file 
    96152unc=read_ncdf('lwr',date1,date2,file=file,/nostr) 
    97153help, unc 
    98154 
    99 file="/Volumes/Sanathana/TropFlux_data/TropFlux_lwr_19890101_20091231.nc" 
    100 initncdf, file 
     155file=tropflux_id_env+'TropFlux_lwr_19890101_20091231.nc" 
     156initncda, file 
    101157cor=read_ncdf('lwr',date1,date2,file=file,/nostr) & cor=-1*cor 
    102158help, cor 
    103159 
    104 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/lwr_oafluxgrid_1985_2007.nc' 
     160file=tropflux_id_env+'lwr_oafluxgrid_1985_2007.nc' 
    105161initncdf, file 
    106162oaf=read_ncdf("lwr", date1, date2, file=file,/nostr) 
    107163help, oaf 
    108164 
    109 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/NCEP2_flux_19890101_20090729.nc' 
     165fi=tropflux_id_env+'NCEP2_flux_19890101_20090729.nc' 
    110166initncdf, fi 
    111167nce=read_ncdf("lwr", date1, date2, file=fi,/nostr) ;;  & nce=-1*nce 
    112168help, nce 
    113169 
    114 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     170file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    115171initncdf, file 
    116172nce1=-1*read_ncdf("lwr", date1, date2, file=file,/nostr) 
    117173help, nce1 
    118174 
    119 file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_19890101_20091231.nc' 
     175file=tropflux_id_env+'TropFlux_19890101_20091231.nc' 
    120176initncdf, file 
    121177clark=-1*read_ncdf("lwr", date1, date2, file=file,/nostr) 
     
    123179 
    124180nn=n_elements(sitelist) 
    125 date1=date1 
    126 date2=date2 
    127181for n=0, nn-1 do begin 
    128182 
     
    191245close,/all 
    192246 
    193 fi_lwr_erai='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_erai.txt' 
     247fi_lwr_erai=tropflux_id_env+'lwr_2000_2007_erai.txt' 
    194248res=read_ascii(fi_lwr_erai,data_start=1) 
    195249ff=res.field1 
     
    224278significance_test, mean_tao, mean_erai 
    225279 
    226 fi_lwr_trop='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_trop.txt' 
     280fi_lwr_trop=tropflux_id_env+'lwr_2000_2007_trop.txt' 
    227281res=read_ascii(fi_lwr_trop,data_start=1) 
    228282ff=res.field1 
     
    257311significance_test, mean_tao, mean_trop 
    258312 
    259 fi_lwr_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_oaflx.txt' 
     313fi_lwr_oaflx=tropflux_id_env+'lwr_2000_2007_oaflx.txt' 
    260314res=read_ascii(fi_lwr_oaflx,data_start=1) 
    261315ff=res.field1 
     
    290344significance_test, mean_tao, mean_oaf 
    291345 
    292 fi_lwr_ncep='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_ncep.txt' 
     346fi_lwr_ncep=tropflux_id_env+'lwr_2000_2007_ncep.txt' 
    293347res=read_ascii(fi_lwr_ncep,data_start=1) 
    294348ff=res.field1 
     
    323377significance_test, mean_tao, mean_nce 
    324378 
    325 fi_lwr_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_ncep1.txt' 
     379fi_lwr_ncep1=tropflux_id_env+'lwr_2000_2007_ncep1.txt' 
    326380res=read_ascii(fi_lwr_ncep1,data_start=1) 
    327381ff=res.field1 
     
    356410significance_test, mean_tao, mean_nce 
    357411 
    358 fi_lwr_clark='/Users/pkb/work/MY_SAXO/flux_automat/lwr_2000_2007_clark.txt' 
     412fi_lwr_clark=tropflux_id_env+'lwr_2000_2007_clark.txt' 
    359413res=read_ascii(fi_lwr_clark,data_start=1) 
    360414ff=res.field1 
     
    391445closeps 
    392446 
    393 fig='lwr_validation_scatter_2000_2007.ps' 
    394 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    395 spawn, 'gv '+cpsdir+fig 
    396 return 
     447fig=tropflux_od_env+'lwr_validation_scatter_2000_2007.ps' 
     448spawn, 'mv '+psdir+'idl.ps '+fig 
     449spawn, 'gv '+fig 
    397450end 
    398 function x_site_location, site 
    399     n1=strpos(site, 's') 
    400 if (n1 gt -1) then begin 
    401     ns=-1. 
    402     x=strmid(site, 0, n1) 
    403     x=float(x)*ns 
    404 endif else begin 
    405     n1=strpos(site, 'n') 
    406     x=strmid(site, 0, n1) 
    407     ny=1. 
    408     x=float(x)*ny 
    409 endelse 
    410 return, float(x) 
    411 end 
    412 function y_site_location, site 
    413     n1=strpos(site, 'e') 
    414 if (n1 gt -1) then begin 
    415     n=strpos(site, 's') 
    416     if (n gt -1) then begin 
    417         y=strmid(site, n+1, n1-n-1) 
    418     endif else begin 
    419         n=strpos(site, 'n') 
    420         y=strmid(site, n+1, n1-n-1) 
    421     endelse 
    422  
    423 endif else begin 
    424     n1=strpos(site, 'w') 
    425     n=strpos(site, 's') 
    426     if (n gt -1) then begin 
    427         y=strmid(site, n+1, n1-n-1) 
    428         y=180+(180-float(y)) 
    429     endif else begin 
    430         n=strpos(site, 'n') 
    431         y=strmid(site, n+1, n1-n-1) 
    432         y=180+(180-float(y)) 
    433    endelse 
    434 endelse 
    435 return,float(y) 
    436 end 
  • trunk/src/paper01/fig9/swr_validation_scatter_2000_2007.pro

    r43 r46  
    11;+ 
    2 ; .. _swr_validation_scatter_2000_2007.pro 
     2; .. _swr_validation_scatter_2000_2007.pro: 
    33; 
    44; ==================================== 
     
    99; =========== 
    1010; 
     11; .. graphviz:: 
     12; 
     13;    digraph swr_validation_scatter_2000_2007 { 
     14;       graph [ 
     15;       rankdir="LR", 
     16;       ] 
     17;       swr_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_2000_2007_erai_v50.txt"]; 
     18;       swr_tropflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_2000_2007_trop_v50.txt"]; 
     19;       swr_oaflux [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_2000_2007_oaflx_v50.txt"]; 
     20;       swr_ncep [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_2000_2007_ncep_v50.txt"]; 
     21;       swr_ncep1 [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_2000_2007_ncep1_v50.txt"]; 
     22;       swr_olr [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_2000_2007_olr_v50.txt"]; 
     23;       swr_ncep1_2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/fluxe_ncep1_19890101_20091231.nc"]; 
     24;       swr_erai_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_fluxes_20000101_20090801_TROP_oafluxgrid.nc"]; 
     25;       swr_tropflux2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_swr_19890101_20091231_DT_v51.nc"]; 
     26;       swr_tropflux3 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_19890101_20091231.nc"]; 
     27;       swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_oafluxgrid_1985_2007.nc"]; 
     28;       swr_ncep2 [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; 
     29; 
     30;       figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/swr_validation_scatter_2000_2007.ps"]; 
     31; 
     32;       swr_validation_scatter_2000_2007 [shape=box, 
     33;       fontname=Courier, 
     34;       color=blue, 
     35;       URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig9/swr_validation_scatter_2000_2007.pro", 
     36;       label="${TROPFLUX}/src/paper01/fig9/swr_validation_scatter_2000_2007.pro"]; 
     37; 
     38;       {swr_erai swr_ncep1_2 swr_erai_oafluxgrid swr_tropflux2 swr_tropflux3 swr_oafluxgrid swr_ncep2} -> {swr_validation_scatter_2000_2007} -> {swr_tropflux swr_oaflux swr_ncep swr_olr swr_ncep1 figure} 
     39;    } 
     40; 
    1141; SEE ALSO 
    1242; ======== 
    1343; 
    1444; :ref:`tropflux_profile.sh` 
     45; :ref:`tropflux_init.pro` 
     46; :ref:`cm_tropflux.pro` 
     47; 
     48; :func:`x_site_location` 
     49; :func:`y_site_location` 
     50; 
     51; :ref:`read_global_sw_v50.pro` 
     52; :ref:`statistics_3var_v1.pro` 
    1553; 
    1654; EXAMPLES 
     
    2058; 
    2159;  IDL> @tropflux_init 
    22 ;  IDL> date1=++ 
    23 ;  IDL> date2=++ 
     60;  IDL> date1=19890101L 
     61;  IDL> date2=20091231L 
    2462;  IDL> swr_validation_scatter_2000_2007, date1, date2 
     63; 
     64; TODO 
     65; ==== 
     66; 
     67; make it work on cratos : missing data 
     68; 
     69; ++ mooring data in graphviz 
     70; 
     71; coding rules 
     72; 
     73; get rid of spwan 
     74; 
     75; complete description 
     76; 
     77; handle IO error 
    2578; 
    2679; EVOLUTIONS 
     
    2982; $Id$ 
    3083; 
     84; - fplod 20110420T105004Z aedon.locean-ipsl.upmc.fr (Darwin) 
     85; 
     86;   * remove hard coding path 
     87;   * add graphviz 
     88;   * externalize functions 
     89; 
    3190; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 
    3291; 
     
    3594;- 
    3695pro swr_validation_scatter_2000_2007, date1, date2 
    37 @common 
    38  
     96@cm_genral 
     97@cm_tropflux 
    3998reinitplt, /z,/invert 
    4099key_portrait = 1 
    41100 
    42101openps, FILENAME = 'idl.ps' 
    43 ;; Before running this program, you have to compile the following subrutines 
    44 ;;   1.  .r read_global_sw_v50 
    45 ;;   2.  .r statistics_3var_v1 
    46102 
    47103;; evaluation is done for 20000101-20071231 period 
     
    68124close,/all 
    69125 
    70 fi_swr_erai='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_erai_v50.txt' 
     126fi_swr_erai=tropflux_id_env+'swr_2000_2007_erai_v50.txt' 
    71127openw,1,fi_swr_erai 
    72 fi_swr_trop='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_trop_v50.txt' 
     128fi_swr_trop=tropflux_id_env+'swr_2000_2007_trop_v50.txt' 
    73129openw,2,fi_swr_trop 
    74 fi_swr_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_oaflx_v50.txt' 
     130fi_swr_oaflx=tropflux_id_env+'swr_2000_2007_oaflx_v50.txt' 
    75131openw,3,fi_swr_oaflx 
    76 fi_swr_ncep='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_ncep_v50.txt' 
     132fi_swr_ncep=tropflux_id_env+'swr_2000_2007_ncep_v50.txt' 
    77133openw,4,fi_swr_ncep 
    78 fi_swr_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_ncep1_v50.txt' 
     134fi_swr_ncep1=tropflux_id_env+'swr_2000_2007_ncep1_v50.txt' 
    79135openw,5,fi_swr_ncep1 
    80 fi_swr_olr='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_olr_v50.txt' 
     136fi_swr_olr=tropflux_id_env+'swr_2000_2007_olr_v50.txt' 
    81137openw,6,fi_swr_olr 
    82138 
     
    91147;; first reading the whole ERAI uncorrected and corrected data 
    92148 
    93 file='/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/erai_fluxes_20000101_20090801_TROP_oafluxgrid.nc' 
     149file=tropflux_id_env+'erai_fluxes_20000101_20090801_TROP_oafluxgrid.nc' 
    94150initncdf, file 
    95151unc=read_ncdf('swr',date1,date2,file=file,/nostr) & unc=-1*unc 
    96152help, unc 
    97153 
    98 file='/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20071231_DT_v51.nc' 
     154file=tropflux_id_env+'TropFlux_swr_19890101_20071231_DT_v51.nc' 
    99155initncdf, file 
    100156cor=read_ncdf('swr',date1,date2,file=file,/nostr) 
    101157help, cor 
    102158 
    103 file='/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/swr_oafluxgrid_1985_2007.nc' 
     159file=tropflux_id_env+'swr_oafluxgrid_1985_2007.nc' 
    104160initncdf, file 
    105161oaf=read_ncdf("swr", date1, date2, file=file,/nostr) 
    106162help, oaf 
    107163 
    108 fi='/Volumes/Iomega_HDD/flux_reconstruction/ncep2/swr_ncep2_oaflxgrid_19890101_20091231.nc' 
     164fi=tropflux_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' 
    109165initncdf, fi 
    110166nce=read_ncdf("swr", date1, date2, file=fi,/nostr) & nce=0.94*nce 
    111167help, nce 
    112168 
    113 file='/Volumes/Iomega_HDD/flux_reconstruction/ncep/fluxe_ncep1_19890101_20091231.nc' 
     169file=tropflux_id_env+'fluxe_ncep1_19890101_20091231.nc' 
    114170initncdf, file 
    115171nce1=read_ncdf("swr", date1, date2, file=file,/nostr) 
    116172help, nce1 
    117173 
    118 file='/Users/pkb/data/TropFlux/TropFlux_swr_19890101_20091231_NRT_v50.nc' 
     174file=tropflux_id_env+'TropFlux_swr_19890101_20091231_NRT_v50.nc' 
    119175initncdf, file 
    120176sw_olr=read_ncdf("sw", date1-1, date2, file=file,/nostr) 
    121177help, sw_olr 
    122178nn=n_elements(sitelist) 
    123 date1=date1 
    124 date2=date2 
    125179for n=0, nn-1 do begin 
    126180 
     
    190244close,/all 
    191245 
    192 fi_swr_erai='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_erai_v50.txt' 
     246fi_swr_erai=tropflux_id_env+'swr_2000_2007_erai_v50.txt' 
    193247res=read_ascii(fi_swr_erai,data_start=1) 
    194248ff=res.field1 
     
    222276 
    223277 
    224 fi_swr_trop='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_trop_v50.txt' 
     278fi_swr_trop=tropflux_id_env+'swr_2000_2007_trop_v50.txt' 
    225279res=read_ascii(fi_swr_trop,data_start=1) 
    226280ff=res.field1 
     
    254308 
    255309 
    256 fi_swr_oaflx='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_oaflx_v50.txt' 
     310fi_swr_oaflx=tropflux_id_env+'swr_2000_2007_oaflx_v50.txt' 
    257311res=read_ascii(fi_swr_oaflx,data_start=1) 
    258312ff=res.field1 
     
    286340 
    287341 
    288 fi_swr_ncep='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_ncep_v50.txt' 
     342fi_swr_ncep=tropflux_id_env+'swr_2000_2007_ncep_v50.txt' 
    289343res=read_ascii(fi_swr_ncep,data_start=1) 
    290344ff=res.field1 
     
    318372 
    319373 
    320 fi_swr_ncep1='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_ncep1_v50.txt' 
     374fi_swr_ncep1=tropflux_id_env+'swr_2000_2007_ncep1_v50.txt' 
    321375res=read_ascii(fi_swr_ncep1,data_start=1) 
    322376ff=res.field1 
     
    350404 
    351405 
    352 fi_swr_olr='/Users/pkb/work/MY_SAXO/flux_automat/swr_2000_2007_olr_v50.txt' 
     406fi_swr_olr=tropflux_id_env+'swr_2000_2007_olr_v50.txt' 
    353407res=read_ascii(fi_swr_olr,data_start=1) 
    354408ff=res.field1 
     
    384438closeps 
    385439 
    386 fig='swr_validation_scatter_2000_2007.ps' 
    387 spawn, 'mv '+psdir+'idl.ps '+cpsdir+fig 
    388 spawn, 'gv '+cpsdir+fig 
    389 return 
     440fig=tropflux_od_env+'swr_validation_scatter_2000_2007.ps' 
     441spawn, 'mv '+psdir+'idl.ps '+fig 
     442spawn, 'gv '+fig 
    390443end 
    391 function x_site_location, site 
    392     n1=strpos(site, 's') 
    393 if (n1 gt -1) then begin 
    394     ns=-1. 
    395     x=strmid(site, 0, n1) 
    396     x=float(x)*ns 
    397 endif else begin 
    398     n1=strpos(site, 'n') 
    399     x=strmid(site, 0, n1) 
    400     ny=1. 
    401     x=float(x)*ny 
    402 endelse 
    403 return, float(x) 
    404 end 
    405 function y_site_location, site 
    406     n1=strpos(site, 'e') 
    407 if (n1 gt -1) then begin 
    408     n=strpos(site, 's') 
    409     if (n gt -1) then begin 
    410         y=strmid(site, n+1, n1-n-1) 
    411     endif else begin 
    412         n=strpos(site, 'n') 
    413         y=strmid(site, n+1, n1-n-1) 
    414     endelse 
    415  
    416 endif else begin 
    417     n1=strpos(site, 'w') 
    418     n=strpos(site, 's') 
    419     if (n gt -1) then begin 
    420         y=strmid(site, n+1, n1-n-1) 
    421         y=180+(180-float(y)) 
    422     endif else begin 
    423         n=strpos(site, 'n') 
    424         y=strmid(site, n+1, n1-n-1) 
    425         y=180+(180-float(y)) 
    426    endelse 
    427 endelse 
    428 return,float(y) 
    429 end 
Note: See TracChangeset for help on using the changeset viewer.