- 积分
- 71
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-6-4
- 最后登录
- 1970-1-1

|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
之前因为老师布置的任务,自己编了一个读取grads使用的dat数据到matlab中的程序
比较初步,希望大家能给一些建议
- function data = gradsread( dat_filename,ctl_filename,var )
- %GradsRead --> Read grads data file which is written in binary.
- % data = gradsread( dat_filename,ctl_filename,varname )
- % Read ctl file to get actual varname to read.
- % Default is Big-endian, UTF-8 codeing.
- % If you want to change, just modify fopen function in this script.
复制代码 简单说明:给出dat和ctl文件的路径,自定义想要获取的varname,就可以读出想要的变量数据这里的varname必须是ctl内已有的变量,且只能是一个
所有的输入参数是字符串形式
函数思路:
读取ctl文件,根据ctl文件定义,获得dat文件中数据的定义
根据变量排列顺序,算出变量数据位置
fread读出变量数值即可
默认打开是Big-endian格式,utf-8编码
如果不符,在函数里改变fopen代码即可
测试:
已经试验过使用WRF数据转出的grads数据文件,结果无问题
------PS差不多是第一次发帖,轻喷谢谢。。。
|
评分
-
查看全部评分
|