使用GRADS读取转换nc文件的方法

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。




下面给出使用Grads读取nc格式文件的一个范例脚本文件(.gs文件):



以位势高度场为例

‘reinit’

‘sdfopen d:\xxxx\hgt.mon.mean.nc ‘ (打开需要的nc文件,注意路径)


‘set gxout fwrite’

‘set fwrite d:\xxxxxx\hgt.bin’ (指定要输出的二进制文件名和路径)


‘set lon 0 357.5’

‘set lat -90 90 ‘ (设定写出区域范围,这是全球范围,第一句是必需的,如果是用默认,则会在x方向输出为145个点,要注意)



‘set lev 1000’ (设定要输出的层次)

‘set t 1 640’ (设定时间范围)


‘d hgt’ (输出)


‘reinit’


这样就生成了需要的二进制文件,其对应的ctl文件需要另外给出。



以上是输出单层的二进制文件,把多层的数据放在同一个二进制文件中,就要使用循环,根据grads规定的数据存放次序(依次为经度、纬度、高度、变量、时次),如下:



‘reinit’

‘sdfopen d:\xxxx\hgt.mon.mean.nc’ (打开需要的nc文件,注意路径)


‘set gxout fwrite’

‘set fwrite d:\xxxxxx\hgt.bin’ (指定要输出的二进制文件名和路径)


‘set lon 0 357.5’

‘set lat -90 90’ (设定写出区域范围,这是全球范围,第一句是必需的,如果用默认set lon 0 360,则会在x方向输出为145个点,要注意)


t=a (a为起始时次)

while(t<=b)(开始循环,b为结束时次)

‘set t’ t (设定时次)


‘set lev 1000’ (设定要输出的层次)

‘d hgt ‘ (输出)

‘set lev 925’ (设定要输出的层次)

‘d hgt ‘ (输出)

‘set lev 850’ (设定要输出的层次)

‘d hgt ‘ (输出)

‘set lev 700’ (设定要输出的层次)

‘d hgt ‘ (输出)

‘set lev 600’ (设定要输出的层次)

‘d hgt ‘ (输出)

‘set lev 500’ (设定要输出的层次)

‘d hgt ‘ (输出)



(可以添加任意的层次)

(由于高度分布不连续而且数量有限,所以用这种方法)




t=t 1

endwhile (结束循环)

‘reinit’






相关文档
最新文档