Changeset 46 for trunk/src/paper01/fig3
- Timestamp:
- 04/20/11 16:45:53 (13 years ago)
- Location:
- trunk/src/paper01/fig3
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/paper01/fig3/air_validation_scatter_2000_2009_v50.pro
r44 r46 19 19 ; air_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2000_2009_erai_v50.txt"]; 20 20 ; 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"]; 23 23 ; 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"]; 26 26 ; air_ncep2_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/air_2m_ncep2_oafluxgrid_19890101_20091231.nc"]; 27 27 ; … … 32 32 ; 33 33 ; tropflux_t2m [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/TropFlux_t2m_19890101_20091231_v50.nc"]; 34 ; 34 ; 35 35 ; oaflux_basic [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/OAFlux_basic_variables_1985_2009.nc"]; 36 36 ; … … 41 41 ; label="${TROPFLUX}/src/paper01/fig3/air_validation_scatter_2000_2009_v50.pro"]; 42 42 ; 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} 44 44 ; 45 45 ; } … … 49 49 ; 50 50 ; :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` 51 56 ; 52 57 ; :ref:`read_variables_v2.pro` 58 ; :ref:`statistics_3var_v1.pro` 53 59 ; 54 60 ; EXAMPLES … … 102 108 103 109 openps, FILENAME = 'idl.ps' 104 ;; Before running this program, you have to compile the following subrutines105 ;; 1. .r read_era_total106 ;; 2. .r read_variables_v2107 ;; 3. .r read_era_box108 110 109 111 ;; Give the location of mooring for validation of basic meteorological variables … … 152 154 help, unc 153 155 154 ;file='/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_t2m_19890101_20091231_v3.nc'155 156 file=tropflux_id_env+'TropFlux_t2m_19890101_20091231_v50.nc' 156 157 initncdf, file … … 176 177 177 178 nn=n_elements(sitelist) 178 date1=date1179 date2=date2180 179 for n=0, nn-1 do begin 181 180 -
trunk/src/paper01/fig3/q2m_validation_scatter_2000_2009_v50.pro
r44 r46 19 19 ; q2m_erai [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/q2m_2000_2009_erai_v50.txt"]; 20 20 ; 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"]; 25 25 ; 26 26 ; erai_q2m_oafluxgrid [shape=ellipse,fontname=Courier,label="${TROPFLUX_ID}/erai_t2m_19890101_20091231_oafluxgrid.nc"]; … … 40 40 ; figure [shape=ellipse,fontname=Courier,label="${TROPFLUX_OD}/q2m_validation_scatter_2000_2009_v50.ps"]; 41 41 ; 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} 43 43 ; 44 44 ; } … … 48 48 ; 49 49 ; :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` 50 58 ; 51 59 ; EXAMPLES … … 99 107 100 108 openps, FILENAME = 'idl.ps' 101 ;; Before running this program, you have to compile the following subrutines102 ;; 1. .r read_era_total103 ;; 2. .r read_variables_v2104 ;; 3. .r read_era_box105 109 106 110 ;; Give the location of mooring for validation of basic meteorological variables … … 165 169 help, nce 166 170 167 file= '/Volumes/Iomega_HDD/flux_reconstruction/ncep/q2m_ncep1_19890101_20091231.nc'171 file=tropflux_id_env+''q2m_ncep1_19890101_20091231.nc' 168 172 initncdf, file 169 173 nce1=read_ncdf("q2m", date1, date2, file=file,/nostr) … … 172 176 173 177 nn=n_elements(sitelist) 174 date1=date1175 date2=date2176 178 for n=0, nn-1 do begin 177 179 … … 241 243 close,/all 242 244 243 fi_q2m_erai= '/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_erai_v50.txt'245 fi_q2m_erai=tropflux_id_env+'q2m_2000_2009_erai_v50.txt' 244 246 res=read_ascii(fi_q2m_erai,data_start=1) 245 247 ff=res.field1 … … 267 269 oplot, mean_tao, yfit, color=250, thick=2 268 270 269 fi_q2m_trop= '/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_trop_v50.txt'271 fi_q2m_trop=tropflux_id_env+'q2m_2000_2009_trop_v50.txt' 270 272 res=read_ascii(fi_q2m_trop,data_start=1) 271 273 ff=res.field1 … … 294 296 oplot, mean_tao, yfit, color=250, thick=2 295 297 296 fi_q2m_oaflx= '/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_oaflx_v50.txt'298 fi_q2m_oaflx=tropflux_id_env+'q2m_2000_2009_oaflx_v50.txt' 297 299 res=read_ascii(fi_q2m_oaflx,data_start=1) 298 300 ff=res.field1 … … 322 324 323 325 324 fi_q2m_ncep= '/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep_v50.txt'326 fi_q2m_ncep=tropflux_id_env+'q2m_2000_2009_ncep_v50.txt' 325 327 res=read_ascii(fi_q2m_ncep,data_start=1) 326 328 ff=res.field1 … … 349 351 oplot, mean_tao, yfit, color=250, thick=2 350 352 351 fi_q2m_ncep1= '/Users/pkb/work/MY_SAXO/flux_automat/q2m_2000_2009_ncep1_v50.txt'353 fi_q2m_ncep1=tropflux_id_env+'q2m_2000_2009_ncep1_v50.txt' 352 354 res=read_ascii(fi_q2m_ncep1,data_start=1) 353 355 ff=res.field1 -
trunk/src/paper01/fig3/read_variables_v2.pro
r44 r46 48 48 ; :ref:`sst_validation_scatter_2000_2009_v50.pro` 49 49 ; :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` 50 56 ; 51 57 ; EXAMPLES … … 61 67 ; TODO 62 68 ; ==== 63 ; 69 ; 64 70 ; externalize function 65 71 ; -
trunk/src/paper01/fig3/sst_validation_scatter_2000_2009_v50.pro
r44 r46 9 9 ; =========== 10 10 ; 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 ; 11 42 ; SEE ALSO 12 43 ; ======== 13 44 ; 14 45 ; :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` 15 54 ; 16 55 ; EXAMPLES … … 20 59 ; 21 60 ; IDL> @tropflux_init 22 ; IDL> date1= ++23 ; IDL> date2= ++61 ; IDL> date1=19890101L 62 ; IDL> date2=20091231L 24 63 ; 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 25 79 ; 26 80 ; EVOLUTIONS … … 29 83 ; $Id$ 30 84 ; 85 ; - fplod 20110420T131533Z aedon.locean-ipsl.upmc.fr (Darwin) 86 ; 87 ; * remove hard coding path 88 ; * add graphviz 89 ; * externalize functions 90 ; 31 91 ; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 32 92 ; … … 35 95 ;- 36 96 pro sst_validation_scatter_2000_2009_v50, date1, date2 37 @c ommon38 97 @cm_general 98 @cm_tropflux 39 99 reinitplt, /z,/invert 40 100 key_portrait = 1 41 101 42 102 openps, FILENAME = 'idl.ps' 43 ;; Before running this program, you have to compile the following subrutines44 ;; 1. .r read_era_total45 ;; 2. .r read_variables_v246 ;; 3. .r read_era_box47 103 48 104 ;; Give the location of mooring for validation of basic meteorological variables … … 66 122 close,/all 67 123 68 fi_sst_erai= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_erai_v50.txt'124 fi_sst_erai=tropflux_id_env+'sst_2000_2009_erai_v50.txt' 69 125 openw,1,fi_sst_erai 70 fi_sst_trop= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_trop_v50.txt'126 fi_sst_trop=tropflux_id_env+'sst_2000_2009_trop_v50.txt' 71 127 openw,2,fi_sst_trop 72 fi_sst_oaflx= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_oaflx_v50.txt'128 fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_oaflx_v50.txt' 73 129 openw,3,fi_sst_oaflx 74 fi_sst_ncep= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep_v50.txt'130 fi_sst_ncep=tropflux_id_env+'sst_2000_2009_ncep_v50.txt' 75 131 openw,4,fi_sst_ncep 76 fi_sst_tmi= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_tmi_v50.txt'132 fi_sst_tmi=tropflux_id_env+'sst_2000_2009_tmi_v50.txt' 77 133 openw,5,fi_sst_tmi 78 fi_sst_ncep1= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_ncep1_v50.txt'134 fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_ncep1_v50.txt' 79 135 openw,6,fi_sst_ncep1 80 136 … … 90 146 ;; first reading the whole ERAI uncorrected and corrected data 91 147 92 file= '/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_sst_19890101_20091231_oafluxgrid.nc'148 file=tropflux_id_env+'erai_sst_19890101_20091231_oafluxgrid.nc' 93 149 initncdf, file 94 150 unc=read_ncdf('sst',date1,date2,file=file,/nostr) & unc=unc-273.15 95 151 help, unc 96 152 97 file= '/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_sst_19890101_20091231_v20.nc'153 file=tropflux_id_env+'TropFlux_sst_19890101_20091231_v20.nc' 98 154 initncdf, file 99 155 cor=read_ncdf('sst',date1,date2,file=file,/nostr) & cor=cor-273.15 100 156 help, cor 101 157 102 file= '/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc'158 file=tropflux_id_env+'OAFlux_basic_variables_1985_2009.nc' 103 159 initncdf, file 104 160 oaf=read_ncdf("sst", date1, date2, file=file,/nostr) 105 161 help, oaf 106 162 107 fi= '/Volumes/Iomega_HDD/flux_reconstruction/ncep2/sst_ncep2_oafluxgrid_19890101_20091231.nc'163 fi=tropflux_id_env+'sst_ncep2_oafluxgrid_19890101_20091231.nc' 108 164 initncdf, fi 109 165 nce=read_ncdf("sst", date1-1, date2, file=fi,/nostr) … … 111 167 help, nce 112 168 113 fi= '/Volumes/Iomega_HDD/work/flux_reconstruction/gridded_data/tmi_OI_oafluxgrid_30N30S.nc'169 fi=tropflux_id_env+'tmi_OI_oafluxgrid_30N30S.nc' 114 170 initncdf, fi 115 171 sst_tmi=read_ncdf("sst", date1, date2, file=fi,/nostr) 116 172 help, sst_tmi 117 173 118 file= '/Volumes/Iomega_HDD/flux_reconstruction/ncep/sst_ncep1_19890101_20091231.nc'174 file=tropflux_id_env+'sst_ncep1_19890101_20091231.nc' 119 175 initncdf, file 120 176 nce1=read_ncdf("sst", date1, date2, file=file,/nostr) … … 123 179 124 180 nn=n_elements(sitelist) 125 date1=date1126 date2=date2127 181 for n=0, nn-1 do begin 128 182 … … 196 250 close,/all 197 251 198 fi_sst_erai= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_erai.txt'252 fi_sst_erai=tropflux_id_env+'sst_2000_2009_v50_erai.txt' 199 253 res=read_ascii(fi_sst_erai,data_start=1) 200 254 ff=res.field1 … … 222 276 oplot, mean_tao, yfit, color=250, thick=2 223 277 224 fi_sst_trop= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_trop.txt'278 fi_sst_trop=tropflux_id_env+'sst_2000_2009_v50_trop.txt' 225 279 res=read_ascii(fi_sst_trop,data_start=1) 226 280 ff=res.field1 … … 249 303 oplot, mean_tao, yfit, color=250, thick=2 250 304 251 fi_sst_oaflx= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_oaflx.txt'305 fi_sst_oaflx=tropflux_id_env+'sst_2000_2009_v50_oaflx.txt' 252 306 res=read_ascii(fi_sst_oaflx,data_start=1) 253 307 ff=res.field1 … … 278 332 279 333 280 fi_sst_ncep= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_ncep.txt'334 fi_sst_ncep=tropflux_id_env+'sst_2000_2009_v50_ncep.txt' 281 335 res=read_ascii(fi_sst_ncep,data_start=1) 282 336 ff=res.field1 … … 306 360 307 361 308 fi_sst_tmi= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_tmi.txt'362 fi_sst_tmi=tropflux_id_env+'sst_2000_2009_v50_tmi.txt' 309 363 res=read_ascii(fi_sst_tmi,data_start=1) 310 364 ff=res.field1 … … 333 387 oplot, mean_tao, yfit, color=250, thick=2 334 388 335 fi_sst_ncep1= '/Users/pkb/work/MY_SAXO/flux_automat/sst_2000_2009_v50_ncep1.txt'389 fi_sst_ncep1=tropflux_id_env+'sst_2000_2009_v50_ncep1.txt' 336 390 res=read_ascii(fi_sst_ncep1,data_start=1) 337 391 ff=res.field1 … … 365 419 spawn, 'mv '+psdir+'idl.ps '+fig 366 420 spawn, 'gv '+fig 367 return368 421 end 369 function x_site_location, site370 n1=strpos(site, 's')371 if (n1 gt -1) then begin372 ns=-1.373 x=strmid(site, 0, n1)374 x=float(x)*ns375 endif else begin376 n1=strpos(site, 'n')377 x=strmid(site, 0, n1)378 ny=1.379 x=float(x)*ny380 endelse381 return, float(x)382 end383 function y_site_location, site384 n1=strpos(site, 'e')385 if (n1 gt -1) then begin386 n=strpos(site, 's')387 if (n gt -1) then begin388 y=strmid(site, n+1, n1-n-1)389 endif else begin390 n=strpos(site, 'n')391 y=strmid(site, n+1, n1-n-1)392 endelse393 394 endif else begin395 n1=strpos(site, 'w')396 n=strpos(site, 's')397 if (n gt -1) then begin398 y=strmid(site, n+1, n1-n-1)399 y=180+(180-float(y))400 endif else begin401 n=strpos(site, 'n')402 y=strmid(site, n+1, n1-n-1)403 y=180+(180-float(y))404 endelse405 endelse406 return,float(y)407 end -
trunk/src/paper01/fig3/statistics_3var_v1.pro
r44 r46 13 13 ; 14 14 ; :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` 15 29 ; 16 30 ; EXAMPLES … … 34 48 ; 35 49 ;- 36 37 38 50 pro statistics_3var_v1, tao,var1,var2, $ 39 51 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 40 52 41 42 @common 53 @cm_tropflux 43 54 x=tao & y=var1 & z=var2 44 55 -
trunk/src/paper01/fig3/ws_validation_scatter_2000_2009_v50.pro
r44 r46 9 9 ; =========== 10 10 ; 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 ; 11 41 ; SEE ALSO 12 42 ; ======== 13 43 ; 14 44 ; :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` 15 53 ; 16 54 ; EXAMPLES … … 20 58 ; 21 59 ; IDL> @tropflux_init 22 ; IDL> date1= ++23 ; IDL> date2= ++60 ; IDL> date1=19890101L 61 ; IDL> date2=20091231L 24 62 ; 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 25 78 ; 26 79 ; … … 30 83 ; $Id$ 31 84 ; 85 ; - fplod 20110420T132401Z aedon.locean-ipsl.upmc.fr (Darwin) 86 ; 87 ; * remove hard coding path 88 ; * add graphviz 89 ; * externalize functions 90 ; 32 91 ; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) 33 92 ; … … 35 94 ; 36 95 ;- 37 pro ws_validation_scatter_2000_2009_v50, date1,date238 @c ommon39 96 pro ws_validation_scatter_2000_2009_v50, date1, date2 97 @cm_general 98 @cm_tropflux 40 99 reinitplt, /z,/invert 41 100 key_portrait = 1 42 101 43 102 openps, FILENAME = 'idl.ps' 44 ;; Before running this program, you have to compile the following subrutines45 ;; 1. .r read_era_total46 ;; 2. .r read_variables_v247 ;; 3. .r read_era_box48 103 49 104 ;; Give the location of mooring for validation of basic meteorological variables … … 68 123 close,/all 69 124 70 fi_ws_erai= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_v50.txt'125 fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_v50.txt' 71 126 openw,1,fi_ws_erai 72 fi_ws_trop= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_v50.txt'127 fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_v50.txt' 73 128 openw,2,fi_ws_trop 74 fi_ws_oaflx= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_v50.txt'129 fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_v50.txt' 75 130 openw,3,fi_ws_oaflx 76 fi_ws_ncep= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_v50.txt'131 fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_v50.txt' 77 132 openw,4,fi_ws_ncep 78 fi_ws_tmi= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_v50.txt'133 fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_v50.txt' 79 134 openw,5,fi_ws_tmi 80 fi_ws_ncep1= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_v50.txt'135 fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_v50.txt' 81 136 openw,6,fi_ws_ncep1 82 137 … … 91 146 ;; first reading the whole ERAI uncorrected and corrected data 92 147 93 file= '/Volumes/Iomega_HDD/TropFlux/input_uncor/erai_ws_19890101_20091231_oafluxgrid.nc'148 file=tropflux_id_env+'erai_ws_19890101_20091231_oafluxgrid.nc' 94 149 initncdf, file 95 150 u=read_ncdf('u10',date1,date2,file=file,/nostr) … … 98 153 help, unc 99 154 100 file= '/Volumes/Iomega_HDD/TropFlux/input_cor/full_cor/TropFlux_ws_19890101_20091231_v20.nc'155 file=tropflux_id_env+'TropFlux_ws_19890101_20091231_v20.nc' 101 156 initncdf, file 102 157 cor=read_ncdf('ws',date1,date2,file=file,/nostr) 103 158 help, cor 104 159 105 file= '/Volumes/Iomega_HDD/work/flux_reconstruction/OAFLX_GRID/OAFlux_basic_variables_1985_2009.nc'160 file=tropflux_id_env+'OAFlux_basic_variables_1985_2009.nc' 106 161 initncdf, file 107 162 oaf=read_ncdf("wind", date1, date2, file=file,/nostr) 108 163 help, oaf 109 164 110 fi= '/Volumes/Iomega_HDD/flux_reconstruction/ncep2/uwind_ncep2_oafluxgrid_19890101_20091231.nc'165 fi=tropflux_id_env+'uwind_ncep2_oafluxgrid_19890101_20091231.nc' 111 166 initncdf, fi 112 167 u=read_ncdf("u", date1-1, date2, file=fi,/nostr) 113 fi= '/Volumes/Iomega_HDD/flux_reconstruction/ncep2/vwind_ncep2_oafluxgrid_19890101_20091231.nc'168 fi=tropflux_id_env+'vwind_ncep2_oafluxgrid_19890101_20091231.nc' 114 169 initncdf, fi 115 170 v=read_ncdf("v", date1-1, date2, file=fi,/nostr) … … 126 181 help, ws_tmi 127 182 128 file= '/Volumes/Iomega_HDD/flux_reconstruction/ncep/wind_ncep1_19890101_20091231.nc'183 file=tropflux_id_env+'wind_ncep1_19890101_20091231.nc' 129 184 initncdf, file 130 185 u=read_ncdf("u", date1, date2, file=file,/nostr) … … 134 189 135 190 nn=n_elements(sitelist) 136 date1=date1137 date2=date2138 191 for n=0, nn-1 do begin 139 192 … … 201 254 endfor 202 255 close,/all 203 fi_ws_erai= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_erai_v50.txt'256 fi_ws_erai=tropflux_id_env+'ws_2000_2009_erai_v50.txt' 204 257 res=read_ascii(fi_ws_erai,data_start=1) 205 258 ff=res.field1 … … 227 280 oplot, mean_tao, yfit, color=250, thick=2 228 281 229 fi_ws_trop= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_trop_v50.txt'282 fi_ws_trop=tropflux_id_env+'ws_2000_2009_trop_v50.txt' 230 283 res=read_ascii(fi_ws_trop,data_start=1) 231 284 ff=res.field1 … … 254 307 oplot, mean_tao, yfit, color=250, thick=2 255 308 256 fi_ws_oaflx= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_oaflx_v50.txt'309 fi_ws_oaflx=tropflux_id_env+'ws_2000_2009_oaflx_v50.txt' 257 310 res=read_ascii(fi_ws_oaflx,data_start=1) 258 311 ff=res.field1 … … 283 336 284 337 285 fi_ws_ncep= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep_v50.txt'338 fi_ws_ncep=tropflux_id_env+'ws_2000_2009_ncep_v50.txt' 286 339 res=read_ascii(fi_ws_ncep,data_start=1) 287 340 ff=res.field1 … … 310 363 oplot, mean_tao, yfit, color=250, thick=2 311 364 312 fi_ws_tmi= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_tmi_v50.txt'365 fi_ws_tmi=tropflux_id_env+'ws_2000_2009_tmi_v50.txt' 313 366 res=read_ascii(fi_ws_tmi,data_start=1) 314 367 ff=res.field1 … … 338 391 339 392 340 fi_ws_ncep1= '/Users/pkb/work/MY_SAXO/flux_automat/ws_2000_2009_ncep1_v50.txt'393 fi_ws_ncep1=tropflux_id_env+'ws_2000_2009_ncep1_v50.txt' 341 394 res=read_ascii(fi_ws_ncep1,data_start=1) 342 395 ff=res.field1 … … 370 423 spawn, 'mv '+psdir+'idl.ps '+fig 371 424 spawn, 'gv '+fig 372 return373 425 end 374 function x_site_location, site375 n1=strpos(site, 's')376 if (n1 gt -1) then begin377 ns=-1.378 x=strmid(site, 0, n1)379 x=float(x)*ns380 endif else begin381 n1=strpos(site, 'n')382 x=strmid(site, 0, n1)383 ny=1.384 x=float(x)*ny385 endelse386 return, float(x)387 end388 function y_site_location, site389 n1=strpos(site, 'e')390 if (n1 gt -1) then begin391 n=strpos(site, 's')392 if (n gt -1) then begin393 y=strmid(site, n+1, n1-n-1)394 endif else begin395 n=strpos(site, 'n')396 y=strmid(site, n+1, n1-n-1)397 endelse398 399 endif else begin400 n1=strpos(site, 'w')401 n=strpos(site, 's')402 if (n gt -1) then begin403 y=strmid(site, n+1, n1-n-1)404 y=180+(180-float(y))405 endif else begin406 n=strpos(site, 'n')407 y=strmid(site, n+1, n1-n-1)408 y=180+(180-float(y))409 endelse410 endelse411 return,float(y)412 end
Note: See TracChangeset
for help on using the changeset viewer.