第九章Grads函数.docx

上传人:b****4 文档编号:24631460 上传时间:2023-05-29 格式:DOCX 页数:19 大小:793KB
下载 相关 举报
第九章Grads函数.docx_第1页
第1页 / 共19页
第九章Grads函数.docx_第2页
第2页 / 共19页
第九章Grads函数.docx_第3页
第3页 / 共19页
第九章Grads函数.docx_第4页
第4页 / 共19页
第九章Grads函数.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

第九章Grads函数.docx

《第九章Grads函数.docx》由会员分享,可在线阅读,更多相关《第九章Grads函数.docx(19页珍藏版)》请在冰豆网上搜索。

第九章Grads函数.docx

第九章Grads函数

GRADS(GridAnalysisandDisplaySystem)

讲义(9)函数

内容提要

一、概况

二、函数详细介绍

一、

概况

1、函数的调用

1)通过函数名直接引用,

2)参数放在括号中用逗号分开,

3)可以嵌套调用,

4)有些函数在运算时会改变维数环境。

2、函数的类型

 

二、数学函数

注意:

sin/cos/tan等三角函数单位是弧度;

asin等反三角函数结果单位是弧度。

三、统计积分函数

1、ave函数

1)格式:

ave(expr,dexpr1,dexpr2<,tincr<,flags>>)

2)功能:

通用的求平均函数。

3)说明:

expr是由dexpr1和dexpr2定义的维数范围内求平均的量。

缺测值不参与求平均运算。

4)若求平均的维数是时间,可设定时间增量tincr,其单位与dexpr1和dexpr2一样。

5)flags为选项-b,表示对每个网格点取同样的权重求平均,包括终端点。

例如:

求纬向平均

Setx1

Sett148

Setlev200

setlat040

Uave=ave(u,lon=0,lon=360,-b)。

求时间平均:

sett1

setlon60150

setlat040

setz1

a=ave(u,t=1,t=48)

da

注意:

mean函数用法同上,但不加权

2、aave函数

1)格式:

aave(expr,xdim1,xdim2,ydim1,ydim2)

2)功能:

求面积平均。

3)说明:

expr:

任何表达式

xdim1:

X维数方向的起始维数表达式

xdim2:

X维数方向的终止维数表达式

ydim1:

Y维数方向的起始维数表达式

ydim2:

Y维数方向的终止维数表达式

注意:

1)aave函数采用地球坐标进行运算,运算时考虑了不同纬度的权重。

例如:

Sett148

Setz1

Setx1;sety1

a=aave(u,lon=110,lon=150,lat=0,lat=40)

da

2)amean()函数用法用上,不加权。

 

3、tmave()高级篇

4、asum()和asumg

对指定区域求和(二维求和)

 

5、sum()和sumg()

一维求和函数

6、max()/min()(高版本)

返回指定表达式的最大/最小值

maxloc/minloc()

返回指定表达式的最大/最小值的维数值(格点)系列

使用这个命令后,括号内的维数自动固定.

例如:

设定t/z/固定,看每个纬带上沿x方向的最大值

dmax(u,x=1,x=37)

dmaxloc(u,x=1,x=37)

7、vint函数

1)格式:

vint(psexpr,expr,top)

2)功能:

质量加权垂直积分函数,计算

3)说明:

psexpr表示地面气压变量,expr表示被积变量,top表示积分上限(须为常数,单位hPa),本函数要求定义水平维数环境。

如:

vint(ps,u,100)表示对u变量从ps到100hPa进行质量加权垂直积分。

4)gint(expr,dim1,dim2)普通积分函数(慎用)

8、scorr()

求空间相关系数

注意:

两个场的空间相关系数是一个值,scorr函数之前的x/y维的设置没多大作用,函数会自动固定x/y维,但如果设时间维变动,得到的是相关系数时间序列。

*时间序列

‘setx1’;’sety1’

‘setz1’

‘sett148’

‘dtloop(scoor(u,v,x=1,x=37,y=1,y=17))

剖面z-t:

‘setx1’;’sety1’

‘setz12’

‘sett148’

‘a=tloop(scoor(u,v,x=1,x=37,y=1,y=17))

‘da’

9、tcorr()

求时间相关函数

10、空间回归/时间回归

reinit'

'opene:

\liugd\data'

'setz1'

'sett1'

‘setx1’

‘sety1’

'corr=sregr(u,v,x=1,x=37,y=1,y=17)'

'dcorr'----求回归系数,一个数值

;

'c'

'uave=aave(u,x=1,x=37,y=1,y=17)'

'vave=aave(v,x=1,x=37,y=1,y=17)'

'dcorr*(u-uave)+vave'----回归场值

;

------------

'reinit'

'opene:

\liugd\data'

'setz1'

*'sett1'

'setz12'

'sett148'

'setx1'

'sety1'

*'corr=sregr(u,v,x=1,x=37,y=1,y=17)'

'corr=tloop(sregr(u,v,x=1,x=37,y=1,y=17))'

'dcorr'

;

'c'

'setx137'

'sety117'

'uave=aave(u,x=1,x=37,y=1,y=17)'

'vave=aave(v,x=1,x=37,y=1,y=17)'

'b=corr*(u-uave)+vave'

'setz1'

'db'

;

'reinit'

'opene:

\liugd\data'

'setz1'

'sett148'

'setx1'

'sety1'

'a=aave(u,x=1,x=37,y=1,y=17)'

'sett1'

'setx137'

'sety117'

'*dtregr(a,u,t=1,t=48)'-----回归系数

'corr=tregr(a,u,t=1,t=48)'

'aave1=ave(a,t=1,t=48)'

'uave=ave(u,t=1,t=48)'

'dcorr*(a-aave1)+uave'-----回归值

;

四、网格处理/平滑/差分函数

1、const函数

1)格式:

const(expr,constant<,flag>)

2)功能:

设置部分网格点的值取为常数constant。

所有非缺测格点处的expr值取为常数,

3)flag说明:

-a:

所有网格点值均设定为指定的常数

-u:

把缺测格点处的expr值设定为常数。

该函数对格点和台站资料均适用。

如:

displayconst(p,0,-u)将变量p在缺测格点处的值设为常数0。

又如:

在linefill图形类型的输出中,若须将其中的一条线设为水平直线:

setlon-90

setlat-9090

setgxoutlinefill

setlev500

displayconst(t,-20);t-273.16

 

2、maskout函数

1)格式:

maskout(expr,mask)

2)功能:

标记函数。

当mask所在的网格点值取为负值时,对应格点上的expr的值设定为缺测值;

当mask所在的网格点值取为正值时,对应格点上的expr值不变。

3)说明:

该函数对格点和台站资料均适合。

例如:

file1中的tsfc表示全球地表温度(在海洋上为SST)资料,file2中的mask表示海陆标记(海洋上为0,陆地上为1)资料,若需显示SST的分布,则可:

maskout(tsfc,0.5-mask.2)

3、skip函数

1)格式:

skip(expr,skipx,skipy)

2)功能:

设定样本的取样密度。

3)说明:

displayskip(u,2)表示在x,y方向上对变量u隔一个网格点取一次值构成要显示的场,

displayskip(u,1,3);v`表示在y方向隔二个点取一次值,而x方向取所有的格点进行显示操作。

该函数主要用于对矢量场的稀疏化显示。

5、cdiff函数

1)格式:

cdiff(expr,dim)

2)功能:

中央差分函数

3)说明:

expr表示进行差分运算的量,

dim表示进行差分运算的维数方向,为X,Y,Z中的任一个字符。

边界格点的运算值设为缺测。

例如,以下运算是计算水平涡度,其效果与hcurl函数完全一样:

definedv=cdiff(v,x)

definedx=cdiff(lon,x)*3.1416/180

definedu=cdiff(u*cos(lat*3.1416/180),y)

definedy=cdiff(lat,y)*3.1416/180

display

(dv/dx-du/dy)/(6.37e6*cos(lat*3.1416/180))

以下运算是计算温度平流:

definedtx=cdiff(t,x)

definedty=cdiff(t,y)

definedx=cdiff(lon,x)*3.1416/180

definedy=cdiff(lat,y)*3.1416/180

display-1*((u*dtx)/(cos(lat*3.1416/180)*dx)+v*dty/dy)/6.37e6

6、smth9函数

1)格式:

smth9(expr)

2)功能:

9点平滑函数。

3)说明:

expr表示须平滑的表达式。

该函数主要用于改善图形的输出质量,使其更加美观。

当格点资料为1维时,9点平滑退化为3点平滑。

7、tloop函数

1)格式:

tloop(expr)

2)功能:

通过循环时间维数逐个逐个局地固定时间维来求expr的值,即对expr固定其时间维数求值,并在求值过程这对时间维进行逐个循环。

3)说明:

典型用法是求面积平均的时间序列,由于aave函数要求时间维固定,这时必须通过tloop函数才能实现这一目的,见下例:

setx1

sety1

setz3

sett131

dtloop(aave(ts,lon=0,lon=360,lat=-90,lat=90))

Sett148

Setz1

Setx1;sety1

a=aave(u,lon=110,lon=150,lat=0,lat=40)

da

 

为求ts变量的全球面积平均的时间序列,须用前四行语句来设定维数环境,即固定x,y,z,而让时间t变化,再用tloop函数,让aave在求面积平均时固定时间维,并逐时刻循环求值。

 

8、寻找特征值

五、物理量计算/站点

函数

 

 

1、gr2stn函数

1)格式:

gr2stn(grid_expr,stn_expr)

2)功能:

将格点值回插至台站值。

3)说明:

grid_expr为代表格点资料的表达式,内插将采用该格点资料进行,stn_expr为代表台站资料的表达式,内插结果将放至其中。

例如:

为检验客观分析资料的质量,可将客观分析后得到的格点资料回插到原来台站,看其与原始台站资料之间的差值大小,即:

dt.3-gr2stn(t.1,t.3)

其中file1为格点资料,file3为台站资料。

2、Coll2gr()

3、hcurl函数

1)格式:

hcurl(uexpr,vexpr)

2)功能:

计算垂直涡度。

3)说明:

uexpr表示U分量,vexpr表示V分量,风速单位用m/s。

边界上的涡度值设定为缺测。

如:

dhcurl(u,v)

4、hdivg函数

1)格式:

hdivg(uexpr,vexpr)

2)功能:

计算水平散度。

3)说明:

uexpr表示U分量,vexpr表示V分量,风速单位用m/s。

5、tvrh2q函数

1)格式:

tvrh2q(tvexpr,rhexpr)

2)功能:

由虚温tvexpr和相对湿度rhexpr计算比湿。

3)说明:

tvexpr的单位为0K,rhexpr的单位为百分比(取值范围0~100),运算结果的单位为g/g。

该函数仅适合用格点资料。

6、tvrh2t函数

1)格式:

tvrh2t(tvexpr,rhexpr)

2)功能:

由虚温tvexpr和相对湿度rhexpr计算温度。

3)说明:

运算结果的单位为0K,其余说明参见tvrh2q函数。

7、oacres函数

1)格式:

oacres(grid_expr,stn_expr<,radii>)

2)功能:

Cressman内插函数,将台站资料插至格点上。

3)说明:

grid_expr表示格点资料表达式,stn_expr表示台站资料表达式,选项radii表示影响半径,一般采用多个影响半径,它们之间用逗号分开,如:

10,7,4,2,1(省缺值)。

例如:

oacres(ts,ts.2),oacres(ts,ts.2,12,8,5,4,3,2,1)

8、stnave函数

1)格式:

stnave(expr,dexpr1,dexpr2<,-mcnt>)

2)功能:

台站资料时间平均函数。

3)说明:

expr表示欲平均的台站资料表达式,

dexpr1表示起始时间,

dexpr2表示结束时间,

选项-mcnt为质量控制项,表示参与平均运算的台站资料样本数最小不得少于cnt,否则运算结果设定为缺测。

cnt的省缺值为1。

如:

stnave(ts,t=1,t=20,-m10)表示对头20个时刻的ts进行平均,若样本数少于10,则平均的结果为缺测。

9、stnmin函数

1)格式:

stnmin(expr,dexpr1,dexpr2<,-mcnt>)

2)功能:

时段内台站资料最小值。

3)说明:

参看stnave函数的说明。

10、stnmax函数

1)格式:

stnmax(expr,dexpr1,dexpr2<,-mcnt>)

2)功能:

时段内台站资料最大值。

3)说明:

参看stnave函数的说明。

11、oabin

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1