网站大量收购闲置独家精品文档,联系QQ:2885784924

第四章Grads数据资料转换和数据描述文件2013.doc

第四章Grads数据资料转换和数据描述文件2013.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GrADS (Grid Analysis and Display System) 讲义(4) 内容提要 一、GrADS所能处理的数据格式 二、数据资料的准备(binary) ASCII码数据文件向二进制数据文件的转换 三、数据描述文件的构成 四、其它数据文件简介(netCDF/GRIB) 五、GrADS控制文件简介 一、GrADS所能处理的数据格式 --Binary:自制,直接、顺序存取,Fortran可以读写。*.grd --netCDF(自描述):精确性好,便于传输;*.nc --GRIB:压缩率高。*.grb --HDF-SDS(卫星资料) --ASCII(台风路径) --站点 --BUFR(V1.9版本):二进制通用数据表示格式(BUFR)用于非格点气象数据的保存,便于网络传输,是世界气象组织(WMO)规定的标准格式目前使用的常规气象资料数据以及雷达、卫星数据资料转换为BUFR格式GrADS最基本的数据格式; 2)常用后缀:*.grd,.bin,.dat; 3)可用fortran读写; 4)一般为二进制无格式文件(form=‘unformatted’); 5)访问形式 直接(access=‘direct’) 顺序(access=sequential)--ctl文件中说明 6)格式说明由数据描述文件(*.ctl)描述; 数据资料———数据描述文件———GrADS 翻译器 注意:数据文件和数据描述文件是分开的。后者为纯文本格式,可用一般的编辑器产生(如记事本等); 2、GrADS中数据的存放形式 1)5-D的数据集 (x,y),z,VAR,t 排放顺序为先经度、纬度、高度,然后是物理变量,最后是时次变化。一个x、y数据场构成一个记录。 2)3—D空间的排列 x从西东, y从南北, z从下--上 3、如何由ASCII码数据生成一个直接存取的无格式数据文件 借助于Fortran程序完成 例1:有一个4-D要素场,将其由ASCII码数据转为无格式直接存取文件,Fortran程序如下: Program main C 定义一个X,Y,Z方向的格点以及总时次nt parameter(nx=144,ny=73,nz=17,nt=48) c 定义数组 dimension var(nx,ny,nz,nt) c 打开原数据文件 open(1,file=d:\llp\test.dat) !!ccccccccccccccccccccccccccccccccccccccccc!!ccccccc 一定格式把数据文件读入 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 100 continue !!!!CCCCCCCCCCCCCCCCCCC ccccccccccccccccccccccccccccccccccccccccccc c 打开目标文件,recl为记录的长度。 open(12,file=d:\llp\test.grd, form=unformatted,access=direct, recl=nx*ny*4) c 写数据资料 irec=0 do 100 it=1,nt do 100 iz=1,nz irec=irec+1 write(12,rec=irec) ((var(i,j,iz,it),i=1,nx),j=1,ny) Continue Close(1) Close(12) end 还可以用另外的一种方式写资料,见下: c 打开目标文件,recl为记录的长度。 open(12,file=d:\llp\test.grd, form=unformatted,access=direct, recl=nx*ny*nz*4) c 写数据资料 irec=0 do 100 it=1,nt irec=irec+1 write(12,rec=irec) (((var(i,j,iz,it),i=1,nx),j=1,ny),iz=,1,nz) Continue Close(1) Close(12) end 另外一种写法: c 打开目标文件,rec

文档评论(0)

juhui05 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档