[43] | 1 | ;+ |
---|
[46] | 2 | ; .. _stratus_validation_net_2001_2002_all_v10.pro: |
---|
[43] | 3 | ; |
---|
| 4 | ; ============================================ |
---|
| 5 | ; stratus_validation_net_2001_2002_all_v10.pro |
---|
| 6 | ; ============================================ |
---|
| 7 | ; |
---|
| 8 | ; DESCRIPTION |
---|
| 9 | ; =========== |
---|
| 10 | ; |
---|
[46] | 11 | ; .. graphviz:: |
---|
| 12 | ; |
---|
| 13 | ; digraph stratus_validation_net_2001_2002_all_v10 { |
---|
[85] | 14 | ; |
---|
[50] | 15 | ; met_data [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/met_data_stratus_2001_2002.txt"]; |
---|
| 16 | ; swr_erai [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/erai_swr_19910101_20091231_oafluxgrid.nc"]; |
---|
| 17 | ; lwr_erai [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/erai_lwr_19910101_20091231_oafluxgrid.nc"]; |
---|
| 18 | ; lhf_erai [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/erai_lhf_19910101_20091231_oafluxgrid.nc"]; |
---|
| 19 | ; shf_erai [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/erai_shf_19910101_20091231_oafluxgrid.nc"]; |
---|
| 20 | ; tropflux_general [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/TropFlux_19890101_20091231.nc"]; |
---|
| 21 | ; swr_tropflux_nrt [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/TropFlux_swr_19890101_20091231_NRT_v50.nc"]; |
---|
| 22 | ; swr_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/swr_oafluxgrid_1985_2007.nc"]; |
---|
| 23 | ; lwr_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/lwr_oafluxgrid_1985_2007.nc"]; |
---|
| 24 | ; lhf_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/lhf_oafluxgrid_1985_2007.nc"]; |
---|
| 25 | ; shf_oafluxgrid [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/shf_oafluxgrid_1985_2007.nc"]; |
---|
| 26 | ; swr_ncep2 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/swr_ncep2_oaflxgrid_19890101_20091231.nc"]; |
---|
| 27 | ; lwr_ncep2 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/NCEP2_flux_19890101_20090729.nc"]; |
---|
| 28 | ; lhf_ncep2 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/lhf_ncep2_oafluxgrid_19890101_20091231.nc"]; |
---|
| 29 | ; shf_ncep2 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/shf_ncep2_oafluxgrid_19890101_20091231.nc"]; |
---|
[46] | 30 | ; |
---|
[50] | 31 | ; ncep1 [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/ncep1_flux_19890101_20091231.nc"]; |
---|
[46] | 32 | ; |
---|
[50] | 33 | ; figure [shape=ellipse,fontname=Courier,label="${PROJECT_OD}/stratus_validation_net_2001_2002_all_v11.ps"]; |
---|
[46] | 34 | ; |
---|
| 35 | ; stratus_validation_net_2001_2002_all_v10 [shape=box, |
---|
| 36 | ; fontname=Courier, |
---|
| 37 | ; color=blue, |
---|
| 38 | ; URL="http://forge.ipsl.jussieu.fr/tropflux/broswrer/trunk/src/paper01/fig14/stratus_validation_net_2001_2002_all_v10.pro", |
---|
| 39 | ; label="${TROPFLUX}/src/paper01/fig14/stratus_validation_net_2001_2002_all_v10.pro"]; |
---|
| 40 | ; |
---|
| 41 | ; {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} |
---|
| 42 | ; } |
---|
| 43 | ; |
---|
[43] | 44 | ; SEE ALSO |
---|
| 45 | ; ======== |
---|
| 46 | ; |
---|
[50] | 47 | ; :ref:`project_profile.sh` |
---|
| 48 | ; :ref:`project_init.pro` |
---|
| 49 | ; :ref:`cm_project.pro` |
---|
[43] | 50 | ; |
---|
[46] | 51 | ; :ref:`statistics.pro` |
---|
| 52 | ; |
---|
[43] | 53 | ; EXAMPLES |
---|
| 54 | ; ======== |
---|
| 55 | ; |
---|
| 56 | ; :: |
---|
| 57 | ; |
---|
| 58 | ; IDL> stratus_validation_net_2001_2002_all_v10 |
---|
| 59 | ; |
---|
[46] | 60 | ; TODO |
---|
| 61 | ; ==== |
---|
| 62 | ; |
---|
| 63 | ; make it work on cratos : missing data |
---|
| 64 | ; |
---|
| 65 | ; ++ mooring data in graphviz |
---|
| 66 | ; |
---|
| 67 | ; coding rules |
---|
| 68 | ; |
---|
| 69 | ; complete description |
---|
| 70 | ; |
---|
| 71 | ; handle IO error |
---|
| 72 | ; |
---|
[43] | 73 | ; EVOLUTIONS |
---|
| 74 | ; ========== |
---|
| 75 | ; |
---|
| 76 | ; $Id$ |
---|
| 77 | ; |
---|
[85] | 78 | ; $URL$ |
---|
| 79 | ; |
---|
[46] | 80 | ; - fplod 20110420T120826Z aedon.locean-ipsl.upmc.fr (Darwin) |
---|
| 81 | ; |
---|
| 82 | ; * remove hard coding path |
---|
| 83 | ; * add graphviz |
---|
| 84 | ; |
---|
[43] | 85 | ; - fplod 20110411T142955Z aedon.locean-ipsl.upmc.fr (Darwin) |
---|
| 86 | ; |
---|
| 87 | ; * minimal header |
---|
| 88 | ; |
---|
| 89 | ;- |
---|
[41] | 90 | pro stratus_validation_net_2001_2002_all_v10 |
---|
[46] | 91 | @cm_general |
---|
[50] | 92 | @cm_project |
---|
[41] | 93 | reinitplt, /z,/invert |
---|
| 94 | key_portrait = 1 |
---|
| 95 | coefpalit=.9 |
---|
[97] | 96 | ; |
---|
[85] | 97 | openps, FILENAME = project_od_env+"stratus_validation_net_2001_2002_all_v11.ps" |
---|
[41] | 98 | ; partie a changer |
---|
[97] | 99 | ; |
---|
| 100 | ; stratus in the south pacific cold tongue 2000-01 |
---|
[41] | 101 | ;20.9S, 80.8W (274.2E) |
---|
| 102 | box=[274, 275, -21., -20.] |
---|
[97] | 103 | ; |
---|
| 104 | ; first leg |
---|
| 105 | ; |
---|
[50] | 106 | fi=project_id_env+"met_data_stratus_2001_2002.txt" |
---|
[41] | 107 | res=read_ascii(fi,data_start=1) |
---|
| 108 | ff=res.field1 |
---|
| 109 | swr=reform(ff(7,*))/0.94 |
---|
| 110 | lwr=reform(ff(8,*)) |
---|
| 111 | lhf=reform(ff(5,*)) |
---|
| 112 | shf=reform(ff(6,*)) |
---|
[97] | 113 | ; |
---|
[41] | 114 | net=swr+lwr+shf+lhf |
---|
| 115 | help, net |
---|
[97] | 116 | ; |
---|
| 117 | ; reading other data sets |
---|
| 118 | ; |
---|
| 119 | st1=20011019 |
---|
[94] | 120 | en1=20021022 |
---|
[97] | 121 | ; |
---|
[50] | 122 | file=project_id_env+"erai_swr_19910101_20091231_oafluxgrid.nc" |
---|
[41] | 123 | initncdf, file |
---|
[97] | 124 | swr=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) |
---|
| 125 | swr=grossemoyenne(swr, "xy", box=box,/nan) |
---|
[94] | 126 | swr=reform(swr) |
---|
[50] | 127 | file=project_id_env+'erai_lwr_19890101_20091231_oafluxgrid.nc' |
---|
[41] | 128 | initncdf, file |
---|
[97] | 129 | lwr=read_ncdf('lwr',st1-1,en1,file=file,/nostr, box=box) |
---|
[94] | 130 | lwr=reform(lwr) |
---|
[50] | 131 | file=project_id_env+'erai_shf_19890101_20091231_oafluxgrid.nc' |
---|
[41] | 132 | initncdf, file |
---|
[97] | 133 | shf=-1*read_ncdf('shf',st1,en1,file=file,/nostr, box=box) |
---|
[94] | 134 | shf=reform(shf) |
---|
[50] | 135 | file=project_id_env+'erai_lhf_19890101_20091231_oafluxgrid.nc' |
---|
[41] | 136 | initncdf, file |
---|
[97] | 137 | lhf=-1*read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) |
---|
[94] | 138 | lhf=reform(lhf) |
---|
[97] | 139 | ; |
---|
[41] | 140 | era=swr+lwr+lhf+shf |
---|
| 141 | help, era |
---|
[97] | 142 | ; |
---|
| 143 | swr=0 |
---|
| 144 | lwr=0 |
---|
| 145 | lhf=0 |
---|
[94] | 146 | shf=0 |
---|
[97] | 147 | ; |
---|
[50] | 148 | file=project_id_env+"TropFlux_19890101_20091231.nc" |
---|
[41] | 149 | initncdf, file |
---|
[97] | 150 | swr=read_ncdf('swr',st1,en1,file=file,/nostr, box=box) |
---|
| 151 | swr=grossemoyenne(swr, "xy",/nan, box=box) |
---|
[94] | 152 | swr=reform(swr) |
---|
[97] | 153 | lwr=read_ncdf('lwr',st1,en1,file=file,/nostr, box=box) |
---|
| 154 | lwr=grossemoyenne(lwr, "xy",/nan, box=box) |
---|
[94] | 155 | lwr=reform(lwr) |
---|
[97] | 156 | shf=read_ncdf('shf',st1,en1,file=file,/nostr, box=box) |
---|
| 157 | shf=grossemoyenne(shf, "xy",/nan, box=box) |
---|
[94] | 158 | shf=reform(shf) |
---|
[97] | 159 | lhf=read_ncdf('lhf',st1,en1,file=file,/nostr, box=box) |
---|
| 160 | lhf=grossemoyenne(lhf, "xy",/nan, box=box) |
---|
[94] | 161 | lhf=reform(lhf) |
---|
[97] | 162 | ; |
---|
[50] | 163 | file=project_id_env+"TropFlux_swr_19890101_20091231_NRT_v50.nc" |
---|
[41] | 164 | initncdf, file |
---|
[97] | 165 | olr1=read_ncdf("sw", st1-1, en1, file=file,/nostr, box=box) |
---|
| 166 | olr1=grossemoyenne(olr1, "xy",/nan, box=box) |
---|
[94] | 167 | olr1=reform(olr1) |
---|
[97] | 168 | ; |
---|
[41] | 169 | trop=swr+lwr+shf+lhf |
---|
| 170 | olr=olr1+lwr+shf+lhf |
---|
| 171 | help, trop, olr |
---|
[97] | 172 | swr=0 |
---|
| 173 | lwr=0 |
---|
| 174 | lhf=0 |
---|
| 175 | shf=0 |
---|
[94] | 176 | olr1=0 |
---|
[97] | 177 | ; |
---|
[50] | 178 | file=project_id_env+'swr_oafluxgrid_1985_2007.nc' |
---|
[41] | 179 | initncdf, file |
---|
[97] | 180 | swr=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) |
---|
| 181 | swr=grossemoyenne(swr, "xy",/nan, box=box) |
---|
[94] | 182 | swr=reform(swr) |
---|
[97] | 183 | ; |
---|
[50] | 184 | file=project_id_env+'lwr_oafluxgrid_1985_2007.nc' |
---|
[41] | 185 | initncdf, file |
---|
[97] | 186 | lwr=read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) |
---|
[94] | 187 | lwr=-1*reform(lwr) |
---|
[97] | 188 | ; |
---|
[50] | 189 | file=project_id_env+'lhf_oafluxgrid_1985_2009.nc' |
---|
[41] | 190 | initncdf, file |
---|
[97] | 191 | lhf=read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) |
---|
[94] | 192 | lhf=-1*reform(lhf) |
---|
[97] | 193 | ; |
---|
[50] | 194 | file=project_id_env+'shf_oafluxgrid_1985_2009.nc' |
---|
[41] | 195 | initncdf, file |
---|
[97] | 196 | shf=read_ncdf("shf", st1, en1, file=file,/nostr, box=box) |
---|
[94] | 197 | shf=-1*reform(shf) |
---|
[97] | 198 | ; |
---|
[41] | 199 | oaf=swr+lwr+shf+lhf |
---|
| 200 | help, oaf |
---|
[97] | 201 | swr=0 |
---|
| 202 | lwr=0 |
---|
| 203 | lhf=0 |
---|
[94] | 204 | shf=0 |
---|
[97] | 205 | ; |
---|
[50] | 206 | fi=project_id_env+'swr_ncep2_oaflxgrid_19890101_20091231.nc' |
---|
[41] | 207 | initncdf, fi |
---|
[97] | 208 | swr=read_ncdf("swr", st1, en1, file=fi,/nostr, box=box) |
---|
| 209 | swr=grossemoyenne(swr, "xy",/nan, box=box) |
---|
[94] | 210 | swr=reform(swr) |
---|
[97] | 211 | ; |
---|
[50] | 212 | fi=project_id_env+"NCEP2_flux_19890101_20090729.nc" |
---|
[41] | 213 | initncdf, fi |
---|
[97] | 214 | lwr=read_ncdf("lwr", st1, en1, file=fi,/nostr, box=box) |
---|
| 215 | lwr=grossemoyenne(lwr, "xy",/nan, box=box) |
---|
[94] | 216 | lwr=reform(lwr) |
---|
[41] | 217 | lwr=-1*lwr |
---|
[97] | 218 | ; |
---|
[50] | 219 | fi=project_id_env+'lhf_ncep2_oafluxgrid_19890101_20091231.nc' |
---|
[41] | 220 | initncdf, fi |
---|
[97] | 221 | lhf=read_ncdf("lhf", st1, en1, file=fi,/nostr, box=box) |
---|
[94] | 222 | lhf=-1*reform(lhf) |
---|
[97] | 223 | ; |
---|
[50] | 224 | fi=project_id_env+'shf_ncep2_oafluxgrid_19890101_20091231.nc' |
---|
[41] | 225 | initncdf, fi |
---|
[97] | 226 | shf=read_ncdf("shf", st1, en1, file=fi,/nostr, box=box) |
---|
[94] | 227 | shf=-1*reform(shf) |
---|
[97] | 228 | ; |
---|
[41] | 229 | nce2=swr+lwr+shf+lhf |
---|
| 230 | help, nce2 |
---|
[97] | 231 | ; |
---|
| 232 | swr=0 |
---|
| 233 | lwr=0 |
---|
| 234 | lhf=0 |
---|
[94] | 235 | shf=0 |
---|
[97] | 236 | ; |
---|
[50] | 237 | file=project_id_env+"ncep1_flux_19890101_20091231.nc" |
---|
[41] | 238 | initncdf, file |
---|
[97] | 239 | swr=read_ncdf("swr", st1, en1, file=file,/nostr, box=box) |
---|
| 240 | swr=grossemoyenne(swr, "xy",/nan, box=box) |
---|
[94] | 241 | swr=reform(swr) |
---|
[97] | 242 | lwr=read_ncdf("lwr", st1, en1, file=file,/nostr, box=box) |
---|
| 243 | lwr=grossemoyenne(lwr, "xy",/nan, box=box) |
---|
[94] | 244 | lwr=reform(lwr) |
---|
[97] | 245 | shf=read_ncdf("shf", st1, en1, file=file,/nostr, box=box) |
---|
| 246 | shf=grossemoyenne(shf, "xy",/nan, box=box) |
---|
[94] | 247 | shf=reform(shf) |
---|
[97] | 248 | lhf=read_ncdf("lhf", st1, en1, file=file,/nostr, box=box) |
---|
| 249 | lhf=grossemoyenne(lhf, "xy",/nan, box=box) |
---|
[94] | 250 | lhf=reform(lhf) |
---|
[97] | 251 | ; |
---|
[41] | 252 | nce1=swr+lwr+shf+lhf |
---|
| 253 | help, nce1 |
---|
[97] | 254 | ; |
---|
[41] | 255 | ind=where(finite(net)) |
---|
[97] | 256 | net=net(ind) |
---|
| 257 | era=era(ind) |
---|
| 258 | trop=trop(ind) |
---|
| 259 | oaf=oaf(ind) |
---|
| 260 | nce2=nce2(ind) |
---|
[94] | 261 | nce1=nce1(ind) |
---|
[41] | 262 | olr=olr(ind) |
---|
[97] | 263 | ; |
---|
[41] | 264 | statistics, net, era, $ |
---|
| 265 | cor, bias, std, rmsd |
---|
| 266 | print, cor, bias, std, rmsd |
---|
| 267 | cstat_era=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 268 | ; |
---|
[41] | 269 | statistics, net, trop, $ |
---|
| 270 | cor, bias, std, rmsd |
---|
| 271 | print, cor, bias, std, rmsd |
---|
| 272 | cstat_trop=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 273 | ; |
---|
[41] | 274 | statistics, net, oaf, $ |
---|
| 275 | cor, bias, std, rmsd |
---|
| 276 | print, cor, bias, std, rmsd |
---|
| 277 | cstat_oaf=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 278 | ; |
---|
[41] | 279 | statistics, net, nce1, $ |
---|
| 280 | cor, bias, std, rmsd |
---|
| 281 | print, cor, bias, std, rmsd |
---|
| 282 | cstat_nce1=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 283 | ; |
---|
[41] | 284 | statistics, net, nce2, $ |
---|
| 285 | cor, bias, std, rmsd |
---|
| 286 | print, cor, bias, std, rmsd |
---|
| 287 | cstat_nce2=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 288 | ; |
---|
[41] | 289 | statistics, net, olr, $ |
---|
| 290 | cor, bias, std, rmsd |
---|
| 291 | print, cor, bias, std, rmsd |
---|
| 292 | cstat_olr=string(cor, bias, std, rmsd, format='(f4.2,2x,f6.2,2x,f4.2,1x,f6.2)') |
---|
[97] | 293 | ; |
---|
[41] | 294 | splot, net, era, charsize=1.1, title='SWR - Stratus Vs ERAI', $ |
---|
| 295 | xrange=[-200,200], yrange=[-200,200], small=[2,3,1], psym=2, xmin=1, ymin=1 |
---|
| 296 | oplot, [-200,200], [-200,200] |
---|
| 297 | xyouts, -150,-175, cstat_era, charsize=1. |
---|
[97] | 298 | ; |
---|
[41] | 299 | splot, net, trop, charsize=1.1, title='SWR - Stratus Vs TropFlux',/noer, $ |
---|
| 300 | xrange=[-200,200], yrange=[-200,200], small=[2,3,2], psym=2, xmin=1, ymin=1 |
---|
| 301 | oplot, [-200,200], [-200,200] |
---|
| 302 | xyouts, -150,-175, cstat_trop, charsize=1. |
---|
[97] | 303 | ; |
---|
[41] | 304 | splot, net, oaf, charsize=1.1, title='SWR - Stratus Vs OAFlux',/noer, $ |
---|
| 305 | xrange=[-200,200], yrange=[-200,200], small=[2,3,3], psym=2, xmin=1, ymin=1 |
---|
| 306 | oplot, [-200,200], [-200,200] |
---|
| 307 | xyouts, -150,-175, cstat_oaf, charsize=1. |
---|
[97] | 308 | ; |
---|
[41] | 309 | splot, net, nce1, charsize=1.1, title='SWR - Stratus Vs NCEP1',/noer, $ |
---|
| 310 | xrange=[-200,200], yrange=[-200,200], small=[2,3,4], psym=2, xmin=1, ymin=1 |
---|
| 311 | oplot, [-200,200], [-200,200] |
---|
| 312 | xyouts, -150,-175, cstat_nce1, charsize=1. |
---|
[97] | 313 | ; |
---|
[41] | 314 | splot, net, nce2, charsize=1.1, title='SWR - Stratus Vs NCEP2',/noer, $ |
---|
| 315 | xrange=[-200,200], yrange=[-200,200], small=[2,3,5], psym=2, xmin=1, ymin=1 |
---|
| 316 | oplot, [-200,200], [-200,200] |
---|
| 317 | xyouts, -150,-175, cstat_nce2, charsize=1. |
---|
[97] | 318 | ; |
---|
[41] | 319 | splot, net, olr, charsize=1.1, title='SWR - Stratus Vs TropFlux_NRT',/noer, $ |
---|
| 320 | xrange=[-200,200], yrange=[-200,200], small=[2,3,6], psym=2, xmin=1, ymin=1 |
---|
| 321 | oplot, [-200,200], [-200,200] |
---|
| 322 | xyouts, -150,-175, cstat_olr, charsize=1. |
---|
[97] | 323 | ; |
---|
[41] | 324 | closeps |
---|
[97] | 325 | ; |
---|
[41] | 326 | end |
---|