- 积分
- 27
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2017-4-14
- 最后登录
- 1970-1-1
|
GrADS
系统平台: |
|
问题截图: |
- |
问题概况: |
用NCEP逐月资料计算水汽通量差值积分时画出来的图不对,检验区和差值大值区不再一个地方 |
我看过提问的智慧: |
看过 |
自己思考时长(天): |
3 |
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
我先分析了降水资料在总体年份里分出了多雨年和少雨年,然后进行多雨年和少雨年水汽通量的差值检验,程序可以运行,但是图画出来以后明显不对。
以下是我用的gs代码:
- 'reinit'
- 'sdfopen d:\data\micaps\shum.mon.mean.nc'
- 'sdfopen d:\data\micaps\uwnd.mon.mean.nc'
- 'sdfopen d:\data\micaps\vwnd.mon.mean.nc'
- 'sdfopen d:\data\micaps\pres.sfc.mon.mean.nc'
- 'set gxout stream'
- 'enable print d:\data\data8\jianyan/chazhijianyan2.gmf white'
- *************************多雨年*****************
- yr.1=1952; yr.2 = 1957; yr.3=1963; yr.4=1964;yr.5=1967;yr.6=1970;yr.7=1983;
- yr.8=1985;yr.9=1990;yr.10=1991;yr.11=1998;yr.12=2002
- mo.3='Mar'; mo.4='Apr'; mo.5='May'
- i=1
- while(i<=12)
- j=3
- while(j<=5)
- 'set x 1 144'
- 'set y 1 73'
- 'set z 1 8'
- 'set time 'mo.j%yr.i
- 'define duq=uwnd.2*shum/9.8'
- 'define dvq=vwnd.3*shum/9.8'
- 'set z 1'
- 'define dqu=vint(pres.4(z=1),duq,300)*9.8/1000'
- 'define dqv=vint(pres.4(z=1),dvq,300)*9.8/1000'
- 'define dsd=hdivg(dqu,dqv)'
- j=j+1
- endwhile
- i=i+1
- endwhile
- ***********************少雨年***************************
- yr.1=1953; yr.2 = 1955; yr.3=1962; yr.4 = 1979;yr.5=1981;yr.6=1982;yr.7=1994;
- yr.8=1995;yr.9=1996;yr.10=2000;yr.11=2001;yr.12=2004
- mo.3='Mar'; mo.4='Apr'; mo.5='May'
- n=1
- while(n<=12)
- m=3
- while(m<=5)
- 'set x 1 144'
- 'set y 1 73'
- 'set z 1 8'
- 'set time 'mo.m%yr.n
- 'define suq=uwnd.2*shum/9.8'
- 'define svq=vwnd.3*shum/9.8'
- 'set z 1'
- 'define squ=vint(pres.4(z=1),suq,300)*9.8/1000'
- 'define sqv=vint(pres.4(z=1),svq,300)*9.8/1000'
- 'define ssd=hdivg(squ,sqv)'
- m=m+1
- endwhile
- n=n+1
- endwhile
- **********************************差值的均值***************************************
- 'define qua=ave((dqu-squ),t=1,t=12)'
- 'define qva=ave((dqv-sqv),t=1,t=12)'
- 'define sd=ave((dsd-ssd),t=1,t=12)'
- ************************************总体****
- yr.1=1951; yr.2 = 1952; yr.3=1953; yr.4 = 1954;yr.5=1955;yr.6=1956;yr.7=1957;
- yr.8=1958;yr.9=1959;yr.10=1960;yr.11=1961;yr.12=1962;yr.13=1963;yr.14=1964;
- yr.15=1965; yr.16 = 1966; yr.17=1967; yr.18 = 1968;yr.19=1969;yr.20=1970;yr.21=1971;
- yr.22=1972;yr.23=1973;yr.24=1974;yr.25=1975;yr.26=1976;yr.27=1977;yr.28=1978;
- yr.29=1979; yr.30 = 1980; yr.31=1981; yr.32 = 1982;yr.33=1983;yr.34=1984;yr.35=1985;
- yr.36=1986;yr.37=1987;yr.38=1988;yr.39=1989;yr.40=1990;yr.41=1991;yr.42=1992;
- yr.43=1993; yr.44 = 1994; yr.45=1995; yr.46 = 1996;yr.47=1997;yr.48=1998;yr.49=1999;
- yr.50=2000;yr.51=2001;yr.52=2002;yr.53=2003;yr.54=2004;yr.55=2005;yr.56=2006;
- yr.57=2007; yr.58 = 2008; yr.59=2009; yr.60 = 2010;yr.61=2011;yr.62=2012;yr.63=2013;
- yr.64=2014;yr.65=2015;yr.66=2016
- mo.3='Mar'; mo.4='Apr'; mo.5='May'
- n1=1
- while(n1<=66)
- m1=3
- while(m1<=5)
- 'set x 1 144'
- 'set y 1 73'
- 'set z 1 8'
- 'set time 'mo.m1%yr.n1
- 'define aluq=uwnd.2*shum/9.8'
- 'define alvq=vwnd.3*shum/9.8'
- 'set z 1'
- 'define alqu=vint(pres.4(z=1),aluq,300)*9.8/1000'
- 'define alqv=vint(pres.4(z=1),alvq,300)*9.8/1000'
- 'define alsd=hdivg(alqu,alqv)'
- m1=m1+1
- endwhile
- n1=n1+1
- endwhile
- ******************************总体的均值*****************************
- 'define allqu=ave(alqu,t=1,t=66)'
- 'define allqv=ave(alqv,t=1,t=66)'
- 'define allsd=ave(alsd,t=1,t=66)'
- ********************************求方差**********************************
- 'define fcu=sqrt(ave(pow((dqu-squ),2),t=1,t=12))'
- 'define fcv=sqrt(ave(pow((dqv-sqv),2),t=1,t=12))'
- 'define fcs=sqrt(ave(pow((dsd-ssd),2),t=1,t=12))'
- ***********************样本量开根号*********************************
- 'define nn=sqrt(12)'
- **************************计算t******************************************
- 'define tu=((qua-allqu)/fcu)/nn'
- 'define tv=((qva-allqv)/fcv)/nn'
- 'define ts=((sd-allsd)/fcs)/nn'
- ******显著性检验0.01、0.05、0.1 0.5 t=2.718 2.201 1.796 0.697******************
- 'define ttu=maskout(abs(tu),abs(tu)-0.697)'
- 'define tttu=smth9(ttu)'
- 'define ttv=maskout(abs(tv),abs(tv)-0.697)'
- 'define tttv=smth9(ttv)'
- 'define tts=maskout(abs(ts),abs(ts)-0.697)'
- 'define ttts=smth9(tts)'
- ***************************
- 'set x 1 144'
- 'set y 1 73'
- 'set grid off'
- 'set grads off'
- 'set map 15'
- 'draw map'
- 'set rgb 19 255 194 194'
- 'set xlint 40'
- 'set ylint 20'
- 'set xlopts 1 4 0.2'
- 'set ylopts 1 4 0.2'
- 'set clopts 1 1 0.2'
- 'set gxout shaded'
- 'set clevs 0'
- 'set ccols 19'
- 'set cterp off'
- 'set clab on'
- 'set csmooth on'
- 'd tttu;tttv'
- 'set gxout contour'
- 'd qua;qva'
- 'set ccolor 1'
- 'set annot 1 3'
- 'print'
- 'disable print'
- ;
复制代码 其中qu、qv、sd分别是纬向、经向水汽通量和散度,但是我画出来的图是这样的:
不知道那里出错了,还请各位指点迷津。
|
|