⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sppplot.m

📁 这是国外关于卫星导航方面一书的源代码
💻 M
字号:
% -----------------------------------------------------------------------------
%  GPSLab - SPPPLOT.M  Darstellung der Ergebnisse aus dem einem
%                      Single Point Positioning (SPP) f黵 Referenz- und Rover-
%                      punkt sowie daraus abgeleitetem Koordinaten-DGPS.
% -----------------------------------------------------------------------------
%
%
% (c) iapg 1998 zeb
% -----------------------------------------------------------------------------

if ~exist('spp_is_calc')
   warndlg(['There is nothing to display as long as no SPP was performed: '...
         'At first start "SPP"  -> "calculate" please.'] ,...
         'GPS Lab: application error while calling SPPPLOT.M');
   return;
end 


% PLOTS
% -----
% Plot der Koordinatenvariationen und der Variation der Koordinatendifferenzen ------------------
% Plot der Sigma_0, der GDOPs, der Konditionierungszahlen der A-Matrix, etc.   --------------------------

figure(99);
subplot(1,1,1);

switch spp_pl_nr
   
case 1
subplot(1,2,1);   
[n1,e1,u1,qs,qa,qz]=dxyz2neu(dxs1'-m_x1,dys1'-m_y1,dzs1'-m_z1,app1_b,app1_l);   
plot3(e1,n1,u1,'.');
title('SPP: Variation of the reference station coordinates');
hold on;
plot3(0,0,0,'or');
set(findobj('Marker','o'),'Linewidth',2);
set(findobj('Marker','o'),'Markersize',8);
hold off;
grid;
xlabel('East [meter]');
ylabel('North [meter]');
zlabel('Up [meter]');
axis equal;
clear qs qa qz;

subplot(1,2,2);   
[n2,e2,u2,qs,qa,qz]=dxyz2neu(dxs2'-m_x2,dys2'-m_y2,dzs2'-m_z2,app2_b,app2_l);   
plot3(e2,n2,u2,'.');
title('SPP: Variation of the Rover station coordinates');
hold on;
plot3(0,0,0,'or');
set(findobj('Marker','o'),'Linewidth',2);
set(findobj('Marker','o'),'Markersize',8);
hold off;
grid;
xlabel('East [meter]');
ylabel('North [meter]');
zlabel('Up [meter]');
axis equal;
clear qs qa qz;

case 2
subplot(2,1,1);   
plot(s1epo(:,1),[sxs1;sys1;szs1]','.');
title('Variation of the standard deviation of the position (Reference)');
% xlabel('Beobachtungszeit in GPS-Wochensekunden');
ylabel('meter');
text(min(s1epo(:,1)),min([sxs1,sys1,szs1]'),'        blue: X-component     green: Y-component     red: Z-component')
grid;

subplot(2,1,2);   
plot(s2epo(:,1),[sxs2;sys2;szs2]','.');
title('Variation of the standard deviation of the position (Rover)');
xlabel('Time in GPS week seconds');
ylabel('meter');
text(min(s2epo(:,1)),min([sxs2,sys2,szs2]'),'        blue: X-component     green: Y-component     red: Z-component')
grid;

case 3
subplot(2,1,1);   
plot(s1epo(:,1),gdops1);
title('Variation of the GDOP (Reference)');
% xlabel('Beobachtungszeit in GPS-Wochensekunden');
ylabel('GDOP value');

subplot(2,1,2);   
plot(s2epo(:,1),gdops2);
title('Variation of the GDOP (Rover)');
xlabel('Observation time in GPS week seconds');
ylabel('GDOP value');

case 4   % nicht aufgerufen in SPPLab
subplot(2,1,1);   
plot(s1epo(:,1),sigmas1,'.');
title('Variation of the error of unit weight (Reference)');
% xlabel('Beobachtungszeit in GPS-Wochensekunden');
ylabel('meter');
grid;

subplot(2,1,2);   
plot(s2epo(:,1),sigmas2,'.');
title('Variation of the error of unit weight (Rover)');
xlabel('Observation time in GPS week seconds');
ylabel('meter');
grid;

case 5
subplot(2,1,1);   
plot(s1epo(:,1),dts1);
title('receiver clock error (Reference)');
% xlabel('Beobachtungszeit in GPS-Wochensekunden');
ylabel('meter');

subplot(2,1,2);   
plot(s2epo(:,1),dts2);
title('receiver clock error (Rover)');
xlabel('Observation time in GPS week seconds');
ylabel('meter');

case 6
subplot(2,1,1);
plot(s1epo(:,1),satmask1,'.');
axis([min(s1epo(:,1)) max(s1epo(:,1)) 0 12]);
grid;
% xlabel('Beobachtungszeit in GPS-Wochensekunden');
ylabel('number of satellites');
title('number of the observed satellites on reference station');

subplot(2,1,2);
plot(s2epo(:,1),satmask2,'.');
axis([min(s2epo(:,1)) max(s2epo(:,1)) 0 12]);
grid;
xlabel('Observation time in GPS week seconds');
ylabel('number of satellites');
title('number of the observed satellites on rover station');

case 7
subplot(2,1,1);
hist(satnrs,[1:32]);
colormap cool;
title('used observations to GPS satellites on the reference station');
% xlabel('PRN-Nummer der Satelliten');
ylabel('number of the observations for each satellite');
grid;

subplot(2,1,2);
hist(satnr2,[1:32]);
colormap cool;
title('used observations to GPS satellites on the rover station');
xlabel('PRN number of the satellites');
ylabel('number of the observations for each satellite');
grid;

case 8
[n1,e1,u1,qs,qa,qz]=dxyz2neu(dxs1'-m_x1,dys1'-m_y1,dzs1'-m_z1,app1_b,app1_l);
%[nv,ev,uv,qs,qa,qz]=dxyz2neu(delta_x'-median(delta_x),delta_y'-median(delta_y),delta_z'-median(delta_z),app1_b,app1_l);
xhist=(-150:10:150);
subplot(3,1,1)
hist(n1,xhist);
title('Histogram: Variation of the North component (Reference)');
ylabel('H鋟figkeit');
subplot(3,1,2)
hist(e1,xhist);
title('Histogram: Variation of the East component (Reference)');
ylabel('H鋟figkeit');
subplot(3,1,3)
hist(u1,xhist);
title('Histogram: Variation of the Height component (Reference)');
xlabel('Meter');
ylabel('occurrance');
colormap summer;
clear qs qa qz;

case 9
[n2,e2,u2,qs,qa,qz]=dxyz2neu(dxs2'-m_x2,dys2'-m_y2,dzs2'-m_z2,app2_b,app2_l);
%[nv,ev,uv,qs,qa,qz]=dxyz2neu(delta_x'-median(delta_x),delta_y'-median(delta_y),delta_z'-median(delta_z),app1_b,app1_l);
xhist=(-150:10:150);
subplot(3,1,1)
hist(n2,xhist);
title('Histogram: Variation of the North component (Rover)');
ylabel('occurance');
subplot(3,1,2)
hist(e2,xhist);
title('Histogram: Variation of the East component (Rover)');
ylabel('occurance');
subplot(3,1,3)
hist(u2,xhist);
title('Histogram: Variation of the Height component (Rover)');
xlabel('Meter');
ylabel('occurance');
colormap summer;
clear qs qa qz;

case 10
[nv,ev,uv,qs,qa,qz]=dxyz2neu(delta_x'-median(delta_x),delta_y'-median(delta_y),delta_z'-median(delta_z),app1_b,app1_l);
xhist=(-15:1:15);
subplot(3,1,1)
hist(nv,xhist);
title('Histogram: Variation of the North component   Rover - Reference');
ylabel('occurance');
subplot(3,1,2)
hist(ev,xhist);
title('Histogram: Variation of the East component   Rover - Reference');
ylabel('occurance');
subplot(3,1,3)
hist(uv,xhist);
title('Histogram: Variation of the Height component   Rover - Reference');
xlabel('Meter');
ylabel('occurance');
colormap summer;
clear qs qa qz;

case 11
subplot(2,1,1)   
plot(s1epo(:,1),xerks1,'.b');
hold on;
axis([min(s1epo(:,1)) max(s1epo(:,1)) min(xerks1(xerks1~=0)) max(xerks1(xerks1~=0))]);
%xlabel('Beobachtungszeit in GPS-Wochensekunden');
hold off;
ylabel('for all satellites [meter]');
title('Effect of aberration (correction due to earth rotation) at reference station: X component');
subplot(2,1,2)
plot(s1epo(:,1),yerks1,'.b');
hold on;
axis([min(s1epo(:,1)) max(s1epo(:,1)) min(yerks1(yerks1~=0)) max(yerks1(yerks1~=0))]);
hold off;
xlabel('observation time in GPS week seconds');
ylabel('for all satellites [meter]');
title('Effect of aberration (correction due to earth rotation) at reference station: Y component');

case 12
[nv,ev,uv,qs,qa,qz]=dxyz2neu(delta_x'-median(delta_x),delta_y'-median(delta_y),delta_z'-median(delta_z),app1_b,app1_l);   
plot3(ev,nv,uv,'.');
title('Variation of the vector    Rover - Referenz    (related to the average)');
hold on;
plot3(0,0,0,'or');
set(findobj('Marker','o'),'Linewidth',2);
set(findobj('Marker','o'),'Markersize',8);
hold off;
grid;
xlabel('East [meter]');
ylabel('North [meter]');
zlabel('Up [meter]');
axis equal;
clear qs qa qz;

case 13
plot(s1epo(logical(epomask1),1),bsl,'.');
title('variation of the baseline length   Rover - Referenz');
xlabel('observation time in GPS week seconds');
ylabel('meter');
hold on;
plot(s1epo(logical(epomask1),1),ones(length(bsl)).*m_bsl,'r');
text(min(s1epo(logical(epomask1),1)),min(bsl),[' approximate value = ' strappbsl ' m        average (red) = ' strmbsl ' m']);
hold off;

case 14
plot(s1epo(logical(epomask1),1),delta_h,'.');
title('Variation of the height difference dh   Rover - Referenz');
xlabel('observation time in GPS week seconds');
ylabel('meter');
hold on;
plot(s1epo(logical(epomask1),1),ones(length(delta_h)).*m_delta_h,'r');
text(min(s1epo(logical(epomask1),1)),min(delta_h),[' approximate value = ' strdapph ' m       average (red) = ' strmdh ' m']);
hold off;

case 15
hist(delta_h);
title('Histogramm: Variation of the height difference dh   Rover - Referenz');
xlabel('height difference in Meter');
ylabel('occurance');
colormap('summer');

otherwise
   
   warndlg(['unvalid variable "spp_pl_nr": The value has to be ' ...
   ' a number between 1 and 15 !'], 'error while calling SPPPLOT.M');
   return;
   
end   % end switch   



% Ende  ==================================================================================
% (c) iapg 1998 Zebhauser


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -