Changeset 97 for trunk/src/paper01/fig3
- Timestamp:
- 08/30/11 14:38:29 (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
r94 r97 97 97 ;- 98 98 pro air_validation_scatter_2000_2009_v50, date1, date2 99 99 ; 100 100 @cm_project 101 101 ; 102 102 reinitplt, /z,/invert 103 103 key_portrait = 1 104 104 ; 105 105 openps, FILENAME = project_od_env+'air_validation_scatter_2000_2009_v50.ps' 106 107 ; ;Give the location of mooring for validation of basic meteorological variables108 109 106 ; 107 ; Give the location of mooring for validation of basic meteorological variables 108 ; 109 ; 110 110 sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 111 111 '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ … … 118 118 '0n0e', '0n10w', '0n23w', '0n35w', '10s10w', '12n23w', '12n38w', '14s32w', '15n38w', '19s34w', '20n38w', $ 119 119 '21n23w', '4n23w', '4n38w', '6s10w', '8n38w', '8s30w'] 120 120 ; 121 121 ocean='global' 122 123 nsmooth=1. ; ;statistics are with 7 day smoothed124 ; ;This program will create the following text files with statistics of respective variables122 ; 123 nsmooth=1. ; statistics are with 7 day smoothed 124 ; This program will create the following text files with statistics of respective variables 125 125 close,/all 126 126 ; 127 127 fi_air_erai=project_id_env+'air_2000_2009_erai_v50.txt' 128 128 openw,1,fi_air_erai … … 135 135 fi_air_ncep1=project_id_env+'air_2000_2009_ncep1_v50.txt' 136 136 openw,5,fi_air_ncep1 137 138 137 ; 138 ; 139 139 printf,1, 'x y cor bias std rmsd mean_tao' 140 140 printf,2, 'x y cor bias std rmsd mean_tao' … … 142 142 printf,4, 'x y cor bias std rmsd mean_tao' 143 143 printf,5, 'x y cor bias std rmsd mean_tao' 144 145 ; ;first reading the whole ERAI uncorrected and corrected data146 144 ; 145 ; first reading the whole ERAI uncorrected and corrected data 146 ; 147 147 file=project_id_env+'erai_t2m_19890101_20091231_oafluxgrid.nc' 148 148 initncdf, file 149 unc=read_ncdf('t2m',date1,date2,file=file,/nostr) 149 unc=read_ncdf('t2m',date1,date2,file=file,/nostr) 150 150 unc=unc-273.15 151 151 help, unc 152 152 ; 153 153 file=project_id_env+'TropFlux_t2m_19890101_20091231_v50.nc' 154 154 initncdf, file 155 cor=read_ncdf('t2m',date1,date2,file=file,/nostr) 155 cor=read_ncdf('t2m',date1,date2,file=file,/nostr) 156 156 cor=cor-273.15 157 157 help, cor 158 158 ; 159 159 file=project_id_env+'OAFlux_basic_variables_1985_2009.nc' 160 160 initncdf, file 161 161 oaf=read_ncdf("air", date1, date2, file=file,/nostr) 162 162 help, oaf 163 163 ; 164 164 fi=project_id_env+'air_2m_ncep2_oafluxgrid_19890101_20091231.nc' 165 165 initncdf, fi … … 167 167 nce=nce-273.15 168 168 help, nce 169 169 ; 170 170 file=project_id_env+'t2m_ncep1_19890101_20091231.nc' 171 171 initncdf, file … … 173 173 nce1=nce1-273.15 174 174 help, nce1 175 175 ; 176 176 nn=n_elements(sitelist) 177 177 for n=0, nn-1 do begin 178 179 ; ;reading data from mooring180 181 site=sitelist(n) 178 ; 179 ; reading data from mooring 180 ; 181 site=sitelist(n) 182 182 csite=site 183 183 print, csite … … 185 185 y=y_site_location(site) 186 186 if (y ge 0. and y le 30.) then y=y+360. 187 dx=0.5 188 dy=0.5 187 dx=0.5 188 dy=0.5 189 189 box=[y-dy, y+dy, x-dx, x+dx] 190 190 read_variables_v2, csite,date1,date2,nsmooth, $ 191 191 at, sw,rh,sst,wu,wv,ws,lh 192 193 194 ; air=rh_to_sphum(rh,at,1008) ;; at -> air temperature 195 air=at ;; air -> sea surface temperature 196 ;; lh -> latent heat flux 197 ;; rh -> relative humidity 198 ;; wu,wv,ws -> wind speed 199 ;; 200 201 202 ;; extracting the corrected and uncorrected ERAI data at the locations 192 ; 193 ; 194 ; air=rh_to_sphum(rh,at,1008) ; at -> air temperature 195 air=at ; air -> sea surface temperature 196 ; lh -> latent heat flux 197 ; rh -> relative humidity 198 ; wu,wv,ws -> wind speed 199 ; 200 ; extracting the corrected and uncorrected ERAI data at the locations 203 201 nsmooth=1. 204 202 ; 205 203 extract_flux_tropflux,unc,box, $ 206 204 tropflux 207 205 uncr=tropflux 208 206 ; 209 207 extract_flux_tropflux,cor,box, $ 210 208 tropflux 211 209 corr=tropflux 212 210 ; 213 211 extract_flux_tropflux,oaf,box, $ 214 212 tropflux 215 213 oafl=tropflux 216 214 ; 217 215 extract_flux_tropflux,nce,box, $ 218 216 tropflux 219 217 ncep=tropflux 220 218 ; 221 219 extract_flux_tropflux,nce1,box, $ 222 220 tropflux 223 221 ncep1=tropflux 224 225 226 ind=where(finite(air)) 227 air=air(ind) 228 uncr_air=uncr(ind) 222 ; 223 ; 224 ind=where(finite(air)) 225 air=air(ind) 226 uncr_air=uncr(ind) 229 227 corr_air=corr(ind) 230 oafl=oafl(ind) 231 ncep=ncep(ind) 228 oafl=oafl(ind) 229 ncep=ncep(ind) 232 230 ncep1=ncep1(ind) 233 231 mean_tao=total(air,/nan)/n_elements(ind) 234 232 ; 235 233 statistics_3var_v1, air, uncr_air, corr_air, $ 236 234 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 237 235 ; 238 236 printf, 1, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 239 237 printf, 2, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 240 238 ; 241 239 statistics_3var_v1, air, oafl, ncep, $ 242 240 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 243 241 printf, 3, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 244 242 printf, 4, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f6.2,3x,f4.2,3x,f4.2,3x,f6.2)' 245 243 ; 246 244 statistics_3var_v1, air, ncep1, ncep, $ 247 245 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 248 246 printf, 5, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 249 247 ; 250 248 endfor 251 249 close,/all 252 250 ; 253 251 fi_air_erai=project_id_env+'air_2000_2009_erai_v50.txt' 254 252 res=read_ascii(fi_air_erai,data_start=1) … … 256 254 lat=reform(ff(0,*)) 257 255 lon=reform(ff(1,*)) 258 cor_era=reform(ff(2,*)) 256 cor_era=reform(ff(2,*)) 259 257 cor_erai=total(cor_era)/n_elements(cor_era) 260 bias_era=reform(ff(3,*)) 258 bias_era=reform(ff(3,*)) 261 259 bias_erai=total(bias_era)/n_elements(bias_era) 262 std_era=reform(ff(4,*)) 260 std_era=reform(ff(4,*)) 263 261 std_erai=total(std_era)/n_elements(std_era) 264 rmsd_era=reform(ff(5,*)) 262 rmsd_era=reform(ff(5,*)) 265 263 rmsd_erai=total(rmsd_era)/n_elements(rmsd_era) 266 mean_tao=reform(ff(6,*)) 264 mean_tao=reform(ff(6,*)) 267 265 mean_erai=bias_era+mean_tao 268 266 ; 269 267 print, '' 270 268 print, 'ERAI' … … 276 274 xyouts, 22.3,30.2, cstat, charsize=0.9 277 275 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 278 276 ; 279 277 oplot, [22,31], [22,31] 280 278 ab=linfit(mean_tao, mean_erai,yfit=yfit) 281 a=float(ab(0)) 279 a=float(ab(0)) 282 280 b=float(ab(1)) 283 281 oplot, mean_tao, yfit, color=250, thick=2 284 282 ; 285 283 fi_air_trop=project_id_env+'air_2000_2009_trop_v50.txt' 286 284 res=read_ascii(fi_air_trop,data_start=1) … … 288 286 lat=reform(ff(0,*)) 289 287 lon=reform(ff(1,*)) 290 cor_tro=reform(ff(2,*)) 288 cor_tro=reform(ff(2,*)) 291 289 cor_trop=total(cor_tro)/n_elements(cor_tro) 292 bias_tro=reform(ff(3,*)) 290 bias_tro=reform(ff(3,*)) 293 291 bias_trop=total(bias_tro)/n_elements(bias_tro) 294 std_tro=reform(ff(4,*)) 292 std_tro=reform(ff(4,*)) 295 293 std_trop=total(std_tro)/n_elements(std_tro) 296 rmsd_tro=reform(ff(5,*)) 294 rmsd_tro=reform(ff(5,*)) 297 295 rmsd_trop=total(rmsd_tro)/n_elements(rmsd_tro) 298 mean_tao=reform(ff(6,*)) 296 mean_tao=reform(ff(6,*)) 299 297 mean_trop=bias_tro+mean_tao 300 298 ; 301 299 print, '' 302 300 print, 'TropFlux' 303 301 print, cor_trop, bias_trop, std_trop, rmsd_trop 304 302 cstat=string(cor_trop, bias_trop, std_trop, rmsd_trop, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 305 303 ; 306 304 splot, mean_tao, mean_trop, title='T2m - TAO Vs TropFlux', subtitle='', $ 307 305 charsize=1.1, xtitle='TAO T2m', ytitle='TropFlux T2m', small=[2,3,2],/noer, psym=2, $ … … 310 308 xyouts, 22.3,30.2, cstat, charsize=0.9 311 309 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 312 310 ; 313 311 ab=linfit(mean_tao, mean_trop,yfit=yfit) 314 a=float(ab(0)) 312 a=float(ab(0)) 315 313 b=float(ab(1)) 316 314 oplot, mean_tao, yfit, color=250, thick=2 317 315 ; 318 316 fi_air_oaflx=project_id_env+'air_2000_2009_oaflx_v50.txt' 319 317 res=read_ascii(fi_air_oaflx,data_start=1) … … 321 319 lat=reform(ff(0,*)) 322 320 lon=reform(ff(1,*)) 323 cor_oaf=reform(ff(2,*)) 321 cor_oaf=reform(ff(2,*)) 324 322 cor_oafl=total(cor_oaf)/n_elements(cor_oaf) 325 bias_oaf=reform(ff(3,*)) 323 bias_oaf=reform(ff(3,*)) 326 324 bias_oafl=total(bias_oaf)/n_elements(bias_oaf) 327 std_oaf=reform(ff(4,*)) 325 std_oaf=reform(ff(4,*)) 328 326 std_oafl=total(std_oaf)/n_elements(std_oaf) 329 rmsd_oaf=reform(ff(5,*)) 327 rmsd_oaf=reform(ff(5,*)) 330 328 rmsd_oafl=total(rmsd_oaf)/n_elements(rmsd_oaf) 331 mean_tao=reform(ff(6,*)) 329 mean_tao=reform(ff(6,*)) 332 330 mean_oafl=bias_oaf+mean_tao 333 331 ; 334 332 print, '' 335 333 print, 'OAFlux' 336 334 print, cor_oafl, bias_oafl, std_oafl, rmsd_oafl 337 335 cstat=string(cor_oafl, bias_oafl, std_oafl, rmsd_oafl, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 338 336 ; 339 337 splot, mean_tao, mean_oafl, title='T2m - TAO Vs OAFlux', subtitle='', $ 340 338 charsize=1.1, xtitle='TAO T2m', ytitle='OAFlux T2m', small=[2,3,3],/noer, psym=2, $ … … 343 341 xyouts, 22.3,30.2, cstat, charsize=0.9 344 342 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 345 343 ; 346 344 ab=linfit(mean_tao, mean_oafl,yfit=yfit) 347 a=float(ab(0)) 345 a=float(ab(0)) 348 346 b=float(ab(1)) 349 347 oplot, mean_tao, yfit, color=250, thick=2 350 348 ; 351 349 fi_air_ncep=project_id_env+'air_2000_2009_ncep_v50.txt' 352 350 res=read_ascii(fi_air_ncep,data_start=1) … … 354 352 lat=reform(ff(0,*)) 355 353 lon=reform(ff(1,*)) 356 cor_nce=reform(ff(2,*)) 354 cor_nce=reform(ff(2,*)) 357 355 cor_ncep=total(cor_nce)/n_elements(cor_nce) 358 bias_nce=reform(ff(3,*)) 356 bias_nce=reform(ff(3,*)) 359 357 bias_ncep=total(bias_nce)/n_elements(bias_nce) 360 std_nce=reform(ff(4,*)) 358 std_nce=reform(ff(4,*)) 361 359 std_ncep=total(std_nce)/n_elements(std_nce) 362 rmsd_nce=reform(ff(5,*)) 360 rmsd_nce=reform(ff(5,*)) 363 361 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 364 mean_tao=reform(ff(6,*)) 362 mean_tao=reform(ff(6,*)) 365 363 mean_ncep=bias_nce+mean_tao 366 364 ; 367 365 print, '' 368 366 print, 'NCEP2' 369 367 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 370 368 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 371 369 ; 372 370 splot, mean_tao, mean_ncep, title='T2m - TAO Vs NCEP2', subtitle='', $ 373 371 charsize=1.1, xtitle='TAO T2m', ytitle='NCEP2 T2m', small=[2,3,4],/noer, psym=2, $ … … 376 374 xyouts, 22.3,30.2, cstat, charsize=0.9 377 375 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 378 376 ; 379 377 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 380 a=float(ab(0)) 378 a=float(ab(0)) 381 379 b=float(ab(1)) 382 380 oplot, mean_tao, yfit, color=250, thick=2 383 381 ; 384 382 fi_air_ncep1=project_id_env+'air_2000_2009_ncep1_v50.txt' 385 383 res=read_ascii(fi_air_ncep1,data_start=1) … … 387 385 lat=reform(ff(0,*)) 388 386 lon=reform(ff(1,*)) 389 cor_nce=reform(ff(2,*)) 387 cor_nce=reform(ff(2,*)) 390 388 cor_ncep=total(cor_nce)/n_elements(cor_nce) 391 bias_nce=reform(ff(3,*)) 389 bias_nce=reform(ff(3,*)) 392 390 bias_ncep=total(bias_nce)/n_elements(bias_nce) 393 std_nce=reform(ff(4,*)) 391 std_nce=reform(ff(4,*)) 394 392 std_ncep=total(std_nce)/n_elements(std_nce) 395 rmsd_nce=reform(ff(5,*)) 393 rmsd_nce=reform(ff(5,*)) 396 394 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 397 mean_tao=reform(ff(6,*)) 395 mean_tao=reform(ff(6,*)) 398 396 mean_ncep=bias_nce+mean_tao 399 397 ; 400 398 print, '' 401 399 print, 'NCEP1' 402 400 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 403 401 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 404 402 ; 405 403 splot, mean_tao, mean_ncep, title='T2m - TAO Vs NCEP_NCAR', subtitle='', $ 406 404 charsize=1.1, xtitle='TAO T2m', ytitle='NCEP', small=[2,3,5],/noer, psym=2, $ … … 409 407 xyouts, 22.3,30.2, cstat, charsize=0.9 410 408 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 411 409 ; 412 410 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 413 a=float(ab(0)) 411 a=float(ab(0)) 414 412 b=float(ab(1)) 415 413 oplot, mean_tao, yfit, color=250, thick=2 416 414 ; 417 415 closeps 418 416 ; 419 417 return 420 418 end … … 443 441 y=strmid(site, n+1, n1-n-1) 444 442 endelse 445 443 ; 446 444 endif else begin 447 445 n1=strpos(site, 'w') … … 456 454 endelse 457 455 endelse 456 ; 458 457 return,float(y) 458 ; 459 459 end -
trunk/src/paper01/fig3/q2m_validation_scatter_2000_2009_v50.pro
r94 r97 99 99 ;- 100 100 pro q2m_validation_scatter_2000_2009_v50, date1, date2 101 101 ; 102 102 @cm_project 103 103 ; 104 104 reinitplt, /z,/invert 105 105 key_portrait = 1 106 106 ; 107 107 openps, FILENAME = project_od_env+'q2m_validation_scatter_2000_2009_v50.ps' 108 109 ; ;Give the location of mooring for validation of basic meteorological variables110 111 108 ; 109 ; Give the location of mooring for validation of basic meteorological variables 110 ; 111 ; 112 112 sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 113 113 '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ … … 120 120 '0n0e', '0n10w', '0n23w', '0n35w', '10s10w', '12n23w', '12n38w', '14s32w', '15n38w', '19s34w', '20n38w', $ 121 121 '21n23w', '4n23w', '4n38w', '6s10w', '8n38w', '8s30w'] 122 122 ; 123 123 ocean='global' 124 125 nsmooth=1. ; ;statistics are with 7 day smoothed126 ; ;This program will create the following text files with statistics of respective variables124 ; 125 nsmooth=1. ; statistics are with 7 day smoothed 126 ; This program will create the following text files with statistics of respective variables 127 127 close,/all 128 128 ; 129 129 fi_q2m_erai=project_id_env+'q2m_2000_2009_erai_v50.txt' 130 130 openw,1,fi_q2m_erai … … 137 137 fi_q2m_ncep1=project_id_env+'q2m_2000_2009_ncep1_v50.txt' 138 138 openw,5,fi_q2m_ncep1 139 140 139 ; 140 ; 141 141 printf,1, 'x y cor bias std rmsd mean_tao' 142 142 printf,2, 'x y cor bias std rmsd mean_tao' … … 144 144 printf,4, 'x y cor bias std rmsd mean_tao' 145 145 printf,5, 'x y cor bias std rmsd mean_tao' 146 147 ; ;first reading the whole ERAI uncorrected and corrected data148 146 ; 147 ; first reading the whole ERAI uncorrected and corrected data 148 ; 149 149 file=project_id_env+'erai_q2m_19890101_20091231_oafluxgrid.nc' 150 150 initncdf, file 151 151 unc=read_ncdf('q2m',date1,date2,file=file,/nostr) 152 152 help, unc 153 153 ; 154 154 file=project_id_env+'TropFlux_q2m_19890101_20091231_v20.nc' 155 155 initncdf, file 156 156 cor=read_ncdf('q2m',date1,date2,file=file,/nostr) 157 157 help, cor 158 158 ; 159 159 file=project_id_env+'OAFlux_basic_variables_1985_2009.nc' 160 160 initncdf, file 161 161 oaf=read_ncdf("sphum", date1, date2, file=file,/nostr) 162 162 help, oaf 163 163 ; 164 164 fi=project_id_env+'sphum_ncep2_oafluxgrid_19890101_20091231.nc' 165 165 initncdf, fi … … 167 167 nce=nce*1000 168 168 help, nce 169 169 ; 170 170 file=project_id_env+'q2m_ncep1_19890101_20091231.nc' 171 171 initncdf, file … … 173 173 nce1=nce1*1000 174 174 help, nce1 175 175 ; 176 176 nn=n_elements(sitelist) 177 177 for n=0, nn-1 do begin 178 179 ; ;reading data from mooring180 181 site=sitelist(n) 178 ; 179 ; reading data from mooring 180 ; 181 site=sitelist(n) 182 182 csite=site 183 183 print, csite … … 185 185 y=y_site_location(site) 186 186 if (y ge 0. and y le 30.) then y=y+360. 187 dx=0.5 188 dy=0.5 187 dx=0.5 188 dy=0.5 189 189 box=[y-dy, y+dy, x-dx, x+dx] 190 190 read_variables_v2, csite,date1,date2,nsmooth, $ 191 191 at, sw,rh,sst,wu,wv,ws,lh 192 193 194 q2m=rh_to_sphum(rh,at,1008) ;; at -> q2m temperature 195 ; q2m=at ;; q2m -> sea surface temperature 196 ;; lh -> latent heat flux 197 ;; rh -> relative humidity 198 ;; wu,wv,ws -> wind speed 199 ;; 200 201 202 ;; extracting the corrected and uncorrected ERAI data at the locations 192 ; 193 ; 194 q2m=rh_to_sphum(rh,at,1008) ; at -> q2m temperature 195 ; q2m=at ; q2m -> sea surface temperature 196 ; lh -> latent heat flux 197 ; rh -> relative humidity 198 ; wu,wv,ws -> wind speed 199 ; 200 ; extracting the corrected and uncorrected ERAI data at the locations 203 201 nsmooth=1. 204 202 ; 205 203 extract_flux_tropflux,unc,box, $ 206 204 tropflux 207 205 uncr=tropflux 208 206 ; 209 207 extract_flux_tropflux,cor,box, $ 210 208 tropflux 211 209 corr=tropflux 212 210 ; 213 211 extract_flux_tropflux,oaf,box, $ 214 212 tropflux 215 213 oafl=tropflux 216 214 ; 217 215 extract_flux_tropflux,nce,box, $ 218 216 tropflux 219 217 ncep=tropflux 220 218 ; 221 219 extract_flux_tropflux,nce1,box, $ 222 220 tropflux 223 221 ncep1=tropflux 224 225 ind=where(finite(q2m)) 226 q2m=q2m(ind) 227 uncr_q2m=uncr(ind) 222 ; 223 ind=where(finite(q2m)) 224 q2m=q2m(ind) 225 uncr_q2m=uncr(ind) 228 226 corr_q2m=corr(ind) 229 oafl=oafl(ind) 230 ncep=ncep(ind) 227 oafl=oafl(ind) 228 ncep=ncep(ind) 231 229 ncep1=ncep1(ind) 232 230 mean_tao=total(q2m,/nan)/n_elements(ind) 233 231 ; 234 232 statistics_3var_v1, q2m, uncr_q2m, corr_q2m, $ 235 233 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 236 234 ; 237 235 printf, 1, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 238 236 printf, 2, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 239 237 ; 240 238 statistics_3var_v1, q2m, oafl, ncep, $ 241 239 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 242 240 printf, 3, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 243 241 printf, 4, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f6.2,3x,f4.2,3x,f4.2,3x,f6.2)' 244 242 ; 245 243 statistics_3var_v1, q2m, ncep1, ncep, $ 246 244 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 247 245 printf, 5, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 248 246 ; 249 247 endfor 250 248 close,/all 251 249 ; 252 250 fi_q2m_erai=project_id_env+'q2m_2000_2009_erai_v50.txt' 253 251 res=read_ascii(fi_q2m_erai,data_start=1) … … 255 253 lat=reform(ff(0,*)) 256 254 lon=reform(ff(1,*)) 257 cor_era=reform(ff(2,*)) 255 cor_era=reform(ff(2,*)) 258 256 cor_erai=total(cor_era)/n_elements(cor_era) 259 bias_era=reform(ff(3,*)) 257 bias_era=reform(ff(3,*)) 260 258 bias_erai=total(bias_era)/n_elements(bias_era) 261 std_era=reform(ff(4,*)) 259 std_era=reform(ff(4,*)) 262 260 std_erai=total(std_era)/n_elements(std_era) 263 rmsd_era=reform(ff(5,*)) 261 rmsd_era=reform(ff(5,*)) 264 262 rmsd_erai=total(rmsd_era)/n_elements(rmsd_era) 265 mean_tao=reform(ff(6,*)) 263 mean_tao=reform(ff(6,*)) 266 264 mean_erai=bias_era+mean_tao 267 265 ; 268 266 print, '' 269 267 print, 'ERAI' … … 275 273 xyouts, 12,20.2, cstat, charsize=0.9 276 274 xyouts, 12,19.7, 'cor bias std rmsd', charsize=0.9 277 275 ; 278 276 oplot, [11,21], [11,21] 279 277 ab=linfit(mean_tao, mean_erai,yfit=yfit) 280 a=float(ab(0)) 278 a=float(ab(0)) 281 279 b=float(ab(1)) 282 280 oplot, mean_tao, yfit, color=250, thick=2 283 281 ; 284 282 fi_q2m_trop=project_id_env+'q2m_2000_2009_trop_v50.txt' 285 283 res=read_ascii(fi_q2m_trop,data_start=1) … … 287 285 lat=reform(ff(0,*)) 288 286 lon=reform(ff(1,*)) 289 cor_tro=reform(ff(2,*)) 287 cor_tro=reform(ff(2,*)) 290 288 cor_trop=total(cor_tro)/n_elements(cor_tro) 291 bias_tro=reform(ff(3,*)) 289 bias_tro=reform(ff(3,*)) 292 290 bias_trop=total(bias_tro)/n_elements(bias_tro) 293 std_tro=reform(ff(4,*)) 291 std_tro=reform(ff(4,*)) 294 292 std_trop=total(std_tro)/n_elements(std_tro) 295 rmsd_tro=reform(ff(5,*)) 293 rmsd_tro=reform(ff(5,*)) 296 294 rmsd_trop=total(rmsd_tro)/n_elements(rmsd_tro) 297 mean_tao=reform(ff(6,*)) 295 mean_tao=reform(ff(6,*)) 298 296 mean_trop=bias_tro+mean_tao 299 297 ; 300 298 print, '' 301 299 print, 'TropFlux' 302 300 print, cor_trop, bias_trop, std_trop, rmsd_trop 303 301 cstat=string(cor_trop, bias_trop, std_trop, rmsd_trop, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 304 302 ; 305 303 splot, mean_tao, mean_trop, title='Q2m - TAO Vs TropFlux', subtitle='', $ 306 304 charsize=1.1, xtitle='TAO Q2m', ytitle='TropFlux Q2m', small=[2,3,2],/noer, psym=2, $ … … 309 307 xyouts, 12,20.2, cstat, charsize=0.9 310 308 xyouts, 12,19.7, 'cor bias std rmsd', charsize=0.9 311 309 ; 312 310 ab=linfit(mean_tao, mean_trop,yfit=yfit) 313 a=float(ab(0)) 311 a=float(ab(0)) 314 312 b=float(ab(1)) 315 313 oplot, mean_tao, yfit, color=250, thick=2 316 314 ; 317 315 fi_q2m_oaflx=project_id_env+'q2m_2000_2009_oaflx_v50.txt' 318 316 res=read_ascii(fi_q2m_oaflx,data_start=1) … … 320 318 lat=reform(ff(0,*)) 321 319 lon=reform(ff(1,*)) 322 cor_oaf=reform(ff(2,*)) 320 cor_oaf=reform(ff(2,*)) 323 321 cor_oafl=total(cor_oaf)/n_elements(cor_oaf) 324 bias_oaf=reform(ff(3,*)) 322 bias_oaf=reform(ff(3,*)) 325 323 bias_oafl=total(bias_oaf)/n_elements(bias_oaf) 326 std_oaf=reform(ff(4,*)) 324 std_oaf=reform(ff(4,*)) 327 325 std_oafl=total(std_oaf)/n_elements(std_oaf) 328 rmsd_oaf=reform(ff(5,*)) 326 rmsd_oaf=reform(ff(5,*)) 329 327 rmsd_oafl=total(rmsd_oaf)/n_elements(rmsd_oaf) 330 mean_tao=reform(ff(6,*)) 328 mean_tao=reform(ff(6,*)) 331 329 mean_oafl=bias_oaf+mean_tao 332 330 ; 333 331 print, '' 334 332 print, 'OAFlux' 335 333 print, cor_oafl, bias_oafl, std_oafl, rmsd_oafl 336 334 cstat=string(cor_oafl, bias_oafl, std_oafl, rmsd_oafl, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 337 335 ; 338 336 splot, mean_tao, mean_oafl, title='Q2m - TAO Vs OAFlux', subtitle='', $ 339 337 charsize=1.1, xtitle='TAO Q2m', ytitle='OAFlux Q2m', small=[2,3,3],/noer, psym=2, $ … … 342 340 xyouts, 12,20.2, cstat, charsize=0.9 343 341 xyouts, 12,19.7, 'cor bias std rmsd', charsize=0.9 344 342 ; 345 343 ab=linfit(mean_tao, mean_oafl,yfit=yfit) 346 a=float(ab(0)) 344 a=float(ab(0)) 347 345 b=float(ab(1)) 348 346 oplot, mean_tao, yfit, color=250, thick=2 349 350 347 ; 348 ; 351 349 fi_q2m_ncep=project_id_env+'q2m_2000_2009_ncep_v50.txt' 352 350 res=read_ascii(fi_q2m_ncep,data_start=1) … … 354 352 lat=reform(ff(0,*)) 355 353 lon=reform(ff(1,*)) 356 cor_nce=reform(ff(2,*)) 354 cor_nce=reform(ff(2,*)) 357 355 cor_ncep=total(cor_nce)/n_elements(cor_nce) 358 bias_nce=reform(ff(3,*)) 356 bias_nce=reform(ff(3,*)) 359 357 bias_ncep=total(bias_nce)/n_elements(bias_nce) 360 std_nce=reform(ff(4,*)) 358 std_nce=reform(ff(4,*)) 361 359 std_ncep=total(std_nce)/n_elements(std_nce) 362 rmsd_nce=reform(ff(5,*)) 360 rmsd_nce=reform(ff(5,*)) 363 361 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 364 mean_tao=reform(ff(6,*)) 362 mean_tao=reform(ff(6,*)) 365 363 mean_ncep=bias_nce+mean_tao 366 364 ; 367 365 print, '' 368 366 print, 'NCEP2' 369 367 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 370 368 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 371 369 ; 372 370 splot, mean_tao, mean_ncep, title='Q2m - TAO Vs NCEP2', subtitle='', $ 373 371 charsize=1.1, xtitle='TAO Q2m', ytitle='NCEP2 Q2m', small=[2,3,4],/noer, psym=2, $ … … 376 374 xyouts, 12,20.2, cstat, charsize=0.9 377 375 xyouts, 12,19.7, 'cor bias std rmsd', charsize=0.9 378 376 ; 379 377 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 380 a=float(ab(0)) 378 a=float(ab(0)) 381 379 b=float(ab(1)) 382 380 oplot, mean_tao, yfit, color=250, thick=2 383 381 ; 384 382 fi_q2m_ncep1=project_id_env+'q2m_2000_2009_ncep1_v50.txt' 385 383 res=read_ascii(fi_q2m_ncep1,data_start=1) … … 387 385 lat=reform(ff(0,*)) 388 386 lon=reform(ff(1,*)) 389 cor_nce=reform(ff(2,*)) 387 cor_nce=reform(ff(2,*)) 390 388 cor_ncep=total(cor_nce)/n_elements(cor_nce) 391 bias_nce=reform(ff(3,*)) 389 bias_nce=reform(ff(3,*)) 392 390 bias_ncep=total(bias_nce)/n_elements(bias_nce) 393 std_nce=reform(ff(4,*)) 391 std_nce=reform(ff(4,*)) 394 392 std_ncep=total(std_nce)/n_elements(std_nce) 395 rmsd_nce=reform(ff(5,*)) 393 rmsd_nce=reform(ff(5,*)) 396 394 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 397 mean_tao=reform(ff(6,*)) 395 mean_tao=reform(ff(6,*)) 398 396 mean_ncep=bias_nce+mean_tao 399 397 ; 400 398 print, '' 401 399 print, 'NCEP1' 402 400 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 403 401 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 404 402 ; 405 403 splot, mean_tao, mean_ncep, title='Q2m - TAO Vs NCEP', subtitle='', $ 406 404 charsize=1.1, xtitle='TAO Q2m', ytitle='NCEP1 Q2m', small=[2,3,5],/noer, psym=2, $ … … 409 407 xyouts, 12,20.2, cstat, charsize=0.9 410 408 xyouts, 12,19.7, 'cor bias std rmsd', charsize=0.9 411 409 ; 412 410 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 413 a=float(ab(0)) 411 a=float(ab(0)) 414 412 b=float(ab(1)) 415 413 oplot, mean_tao, yfit, color=250, thick=2 416 414 ; 417 415 closeps 418 416 ; 419 417 end -
trunk/src/paper01/fig3/read_variables_v2.pro
r94 r97 90 90 @cm_project 91 91 ; 92 ; ;DEFINE THE OUTPUT TIME AXIS92 ; DEFINE THE OUTPUT TIME AXIS 93 93 ; 94 94 jda1=date2jul(date1) … … 96 96 jpt=(jda2-jda1+1l) 97 97 time=jda1+dindgen(jpt) 98 99 ; 100 ; ;FIRST READ ALL DATA FROM SITE101 ; ;- if file exists, extract correct time axis102 ; ;- if not, fill variable with missing values103 ; 104 ; ;SHORTWAVE98 ; 99 ; 100 ; FIRST READ ALL DATA FROM SITE 101 ; - if file exists, extract correct time axis 102 ; - if not, fill variable with missing values 103 ; 104 ;SHORTWAVE 105 105 fi=project_id_env+'rad'+csite+'_dy.cdf' 106 106 f=file_test(fi) … … 121 121 print, fi, ' not found' 122 122 endelse 123 123 ; 124 124 ind_sw=where(sw_q ne 1. and sw_q ne 2.) 125 126 ; ;LHF125 ; 126 ;LHF 127 127 fi=project_id_env+'qlat'+csite+'_dy.cdf' 128 128 f=file_test(fi) … … 142 142 print, fi, ' not found' 143 143 endelse 144 145 ; ;POSITION144 ; 145 ;POSITION 146 146 fi=project_id_env+'pos'+csite+'_dy.cdf' 147 147 f=file_test(fi) … … 161 161 print, fi, ' not found' 162 162 endelse 163 164 165 ; ;MET PARAMETERS163 ; 164 ; 165 ;MET PARAMETERS 166 166 fi=project_id_env+'met'+csite+'_dy.cdf' 167 167 f=file_test(fi) … … 176 176 sst=fltarr(jpt)+!values.f_nan 177 177 sst_q=fltarr(jpt)+!values.f_nan 178 178 ; 179 179 if (f) then begin 180 180 tt0=time_lec(fi) … … 206 206 print, fi, ' not found' 207 207 endelse 208 209 ind_at=where(at_q ne 1 and at_q ne 2) 208 ; 209 ind_at=where(at_q ne 1 and at_q ne 2) 210 210 ind_ws=where(ws_q ne 1 and ws_q ne 2) 211 ind_rh=where(rh_q ne 1 and rh_q ne 2) 211 ind_rh=where(rh_q ne 1 and rh_q ne 2) 212 212 ind_sst=where(sst_q ne 1 and sst_q ne 2) 213 213 ind_lh=where(lh_q ne 1 and lh_q ne 2) 214 214 ; 215 215 ind=union(ind_at, union(ind_rh, union(ind_ws, union(ind_lh, ind_sst)))) 216 216 ; 217 217 if (ind(0) ne -1) then begin 218 sw(ind)=!Values.f_nan 218 sw(ind)=!Values.f_nan 219 219 at(ind)=!Values.f_nan 220 rh(ind)=!Values.f_nan 220 rh(ind)=!Values.f_nan 221 221 ws(ind)=!Values.f_nan 222 sst(ind)=!Values.f_nan 222 sst(ind)=!Values.f_nan 223 223 lh(ind)=!Values.f_nan 224 wu(ind)=!Values.f_nan 224 wu(ind)=!Values.f_nan 225 225 wv(ind)=!Values.f_nan 226 226 endif 227 227 ; 228 ; ;Replace missing values by "NaN"228 ; Replace missing values by "NaN" 229 229 ; 230 230 tsvars=['at','sw','rh','sst','wu','wv','ws','lat','lon'] … … 233 233 for n=0,nn-1 do begin 234 234 var=vars(n) 235 com='ind=where('+var+' ge 1.e20) 235 com='ind=where('+var+' ge 1.e20) 236 236 if (ind(0) ne -1) then '+var+'(ind)=!values.f_nan' 237 237 r=execute(com) 238 238 endfor 239 239 ; 240 240 nsmooth=nsmooth 241 at=smooth(at,nsmooth,/nan) 241 at=smooth(at,nsmooth,/nan) 242 242 sst=smooth(sst,nsmooth,/nan) 243 lh=smooth(lh,nsmooth,/nan) 243 lh=smooth(lh,nsmooth,/nan) 244 244 rh=smooth(rh,nsmooth,/nan) 245 wu=smooth(wu,nsmooth,/nan) 245 wu=smooth(wu,nsmooth,/nan) 246 246 wv=smooth(wv,nsmooth,/nan) 247 ws=smooth(ws,nsmooth,/nan) 247 ws=smooth(ws,nsmooth,/nan) 248 248 sw=smooth(sw,nsmooth,/nan) 249 249 ; 250 250 end 251 252 251 ; 253 252 function time_lec, fi 254 253 tt=ncdf_lec(fi,var='time') 255 fid=ncdf_open(fi) 254 fid=ncdf_open(fi) 256 255 vid=ncdf_varid(fid,'time') 257 256 ncdf_attget, fid,vid,'units',orig … … 261 260 dd=long(strmid(orig,19,2)) 262 261 tt=julday(mm,dd,yy,12,00)+tt 262 ; 263 263 return, tt 264 ; 264 265 end -
trunk/src/paper01/fig3/sst_validation_scatter_2000_2009_v50.pro
r94 r97 95 95 reinitplt, /z,/invert 96 96 key_portrait = 1 97 97 ; 98 98 openps, FILENAME = project_od_env+'sst_validation_scatter_2000_2009_v50.ps' 99 100 ; ;Give the location of mooring for validation of basic meteorological variables101 102 99 ; 100 ; Give the location of mooring for validation of basic meteorological variables 101 ; 102 ; 103 103 sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 104 104 '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ … … 111 111 '0n0e', '0n10w', '0n23w', '0n35w', '10s10w', '12n23w', '12n38w', '14s32w', '15n38w', '19s34w', '20n38w', $ 112 112 '21n23w', '4n23w', '4n38w', '6s10w', '8n38w', '8s30w'] 113 113 ; 114 114 ocean='global' 115 116 nsmooth=1. ; ;statistics are with 7 day smoothed117 ; ;This program will create the following text files with statistics of respective variables115 ; 116 nsmooth=1. ; statistics are with 7 day smoothed 117 ; This program will create the following text files with statistics of respective variables 118 118 close,/all 119 119 ; 120 120 fi_sst_erai=project_id_env+'sst_2000_2009_erai_v50.txt' 121 121 openw,1,fi_sst_erai … … 130 130 fi_sst_ncep1=project_id_env+'sst_2000_2009_ncep1_v50.txt' 131 131 openw,6,fi_sst_ncep1 132 133 134 132 ; 133 ; 134 ; 135 135 printf,1, 'x y cor bias std rmsd mean_tao' 136 136 printf,2, 'x y cor bias std rmsd mean_tao' … … 139 139 printf,5, 'x y cor bias std rmsd mean_tao' 140 140 printf,6, 'x y cor bias std rmsd mean_tao' 141 142 ; ;first reading the whole ERAI uncorrected and corrected data143 141 ; 142 ; first reading the whole ERAI uncorrected and corrected data 143 ; 144 144 file=project_id_env+'erai_sst_19890101_20091231_oafluxgrid.nc' 145 145 initncdf, file 146 unc=read_ncdf('sst',date1,date2,file=file,/nostr) 146 unc=read_ncdf('sst',date1,date2,file=file,/nostr) 147 147 unc=unc-273.15 148 148 help, unc 149 149 ; 150 150 file=project_id_env+'TropFlux_sst_19890101_20091231_v20.nc' 151 151 initncdf, file 152 cor=read_ncdf('sst',date1,date2,file=file,/nostr) 152 cor=read_ncdf('sst',date1,date2,file=file,/nostr) 153 153 cor=cor-273.15 154 154 help, cor 155 155 ; 156 156 file=project_id_env+'OAFlux_basic_variables_1985_2009.nc' 157 157 initncdf, file 158 158 oaf=read_ncdf("sst", date1, date2, file=file,/nostr) 159 159 help, oaf 160 160 ; 161 161 fi=project_id_env+'sst_ncep2_oafluxgrid_19890101_20091231.nc' 162 162 initncdf, fi … … 164 164 nce=nce-273.15 165 165 help, nce 166 166 ; 167 167 fi=project_id_env+'tmi_OI_oafluxgrid_30N30S.nc' 168 168 initncdf, fi 169 169 sst_tmi=read_ncdf("sst", date1, date2, file=fi,/nostr) 170 170 help, sst_tmi 171 171 ; 172 172 file=project_id_env+'sst_ncep1_19890101_20091231.nc' 173 173 initncdf, file … … 175 175 nce1=nce1-273.15 176 176 help, nce1 177 177 ; 178 178 nn=n_elements(sitelist) 179 179 for n=0, nn-1 do begin 180 181 ; ;reading data from mooring182 183 site=sitelist(n) 180 ; 181 ; reading data from mooring 182 ; 183 site=sitelist(n) 184 184 csite=site 185 185 print, csite … … 187 187 y=y_site_location(site) 188 188 if (y ge 0. and y le 30.) then y=y+360. 189 dx=0.5 190 dy=0.5 189 dx=0.5 190 dy=0.5 191 191 box=[y-dy, y+dy, x-dx, x+dx] 192 192 read_variables_v2, csite,date1,date2,nsmooth, $ 193 193 at, sw,rh,sst,wu,wv,ws,lh 194 195 196 ind=where(finite(sst)) 194 ; 195 ; 196 ind=where(finite(sst)) 197 197 valid=n_elements(ind) 198 198 ; 199 199 if (valid ge 180) then begin 200 201 ; ;extracting the corrected and uncorrected ERAI data at the locations200 ; 201 ; extracting the corrected and uncorrected ERAI data at the locations 202 202 nsmooth=1. 203 203 ; 204 204 extract_flux_tropflux,unc,box, $ 205 205 tropflux 206 206 uncr=tropflux 207 207 ; 208 208 extract_flux_tropflux,cor,box, $ 209 209 tropflux 210 210 corr=tropflux 211 211 ; 212 212 extract_flux_tropflux,oaf,box, $ 213 213 tropflux 214 214 oafl=tropflux 215 215 ; 216 216 extract_flux_tropflux,nce,box, $ 217 217 tropflux 218 218 ncep=tropflux 219 219 ; 220 220 extract_flux_tropflux,sst_tmi,box, $ 221 221 tropflux 222 222 tmi=tropflux 223 223 ; 224 224 extract_flux_tropflux,nce1,box, $ 225 225 tropflux 226 226 ncep1=tropflux 227 228 229 ind=where(finite(sst)) 230 sst=sst(ind) 231 uncr_sst=uncr(ind) 227 ; 228 ; 229 ind=where(finite(sst)) 230 sst=sst(ind) 231 uncr_sst=uncr(ind) 232 232 corr_sst=corr(ind) 233 oafl=oafl(ind) 234 ncep=ncep(ind) 235 tmi=tmi(ind) 233 oafl=oafl(ind) 234 ncep=ncep(ind) 235 tmi=tmi(ind) 236 236 ncep1=ncep1(ind) 237 237 mean_tao=total(sst,/nan)/n_elements(ind) 238 238 ; 239 239 statistics_3var_v1, sst, uncr_sst, corr_sst, $ 240 240 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 241 241 ; 242 242 printf, 1, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 243 243 printf, 2, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 244 244 ; 245 245 statistics_3var_v1, sst, oafl, ncep, $ 246 246 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 247 247 printf, 3, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 248 248 printf, 4, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f6.2,3x,f4.2,3x,f4.2,3x,f6.2)' 249 249 ; 250 250 statistics_3var_v1, sst, tmi, ncep1, $ 251 251 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 252 252 printf, 5, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 253 253 printf, 6, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f6.2)' 254 254 ; 255 255 endif 256 256 ; 257 257 endfor 258 258 close,/all 259 259 ; 260 260 fi_sst_erai=project_id_env+'sst_2000_2009_v50_erai.txt' 261 261 res=read_ascii(fi_sst_erai,data_start=1) … … 263 263 lat=reform(ff(0,*)) 264 264 lon=reform(ff(1,*)) 265 cor_era=reform(ff(2,*)) 265 cor_era=reform(ff(2,*)) 266 266 cor_erai=total(cor_era)/n_elements(cor_era) 267 bias_era=reform(ff(3,*)) 267 bias_era=reform(ff(3,*)) 268 268 bias_erai=total(bias_era)/n_elements(bias_era) 269 std_era=reform(ff(4,*)) 269 std_era=reform(ff(4,*)) 270 270 std_erai=total(std_era)/n_elements(std_era) 271 rmsd_era=reform(ff(5,*)) 271 rmsd_era=reform(ff(5,*)) 272 272 rmsd_erai=total(rmsd_era)/n_elements(rmsd_era) 273 mean_tao=reform(ff(6,*)) 273 mean_tao=reform(ff(6,*)) 274 274 mean_erai=bias_era+mean_tao 275 275 ; 276 276 print, '' 277 277 print, 'ERAI' … … 283 283 xyouts, 22.3,30.2, cstat, charsize=0.9 284 284 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 285 285 ; 286 286 oplot, [22,31], [22,31] 287 287 ab=linfit(mean_tao, mean_erai,yfit=yfit) 288 a=float(ab(0)) 289 b=float(ab(1)) 290 oplot, mean_tao, yfit, color=250, thick=2 291 288 a=float(ab(0)) 289 b=float(ab(1)) 290 oplot, mean_tao, yfit, color=250, thick=2 291 ; 292 292 fi_sst_trop=project_id_env+'sst_2000_2009_v50_trop.txt' 293 293 res=read_ascii(fi_sst_trop,data_start=1) … … 295 295 lat=reform(ff(0,*)) 296 296 lon=reform(ff(1,*)) 297 cor_tro=reform(ff(2,*)) 297 cor_tro=reform(ff(2,*)) 298 298 cor_trop=total(cor_tro)/n_elements(cor_tro) 299 bias_tro=reform(ff(3,*)) 299 bias_tro=reform(ff(3,*)) 300 300 bias_trop=total(bias_tro)/n_elements(bias_tro) 301 std_tro=reform(ff(4,*)) 301 std_tro=reform(ff(4,*)) 302 302 std_trop=total(std_tro)/n_elements(std_tro) 303 rmsd_tro=reform(ff(5,*)) 303 rmsd_tro=reform(ff(5,*)) 304 304 rmsd_trop=total(rmsd_tro)/n_elements(rmsd_tro) 305 mean_tao=reform(ff(6,*)) 305 mean_tao=reform(ff(6,*)) 306 306 mean_trop=bias_tro+mean_tao 307 307 ; 308 308 print, '' 309 309 print, 'TropFlux' 310 310 print, cor_trop, bias_trop, std_trop, rmsd_trop 311 311 cstat=string(cor_trop, bias_trop, std_trop, rmsd_trop, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 312 312 ; 313 313 splot, mean_tao, mean_trop, title='SST - TAO Vs TropFlux', subtitle='', $ 314 314 charsize=1.1, xtitle='TAO SST', ytitle='TropFlux SST', small=[2,3,2],/noer, psym=2, $ … … 317 317 xyouts, 22.3,30.2, cstat, charsize=0.9 318 318 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 319 319 ; 320 320 ab=linfit(mean_tao, mean_trop,yfit=yfit) 321 a=float(ab(0)) 322 b=float(ab(1)) 323 oplot, mean_tao, yfit, color=250, thick=2 324 321 a=float(ab(0)) 322 b=float(ab(1)) 323 oplot, mean_tao, yfit, color=250, thick=2 324 ; 325 325 fi_sst_oaflx=project_id_env+'sst_2000_2009_v50_oaflx.txt' 326 326 res=read_ascii(fi_sst_oaflx,data_start=1) … … 328 328 lat=reform(ff(0,*)) 329 329 lon=reform(ff(1,*)) 330 cor_oaf=reform(ff(2,*)) 330 cor_oaf=reform(ff(2,*)) 331 331 cor_oafl=total(cor_oaf)/n_elements(cor_oaf) 332 bias_oaf=reform(ff(3,*)) 332 bias_oaf=reform(ff(3,*)) 333 333 bias_oafl=total(bias_oaf)/n_elements(bias_oaf) 334 std_oaf=reform(ff(4,*)) 334 std_oaf=reform(ff(4,*)) 335 335 std_oafl=total(std_oaf)/n_elements(std_oaf) 336 rmsd_oaf=reform(ff(5,*)) 336 rmsd_oaf=reform(ff(5,*)) 337 337 rmsd_oafl=total(rmsd_oaf)/n_elements(rmsd_oaf) 338 mean_tao=reform(ff(6,*)) 338 mean_tao=reform(ff(6,*)) 339 339 mean_oafl=bias_oaf+mean_tao 340 340 ; 341 341 print, '' 342 342 print, 'OAFlux' 343 343 print, cor_oafl, bias_oafl, std_oafl, rmsd_oafl 344 344 cstat=string(cor_oafl, bias_oafl, std_oafl, rmsd_oafl, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 345 345 ; 346 346 splot, mean_tao, mean_oafl, title='SST - TAO Vs OAFlux', subtitle='', $ 347 347 charsize=1.1, xtitle='TAO SST', ytitle='OAFlux SST', small=[2,3,3],/noer, psym=2, $ … … 350 350 xyouts, 22.3,30.2, cstat, charsize=0.9 351 351 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 352 352 ; 353 353 ab=linfit(mean_tao, mean_oafl,yfit=yfit) 354 a=float(ab(0)) 355 b=float(ab(1)) 356 oplot, mean_tao, yfit, color=250, thick=2 357 358 359 354 a=float(ab(0)) 355 b=float(ab(1)) 356 oplot, mean_tao, yfit, color=250, thick=2 357 ; 358 ; 359 ; 360 360 fi_sst_ncep=project_id_env+'sst_2000_2009_v50_ncep.txt' 361 361 res=read_ascii(fi_sst_ncep,data_start=1) … … 363 363 lat=reform(ff(0,*)) 364 364 lon=reform(ff(1,*)) 365 cor_nce=reform(ff(2,*)) 365 cor_nce=reform(ff(2,*)) 366 366 cor_ncep=total(cor_nce)/n_elements(cor_nce) 367 bias_nce=reform(ff(3,*)) 367 bias_nce=reform(ff(3,*)) 368 368 bias_ncep=total(bias_nce)/n_elements(bias_nce) 369 std_nce=reform(ff(4,*)) 369 std_nce=reform(ff(4,*)) 370 370 std_ncep=total(std_nce)/n_elements(std_nce) 371 rmsd_nce=reform(ff(5,*)) 371 rmsd_nce=reform(ff(5,*)) 372 372 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 373 mean_tao=reform(ff(6,*)) 373 mean_tao=reform(ff(6,*)) 374 374 mean_ncep=bias_nce+mean_tao 375 375 ; 376 376 print, '' 377 377 print, 'NCEP2' 378 378 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 379 379 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 380 380 ; 381 381 splot, mean_tao, mean_ncep, title='SST - TAO Vs NCEP2', subtitle='', $ 382 382 charsize=1.1, xtitle='TAO SST', ytitle='NCEP2 SST', small=[2,3,4],/noer, psym=2, $ … … 385 385 xyouts, 22.3,30.2, cstat, charsize=0.9 386 386 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 387 387 ; 388 388 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 389 a=float(ab(0)) 390 b=float(ab(1)) 391 oplot, mean_tao, yfit, color=250, thick=2 392 393 389 a=float(ab(0)) 390 b=float(ab(1)) 391 oplot, mean_tao, yfit, color=250, thick=2 392 ; 393 ; 394 394 fi_sst_tmi=project_id_env+'sst_2000_2009_v50_tmi.txt' 395 395 res=read_ascii(fi_sst_tmi,data_start=1) … … 397 397 lat=reform(ff(0,*)) 398 398 lon=reform(ff(1,*)) 399 cor_tm=reform(ff(2,*)) 399 cor_tm=reform(ff(2,*)) 400 400 cor_tmi=total(cor_tm)/n_elements(cor_tm) 401 bias_tm=reform(ff(3,*)) 401 bias_tm=reform(ff(3,*)) 402 402 bias_tmi=total(bias_tm)/n_elements(bias_tm) 403 std_tm=reform(ff(4,*)) 403 std_tm=reform(ff(4,*)) 404 404 std_tmi=total(std_tm)/n_elements(std_tm) 405 rmsd_tm=reform(ff(5,*)) 405 rmsd_tm=reform(ff(5,*)) 406 406 rmsd_tmi=total(rmsd_tm)/n_elements(rmsd_tm) 407 mean_tao=reform(ff(6,*)) 407 mean_tao=reform(ff(6,*)) 408 408 mean_tmi=bias_tm+mean_tao 409 409 ; 410 410 print, '' 411 411 print, 'TMI' 412 412 print, cor_tmi, bias_tmi, std_tmi, rmsd_tmi 413 413 cstat=string(cor_tmi, bias_tmi, std_tmi, rmsd_tmi, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 414 414 ; 415 415 splot, mean_tao, mean_tmi, title='SST - TAO Vs TMI', subtitle='', $ 416 416 charsize=1.1, xtitle='TAO SST', ytitle='TMI SST', small=[2,3,5],/noer, psym=2, $ … … 419 419 xyouts, 22.3,30.2, cstat, charsize=0.9 420 420 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 421 421 ; 422 422 ab=linfit(mean_tao, mean_tmi,yfit=yfit) 423 a=float(ab(0)) 424 b=float(ab(1)) 425 oplot, mean_tao, yfit, color=250, thick=2 426 423 a=float(ab(0)) 424 b=float(ab(1)) 425 oplot, mean_tao, yfit, color=250, thick=2 426 ; 427 427 fi_sst_ncep1=project_id_env+'sst_2000_2009_v50_ncep1.txt' 428 428 res=read_ascii(fi_sst_ncep1,data_start=1) … … 430 430 lat=reform(ff(0,*)) 431 431 lon=reform(ff(1,*)) 432 cor_nce=reform(ff(2,*)) 432 cor_nce=reform(ff(2,*)) 433 433 cor_ncep=total(cor_nce)/n_elements(cor_nce) 434 bias_nce=reform(ff(3,*)) 434 bias_nce=reform(ff(3,*)) 435 435 bias_ncep=total(bias_nce)/n_elements(bias_nce) 436 std_nce=reform(ff(4,*)) 436 std_nce=reform(ff(4,*)) 437 437 std_ncep=total(std_nce)/n_elements(std_nce) 438 rmsd_nce=reform(ff(5,*)) 438 rmsd_nce=reform(ff(5,*)) 439 439 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 440 mean_tao=reform(ff(6,*)) 440 mean_tao=reform(ff(6,*)) 441 441 mean_ncep=bias_nce+mean_tao 442 442 ; 443 443 print, '' 444 444 print, 'NCEP1' 445 445 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 446 446 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 447 447 ; 448 448 splot, mean_tao, mean_ncep, title='SST - TAO Vs NCEP_NCAR', subtitle='', $ 449 449 charsize=1.1, xtitle='TAO SST', ytitle='NCEP SST', small=[2,3,6],/noer, psym=2, $ … … 452 452 xyouts, 22.3,30.2, cstat, charsize=0.9 453 453 xyouts, 22.3,29.5, 'cor bias std rmsd', charsize=0.9 454 454 ; 455 455 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 456 a=float(ab(0)) 457 b=float(ab(1)) 458 oplot, mean_tao, yfit, color=250, thick=2 459 456 a=float(ab(0)) 457 b=float(ab(1)) 458 oplot, mean_tao, yfit, color=250, thick=2 459 ; 460 460 closeps 461 461 ; 462 462 end -
trunk/src/paper01/fig3/statistics_3var_v1.pro
r94 r97 51 51 pro statistics_3var_v1, tao,var1,var2, $ 52 52 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 53 53 ; 54 54 @cm_project 55 x=tao 56 y=var1 55 x=tao 56 y=var1 57 57 z=var2 58 59 ind1=where(finite(x,/nan)) 60 ind2=where(finite(y,/nan)) 58 ; 59 ind1=where(finite(x,/nan)) 60 ind2=where(finite(y,/nan)) 61 61 ind3=where(finite(z,/nan)) 62 62 ind=inter(ind1,union(ind2,ind3)) 63 63 ; 64 64 if (ind ne -1.) then begin 65 x(ind)=!Values.f_nan 66 y(ind)=!Values.f_nan 65 x(ind)=!Values.f_nan 66 y(ind)=!Values.f_nan 67 67 z(ind)=!Values.f_nan 68 68 endif 69 70 nsmooth=5 ; ;applying a 5 day smoothing71 69 ; 70 nsmooth=5 ; applying a 5 day smoothing 71 ; 72 72 x=ts_smooth(x,nsmooth,/nan) 73 73 y=ts_smooth(y,nsmooth,/nan) 74 74 z=ts_smooth(z,nsmooth,/nan) 75 75 ; 76 76 ind1=where(finite(x)) 77 77 ind2=where(finite(y)) … … 82 82 z=z(ind) 83 83 nn=n_elements(ind) 84 84 ; 85 85 cor1=correlate(x,y) 86 cor2=correlate(x,z) 87 ; ;cor1=correlation(tropflux,tao) cor2=correlation(tropflux,rec)86 cor2=correlate(x,z) 87 ; cor1=correlation(tropflux,tao) cor2=correlation(tropflux,rec) 88 88 xxx=moment(x) 89 89 ; mean1 and std1 --> for tropflux 90 mean1=xxx(0) 91 std1=sqrt(xxx(1)) 90 mean1=xxx(0) 91 std1=sqrt(xxx(1)) 92 92 xxx=moment(y) 93 ; ;mean2 and std2 --> for tao94 mean2=xxx(0) 93 ; mean2 and std2 --> for tao 94 mean2=xxx(0) 95 95 std2=sqrt(xxx(1)) 96 96 xxx=moment(z) 97 ; ;mean3 and std3 --> for rec98 mean3=xxx(0) 99 std3=sqrt(xxx(1)) 100 97 ; mean3 and std3 --> for rec 98 mean3=xxx(0) 99 std3=sqrt(xxx(1)) 100 ; 101 101 bias1=mean2-mean1 102 102 st1=std2/std1 103 bias2=mean3-mean1 103 bias2=mean3-mean1 104 104 st2=std3/std1 105 106 std1=st1 105 ; 106 std1=st1 107 107 std2=st2 108 108 rmsd1=sqrt(total((x-y)*(x-y))/n_elements(x)) 109 109 rmsd2=sqrt(total((x-z)*(x-z))/n_elements(x)) 110 110 ; 111 111 end -
trunk/src/paper01/fig3/ws_validation_scatter_2000_2009_v50.pro
r94 r97 94 94 reinitplt, /z,/invert 95 95 key_portrait = 1 96 96 ; 97 97 openps, FILENAME = project_od_env+'ws_validation_scatter_2000_2009_v50.ps' 98 99 ; ;Give the location of mooring for validation of basic meteorological variables100 101 98 ; 99 ; Give the location of mooring for validation of basic meteorological variables 100 ; 101 ; 102 102 sitelist=['8s67e','12s55e', '8s55e', '8s80.5e', '1.5s80.5e', '0n80.5e', '1.5n80.5e', '1.5s90e', $ 103 103 '0n90e', '1.5n90e', '4n90e','8n90e','12n90e', '15n90e', '5s95e', $ … … 110 110 '0n0e', '0n10w', '0n23w', '0n35w', '10s10w', '12n23w', '12n38w', '14s32w', '15n38w', '19s34w', '20n38w', $ 111 111 '21n23w', '4n23w', '4n38w', '6s10w', '8n38w', '8s30w'] 112 112 ; 113 113 ocean='global' 114 115 da1=10000101 114 ; 115 da1=10000101 116 116 da2=10081231 117 nsmooth=1. ; ;statistics are with 7 day smoothed118 ; ;This program will create the following text files with statistics of respective variables117 nsmooth=1. ; statistics are with 7 day smoothed 118 ; This program will create the following text files with statistics of respective variables 119 119 close,/all 120 120 ; 121 121 fi_ws_erai=project_id_env+'ws_2000_2009_erai_v50.txt' 122 122 openw,1,fi_ws_erai … … 131 131 fi_ws_ncep1=project_id_env+'ws_2000_2009_ncep1_v50.txt' 132 132 openw,6,fi_ws_ncep1 133 134 133 ; 134 ; 135 135 printf,1, 'x y cor bias std rmsd mean_tao' 136 136 printf,2, 'x y cor bias std rmsd mean_tao' … … 139 139 printf,5, 'x y cor bias std rmsd mean_tao' 140 140 printf,6, 'x y cor bias std rmsd mean_tao' 141 142 ; ;first reading the whole ERAI uncorrected and corrected data143 141 ; 142 ; first reading the whole ERAI uncorrected and corrected data 143 ; 144 144 file=project_id_env+'erai_ws_19890101_20091231_oafluxgrid.nc' 145 145 initncdf, file … … 148 148 unc=sqrt(u*u+v*v) 149 149 help, unc 150 150 ; 151 151 file=project_id_env+'TropFlux_ws_19890101_20091231_v20.nc' 152 152 initncdf, file 153 153 cor=read_ncdf('ws',date1,date2,file=file,/nostr) 154 154 help, cor 155 155 ; 156 156 file=project_id_env+'OAFlux_basic_variables_1985_2009.nc' 157 157 initncdf, file 158 158 oaf=read_ncdf("wind", date1, date2, file=file,/nostr) 159 159 help, oaf 160 160 ; 161 161 fi=project_id_env+'uwind_ncep2_oafluxgrid_19890101_20091231.nc' 162 162 initncdf, fi … … 167 167 nce=sqrt(u*u+v*v) 168 168 help, nce 169 169 ; 170 170 fi=project_id_env+'zonal_wind_speed_oafluxgrid_30N30S.nc' 171 171 initncdf, fi … … 176 176 ws_tmi=sqrt(u*u+v*v) 177 177 help, ws_tmi 178 178 ; 179 179 file=project_id_env+'wind_ncep1_19890101_20091231.nc' 180 180 initncdf, file … … 183 183 nce1=sqrt(u*u+v*v) 184 184 help, nce1 185 185 ; 186 186 nn=n_elements(sitelist) 187 187 for n=0, nn-1 do begin 188 189 ; ;reading data from mooring190 191 site=sitelist(n) 188 ; 189 ; reading data from mooring 190 ; 191 site=sitelist(n) 192 192 csite=site 193 193 print, csite … … 195 195 y=y_site_location(site) 196 196 if (y ge 0. and y le 30.) then y=y+360. 197 dx=0.5 198 dy=0.5 197 dx=0.5 198 dy=0.5 199 199 box=[y-dy, y+dy, x-dx, x+dx] 200 200 read_variables_v2, csite,date1,date2,nsmooth, $ 201 201 at, sw,rh,sst,wu,wv,ws, lh 202 202 ; 203 203 ws=alog(10./0.000152)/alog(4./0.000152)*ws 204 205 ; ;extracting the corrected and uncorrected ERAI data at the locations204 ; 205 ; extracting the corrected and uncorrected ERAI data at the locations 206 206 nsmooth=1. 207 207 ; 208 208 extract_flux_tropflux,unc,box, $ 209 209 tropflux 210 210 uncr=tropflux 211 211 ; 212 212 extract_flux_tropflux,cor,box, $ 213 213 tropflux 214 214 corr=tropflux 215 215 ; 216 216 extract_flux_tropflux,oaf,box, $ 217 217 tropflux 218 218 oafl=tropflux 219 219 ; 220 220 extract_flux_tropflux,nce,box, $ 221 221 tropflux 222 222 ncep=tropflux 223 223 ; 224 224 extract_flux_tropflux,ws_tmi,box, $ 225 225 tropflux 226 226 tmi=tropflux 227 227 ; 228 228 extract_flux_tropflux,nce1,box, $ 229 229 tropflux 230 230 ncep1=tropflux 231 232 ind=where(finite(ws)) 233 ws=ws(ind) 234 uncr_ws=uncr(ind) 231 ; 232 ind=where(finite(ws)) 233 ws=ws(ind) 234 uncr_ws=uncr(ind) 235 235 corr_ws=corr(ind) 236 oafl=oafl(ind) 237 ncep=ncep(ind) 238 tmi=tmi(ind) 236 oafl=oafl(ind) 237 ncep=ncep(ind) 238 tmi=tmi(ind) 239 239 ncep1=ncep1(ind) 240 240 ; 241 241 mean_tao=total(ws)/n_elements(ws) 242 242 ; 243 243 statistics_3var_v1, ws, uncr_ws, corr_ws, $ 244 244 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 245 245 ; 246 246 printf, 1, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f5.2)' 247 247 printf, 2, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f5.2)' 248 248 ; 249 249 statistics_3var_v1, ws, oafl, ncep, $ 250 250 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 251 251 printf, 3, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f5.2)' 252 252 printf, 4, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f6.2,3x,f4.2,3x,f4.2,3x,f5.2)' 253 253 ; 254 254 statistics_3var_v1, ws, tmi, ncep1, $ 255 255 cor1, cor2, bias1, bias2, std1, std2, rmsd1, rmsd2 256 256 printf, 5, x, y, cor1, bias1, std1, rmsd1, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f5.2)' 257 257 printf, 6, x, y, cor2, bias2, std2, rmsd2, mean_tao, format='(f6.2, 3x, f6.2, 3x, f5.2,3x,f5.2,3x,f4.2,3x,f4.2,3x,f5.2)' 258 258 ; 259 259 endfor 260 260 close,/all … … 264 264 lat=reform(ff(0,*)) 265 265 lon=reform(ff(1,*)) 266 cor_era=reform(ff(2,*)) 266 cor_era=reform(ff(2,*)) 267 267 cor_erai=total(cor_era)/n_elements(cor_era) 268 bias_era=reform(ff(3,*)) 268 bias_era=reform(ff(3,*)) 269 269 bias_erai=total(bias_era)/n_elements(bias_era) 270 std_era=reform(ff(4,*)) 270 std_era=reform(ff(4,*)) 271 271 std_erai=total(std_era)/n_elements(std_era) 272 rmsd_era=reform(ff(5,*)) 272 rmsd_era=reform(ff(5,*)) 273 273 rmsd_erai=total(rmsd_era)/n_elements(rmsd_era) 274 mean_tao=reform(ff(6,*)) 274 mean_tao=reform(ff(6,*)) 275 275 mean_erai=bias_era+mean_tao 276 276 ; 277 277 print, '' 278 278 print, 'ERAI' … … 284 284 xyouts, 2.5,9.4, cstat, charsize=0.9 285 285 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 286 286 ; 287 287 oplot, [2,10], [2,10] 288 288 ab=linfit(mean_tao, mean_erai,yfit=yfit) 289 a=float(ab(0)) 290 b=float(ab(1)) 291 oplot, mean_tao, yfit, color=250, thick=2 292 289 a=float(ab(0)) 290 b=float(ab(1)) 291 oplot, mean_tao, yfit, color=250, thick=2 292 ; 293 293 fi_ws_trop=project_id_env+'ws_2000_2009_trop_v50.txt' 294 294 res=read_ascii(fi_ws_trop,data_start=1) … … 296 296 lat=reform(ff(0,*)) 297 297 lon=reform(ff(1,*)) 298 cor_tro=reform(ff(2,*)) 298 cor_tro=reform(ff(2,*)) 299 299 cor_trop=total(cor_tro)/n_elements(cor_tro) 300 bias_tro=reform(ff(3,*)) 300 bias_tro=reform(ff(3,*)) 301 301 bias_trop=total(bias_tro)/n_elements(bias_tro) 302 std_tro=reform(ff(4,*)) 302 std_tro=reform(ff(4,*)) 303 303 std_trop=total(std_tro)/n_elements(std_tro) 304 rmsd_tro=reform(ff(5,*)) 304 rmsd_tro=reform(ff(5,*)) 305 305 rmsd_trop=total(rmsd_tro)/n_elements(rmsd_tro) 306 mean_tao=reform(ff(6,*)) 306 mean_tao=reform(ff(6,*)) 307 307 mean_trop=bias_tro+mean_tao 308 308 ; 309 309 print, '' 310 310 print, 'TropFlux' 311 311 print, cor_trop, bias_trop, std_trop, rmsd_trop 312 312 cstat=string(cor_trop, bias_trop, std_trop, rmsd_trop, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 313 313 ; 314 314 splot, mean_tao, mean_trop, title='WS - TAO Vs TropFlux', subtitle='', $ 315 315 charsize=1.1, xtitle='TAO WS', ytitle='TropFlux WS', small=[2,3,2],/noer, psym=2, $ … … 318 318 xyouts, 2.5,9.4, cstat, charsize=0.9 319 319 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 320 320 ; 321 321 ab=linfit(mean_tao, mean_trop,yfit=yfit) 322 a=float(ab(0)) 323 b=float(ab(1)) 324 oplot, mean_tao, yfit, color=250, thick=2 325 322 a=float(ab(0)) 323 b=float(ab(1)) 324 oplot, mean_tao, yfit, color=250, thick=2 325 ; 326 326 fi_ws_oaflx=project_id_env+'ws_2000_2009_oaflx_v50.txt' 327 327 res=read_ascii(fi_ws_oaflx,data_start=1) … … 329 329 lat=reform(ff(0,*)) 330 330 lon=reform(ff(1,*)) 331 cor_oaf=reform(ff(2,*)) 331 cor_oaf=reform(ff(2,*)) 332 332 cor_oafl=total(cor_oaf)/n_elements(cor_oaf) 333 bias_oaf=reform(ff(3,*)) 333 bias_oaf=reform(ff(3,*)) 334 334 bias_oafl=total(bias_oaf)/n_elements(bias_oaf) 335 std_oaf=reform(ff(4,*)) 335 std_oaf=reform(ff(4,*)) 336 336 std_oafl=total(std_oaf)/n_elements(std_oaf) 337 rmsd_oaf=reform(ff(5,*)) 337 rmsd_oaf=reform(ff(5,*)) 338 338 rmsd_oafl=total(rmsd_oaf)/n_elements(rmsd_oaf) 339 mean_tao=reform(ff(6,*)) 339 mean_tao=reform(ff(6,*)) 340 340 mean_oafl=bias_oaf+mean_tao 341 341 ; 342 342 print, '' 343 343 print, 'OAFlux' 344 344 print, cor_oafl, bias_oafl, std_oafl, rmsd_oafl 345 345 cstat=string(cor_oafl, bias_oafl, std_oafl, rmsd_oafl, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 346 346 ; 347 347 splot, mean_tao, mean_oafl, title='WS - TAO Vs OAFlux', subtitle='', $ 348 348 charsize=1.1, xtitle='TAO WS', ytitle='OAFlux WS', small=[2,3,3],/noer, psym=2, $ … … 351 351 xyouts, 2.5,9.4, cstat, charsize=0.9 352 352 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 353 353 ; 354 354 ab=linfit(mean_tao, mean_oafl,yfit=yfit) 355 a=float(ab(0)) 356 b=float(ab(1)) 357 oplot, mean_tao, yfit, color=250, thick=2 358 359 360 355 a=float(ab(0)) 356 b=float(ab(1)) 357 oplot, mean_tao, yfit, color=250, thick=2 358 ; 359 ; 360 ; 361 361 fi_ws_ncep=project_id_env+'ws_2000_2009_ncep_v50.txt' 362 362 res=read_ascii(fi_ws_ncep,data_start=1) … … 364 364 lat=reform(ff(0,*)) 365 365 lon=reform(ff(1,*)) 366 cor_nce=reform(ff(2,*)) 366 cor_nce=reform(ff(2,*)) 367 367 cor_ncep=total(cor_nce)/n_elements(cor_nce) 368 bias_nce=reform(ff(3,*)) 368 bias_nce=reform(ff(3,*)) 369 369 bias_ncep=total(bias_nce)/n_elements(bias_nce) 370 std_nce=reform(ff(4,*)) 370 std_nce=reform(ff(4,*)) 371 371 std_ncep=total(std_nce)/n_elements(std_nce) 372 rmsd_nce=reform(ff(5,*)) 372 rmsd_nce=reform(ff(5,*)) 373 373 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 374 mean_tao=reform(ff(6,*)) 374 mean_tao=reform(ff(6,*)) 375 375 mean_ncep=bias_nce+mean_tao 376 376 ; 377 377 print, '' 378 378 print, 'NCEP2' 379 379 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 380 380 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 381 381 ; 382 382 splot, mean_tao, mean_ncep, title='WS - TAO Vs NCEP2', subtitle='', $ 383 383 charsize=1.1, xtitle='TAO WS', ytitle='NCEP2 WS', small=[2,3,4],/noer, psym=2, $ … … 386 386 xyouts, 2.5,9.4, cstat, charsize=0.9 387 387 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 388 388 ; 389 389 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 390 a=float(ab(0)) 391 b=float(ab(1)) 392 oplot, mean_tao, yfit, color=250, thick=2 393 390 a=float(ab(0)) 391 b=float(ab(1)) 392 oplot, mean_tao, yfit, color=250, thick=2 393 ; 394 394 fi_ws_tmi=project_id_env+'ws_2000_2009_tmi_v50.txt' 395 395 res=read_ascii(fi_ws_tmi,data_start=1) … … 397 397 lat=reform(ff(0,*)) 398 398 lon=reform(ff(1,*)) 399 cor_tm=reform(ff(2,*)) 399 cor_tm=reform(ff(2,*)) 400 400 cor_tmi=total(cor_tm)/n_elements(cor_tm) 401 bias_tm=reform(ff(3,*)) 401 bias_tm=reform(ff(3,*)) 402 402 bias_tmi=total(bias_tm)/n_elements(bias_tm) 403 std_tm=reform(ff(4,*)) 403 std_tm=reform(ff(4,*)) 404 404 std_tmi=total(std_tm)/n_elements(std_tm) 405 rmsd_tm=reform(ff(5,*)) 405 rmsd_tm=reform(ff(5,*)) 406 406 rmsd_tmi=total(rmsd_tm)/n_elements(rmsd_tm) 407 mean_tao=reform(ff(6,*)) 407 mean_tao=reform(ff(6,*)) 408 408 mean_tmi=bias_tm+mean_tao 409 409 ; 410 410 print, '' 411 411 print, 'Qscat' 412 412 print, cor_tmi, bias_tmi, std_tmi, rmsd_tmi 413 413 cstat=string(cor_tmi, bias_tmi, std_tmi, rmsd_tmi, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 414 414 ; 415 415 splot, mean_tao, mean_tmi, title='WS - TAO Vs Qscat', subtitle='', $ 416 416 charsize=1.1, xtitle='TAO WS', ytitle='TMI WS', small=[2,3,5],/noer, psym=2, $ … … 419 419 xyouts, 2.5,9.4, cstat, charsize=0.9 420 420 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 421 421 ; 422 422 ab=linfit(mean_tao, mean_tmi,yfit=yfit) 423 a=float(ab(0)) 424 b=float(ab(1)) 425 oplot, mean_tao, yfit, color=250, thick=2 426 427 423 a=float(ab(0)) 424 b=float(ab(1)) 425 oplot, mean_tao, yfit, color=250, thick=2 426 ; 427 ; 428 428 fi_ws_ncep1=project_id_env+'ws_2000_2009_ncep1_v50.txt' 429 429 res=read_ascii(fi_ws_ncep1,data_start=1) … … 431 431 lat=reform(ff(0,*)) 432 432 lon=reform(ff(1,*)) 433 cor_nce=reform(ff(2,*)) 433 cor_nce=reform(ff(2,*)) 434 434 cor_ncep=total(cor_nce)/n_elements(cor_nce) 435 bias_nce=reform(ff(3,*)) 435 bias_nce=reform(ff(3,*)) 436 436 bias_ncep=total(bias_nce)/n_elements(bias_nce) 437 std_nce=reform(ff(4,*)) 437 std_nce=reform(ff(4,*)) 438 438 std_ncep=total(std_nce)/n_elements(std_nce) 439 rmsd_nce=reform(ff(5,*)) 439 rmsd_nce=reform(ff(5,*)) 440 440 rmsd_ncep=total(rmsd_nce)/n_elements(rmsd_nce) 441 mean_tao=reform(ff(6,*)) 441 mean_tao=reform(ff(6,*)) 442 442 mean_ncep=bias_nce+mean_tao 443 443 ; 444 444 print, '' 445 445 print, 'NCEP' 446 446 print, cor_ncep, bias_ncep, std_ncep, rmsd_ncep 447 447 cstat=string(cor_ncep, bias_ncep, std_ncep, rmsd_ncep, format='(f4.2,1x,f6.2,1x,f4.2,1x,f4.2)') 448 448 ; 449 449 splot, mean_tao, mean_ncep, title='WS - TAO Vs NCEP', subtitle='', $ 450 450 charsize=1.1, xtitle='TAO WS', ytitle='NCEP WS', small=[2,3,6],/noer, psym=2, $ … … 453 453 xyouts, 2.5,9.4, cstat, charsize=0.9 454 454 xyouts, 2.5,8.5, 'cor bias std rmsd', charsize=0.9 455 455 ; 456 456 ab=linfit(mean_tao, mean_ncep,yfit=yfit) 457 a=float(ab(0)) 458 b=float(ab(1)) 459 oplot, mean_tao, yfit, color=250, thick=2 460 457 a=float(ab(0)) 458 b=float(ab(1)) 459 oplot, mean_tao, yfit, color=250, thick=2 460 ; 461 461 closeps 462 462 ; 463 463 end
Note: See TracChangeset
for help on using the changeset viewer.