风暴侦察兵 发表于 2012-10-20 18:49
'reinit'
'sdfopen e:\data\ncep\uwnd.2012.nc'
'sdfopen e:\data\ncep\vwnd.2012.nc'
计算通量散度什么的要先在大范围里计算,再在小范围里画图,要不然就会出现你这种情况。这个倒不是错误,式计算的时候需要差分之类的(具体没研究过)就把边界计算没了。所以你要把你计算过程放在一个大范围,画图的时候再设置成你要的范围。改了一下你的gs,画出了几张图:
修改过的gs(注意我设置的时间和你的不同)
如下:
 - 'reinit'
- 'sdfopen f:\2012\uwnd.2012.nc'
- 'sdfopen f:\2012\vwnd.2012.nc'
- 'sdfopen f:\2012\shum.2012.nc'
- 'set grid off'
- 'set mpdset cnworld cnriver'
- 'set map 15 1 2'
- 'set xlopts 1 4 0.2'
- 'set ylopts 1 4 0.2'
- 'set parea 1.5 10 1 8'
- 'set csmooth on'
- 'set lev 850'
- 'set t 1 4'
- 'define qdiv=hdivg(shum.3*1e3*uwnd.1/9.8,shum.3*1e3*vwnd.2/9.8)*1e5'
- nt=1
- while(nt<=4)
- 'set t 'nt''
- 'set ylint 5'
- 'set xlint 5'
- 'set lat 20 45'
- 'set lon 100 135'
- 'set grads off'
- 'set gxout shaded'
- 'd qdiv'
- 'cbarn 0.85 0 5.75 0.35'
- 'set gxout contour'
- 'd qdiv''cbarn 0.85 0 5.75 0.35'
- 'q time'
- rc=sublin(result,1)
- tt=subwrd(rc,3)
- 'draw title 850hPa Divergence of Moisture Flux '
- 'printim f:\2012\1\850hPa-divergence-of-moisture-flux'tt'.gif white'
- 'c'
- nt=nt+1
- endwhile ;
另外你原来计算的量级太小,影响colorbar的美观,所以我把shum的量级扩大了10的3次方,最后水汽通量又扩大了10的5次方,你自己看你出来的单位应该是什么吧。有问题再交流。
|