已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
GRADS (Grid Analysis and Display System)讲义(6)一、GRADS所能处理的数据格式(1) 无格式格式文件(直接、顺序存取),Fortran可以读写。*.grd(2) NetCDF格式资料文件:精确性好,便于传输;*.nc(3) GRIB文件格式:压缩率高。二、下面介绍第一种格式GrADS中数据文件和数据描述文件是分开的。数据文件的存放一般为二进制直接访问形式(binary direct access),其格式说明由数据描述文件(*.ctl)描述,该文件为纯文本格式,可用一般的编辑器产生(如EDIT,PE2等)。在GrADS环境中至少得首先打开(open)一个数据描述文件,以便后续的操作有数据对象。 1、首先搞清楚GrADS中数据的存放形式(五维的数据文件) (x,y),z,VAR,t GrADS格点为直接访问形式,一个网格点上(即一个确定的经纬度、高度和时刻)可以有任意多个物理变量,GrADS视这些数据为一个大数组,其排放顺序为先经度、纬度、高度,然后是物理变量,最后是时次变化。一个x、y数据场构成一个记录,其顺序是x从西变到东,y从南变到北,从下到上,即实际大数组以二维数据片存放。 2、如何生成一个GrADS软件使用数据格式(sy.for)现有ASCII码数据资料文件u.dat、v.dat和SST.dat,其空间范围60150oE,040oN;层次:u、v为850、 200hPa;时段:1982.11985.12;分辨率:2.5*2.5。要求编写出将这三个文件转换成二进制无格式直接存取(Grads格式)文件的Fortran程序,并给出相应的数据描述文件(CTL文件)。C 定义一个X,Y,Z方向的格点以及总时次ntparameter(nx=37,ny=17,nz=2,nt=48)c 定义数组dimension u(nx,ny,nz,nt), v(nx,ny,nz,nt), sst(nx,ny,nt)c 打开原数据文件open(1,file=d:llpu.dat) open(2,file=v.dat)open(3,file=sst.dat)c 打开目标文件,recl为记录的长度。 open(12,file=d:llpsy.grd,&form=unformatted,access=direct, recl=nx*ny*4)ccccccccccccccccccccccccccccccccccccccccccccccccccccc 按一定格式把数据文件读入 cccc cccc ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 写数据资料 ccccccccccc irec=0do 100 it=1,nt do 50 iz=1,nz irec=irec+1 write(12,rec=irec) (u(i,j,iz,it),i=1,nx),j=1,ny) 50 continue do 51 iz=1,nz irec=irec+1 write(12,rec=irec) (v(i,j,iz,it),i=1,nx),j=1,ny) 51 continue irec=irec+1 write(12,rec=irec) (sst(i,j,it),i=1,nx),j=1,ny) 100 continue end3.GRADS描述文件(如何构成GRADS可以读取的数据文件)下面为相应的CTL文件(sy.ctl)dset d:llpsy.grdundef -9.99E+33title NCEP/NCAR REANALYSIS PROJECTxdef 37 linear 60.000 2.500ydef 17 linear 0.000 2.500zdef 2 levels 850 200tdef 48 linear JAN1982 1movars 3u 2 99 u wind (m/s)v 2 99 v wind (m/s)sst 1 99 TSFC DATAEndvars4、描述文件构成介绍(一)数据描述文件的每行记录的各项以空格分开,注释行在第一列打“*”,注释行不能出现在变量列表中,每行记录不超过80个字符,每个描述文件一般包含以下几项:(1)被描述的数据文件名(dset)(2)该数据说明文件的标题(title)(3)数据类型、格式和选项(dtype,format,option)(4)时间、空间维数环境设置(xdef,ydef,zdef,tdef)(5)变量定义(vars,endvars) 以下详细说明数据描述文件中各记录的含义:(1)DSET data-set-name 给定二进制原始数据文件的文件名(可包含路径),若该数据文件与描述文件在同一路径下,可用省缺路径符号“” 代表,例如:/data/wx/grads/sa.ctl所描述的数据文件为 /data/wx/grads/sa.dat ,则既可定义为DSET sa.dat 也可定义为DSET /data/wx/grads/sa.dat 。(2)TITLE string 用字符串string简略描述数据文件的内容,该标题将在GrADS的查询命令QUERY中出现。(3)UNDEF value 定义缺测值,GrADS在运算操作和图形操作时将忽略这些格点。(4)OPTIONS 该项内容可替代format的功能且具有更广泛的用途。有: 其中:sequential表示数据是以顺序无格式形式存放,每个记录为一个x、y场;yrev表示y维数方向与ydef中说明的方向相反,即为从北向南存放;zrev 表示z维数方向与zdef中说明的方向相反,即为从上向下存放;byteswapped 二进制数据的位存放顺序取反序;big_endian,little_endian用于不同机器间二进制位存放顺序的自动改变;template多个时间序列原始数据文件想共用一个数据描述文件统一描述时采用的选项。这些数据文件的文件名形式由dset定义的形式命名,例如一个逐小时的数据集每24小时的数据放到一个数据文件中,每个数据文件名的形式为:1may92.dat,2may92.dat,. 等等,通过dset设置,告诉GrADS数据集文件名用代换模式格式如下:dset d:llp%d1%mc%y2.dat,选项设置:options template 定义时间范围和增量tdef 72 linear 0z1may1992 1hr 正确的替换为:%y2 - 2位数年 %y4 - 4位数年 %m1 - 1或2位数月 %m2 - 2位数月(1月须写成01) %mc - 3个字符的月缩写%d1 - 1或2位天 %d2 - 2位天 %h1 - 1或2位小时 %h2 - 2位小时 (5)XDEF number 或 XDEF number 设置网格点值与经度的对应关系,其中number是X方向网格点数,用整型数,必须大于等于1,LINEAR 或LEVELS表明网格点映射类型,取LINEAR时:网格点格距均匀,start为起始经度,或X = 1的经度,用浮点数表示,负数表示西经,increment 表示X方向网格点之间的格距,单位为度,用正浮点数表示,取LEVELS时,网格点格距可以不均匀,用枚举法列出各网格点对应的经度值,value-list顺序列出各格点的经度值,可续行表示,至少有两个以上格点时方可用LEVELS。(6)YDEF number mapping start 或 YDEF number 定义Y方向格点与纬度的映射关系,其中number为Y方向的格点数,用整型数表示,mapping表示映射方式,有以下几种:LINEAR - 线性映射 GAUSR15 - 高斯(Gaussian) R15 纬度 GAUSR20 - 高斯R20 纬度 GAUSR30 - 高斯R30 纬度 GAUSR40 - 高斯R40 纬度 线性映射LINEAR,start是起始纬度,即Y1的纬度,以浮点数表示,负数表示南纬;对高斯GAUSRxx映射, start为第一个高斯网格数,1表示最南端格点纬度,只当线性映射(LINEAR)时,increment表示Y方向网格点间距,一般为正浮点数表示,由南向北。 对LEVELS,value-list表示一串Y方向纬度值,即顺序枚举一系列网格点对应的纬度值,可续行表示 ,至少有两个以上格点时方可用LEVELS。例如:YDEF 20 GAUSR40 15 表示共有20个Y方向网格点,起始点为高斯R40网格下的高斯纬度15(即64.100S),实际这20个网格点对应的纬度值为:-64.10, -62.34, -60.58, -58.83, -57.07, -55.32, -53.56, -51.80, -50.05, -48.29, -46.54, -44.78, -43.02, -41.27, -39.51, -37.76, -36.00, -34.24, -32.49, -30.73 (7)ZDEF number mapping 或 ZDEF number 设置气压面与垂直网格点的映射关系,其中number 表示Z方向的网格点数,为整型数,mapping 为映射类型,有如下几种:LINEAR - 线性映射 LEVELS - 任意气压面 当映射为线性时,start为Z1时的值或起始值,increment为Z方向的增量,从低到高,该增量可取负值,例如:ZDEF 10 LINEAR 1000 -100 表示共10层等压面,其值为1000, 900, 800, 700hPa等等;当映射关系为LEVELS时,value-list顺序枚举给出全部对应的等压面,若等压面只有一层,则须用LINEAR映射关系(不一定)。(8)TDEF number LINEAR start-time increment 设置网格值与时间的映射关系。其中:number表示数据集中的时次数,用整型数表示,start-time 表示起始日期/时间,用GrADS绝对时间表示法,其格式为:hh:mmZddmmmyyyy 其中hh为两位数的小时,mm为两位数的分钟,dd为一位或两位数的日期,mmm为三个字符的月份缩写,yyyy为两位或四位数的年份(两位数隐含指19502049年),不给出时,hh省缺为00,mm省缺为00,dd省缺为1号,月、年值不能省缺,整个时间串中不能有空格。例如:12Z1JAN1990 14:20Z22JAN1987 JUN1960 increment为时间增量,格式为vvkk,其中vv为增量值,用1位或2位整型数表示,kk为增量类型,有如下几种:mn 表示分钟,hr表示小时,dy 表示天,mo表示月,yr表示年,如:20mn 表示增量为20分钟,1mo表示增量为1个月,2dy表示增量为2天。 (9)VARS number 表示变量描述开始,同时给出变量个数number,每个变量描述记录格式如下:abrev levs units description 其中,abrev为1到8个字符组成的该变量的缩写名,用于GrADS中访问该变量,该名字要求以字母(az)开头,由字母和数字组成;levs为整型数,表示该变量在本数据集中含有的垂直层次数,该数不可大于ZDEF中给出的垂直网格层数,0表示该变量只有一层,并且不对应于垂直层,如地表变量;units为以后使用预留,暂时设为常数99;description为一段说明该变量的字符串,最多40个字符,最后一个变量罗列完后,用ENDVARS表示数据描述文件结束。5. GrADS控制文件文件后缀名:.gs,用run命令执行,这是一种纯文本文件,里面含有用脚本语言(script language)写成的批处理GrADS系统命令和设置,可以集成GrADS命令,具有强大功能。下面是一个名为a.gs的文件内容:reinitenable print sst811open sst.ctlset c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年苏州市教育局直属学校招聘真题
- 2025恒丰银行昆明分行社会招聘12人笔试备考题库附答案解析
- 应急管理办公室专员年度工作计划
- 聚醚装置操作工安全素养强化考核试卷含答案
- 煤层气勘查测量工标准化考核试卷含答案
- 化工蒸发工岗前岗位操作考核试卷含答案
- 矿井制冷降温工岗前实践理论考核试卷含答案
- 铌铁火法冶炼工创新意识测试考核试卷含答案
- 熔喷工岗前日常考核试卷含答案
- 护理个案试题及答案
- 2025云南昆明国际会展中心有限公司社会招聘8人备考题库及答案详解(历年真题)
- 2024年辽宁省沈阳市铁西区四年级数学第一学期期末联考试题含解析
- 劳务派遣标书服务方案(全覆盖版本)
- 醒脑开窍针法治疗中风病
- 老人赡养协议书
- 2024年北京中考记叙文阅读专题02写 人记事散文(含答案解析)
- 皖2015s209 混凝土砌块式排水检查井
- 反刍动物饲料利用
- 《胆囊结石的护理》PPT
- 寿宁蒲洋水电站工程竣工验收鉴定书
- JJG 52-2013弹性元件式一般压力表、压力真空表和真空表
评论
0/150
提交评论