📄 dhmax.m
字号:
% dhmax.m
% Scope: This MATLAB macro determines delta_h_max used in the Receiver
% Autonomous Integrity Monitoring (RAIM) [1] computation. It is
% assumed that at least five line-of-sight unit vectors are
% specified as input.
% Usage: xoutput = dhmax(g)
% Description of parameters :
% g - input, line-of-sight unit vectors, each vector is
% stored in another row (it should be 3 columns)
% xoutput - output, delta_h_max
% Reference:
% [1] Brown, A. K., Sturza, M. A., The effect of geometry on
% integrity monitoring performance. The Institute of Navigation
% 46th Annual Meeting, June 1990, pp. 121-129.
% [2] Brown, R. G., A baseline RAIM scheme and a note on the
% equivalence of three RAIM methods. Proceedings of the National
% Technical Meeting, Institute of Navigation, San Diego, CA,
% Jan. 27-29, 1992, pp. 127-137.
% Remark:
% The connection between ARP (Approximate Radial-error Protected)
% and delta_h_max is as follows [2]
% ARP = sqrt(n-4) * delta_h_max * threshold
% where
% n is the number of measurements used
% threshold is the pre-computed normalized detection threshold [2]
% Last update: 07/31/00
% Copyright (C) 1997-00 by LL Consulting. All Rights Reserved.
function xoutput = dhmax(g)
[nrow,ncol] = size(g);
if (ncol ~= 3) | (nrow < 5)
error('Error - DHMAX; check the unit line of sight vectors');
end
unitvec = ones(nrow,1);
h = [g unitvec]; % form the matrix H
a = (inv(h'* h)) * h'; % only the first two rows are needed
b = h * a; % only the diagonal elements are needed
dhmax2 = 0.;
for k = 1:nrow
temp = (a(1,k)*a(1,k) + a(2,k)*a(2,k)) / (1. - b(k,k));
if (temp > dhmax2)
dhmax2 = temp;
end
end
xoutput = sqrt(dhmax2);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -