Grads脚本语言在格点资料转化中的应用

合集下载

气象绘图软件GrADS使用要点

气象绘图软件GrADS使用要点

lat 10( 或为其他固定值 ) t 1 12( 或为其他变化区间 )
d aave( V ar, lon= 0, lo n= 10, lat = 10, lat = 20) 另外 , 在 G rA DS 中 定义变量 ( define 命令 ) 时 , 该 变量的维数 就是 当定 义该 变量 时 Gr AD S 的当 前维 数。所以 , 定 义 了的 变 量 ( define 命 令 ) 都 是 有 维数 的。如果超出 了该 变量 的维 数 对该 变量 进 行操 作 , 将得出意外的结果 ( 或缺测值 ) 。 4 坐标转换 在 G rA DS 中多 处 涉及 到坐 标 的转 换问 题。在
d ave( V ar, lon= 100, lo n= 120) 又如 , 我们在 实际 中经 常遇 到 要将 一个 小 区域 的面积平均的时间 变化曲 线画出。一 般容易 错误地 将 X、 Y 方向的维数设为 : set lon 0 10( 或为其他变化区间 ) set lat 10 20( 或为其他变化区间 ) 正确的办法应将 X 、 Y 方向的 维数设 为固定 , 只 有 T 方向的维数是变化的 , 如下 :
50
气象部门使用的绘 图分析 软件。它不 仅能够 实现图 形的绘制 , 还能对资料进行分析和计算。 由于 G rA DS 的后续版本不 断推出 , 且有 许多气 象工作者参 与编 程和 开发 , 所 以在 实际 工作 当 中我 们应当大力应用推广 它。 参考文献
[ 1] 郭品文 , 刘宣飞 G rAD S 气象绘图系统用户使用手册 国家自然科学基金委员会地球科学部南 京气象学 院大气资 料服务中心 [ 2] Brian Dogy , M ike Fi ori no, G rAD S user s manual, Cen t er f or 0cean -Land -A t mosphere St udies, Inst it ue for Gl obal En vironment an d S ociet y

GrADS学习资料:第2章 数据处理

GrADS学习资料:第2章 数据处理
<litlee-endian>在PC, DEC等机器上生成 的数据 个人电脑
big-endian、little-endian 用于自动改变二进制位存放顺序
<template> 多个时间序列原始数据文件用一个数据描 述文件统一地描述描述这些原始数据时采用的选项, 这些数据文件的文件名形式由 dset 定义的形式命名 文件名,提示所含数据的时次。
例如:
正确的替换为: %y2 两位数年 %y4 4 位数年 %m1 1 或2 位数月 %m2 2 位数月(用 0补齐 1 位数) %mc 3 字符月份缩写 %d1 1 或2 位数天 %d2 2 位数天 %h1 1 或2 位数小时 %h2 2 位小时
设置X方向格点与经度的对应关系
XDEF number <LINEAR Start increment> 或 XDEF number <LEVELS value-list>
number(>=1)给定格点数,整形; LINEAR指明是等间隔分布格点, Start起点坐标,负数表示西经; increment网格间距。 LEVELS参数指明是不等间隔分布格点,列 出具体每个格点的坐标值(以空格分开)。
open(1,file='u.dat')
open(2,file='v.dat')
open(3,file='sst.dat')
! 打开目标文件
open(12,file='mhy.grd',form='binary')
! 把数据文件读入
do 100 it=1,nt do 50 iz=1,nz
read(1,*) ((u(i,j,iz,it),i=1,nx),j=1,ny) 50 continue

转换多时空层次Micaps格点数据文件为GrADS格式

转换多时空层次Micaps格点数据文件为GrADS格式

转换多时空层次Micaps格点数据文件为GrADS格式姚愚;李卫红;罗园;陈增会【摘要】为将多变量、多垂直层次和多时间层次的Micaps格点数据文件转换为GrADS格式文件,应用面向对象程序设计中类的封装性、继承性和多态性原理,根据Micaps格式的4类和11类格点数据文件的存储特征和GrADS二进制文件写入数据规则,并考虑到在不同数据环境和用户需求下对Micaps数据文件的选取存在多样性,将繁琐的转换步骤合理分解,利用Delphi设计了一组具有继承关系的类,在Windows下编程实现了数据转换功能.程序可提供对Micaps数据文件的多样化选择,并可自动生成CTL文件,操作简便、界面友好、运行可靠,其功能易于维护和扩充.%In order to transform Micaps Grid files which including a number of variables, vertical levels and temporal levels into GrADS Files, according to storage rules of the fourth and eleventh kind Micaps Grid file and GrADS binary file, applying Object-Oriented Programming principles such as class encapsulation, inheritance and polymorphism, this paper designs a set of classes which have inheritance relations to implement data transformation. Decomposing various procedures of data transformation reasonably, a program designed using the set of classes can accomplish the diverse selection of Micaps Grid files under different user's needs and creates the GrADS CTL file automatically. Having a friendly interface, the program runs under Windows system reliably and simply. It's function can maintain and expand easily.【期刊名称】《成都信息工程学院学报》【年(卷),期】2012(027)005【总页数】5页(P490-494)【关键词】应用气象学;计算机应用;GrADS;Micaps;数据转换【作者】姚愚;李卫红;罗园;陈增会【作者单位】昆明市气象局,云南昆明650034;昆明市气象局,云南昆明650034;昆明市气象局,云南昆明650034;昆明市气象局,云南昆明650034【正文语种】中文【中图分类】P490 引言GrADS(Grid Analysis and Display System)是一套应用广泛、使用方便的科学数据绘图软件包,具有较强的数据计算和分析能力,可输出等值线、色温图、流线、风矢量、折线图、直方图等多样化的图形,已成为气象科研领域通用的标准图形环境之一[1-4]。

气象绘图软件GrADS高级使用技巧

气象绘图软件GrADS高级使用技巧

收稿日期:2002-11-1作者简介:高文良,男,31岁,主要从事短期气候预测等研究工作。

气象绘图软件GrADS 高级使用技巧高文良1 刘晓燕2 曾小东3(11成都高原气象研究所 成都 610072; 21阿坝州金川县气象局 62410031阿坝州马尔康县气象局 624000)摘 要:本文通过介绍气象绘图软件GrADS 使用中的一些高级技巧,分析了GrADS Script 语言中的难理解之处,并介绍了在GrADS 中做合成分析和t 检验的程序,可以对学习和使用GrADS 的科研人员起参考、帮助作用,达到事半功倍的效果,促进GrADS 软件的应用更广泛、深入,提高科研人员的工作效率。

关键词:GrADS ;技巧;程序中图分类号:TP391文献标识码:C文章编号:1003-7187(2002)04-0057-031 引言气象绘图软件GrADS (Grid Analysis and Dis 2play System )是免费共享软件,可随时从互联网上下载(http :///grads/),后续版本正陆续推出[1]。

GrADS 有丰富的内部函数,可以对数据进行计算和分析处理。

它支持处理格点资料和站点资料,并且支持对GriB 码文件、特殊格式文件(如一字节整型、二字节整型、大中型机器二进制数据等)的直接读取,气象科研领域应用非常广泛[2]。

在其最新1.8SL 9版本中,GrADS 又将应用领域推进到了海洋学科,功能也得到了进一步地增强和扩展。

但在使用GrADS 的过程中,特别是使用GrADS Script 语言编程当中,有一些问题需要特别注意。

因为GrADS Script 语言是一种类似于VB Script (或MA TL AB Script )的高级语言,稍不注意就容易出现错误,且查错十分困难,这点与其他语言有较大的差别。

2 站点数据处理GrADS 中站点数据处理基于格点数据的基础之上,需先将站点数据通过Cressman 客观分析方法内插至格点上,然后再依照格点资料的处理方式对站点资料数据进行分析和处理。

GrADS站点资料的使用

GrADS站点资料的使用

GrADS站点资料的使用台站型离散资料画图的一般原则1、把台站资料r.dat写成二进制文件r.grd一般而言,台站资料都是文本格式的,须用专门的程序写成带有站号、经度、纬度等的二进制文件。

例如:对某一时次的降水资料r.dat有如下形式:lon lat Precipitation119.8 30.6 0119.8 30.616 0119.8 30.632 0119.8 30.648 0119.8 30.664 0119.8 30.68 0119.8 30.696 0119.8 30.712 0119.8 30.728 0119.8 30.744 0119.8 30.76 0119.8 30.776 0。

该数据只有一个时次则相应的程序stn.f如下:parameter(n=10201)integer r1(n)real lat(n),lon(n),r(n)character*8 zh(n)open(1,file='d:\common\1.txt',form='formatted',status='old')do i=1,nread(1,*)lon(i),lat(i),r1(i)r(i)=r1(i)enddodo i=1,nzh(i)=char(i)enddo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!open(9,file='d:\common\r.grd',form='binary',status='unknown')open(99,file='d:\common\rr.txt')do 100 i=1,ntim=0.0nlev=1nflag=1write(9)zh(i),lat(i),lon(i),tim,nlev,nflagwrite(9)r(i)write(99,200)lon(i),lat(i),r(i)200 format(f8.3,f8.3,f6.2)100 continuenlev=0write(9)zh(i-1),lat(i-1),lon(i-1),tim,nlev,nflagclose(9)! do i=1,160do i=1,nif(r(i).lt.0.0)thenwrite(*,*)lon(i),lat(i),r(i)endifenddo! write(*,*)i,zh(5000),lat(5000),lon(5000),tim,nlev,nflag,r(5000)pause! enddoend2、编写r.grd数据的数据说明文件r.ctldset d:\common\r.grddtype stationstnmap d:\common\r.mapundef -999.0title station datatdef 1 linear jan1998 1movars 1r 0 99 grid data prepared for oacres functionendvars3、用r.ctl生成r.map文件实际上,是在GrADS中运行可执行文件stnmap.exe,如何运行对于自带显示窗口的GrADS1.8版本的:进入命令窗口后,在提示符下输入“!stnmap”ga_>!stnmap在出现的信息提示处输入r.ctlEnter stn ctl filename: D:\r.ctl4、生成格点文件因为GrADS只识别格点数据,所以需要把站点上的资料通过插值函数插值到某个格点文件上才能被识别。

VB与FORTRAN、GrADS混合编程开发绘制降水分布图软件

VB与FORTRAN、GrADS混合编程开发绘制降水分布图软件

VB与FORTRAN、GrADS混合编程开发绘制降水分布图软件张富龙;刘爽;兰明胜【摘要】通过研究VB、FORTRAN和GrADS三者之间的相互调用方法,利用VB 编程指令代码开发操作界面,FORTRAN进行数据处理转换,GrADS绘制图形。

在三者有效结合的编程技巧下,实现了绘制乡镇加密自动站降水分布图软件的开发。

【期刊名称】《气象灾害防御》【年(卷),期】2015(022)001【总页数】3页(P35-37)【关键词】GrADS 降水分布图乡镇加密自动站混合编程【作者】张富龙;刘爽;兰明胜【作者单位】松原市气象台,松原138000【正文语种】中文【中图分类】P409绘制降水分布图软件有很多,但是以往绘制往往是每次手动输入指令,调试数据,比较麻烦,而且浪费时间,即便有专门的降水分布图绘制软件,也基于省级地区以上的边界为底图,不适合市、县局的业务应用。

现根据实际业务需要,为了更方便地做好降水服务工作,特利用VB、FORTRAN和GrADS三者的混合编程,开发一款以市、县边界为底图的,能够自动处理降水数据、可操作性强的降水分布图软件,用于日常业务工作,使日常工作流程化、规范化和具有可操作性,实现雨情分布任意时段一键出图的功能,方便数据查询和服务材料的制作。

FORTRAN语言是世界上广泛流行的、最适用于数值计算的一种计算机语言,具有强大的数值计算功能与数学分析能力,长期以来在气象领域做出了重大的贡献[1]。

但其在可视化程序设计方面比较欠缺。

GrADS(Grid Analysis and Display System,格点分析和显示系统)是当今气象界广泛使用的一种数据处理和显示软件系统,其提供了一个全32位交互操作的气象格点数据与站点数据的分析与显示环境,再加上该软件具有操作简单、功能强大、显示快速、出图类型多样化、图形美观等特点,使其一直以来备受气象同行的青睐[2]。

但其在数据处理方面比较差,所以FORTRAN和GrADS经常一起在气象中使用互补不足[3-4]。

GrADS教程

第一讲 GrADS简介一、G r A D S的应用领域及其功能*GrADS的全称:“The Grid Analysis and Display System”*应用领域:可在UNIX工作站以及个人微机上进行地球科学领域的数据资料分析和绘图*功能:对数据进行访问、分析和绘图1.可以根据需要绘制单线图、直方图、等值线图、填色等值线图、流线图、矢量图、站点模型图等各类图形.2.用描述语言编程,达到理想的绘图效果3.可以把在GrADS中绘制的图形以文件的形式保存起来,以备对其进行编辑4.调用GrADS的内部函数,能够对数据进行某些特定的计算,然后输出计算结果二、GrADS中常用的基本概念*数据格式:GrADS能够识别的数据为二进制无格式直接或顺序记录格式,该种格式数据的生成可以通过Fortran语言编程来实现。

*数据类型:格点数据(NCEP/NCAR的再分析资料)、站点数据(站点实测资料)、Grib数据(NMC产品)。

*维数环境:GrADS的操作对象为4维的数据集(4D data set),包括空间三维(纬度、经度、高度)和时间一维。

可以固定其中的一维或者几维以获得低于四维的数据子集。

此概念是对于格点资料而言的。

维数环境的定义可以在两种坐标上进行。

一种是地球坐标(world coordinate),以经纬度为度量单位;一种是格点坐标(grid coordinate),以网格点数为度量单位。

*几种文件类型:*.dat―数据文件*.ctl—原始数据描述文件*.gs―GrADS控制文件,用命令run执行之*.exe―GrADS在DOS环境下的各种执行文件三、启动和退出GrADS*启动GrADS的两种方式:1.在dos环境下直接输入grads命令即:切换到MS-DOS方式,进入到F:\pcgrads\msdos子目录下输入:grads回车2.从windows桌面上的“我的电脑”进入F:\pcgrads\子目录,然后双击g.exe图标*注意:在启动GrADS时,系统会问你以何种方式进入。

grads处理grib资料

相关附件:(共323223 字节)funny给你一个小程序,是用perl写的,然后funny转成了exe文件,你可以用它生成ctl,但生成的ctl文件还需要自己去掉这个程序强制添加上去的一些信息,然后,你用gribmap.exe生成index文件,就可以显示了。

这个zip包里有原始的perl程序,转好的exe文件和gribmap.exe三个文件。

C:\drawing\ncep-monthly\ex>grib2ctl -i prs.grib.mean.y1980>y1980.ctlUsing NCEP reanalysis table, see -ncep_opn, -ncep_rean optionsUsing NCEP reanalysis table, see -ncep_opn, -ncep_rean optionsC:\drawing\ncep-monthly\ex>gribmap -i y1980.ctlOpen Error: Unknown keyword in description file--> The invalid description file record is:--> this exe file was created with the evaluation version of perl2exe.The data file was not opened.File name is: y1980.ctl"Using NCEP reanalysis table, see -ncep_opn, -ncep_rean options"就是说你应该用-ncep_opn 或-ncep_rean 的选项,具体看帮助下面就不用说了,ctl都没有形成,自然不行的了Hi,funnyThanks!错误与“-ncep_opn, -ncep_rean options”无关,是ctl中endvars后“--> this exe file was created with the evaluation version of perl2exe.”的这句话作怪,删掉后可正常得到idx。

利用GrADS读取NCEP再分析资料格点数据

收稿日期:2004-08-30第一作者简介:方庆文(1966-),男,高工,副局长,主要从事行政管理工作。

文章编号:1003-6598(2004)05-0034-03利用GrADS 读取NCEP 再分析资料格点数据方庆文1,潘永地2,郑锋3,李波3(11贵州省铜仁地区气象局,贵州铜仁 554300;21浙江省温州市气象局,浙江温州 325003;31贵州省气象台,贵州贵阳 550002) 摘 要:简单介绍了美国国家环境预报中心(NCEP )和美国国家大气研究中心(NCAR )的再分析资料,简明阐述了GrADS 软件的获得、安装、使用,讨论了读取输出NCEP 资料的gs 程序编写,从而为广大基层台站利用NCEP 再分析资料进行研究应用提供参考。

关键词:NCEP ;资料读取;输出 中图分类号:TP319 文献标识码:C1 引言在基层台站的气象研究、气象实际业务应用中常常将气象台站的历史资料仅仅作为资料来源,随着研究的深入,数值预报技术的发展,越来越多的研究需要丰富的格点资料支持。

NCEP/NCAR 再分析资料内容丰富,资料年限包含1948年到现在,成为目前气象研究、业务应用的重要数据来源。

这些资料可以由许多图形软件输出图形,也可以通过Portran 、IDL 等编程实现,但需要Netcdf 库的支持和较高的编程水平。

如何使硬件设备、软件人才配备不足的基层台站方便地利用NCEP/NCAR 再分析资料解决一些实际问题呢?本文针对这一情况阐述如何用可免费得到的GrADS 软件编写读取输出NCEP 资料的gs 程序。

2 NCEP/NCAR 再分析资料介绍美国国家环境预报中心(NCEP )和美国国家大气研究中心(NCAR )对全球从1948年到现在的气象资料进行再分析形成格点资料。

这些资料对外公开,成为广大气象研究者的重要数据来源。

在美国国家环境预报中心网站( )上的搜索栏(Search )中输入ncep ncar 点击GO 按纽,即进入再分析资料的下载地址。

基于高分辨率格点数据集的中国气温与降水时空分布及变化趋势分析

基于高分辨率格点数据集的中国气温与降水时空分布及变化趋势分析吴娴;王玉;庄亮【摘要】基于LZU0025高分辨率格点数据集,对1951-2012年中国区域气温和降水量的时空分布特征,以及气候变化趋势进行了初步分析.结果表明:中国的年平均气温自1980年开始显著增暖,年降水量在1960年出现由湿润到干燥的突变.中国的整体降水量变化趋势不如气温的变化趋势具有一致性.中国年平均气温增温趋势为0.26℃/(10 a),局部的最大增温趋势超过0.6℃/(10 a);中国年降水量减少趋势为6.7 mm/(10 a),局部地区的降水减少趋势超过了30 mm/(10 a),而有些地区的降水增加趋势却可达30 mm/(10 a).大兴安岭—黄土高原西北缘—黄河长江上游以北—冈底斯山脉东部为大致的平均400mm等降水量线,可用于划分中国的半干旱与半湿润区.1951-2010年中国400 mm等降水量线位置的年代际变化情况复杂,但总体呈现不断南移的趋势,表明中国干旱、半干旱区面积在不断扩大.【期刊名称】《气象与减灾研究》【年(卷),期】2016(039)004【总页数】11页(P241-251)【关键词】LZU0025格点数据;气温;降水;气候变化【作者】吴娴;王玉;庄亮【作者单位】三明市气象局,福建三明365000;永安市气象局,福建三明365000;永安市气象局,福建三明365000【正文语种】中文【中图分类】P467气候变化研究是当今科学界的一个热门课题,IPCC(2013)第四次报告指出1906—2005年全球平均地表气温上升了0.74 ℃。

国内外学者在近些年来中国区域气候变化趋势研究方面已取得一系列的进展(魏凤英和曹鸿兴,1995;唐国利和任国玉,2005;冯新灵等,2009;范泽孟等,2011;江俊杰等,2012;吴晓绚等,2015)。

中国的气温变化趋势与全球变化基本一致,近百年来增暖趋势为0.7—0.8 ℃(唐国利和任国玉,2005;丁一汇等,2006),而近50 a来的增暖趋势随着城市化进程的推进而更加明显,超过了1.0 ℃。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5 Micaps 格点数据向 Grads 格点数据格式的转换
由于 Micaps 格点数据是从高纬到低纬存放, 而 Grads 要求格点数据 从低纬到高纬存放, 因此, Micaps 格点数据读出来后不能直接写成 Grads 格点数据。需要把后读出的低纬数据先写入文件, 而先读出的高纬数据 后写入文件。其程序流程图见图 1。
关键词: Grads 语言; 气象信息; 资料转化
中图分类号: P409
文献标识码: A
Grads( Grid Analysis and Display System) 是一套应用广 泛 、使 用 方 便 的科学数据绘图软件包, 是当今国内外气象科研领域通用的标准图形环 境之一。Grads 并不是直接使用“数据文件”, 而是通过“描述文件”间接使 用“数据文件”, 在将数据集转化成相应 Grads 格式的数据集时, 通常的做 法 是 先 用 Fortran 语 言 或 C 语 言 编 写 专 门 的 转 化 程 序 将 数 据 集 按 照 Grads 的格式写成数据描述文件和二进制的数据集.dat 文件, 然后再启动 Grads 系统进行绘图和分析。其缺点在于进行数据转化和分析时要来回 进行环境切换, 而且, 还要求操作人员必须熟悉 Fortran 语言或 C 语言编 程。本文以 Micaps 格点资料转化为例, 直接用 Grads 脚本语言把数据集 转化成 Grads 格式的数据文件, 以减少操作过程中不断切换系统的麻烦 和困难。
t2=sublin( t1, 2) k=0
while ( k< 10) - - - - - - - - - - - - - - - - - - - ④分 离 文 本 文 件 中 的 每
行 10 个数据
k=k+1
s=k+i*10
v.z.s=subwrd( t2, k) endwhile - - - - - - - - - - - - - - - - - - - ④
4 Grads 自定义函数的调用
在 Grads 中, 函数用 functino name( variable1, variable2, …) 语 句 来 定 义函 数 记 录 。 从 定 义 的 函 数 体 返 回 到 调 用 时 用 return expression 返 回 记 录, 其中 expression 是可选项, 若不给出, 只返回 NULL 字符串。函数的结 果用 return 命令的 expression 表达式给出结果。函数和调用程序 可 以 在 同一程序单元中, 也可以不在同一程序单元中。在同一程序单元中调用 函数时要用函数名直接调用, 函数和调用程序单元不在同一程序单元时 要用函数所在程序单元的程序名进行调用。当函数被调用时, 如果给出 的参数数量少于定义函数中的变量个数, 则剩余的变量为初值化。若参 量数多于函数定义中的变量数, 则多余的参量放弃不用。函数中的变量 一 般 是 局 部 变 量 , 其 值 不 带 出 函 数 , 只 有 用 全 局 变 量( 下 划 线“_”打 头 的 变量) 可将其值带出函数之外供全局使用。
杨建民, 王宗仁, 张红英 Grads 脚本语言在格点资料转化中的应用
本刊 E- mail:bjb@mail.sxinfo.net 信息技术
file=subwrd( args, 1) 把 args 的第一个字串内容赋给 file
if( file=‘’) 判断 file 是否为空, 若为空, 则显示‘没有 指 定 Micaps
t4=subwrd( t2, 2) 把 第 二 行 的 内 容 的 第 二 个 字 串 赋 给 t4( Micaps 格 点 数 据 行 数)
z=0
while( z<t4) - - - - - - - - - - - - - - - - - - - - - - ② 根据格点数据行数循 环读取纬向数据
源数据文件’
say‘没有指定 Micaps 源数据文件’
endif
结束判断
i=0
while( i < 4) - - - - - - - - - - ①读出 Micaps 源数据文件的头文件
i=i+1
t1=read( file) e=sublin( t1, 1) if( e>0)
从指定的源文本文件 file 读出数据记录赋给 t1 把 t1 中返回的第一行的内容赋给 e
数据
j=j+1
u=v.i.j
' display ' u
Endwhile - - - - - - - - - - - - - - - - - - - - - - - ⑦
i=i- 1
endwhile - - - - - - - - - - - - - - - - - - - - - - - - - ⑥
return
1 气象信息综合分析处理系统( Micaps) 格点资料特点描述
在 Micaps 中用于画等值线的格点数据是第四类数据格式, 它是一个 按 照“ 文 件 头+数 据 块 ”的 形 式 存 储 的 文 本 文 件 。 其 文 件 头 包 含 的 内 容 如 下 : diamond、4、数 据 说 明( 字 符 串) 、年 、月 、日 、时 次 、时 效 、层 次( 均 为 整 数) 、度 格 距 、纬 度 格 距 、起 始 经 度 、终 止 经 度 、起 始 纬 度 、终 止 纬 度( 均 为 浮点数) 、纬向格点数、经向格点数( 均为整数) 、等值线间隔、等值线起始 值、终止值、平滑系数加粗线值( 均为浮点数) ; 其数据块是按先纬向后经 向存放, 均为浮点数。其中纬向是从西到东, 经向是从北到南。它在文本 文件中的存储形式为: 前 4 行为头文件, 从第 5 行开始存放格点数据。每 一 纬 向 格 点 数 据 写 4 行 , 前 3 行 每 行 写 10 个 数 据 , 第 4 行 写 3 个 数 据 , 每个数据长度为 8 个字节。
2 Grads 格点数据格式
Grads 格点数据集为直接访问形式。一个网格点上( 即一个确定的经 纬 度 , 高 度 和 时 刻) 可 以 有 任 意 多 个 物 理 变 量 , Grads 视 这 些 数 据 为 一 个 大数组, 其排放顺序为先 x( 经度) 、y( 纬度) 、z( 高度) , 然后是各种物理变 量, 最后是 (t 时次) 。其中, x 是从西到东, y 是从南到北。
while( k< 3) - - - - - - - - - - - ⑤分离文本文件中的每行 3 个数据
k=k+1
s=k+30
v.z.s=subwrd( t2, k) endwhile - - - - - - - - - - - - - - - - - - - - - - - - - - - ⑤
endwhile - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - பைடு நூலகம் - ②
3 Grads 脚本语言命令介绍
在 Grads 中, 用于输出二进制格式文件的命令主要有以下几条: ( 1) read( filename) 。 读文件名为 filename 的 文 件 中 的 下 一 个 记 录 , 返 回 结 果 分 为 两 行( 但 仍 作 为 一 个 串) , 第 一 行 为 返 回 码 , 第 二 行 是 读 入 的记录。返回码为 0 表示正常; 返回码为 1 表示文件打开错误; 返回码为 2 表示文件结束; 返回码为 8 表示打开的是写入记录文件; 返回码为 9 表 示输入或输出错误。记录最大 80 个字符。filename 文件在读记录时一直 保持打开, 其间所有的操作依记录顺序执行。 ( 2) sublin( strings, n) 。从 strings 返回字符串第 n 行的整行字符串作 为字符子串, 如果字符串的行数太少则返回结果为 NULL。n 须用整数。 ( 3) subwrd( string, n) 。返回字符串 string 的第 n 个字段的字符串, 如 果字符串 string 太短, 则返回结果为 NULL。n 须取整数, 字符串 string 以
i=i+1
endwhile - - - - - - - - - - - - - - - - - - - - - - - - - - ③
t1=read( file) 读取纬向第 31~33 个数据 e=sublin( t1, 1) if( e>0)
say‘File Error’
retin
endif
t2=sublin( t1, 2) k=0
( 长治市气象局, 山西长治, 046000)
摘 要 : 介 绍 了 用 Grads 脚 本 语 言 将 气 象 信 息 综 合 分 析 处 理 系 统( Micaps) 格 点 资 料 转
化为 Grads 格式资料的方法, 具体说明了数据转换程序及函 数 子 程 序 的 源 代 码 和 具 体
的使用方法。
i=t4
while ( i>0) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ⑥从 低 纬 到 高 纬
循环写入数据
j=0
while( j<t3) - - - - - - - - - - - - - - - - - - ⑦从西到东循环写入纬向格点
打开 Micaps 源数据文件
读头文件
将数据按先低纬 后高纬的顺序写 Y
入二进制文件
判断数据是 否读完?

从头文件中分离 出网格的纬向和
经向格点数
读数据文件
返回调用处 图 1 格点资料读写转换函数流程图
6 程序代码及说明
( 1) 函数子程序 hs.gs 源代码为: function p(t args) 定义数据转换函数 pt, 参数 args 文件名变量
say 'File Error'
retin
endif
endwhile - - - - - - - - - - - - - - ①
相关文档
最新文档