资源简介
matlab程序,用于读取rinex文件,GNSS观测数据,提取相关数据
代码片段和文件信息
function [headobs]=ReadObsData
%读接收机观测数据文件
%HeadODat :a structure stores header information if o-file
% .ApproXYZ[3]; //approximate coordinate
% .interval; //intervals of two adjacent epochs
% .SiteName; //point name
% .Ant_H; //antenna height
% .Ant_E; //east offset of the antenna center
% .Ant_N; //north offset of then antenna center
% .TimeOB; //first epoch time in modifuied Julian time
% .TimeOE; //last epoch time in modifuied Julian time
% .SumOType; //number of types of observables
% .SumOO[SumOType]; //type of observables 0-L11-L22-C13-P14-P25-D16-D2
%ObsODat :a structure stores observables by one and one epoch
% .TimeOEpp[2]; //reciever time of epoch
% .SatSum; //number of satellites
% .SatCode[SatSum]; //satellites‘ PRN
% .Obs_FreL1[SatSum];
% .Obs_FreL2[SatSum];
% .Obs_RangeC1[SatSum];
% .Obs_RangeP1[SatSum];
% .Obs_RangeP2[SatSum];
global HeadODat;
global ObsODat;
[fnamefpath]=uigetfile(‘*.*‘‘选择一个O文件‘);
O_filename=strcat(fpathfname);
fid1=fopen(O_filename‘rt‘);
if (fid1==-1)
msgbox(‘file invalide‘‘warning‘‘warn‘);
return;
end
%将文件头数据存入结构体HeadODat中
t=0;
while(t<100)
s=fgets(fid1);
t=t+1;
L=size(s2);
if L<81
s(L+1:81)=‘ ‘;
end
instrS=s(61:81);
%测站点近似坐标
if strncmp(instrS‘APPROX POSITION XYZ‘19)
HeadODat.ApproXYZ=zeros(13);
HeadODat.ApproXYZ(11)=str2num(s(1:14));
HeadODat.ApproXYZ(12)=str2num(s(15:28));
HeadODat.ApproXYZ(13)=str2num(s(29:42));
%历元间隔;
elseif strncmp(instrS‘INTERVAL‘8)
HeadODat.interval=str2num(s(5:11));
%测站点号
elseif strncmp(instrS‘MARKER NAME‘11)
HeadODat.SiteName=s(1:4)
%天线中心改正
elseif strncmp(instrS‘ANTENNA: DELTA H/E/N‘20)
HeadODat.Ant_H=str2num(s(1:14));
HeadODat.Ant_E=str2num(s(15:28));
HeadODat.Ant_N=str2num(s(29:42));
%第一个历元时间
elseif strncmp(instrS‘TIME OF FIRST OBS‘17)
year=str2num(s(1:6));
month=str2num(s(7:12));
day=str2num(s(13:18));
hour=str2num(s(19:24));
minute=str2num(s(25:30));
second=str2num(s(31:42));
HeadODat.TimeOB=TimetoJD(yearmonthdayhourminutesecond);
%最后一个历元时间
elseif strncmp(instrS‘TIME OF LAST OBS‘16)
year=str2num(s(1:6));
month=str2num(s(7:12));
day=str2num(s(13:18));
hour=str2num(s(19:24));
minute=str2num(s(25:
相关资源
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
- matlab程序用Hopfield网络解决TSP
- 实例matlab 编程100个常用程序
- 用MATLAB(BPSK仿真 直接扩频)
评论
共有 条评论