请选择 进入手机版 | 继续访问电脑版
爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 13957|回复: 9

[程序设计] MATLAB处理探空数据

[复制链接]

新浪微博达人勋

发表于 2019-5-20 09:28:16 | 显示全部楼层 |阅读模式

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

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

x
请问有人处理过怀俄明大学的sounding数据吗?他的sounding数据文件大小不一致,有头文件和后面的文字描述文件,很不好批量处理。。。附件里的TXT只是一次数据。。。有没有人能讲一下怎么处理的。

soundingseasia_47909_sounding_2007_2_2_00.txt

6.66 KB, 下载次数: 23, 下载积分: 金钱 -5

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

新浪微博达人勋

发表于 2019-5-20 09:57:51 | 显示全部楼层
for isite = 1:length(site)
    disp(['===> processing ',site{isite}]);
    file = [input_dir,site{isite},'\',num2str(target_year,'%.4i'),'-',num2str(target_month,'%.2i'),'.txt'];
    fileID    = fopen(file,'rt');
    fseek(fileID,0,'eof');
    filelength = ftell(fileID);
    fclose(fileID);
   
    fileID    = fopen(file,'rt');
    clear data;
    for ifileline=1:filelength
        data{ifileline,1} = fgetl(fileID);
        if strfind(data{ifileline,1},[site_name{isite},' Observations'])
            data_beg = ifileline;
            temp     = strfind(data{ifileline,1},[site_name{isite},' Observations']);
            hour = data{ifileline,1}(temp+length([site_name{isite},' Observations'])+4:temp+length([site_name{isite},' Observations'])+5);
            day  = data{ifileline,1}(temp+length([site_name{isite},' Observations'])+8:temp+length([site_name{isite},' Observations'])+9);
        end
        if strfind(data{ifileline,1},'Station information and sounding indices')
            data_end = ifileline;
            fid=fopen([output_dir,site{isite},'\',num2str(target_year,'%.4i'),num2str(target_month,'%.2i'),day,hour,'.txt'],'wt');
            for idataline = data_beg+2:data_end-1
                temp = data{idataline,1};
                fprintf(fid,'%s',temp);
                fprintf(fid,'\n');
            end
            fclose(fid);
        end;
    end
   
%     while ~feof(fileID)
%         data{i,1} = fgetl(fileID);
%     end
    fclose(fileID);
end


之前自己处理时写的一段程序。
大致思路就是虽然数据里面有头尾,但是都还是规律的,可以按照站点编号(即程序中的site)来处理。
楼主可以参考一下
密码修改失败请联系微信:mofangbao
回复 支持 3 反对 0

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-5-20 15:05:32 | 显示全部楼层
croton 发表于 2019-5-20 09:57
for isite = 1:length(site)
    disp(['===> processing ',site{isite}]);
    file = ;

太谢谢你了!!!
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2020-4-8 09:02:53 | 显示全部楼层
请问处理探空数据时 前几层超过1000hpa 是舍弃还是怎么处理呢
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-8 10:47:07 | 显示全部楼层
一颗醉甜的草莓 发表于 2020-4-8 09:02
请问处理探空数据时 前几层超过1000hpa 是舍弃还是怎么处理呢

我是继续保留的,如果你只需要1000hPa及以上的数据,可以不读
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-4-8 14:39:19 | 显示全部楼层
zzw9701 发表于 2020-4-8 10:47
我是继续保留的,如果你只需要1000hPa及以上的数据,可以不读

那一般计算对流参数 是直接从第一层算呢 还是从1000hpa算 比如cape
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-8 15:05:38 | 显示全部楼层
一颗醉甜的草莓 发表于 2020-4-8 14:39
那一般计算对流参数 是直接从第一层算呢 还是从1000hpa算 比如cape

我没算过CAPE值。。。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-4-10 16:07:26 | 显示全部楼层
你好,我请假个问题,感谢了。我看怀俄明大学探空数据内显示:Precipitable water [mm] for entire sounding: 10.98。这个结果做水汽含量的验证就可以直接用了吗?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 20:55:37 | 显示全部楼层
wwggiser 发表于 2021-4-10 16:07
你好,我请假个问题,感谢了。我看怀俄明大学探空数据内显示:Precipitable water [mm] for entire soundin ...

抱歉,我没用过这个值。。。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-4-13 11:09:57 | 显示全部楼层
zzw9701 发表于 2021-4-11 20:55
抱歉,我没用过这个值。。。

感谢你及时回复,辛苦了。我再找找其他资料。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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