Binary 正在尝试读取由wgrid使用fortran创建的ieee文件。我收到奇怪的条目
我正在尝试读取由wgrib创建的二进制ieee文件。我有一堆来自ECMWF中心的GRIB文件,我把它们转换成二进制ieee。我试图用fortran阅读它,但我无法获得正确的值(网格的行数(Nlon)和列数(Nlat)的巨大值)。以下是我用于从dos行创建ieee文件的命令:Binary 正在尝试读取由wgrid使用fortran创建的ieee文件。我收到奇怪的条目,binary,fortran,ieee,Binary,Fortran,Ieee,我正在尝试读取由wgrib创建的二进制ieee文件。我有一堆来自ECMWF中心的GRIB文件,我把它们转换成二进制ieee。我试图用fortran阅读它,但我无法获得正确的值(网格的行数(Nlon)和列数(Nlat)的巨大值)。以下是我用于从dos行创建ieee文件的命令: 'wgrib C:\gribs\IGD01211200012112001 -d 6 -ieee -big_endian IGD01211200012112001.bin 这些是fortran命令 open(12,
'wgrib C:\gribs\IGD01211200012112001 -d 6 -ieee -big_endian IGD01211200012112001.bin
这些是fortran命令
open(12,file='IGD01211200012112001.bin',form='binary',status='old')
read(12) Nlon
read(12) Nlat
我也试过了
open(12,file='IGD01211200012112001.bin',access='stream')
但一切都没有改变。没有改进使用
打开(12,文件='IGD01211200012112001.bin',格式='未格式化',状态='old')
但如果你记得清楚的话,后者会在值的左右两侧使用一些填充
我也尝试过选择小恩迪安或大恩迪安,但都没有改变。有什么建议吗?我还尝试将其另存为bin,使用标志-bin而不是-ieee,但没有任何更改。在wrib的网站上,并没有说太多。这里对wgrib2说了一些话,但没有多大帮助。
谢谢
A.根据文档,正在编写的文件不是您所期望的。对于
bin
或ieee
输出,您将获得以下任一格式的数据:
或
您正在尝试在网格之前读取尺寸长度,但这仅在指定-text
输出选项而不是二进制或ieee格式时有效
Binary and IEEE, no header
(grid 1) (binary float value) grid value
(binary float value)
...
(binary float value) nx*ny values
(grid 2) (binary float value)
(binary float value)
...
(binary float value) nx*ny values
etc
Binary and IEEE, with header
(grid 1) (binary integer) nx*ny*sizeof(float)
(binary float value)
...
(binary float value) nx*ny values
(binary integer) nx*ny*sizeof(float)
(grid 2) (binary integer) nx*ny*sizeof(float)
(binary float value)
...
(binary float value) nx*ny values
(binary integer) nx*ny*sizeof(float)