原创
浅谈GRADS气象绘图软件的使用
2009-9-1 16:41
5485
4
4
分类:
软件与OS
陈建萍1 , 陈兴旺2 , 李 进2
(1.江西省人工影响天气领导小组办公室,江西 南昌 330046;2.江西省气象技术装备中心,江西 南昌 330046)
[/td] [/tr][tr][td] 摘 要:通过编制具体的应用程序,介绍了气象绘图软件GRADS的使用方法。
关键词:GRADS 软件 使用
GRADS是当今气象界广泛使用的一种数据处理和显
示软件系统。该软件系统通过其集成环境,可以对气象数据进行读取、加工、图形显示和打印输出。它在进行数据处理时,所有数据在GRADS中均被视为纬度、
经度、层次和时间的4维场,而数据可以是格点资料,也可以是站点资料;数据格式可以是二进制,也可以是GRIB码,从而具有操作简单、功能强大、显示快
速、出图类型多样化、图形美观等特点。正因为如此,GRADS已迅速成为国内外气象界通用的标准图形环境之一。
1 GRADS有关的文件类型和维数环境
可以认为和GRADS有关的文件类型有:十进制的原始数据文件(*.TXT)、二进制的数据文件(*.DAT)、数据描述文件(*.CTL)、批处理文件(*.GS)和图形文件(*.GMF)。
气象业务中使用的站点资料或格点资料都是以十进制形式存放,而GRADS只能识别二进制的数据格
式,所以使用GRADS之前的第一步就是转换数据文件;数据描述文件则是对数据文件进行说明,以便后续的操作有对象;批处理文件是把进入GRADS绘图环
境后所要输入的命令写成批处理格式,以便可以自动执行输入的各项操作命令(批处理文件可单独建立,也可以略过不写,而在进入GRADS环境后一步一步地输
入各项操作命令);图形文件是GRADS已经绘制好的图形,只能用GV打开浏览。
数据文件一般都是用Power Station或Visual Fortran来转换(也可以用C语言或其它工具)。数据描述文件、批处理文件可以在“写字板"中写好,只是在存档的时候,要把文件的后缀改为.CTL和.GS。
GRADS将每一个物理量场视为1个四维数据集,它包括空间三维和时间一维。维数环境的定义由SET LAT(纬度)/LON(经度)/LEV(高度)/TIME(时间)来设置,也可由SET X/Y/Z/T来设置。
2 GRADS的使用方法
文中采用1982年1月~1994年12月共156个月气象场中的
1 000 hPa的海平面气压、温度以及850 hPa、500 hPa、200
hPa的u、v风场的月平均数据和45°×15°的格点资料,来举例说明GRADS的具体使用方法(经度为40°E~150°E,纬度为
10°S~25°N)。
2.1 数据文件的转换
格点资料用Power Station转换,程序如下:
PARAMETER(NX=45,NY=15)
REAL GRID(45,15) [格点资料数组大小]
CHARACTER*60 AA(156) [定义数组前的说明为字符串]
CHARACTER*20 DNAME(8) [资料文件的数量]
DATADNAME/'D:.DAT','D:.DAT',
$'D:.DAT','D:.DAT',
$'D:.DAT','D:.DAT',
$'D:.DAT','D:.DAT'/
[须描述资料文件的列举]
DO 10 N=1,8< /FONT>
OPEN(10+N,FILE=DNAME(N))
10 CONTINUE
[依次打开各个资料文件]
OPEN(20,FILE='D:.GRD',FORM='BINARY',
$ACCESS='DIRECT',RECL=NX*NY*4)
[把所有须描述的资料文件数据同时放入1个文件ALLDAT中,以便只须1次转换后便可以随意调取]
INUMBER=0
DO 100K=1,156< /FONT>
DO 20 N=1,8< /FONT>
READ(10+N,50)AA(K)
READ(10+N,40)((GRID(I,J),I=1,NX),J=1,NY)
INUMBER=INUMBER+1
WRITE(20,REC=INUMBER)((GRID(I,J),I=1,NX),J=1,NY)
20 CONTINUE
100 CONTINUE
[本程序按经纬度顺序先读写第一时刻的SLP、SST、U850、U500、U200、V850、V500、V200,再读写第二时刻的资料,依次类推...]
40 FORMAT(15F4.0)
50 FORMAT(A60)
END
2.2 数据描述文件的编写
数据描述文件DAT.CTL的编写格式为:
DSETD:.GRD[DSET是给出所描述文件的文件名]
TITLEWEATHERDATA [该数据描述文件的标题]
UNDEF-9.99E33 [缺省记录的标记]
XDEF45 LINEAR40 2.5 [X方向共45个格点,起始纬度为40°,步长为2.5°]
YDEF15 LINEAR-10.0 2.5 [Y方向共15个格点,起始经度为-10°,步长为2.5°]
ZDEF4 LEVELS1000 850 500 200 [Z方向分为4层,即1 000、850、500、200 hPa]
TDEF 156 LINEAR JAN1982 1MO [时间共156个月,起始时间为1982年1月,步长为1个月]
VARS4 [共SLP、T、U、V 4个变量]
SLP 0 0 [SEALEVE LPRESSURE]
T 0 0 [TEMPS]
U 3 0 [UWINDS]
V 3 0 [VWINDS]
ENDVARS [结束变量说明标志]
2.3 批处理文件的编写
如果我们欲编制批处理文件时,则应注意在用写字板编写GS文件时,必须在各项命令两边加单引号。如
绘制经度为40°E~150°E,纬度为-10°S~25°N,时间为1982年10月(第10时刻)的850
hPa等风速矢量图时,其批处理文件DAT.GS可以写成以下语句:
‘OPEN D:.CTL’
‘SET LON 40 150’
‘SET LAT -10 25’
‘SET TIME T 10’
‘SET LEV 850’
‘ENABLE PRINT D;.GMF’
‘SET GXOUT VECTOR’
‘SET CCOLOR 5’
‘DISPLAY U;V’
‘PRINT’
‘DRAW TITLE 10/1982 WINDS’
‘QUIT’
以上各项命令都可以根据自己的需要进行更改。比如:想要绘制经度为40°E~150°E,纬度为
-10°S~25°N,时间为1984年6月的1 000 hPa气温场和温度场的合成流线图,就可以把以上的批处理文件改为:‘OPEN
D:.CTL’,‘SET LON40 150’,‘SET LAT-10 25’,‘SET T 30’,‘SET LEV
1000’,‘ENABLE PRINT D;.GMF’,‘SET GXOUT CONTOUR’,‘SET CCOLOR 5’,‘SET
CSTYLE 3’,‘DISPLAY T’,‘SET CSTYLE 1’,‘DISPLAY SLP’,‘PRINT’,‘DRAW TITLE
6/1984 WINDS’,‘QUIT’。
3 结语
当然,GRADS可以绘制的图形远不止这些,若固定经度、时间,让
纬度、高度变化,则可以画出气象场的剖面图;若固定经、纬度和高度,让时间变化,则可以画出某气象要素场随时间的变化。另外,GRADS还可以通过调用函
数名来直接绘制气象图形,如当设置显示命令“DISPLAY HCURL(U,V)”和“DISPLAY
HDIVG(U,V)”时,就可以直接得出垂直涡度和水平散度图等。
————————————
第一作者简介:陈建萍(1974-),男,工程师,硕士在读,主要从事人工影响天气研究工作.
文章评论(0条评论)
登录后参与讨论