《第2章 数据处理精选文档.ppt》由会员分享,可在线阅读,更多相关《第2章 数据处理精选文档.ppt(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第2章 数据处理本讲稿第一页,共三十二页2.1 各类数据格式的特点各类数据格式的特点n一般二进制无格式直接或者顺序一般二进制无格式直接或者顺序记录的数据格式:可以是格点数记录的数据格式:可以是格点数据或站点数据,可以用据或站点数据,可以用Fortran或者或者C语言读写。语言读写。本讲稿第二页,共三十二页nGRIB码数据格式:是自定义的码数据格式:是自定义的数据格式,压缩率高,占用空数据格式,压缩率高,占用空间小。如间小。如NCEP提供的数据资料。提供的数据资料。nNETCDF等通用数据格式:自等通用数据格式:自定义数据格式,精确性好,便定义数据格式,精确性好,便于传输。于传输。本讲稿第三页,
2、共三十二页2.2 数据文件的转换数据文件的转换 1.转换方法转换方法 转换文件的数据存放格式,一转换文件的数据存放格式,一般是通过般是通过Power Station或或Visual Fortran等软件使用等软件使用Fortran或者或者C语言来编程转换。语言来编程转换。本讲稿第四页,共三十二页2.数据存放形式数据存放形式 数据排放顺序为:经度、纬度、数据排放顺序为:经度、纬度、层次,然后是物理变量,最后是层次,然后是物理变量,最后是时次变化时次变化。本讲稿第五页,共三十二页3.举例(格点资料)举例(格点资料)现有现有ASCII码(十进制存放格式)数据资码(十进制存放格式)数据资料文件料文件u
3、.dat、v.dat和和SST.dat,其空间范围:,其空间范围:60-150E,0-40N;层次:;层次:u、v为为850、200hPa;时段:;时段:1982.1-1985.12;分辨率:;分辨率:2.5*2.5。要求编写出将这三个文件转换成二。要求编写出将这三个文件转换成二进制无格式直接存取(进制无格式直接存取(Grads格式格式.grd)文件)文件的的Fortran程序。程序。本讲稿第六页,共三十二页Fortran程序编写如下:程序编写如下:C 定义一个定义一个X,Y,Z方向的格点数以及总时次方向的格点数以及总时次ntparameter(nx=37,ny=17,nz=2,nt=48)c
4、 定义数组定义数组dimension u(nx,ny,nz,nt),v(nx,ny,nz,nt),sst(nx,ny,nt)本讲稿第七页,共三十二页c 打开原始数据文件打开原始数据文件open(1,file=u.dat)open(2,file=v.dat)open(3,file=sst.dat)c 打开目标文件,打开目标文件,recl为记录的长度,对于直接存取为记录的长度,对于直接存取文件必须指定记录长度文件必须指定记录长度。open(12,file=mhy.grd,form=unformatted,#access=direct,recl=nx*ny*4)本讲稿第八页,共三十二页c按一定格式把
5、数据文件读入,按一定格式把数据文件读入,irec为记录累加器为记录累加器irec=0 do 100 it=1,nt do 50 iz=1,nz irec=irec+1 read(1,rec=irec)(u(i,j,iz,it),i=1,nx),j=1,ny)50 continue do 51 iz=1,nz irec=irec+1 read(2,rec=irec)(v(i,j,iz,it),i=1,nx),j=1,ny)51 continue irec=irec+1 read(3,rec=irec)(sst(i,j,it),i=1,nx),j=1,ny)100 continue 本讲稿第九页,
6、共三十二页c 将数据资料写入新文件中,将数据资料写入新文件中,irec重新进行记录累重新进行记录累irec=0 do 200 it=1,nt do 30 iz=1,nz irec=irec+1 write(12,rec=irec)(u(i,j,iz,it),i=1,nx),j=1,ny)30 Continue do 31 iz=1,nz irec=irec+1 write(12,rec=irec)(v(i,j,iz,it),i=1,nx),j=1,ny)31 continue irec=irec+1 write(12,rec=irec)(sst(i,j,it),i=1,nx),j=1,ny)2
7、00 continueend本讲稿第十页,共三十二页如果不考虑采用无格式直接方式存取文如果不考虑采用无格式直接方式存取文件的话,可以使用下面的编程形式,较为简件的话,可以使用下面的编程形式,较为简单。单。parameter(nx=37,ny=17,nz=2,nt=48)dimension u(nx,ny,nz,nt),#v(nx,ny,nz,nt),sst(nx,ny,nt)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
8、=1,nt do 50 iz=1,nz read(1,*)(u(i,j,iz,it),i=1,nx),j=1,ny)50 continue do 51 iz=1,nzread(2,*)(v(i,j,iz,it),i=1,nx),j=1,ny)51 continueread(3,*)(sst(i,j,it),i=1,nx),j=1,ny)100 continue本讲稿第十二页,共三十二页do 200 it=1,nt do 30 iz=1,nz write(12)(u(i,j,iz,it),i=1,nx),j=1,ny)30 Continue do 31 iz=1,nzwrite(12)(v(i,
9、j,iz,it),i=1,nx),j=1,ny)31 continuewrite(12)(sst(i,j,it),i=1,nx),j=1,ny)200 continueend本讲稿第十三页,共三十二页2.2 数据描述文件数据描述文件 GrADS绘图不能直接使用绘图不能直接使用“数据文件数据文件”,而是通过,而是通过“数据描数据描述文件述文件”间接使用间接使用“数据文件数据文件”。本讲稿第十四页,共三十二页1.数据描述文件的概念数据描述文件的概念 数据描述文件是原始数据文件数据描述文件是原始数据文件的描述文件。的描述文件。本讲稿第十五页,共三十二页2.数据描述文件的形式数据描述文件的形式 以下是
10、一个格点数据描述文件的例子:以下是一个格点数据描述文件的例子:*this is an example to demonstrate the data descriptor fileDSET d:gradsua.datTITLE Upper Air DataDTYPE gridOPTION byteswappedUNDEF-9.99E33本讲稿第十六页,共三十二页XDEF 80 LINEAR-140.0 1.0 X轴说明轴说明80格点数格点数,-140.0起始值起始值,1.0间隔值间隔值.数据为实型数据为实型YDEF 50 LINEAR 20.0 1.0ZDEF 10 LEVELS 1000 8
11、50 700 500 400 300 250 200 150 100 Z轴说明轴说明10层数层数,层次层次TDEF 4 LINEAR 00:30Z10apr1991 12hr 4表示资料总时次,表示1991年4月10日,时间间隔为12小时逐月资料1moTDEF 4 LINEAR 0Z10apr1991 12hr 表示1991年4月10日本讲稿第十七页,共三十二页vars 6 变量数变量数slp 0 0 sea level pressure 第一个资料第一个资料 地面为地面为0,6个层次有资料为个层次有资料为6;第二个可取第二个可取0或或99.后面字符为说明变量后面字符为说明变量.z 10 0
12、heightst 10 0 tempstd 6 0 dewpointsu 10 0 u windsv 10 0 v windsEndvars 本讲稿第十八页,共三十二页本讲稿第十九页,共三十二页3.数据描述文件的构成数据描述文件的构成(1)每个数据描述文件一般包含以下几项:)每个数据描述文件一般包含以下几项:n被描述的数据文件名(被描述的数据文件名(dset)n该数据说明文件的标题(该数据说明文件的标题(title)n数据类型、格式和选项数据类型、格式和选项(dtype,format,option)n时间、空间维数环境设置时间、空间维数环境设置(xdef,ydef,zdef,tdef)n变量定
13、义(变量定义(vars,endvars)本讲稿第二十页,共三十二页(2 2)数据描述文件中各记录的含义:)数据描述文件中各记录的含义:nDSET data-set-name 给定二进制原始数据文件的给定二进制原始数据文件的文件名(可包含路径)。文件名(可包含路径)。本讲稿第二十一页,共三十二页nTITLE string 用字符串用字符串string简略描述数据简略描述数据文件的内容。文件的内容。本讲稿第二十二页,共三十二页nUNDEF value 定义缺测值。定义缺测值。本讲稿第二十三页,共三十二页nOPTIONS 定义数据格式选项,定义数据格式选项,keywords 有:有:本讲稿第二十四页
14、,共三十二页nXDEF number 或XDEF number 设置网格点值与经度的对应关系。设置网格点值与经度的对应关系。本讲稿第二十五页,共三十二页nYDEF number mapping start 或YDEF number 定义定义Y方向格点与纬度的映射关系。方向格点与纬度的映射关系。本讲稿第二十六页,共三十二页nZDEF number mapping 或ZDEF number 设置气压面与垂直网格点的映射关系。设置气压面与垂直网格点的映射关系。本讲稿第二十七页,共三十二页nTDEF number LINEAR start-time increment 设置网格值与时间的映射关系设置网
15、格值与时间的映射关系。时间表示法时间表示法:hh:mmZddmmmyyyy 时间增量表示法:时间增量表示法:vvkk 本讲稿第二十八页,共三十二页nVARS number 表示变量描述开始,同时给表示变量描述开始,同时给出变量个数出变量个数number。用用ENDVARS表示数据描述文表示数据描述文件结束。件结束。本讲稿第二十九页,共三十二页4.数据描述文件的建立数据描述文件的建立 数据描述文件为纯文本格式,数据描述文件为纯文本格式,可用一般的编辑器产生(如记事本,可用一般的编辑器产生(如记事本,写字板等)。描述文件编辑完成后,写字板等)。描述文件编辑完成后,保存时为保存时为.ctl。本讲稿第
16、三十页,共三十二页练习:为练习:为mhy.grd文件(刚才进行数文件(刚才进行数据转换得到的新文件)编写数据描据转换得到的新文件)编写数据描述文件述文件mhy.ctl。本讲稿第三十一页,共三十二页dset mhy.grdundef-9.99E+33title NCEP/NCAR REANALYSIS PROJECTxdef 37 linear 60.0 2.5ydef 17 linear 0.0 2.5zdef 2 levels 850 200tdef 48 linear JAN1982 1movars 3u 2 99 u wind(m/s)v 2 99 v wind(m/s)sst 0 99 TSFC DATAendvars本讲稿第三十二页,共三十二页