爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 109326|回复: 185

[程序设计] matlab读取GFS的grib2文件的示例

  [复制链接]

新浪微博达人勋

发表于 2014-10-22 21:47:00 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 又是那隻貓 于 2017-2-23 10:07 编辑

关于用matlab一站式读取NetCDF, OPeNDAP, HDF5, GRIB, GRIB2, HDF4等等
http://bbs.06climate.com/forum.php?mod=viewthread&tid=47599
其实这里是补一下上次欠下的一个示例;

从型如GFS_Global_0p5deg_20140531_0000_anl.grib2的文件中读取温度等变量
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

grib=ncgeodataset(Data_File);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%time
utc_time=double(grib.data('time'));
Data.UTC=datestr(datenum([Data_File(end-22:end-15) Data_File(end-13:end-10)],'yyyymmddHHSS')+  utc_time/24  ,'dd-mmm-yyyy HH:MM:SS' );
%%%%%%%%%%%%%%%%%%%%%%%%%%%%grid isobaric
Data.isobaric=double(grib.data('isobaric1'))/100;%21 level and convert it into hPa
%%%%%%%%%%%%%%%%%%%%%%%%%%%%grid lat lon
Data.lat=double(grib.data('lat'));
Data.lon=double(grib.data('lon'));



Data.Temperature=squeeze(double(grib.data('Temperature_isobaric')));%K
Data.Temperature=Data.Temperature(1:21,:,:)-273;%convert it into degress Centigrade


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


上面是读取温度的示例,完整的我传成一个文件,收少许贡献。附件里包含了可降水率、相对湿度、风场、温度等
%float Precipitable_water_entire_atmosphere(time=1, lat=361, lon=720);
%float Relative_humidity_isobaric(time=1, isobaric3=25, lat=361, lon=720);
%float Temperature_isobaric(time=1, isobaric=26, lat=361, lon=720);
%float u-component_of_wind_isobaric(time=1, isobaric=26, lat=361, lon=720);
%float v-component_of_wind_isobaric(time=1, isobaric=26, lat=361, lon=720);
%float Vertical_velocity_pressure_isobaric(time=1, isobaric1=21, lat=361, lon=720);
%float Convective_available_potential_energy_surface(time=1, lat=361, lon=720);
%float Convective_inhibition_surface(time=1, lat=361, lon=720);
等变量的读取

Fun_GFS_Data.m (2.26 KB, 下载次数: 259, 售价: 3 贡献)

评分

参与人数 4金钱 +9 贡献 +3 收起 理由
fujianxin + 1 很给力!
流行划过 + 1
croad9012 + 2 很给力!
二爷名声在外 + 5 + 3 赞一个!

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-2-10 10:47:32 | 显示全部楼层
请教楼主,我现在想解的数据名称是gfs.t12z.pgrb2.1p00.f006,
NCEP在年初才改的名称和格式,最近数据变更了,
我读了一下,提示错误:
Warning: Invalid escape sequence appears in format string. See help sprintf for valid escape sequences.
> In ncdataset>ncdataset.ncdataset at 89
  In cfdataset>cfdataset.cfdataset at 59
  In ncgeodataset>ncgeodataset.ncgeodataset at 74
??? Error using ==> ncdataset>ncdataset.ncdataset at 91
Failed to open D:
ead_grib

Error in ==> cfdataset>cfdataset.cfdataset at 59
            obj = obj@ncdataset(url);

Error in ==> ncgeodataset>ncgeodataset.ncgeodataset at 74
            obj = obj@cfdataset(url);

Caused by:
    Undefined variable "ucar" or class "ucar.nc2.dataset.NetcdfDataset.openDataset".
密码修改失败请联系微信:mofangbao
回复 支持 6 反对 0

使用道具 举报

新浪微博达人勋

发表于 2014-10-23 06:49:59 | 显示全部楼层
多谢分享啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-23 08:38:31 | 显示全部楼层
谢谢分享 贡献不足
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-11-13 14:38:29 | 显示全部楼层
看来有钱就是好呀,
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-11-14 19:59:37 | 显示全部楼层
有用呀~~希望楼主多发
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-11-14 20:09:51 | 显示全部楼层
雪中送炭啊!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-1-9 11:23:53 | 显示全部楼层
谢谢分享 贡献不足
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-1-9 21:57:52 | 显示全部楼层
感谢分享,谢谢楼主!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-1-31 07:44:48 来自手机 | 显示全部楼层
hao...........
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表