📄 pdop_test.asv
字号:
clear all;
close all;
clc;
gps_flag = 1;
buffer_dop_gps = [];
buffer_t = [];
time_bin = 0;
time_sample = 10;
time_end = 24*3600;
tt = 0;
for t = time_bin:time_sample:time_end
buffer_t = [buffer_t,t];
tt = tt+1;
%--------GPS---------------------------------------
[Xs_gps,Ys_gps,Zs_gps]=gps_sat(t); %解卫星在地心地固坐标系中的位置
%------用户轨迹------------------------------------
[long,lat,h]= usercontrail(t);
[xu,yu,zu] = user_ecef(long,lat,h);
[xu1,yu1,zu1]=ecef_g(long,lat,xu,yu,zu); %转换成用户地点的地理坐标
[Xs1_gps,Ys1_gps,Zs1_gps]=ecef_g(long,lat,Xs_gps,Ys_gps,Zs_gps);
[num_gps,k_gps] = get_seesate(Xs1_gps,Ys1_gps,Zs1_gps,xu1,yu1,zu1,gps_flag);
[X_gps,Y_gps,Z_gps]=get_k(num_gps,k_gps,Xs_gps,Ys_gps,Zs_gps,gps_flag); %算出k颗可见星的坐标(地心地固坐标)
[XS_gps,YS_gps,ZS_gps] = ecef_g(long,lat,X_gps,Y_gps,Z_gps); % 转换为地理坐标
xsg1_gps = XS_gps';ysg1_gps = YS_gps';zsg1_gps = ZS_gps';
H_gps = Single_get_H(k_gps,XS_gps',YS_gps',ZS_gps',xu1,yu1,zu1);
[hdop_gps] = get_dop(H_gps);
buffer_dop_gps = [buffer_dop_gps,hdop_gps];
[Xs1_galileo,Ys1_galileo,Zs1_galileo]=ecef_g(long,lat,Xs_galileo,Ys_galileo,Zs_galileo);
[num_gps,k_gps] = get_seesate(Xs1_gps,Ys1_gps,Zs1_gps,xu1,yu1,zu1,gps_flag);
[X_gps,Y_gps,Z_gps]=get_k(num_gps,k_gps,Xs_gps,Ys_gps,Zs_gps,gps_flag); %算出k颗可见星的坐标(地心地固坐标)
[XS_gps,YS_gps,ZS_gps] = ecef_g(long,lat,X_gps,Y_gps,Z_gps); % 转换为地理坐标
xsg1_gps = XS_gps';ysg1_gps = YS_gps';zsg1_gps = ZS_gps';
H_gps = Single_get_H(k_gps,XS_gps',YS_gps',ZS_gps',xu1,yu1,zu1);
[hdop_gps] = get_dop(H_gps);
buffer_dop_gps = [buffer_dop_gps,hdop_gps];
end
max(buffer_dop_gps)
plot(buffer_t,buffer_dop_gps,'b-');
legend('gps');
title('HDOP');
xlabel('time(s)');
ylabel('HDOP');
grid on
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -