grads处理多个ctl文件

来源:互联网 发布:json 数组 编辑:程序博客网 时间:2024/05/18 00:11

用grads处理多个相同格式的数据时若单个单个处理非常麻烦,当文件非常多的时候是单个处理是不实际的。下面介绍一种方法;

   第一步,在这种情况下可以重新写一个ctl描述文件,其文件变量都和已知的ctl相同,若原来的n文件只是时间不同,那么新描述文件的时间维数是所有原文件的时间的和。同样,若其他维数不同时也用同样的方法处理。 

   第二步,在第一行之后添加一行: options template 表示多个时间序列原始数据文件想用一个描述文件统一地描述。这些原数据的原文件名由dset定义的形势命名文件名。

   第三步,修改dset 的文件名。原路径不变,把文件名用%表示。其中:

   %y2  代表两位数年

   %y4  代表四位数年

   %m1  代表一位或者两位数的月

   %m2  代表两位数月(用0补齐1位数)

   %mc  3个字符月份的缩写

   %d1  1或2位天

   %d2  两位天

   %h1  1或者2位时

   %h2  2位时

例如:

   原文件其中之一的文件名为gdas2006050812f00,且所有文件只有天和时的变化

   那么新描述文件的文件名为:gdas200605%d2%h2f00

  

   另外如果源文件里有index项的话,需要修改其idx的文件名,假设改成fnl.idx。并用在dos下用gribmap函数生成一个新的idx文件。gribmap -e -i fnl.ctl(加绝对路径)

open fnl.ctl就可以打开所有文件。