12输入输出(IO)格式.docVIP

  • 13
  • 0
  • 约1.82万字
  • 约 22页
  • 2018-10-16 发布于天津
  • 举报
12输入输出(IO)格式.doc

12: 输入输出(I/O)格式 12: 输入输出(I/O)格式 12- PAGE 10 MM5用户手册 MM5用户手册 12- PAGE 9 12 输入输出(I/O)格式 12.1 简介 版本1的头格式从1994开始使用。在此期间,提出了许多进一步完善的方案,这些方案都在版本3中得到了体现。首先,版本1的文件没有必要如此大。因为在每个时段的前面有3.5M的头记录,然而仅是其中的一小部分被使用。版本1为了使头记录包含文件中所有变量场的信息,使用一种自述性的格式。然而使用它却有点不方便,因为每个变量场的信息被深含在了头记录中。当加入一个新的变量场时,头记录中的位置和次序必须一致,同时又要改变变量场的总数,因此处理此种文件是很困难的。 版本3在两个方面进行了改善:文件更短了,添加/删除变量场变得更加容易了。头的长度被减少。头仍然包括20个部分(即两维数组的第二个指数,表示程序名),但是每部分仅包括50个整数,20个实数和他们相应的80个字符的描述。这使得头的大小减少了100K。而且,仅有一个位于文件起始处的头。但是在格式中有足够的通用性,以使在其他时刻有更多的头。比如重新运行的起始时刻或是当嵌套网格开始移动的时刻。头仍然包括关于预处理选项,区域特征和位置的信息。然而它不再包括象sigma层和气压层等一维场信息,也不包括文件中其它部分的信息。版本3引入了子头(sub-header)的概念,它是一个直接位于每个变量场前的单记录描述。这个描述包括与下面变量场的名字,维数,下标次序,下标范围,大小,时间相关的信息。文件中的标志表示所读的是主头记录(big-header),还是子头记录(sub-header)和变量场,或是一个时间段的结束。很明显插入一个变量场是很容易的,只要同时插入一个相关标志和子头。搜索一个给定的变量场也是很容易的,通过读取子头知道发现匹配位置,然后就可以读下面的变量场。 12.2 V3的文件格式 一个MM5模式系统的输出文件包括以下记录: (first time period第一时间段) big header flag 主头标志(整数0) big header 主头 sub-header flag 子头标志(整数1) sub-header 子头 field 变量场 sub-header flag 子头标志(整数1) sub-header 子头 field 变量场 …. …. end-of-time-period flag 时段结束标志(整数2) (second time period 第二时间段) sub-header flag 子头标志(整数1) sub-header 子头 field 变量场 sub-header flag 子头标志(整数1) sub-header 子头 field 变量场 …. …. end-of-time-period flag 时段结束标志(整数2) (and so on ….) 对变量场存放的先后次序没有要求,只要它们以时间序列进行分组。当读模式系统中的文件时,在对程序中的变量赋值之前,必须读取变量场并且场名须与指定的8字符名相匹配。要注意的是1维,2维和3维场可能混在了一起,但是子头已经给出了足够的信息用于读取正确的数组。 因而,一个简单的读程序象这样: 在版本3中有两个关于边界条件的文件:一个仅含有侧边界条件,另一个含有地面层边界条件,比如地表下的温度和海平面温度(SST)等。 12.2.1 主头(Big Header) 主头包括与V1/V2相似的4个2维数组,MM5V3中指的是: BHI,BHR,BHIC,BHRC 这些数组的维数是: BHI(50,20),BHR(20,20),BHIC(50,20),BHRC(20,20) 这里BHI是一个整型数组,BHIC是它的伴随数组,作用是对BHI中的每个元素的内容进行描述。类似地,BHR是一个实数组,而BHRC则对其内容进行描述。 头中的第一个值是BHI(1,1),它仍旧表示数据类型。但是也发生了一些变化,如下所示: BHI(1,1) Data Types Terrain Regrid Rawins Rawins’ surface analysis Model initial condition file Model lower boundary condition file Model lateral boundary condition file Interpolated model output on pressure levels Model output

文档评论(0)

1亿VIP精品文档

相关文档