0. 码字不易,点赞加关注(公众号:WZZHHH,部分资料在公众号可以下载),使用请注明出处。
0.1详细代码在最后获取
1.我处理2020年和2021年陆态网的数据,这两年总共有哪些站点俺不知道。
2.在利用ERA5插值GNSS站点气象数据和计算上空的ERA5 PWV时,需要得到站点的经纬度和高程,我也没有。
3.只能根据o文件得到站点名称,读取o文件得到经纬度和高程。如下图,可以看到经纬度和高程。
4.由于我不确定5-7行一定是经纬度高程,但是我确定某行包含有“latitude、longitude、elevation”就一定是所需要的行。因此我采用逐行读取。
注:如下图这个没有经纬度的,只有地心坐标的可以参考我博文《xyz地心坐标转经纬度高程-CSDN博客》进行转化即可。
5.详细代码请关注公众号WZZHHH,下面是部分代码展示。
% 找到所有站点的o文件,用来生成使用站点的经纬度和高程文件
% 基于陆态网站点数据提取经度、纬度、高程
% 有些站点可能没有经纬度,只有近似坐标,则需要你自己换算
% station_nan:读不到经纬度和高程的站点
% all_station:所有站点经纬度和高程
clc,clear;
% o文件路径
path_o = 'F:\A-GNSS数据\B-陆态网\转换后文件\';
all_station=[]; % 所有站点
station_nan=[]; % 所有站点
% 路径下有多年数据,年文件夹下又有365个年积日文件夹
% 因此需要遍历所有年份文件夹和所有年积日文件夹
do = dir(path_o); % 找到年份文件夹
for kk = 3:size(do,1)
path_yo = [path_o do(kk).name '\'];% do(kk).name是对应年份
ydo = dir(path_yo); % 找到所有年积日文件夹
for k = 3:size(ydo,1)
path_dayo = [path_yo,num2str(k-2,'%03d'),'\']; % 年纪日文件夹路径
file = dir([path_dayo,'*o']); % 找到年纪日文件夹下的所有o文件
% 将年积日文件夹下的o文件逐个提取信息(名称、经纬度、海拔)
for II=1:size(file,1)
% 只有第一年的第一个年积日才全部逐行读取,建立基础的站点
% 其他时间与初步建立的基础站点比较,只有缺少的才读取加入到站点中
if kk==3&&k==3