5
GPS Data Errors
5.1 SELECTIVE AVAILABILITY ERRORS
Prior to May 1, 2000, Selective Availability (SA) was a mechanism adopted by the
Department of Defense (DoD) to control the achievable navigation accuracy by
nonmilitary GPS receivers. In the GPS SPS mode, the SA errors were speci®ed to
degrade navigation solution accuracy to 100 m (2D RMS) horizontally and 156 m
(RMS) vertically.
In a press release on May 1, 2000, the President of the United States announced
the decision to discontinue this intentional degradation of GPS signals available to
the public. The decision to discontinue SA was coupled with continuing efforts to
upgrade the military utility of systems using GPS and supported by threat assess-
ments which concluded that setting SA to zero would have minimal impact on
United States national security. The decision was part of an ongoing effort to make
GPS more responsive to civil and commercial users worldwide.
The transition as seen from Colorado Springs, CO., U.S.A. at the GPS Support
Center is shown in Figure 5.1. The ®gure shows the horizontal and vertical errors
with SA, and after SA was suspended, midnight GMT (8 PM EDT), May 1, 2000.
Figure 5.2 shows mean errors with and without SA, with satellite PRN numbers.
Aviation applications will probably be the most visible user group to bene®t from
the discontinuance of SA. However, precision approach will still require some form
of augmentation to ensure that integrity requirements are met. Even though setting
SA to zero reduces measurement errors, it does not reduce the need for and design of
WAAS and LAAS ground systems and avionics.
103
Global Positioning Systems, Inertial Navigation, and Integration,
Mohinder S. Grewal, Lawrence R. Weill, Angus P. Andrews
Copyright # 2001 John Wiley & Sons, Inc.
Print ISBN 0-471-35032-X Electronic ISBN 0-471-20071-9
Time and frequency users may see greater effects in the long term via commu-
nication systems that can realize signi®cant future increases in effective bandwidth
use due to tighter synchronization tolerances. The effect on vehicle tracking
applications will vary. Tracking in the trucking industry requires accuracy only
good enough to locate in which city the truck is, whereas public safety applications
can require the precise location of the vehicle. Maritime applications have the
potential for signi®cant bene®ts. The personal navigation consumer will bene®t from
the availability of simpler and less expensive products, resulting in more extensive
use of GPS worldwide.
Because SA could be resumed at any time, for example, in time of military alert,
one needs to be aware of how to minimize these errors.
There are at least two mechanisms to implement SA. Mechanisms involve the
manipulation of GPS ephemeris data and dithering the satellite clock (carrier
frequency). The ®rst is referred to as epsilon-SA (e-SA), and the second as clock-
dither SA. The clock-dither SA may be implemented by physically dithering the
frequency of the GPS signal carrier or by manipulating the satellite clock correction
data or both.
Though the mechanisms to implement SA and the true SA waveform are
classi®ed, a variety of SA models exist in the literature (e.g., [4, 15, 21, 134]).
These references show various models. One proposed by Braasch [15] appears to be
the most promising and suitable. Another used with some success for predicting SA
is a Levinson predictor [6].
Fig. 5.1 Pseudorange residuals with SA.
104
GPS DATA ERRORS
11
21
15
25
05
0.9
150m
100m
50m
60ϒ
30ϒ
Horizon
150m
100m
50m
60ϒ
30ϒ
Horizon
Weighted Mean
Weighted Mean
HDOP < =1.0
HDOP < =2.0
HDOP > 2.0
Display All
Logging All
HDOP < =1.0
HDOP < =2.0
HDOP > 2.0
Display All
Logging All
(SA)AWatch
SA Watch
23
05
29
30
25
21
11
15
22
23
30
S
(no SA)
Fig. 5.2 Pseudorange residuals with and without SA.
5.1 SELECTIVE AVAILABILITYERRORS
105
The Braasch model assumes that all SA waveforms are driven by normal white
noise through linear system (autoregressive moving-average, ARMA) models (see
Chapter 3 of [46]). Using the standard techniques developed in system and
parameter identi®cation theory, it is then possible to determine the structure and
parameters of the optimal linear system that best describes the statistical character-
istics of SA. The problem of modeling SA is estimating the model of a random
process (SA waveform) based on the input=output data.
The technique to ®nd an SA model involves three basic elements:
the observed SA,
a model structure, and
a criterion to determine the best model from the set of candidate models.
There are three choices of model structures:
1. an ARMA model of order ( p; q), which is represented as ARMA( p; q);
2. an ARMA model of order ( p; 0 known as the moving-average MA( p)
model; and
3. an ARMA model of order q; 0, the auto regression AR(q) model.
Selection from these three models is performed with physical laws and past
experience.
5.1.1 Time Domain Description
Given observed SA data, the identi®cation process repeatedly selects a model
structure and then calculates its parameters. The process is terminated when a
satisfactory model, according to a certain criterion, is found.
We start with the general ARMA model. Both the AR and MA models can be
viewed as special cases of an ARMA model. An ARMA p; q model is mathe-
matically described by
a
1
y
k
a
2
y
kÀ1
ÁÁÁa
q
y
kÀq1
b
1
x
k
b
2
x
kÀ1
ÁÁÁb
p
x
kÀp1
e
k
5:1
or in a concise form by
q
i1
a
i
y
kÀi1
p
j1
b
j
x
kÀj1
e
k
; 5:2
where a
i
; i 1; 2; ...; q, and b
j
; j 1; 2; ...; p, are the sets of parameters that
describe the model structure, x
k
and y
k
are the input and output to the model at any
time k for k 1; 2; ..., and e
k
is the noise value at time k. Without loss of
generality, it is always assumed that a
l
1.
106
GPS DATA ERRORS
Once the model parameters a
i
and b
j
are known, the calculation of y
k
for an
arbitrary k can be accomplished by
y
k
À
q
i2
a
i
y
kÀi1
p
j1
b
j
x
kÀj1
e
k
: 5:3
It is noted that when all of the a
i
in Eq. 5.3 take the value of 0, the model is
reduced to the MA p; 0 model or simply MA( p). When all of the b
j
take the value
of 0, the model is reduced to the AR(0; q) model or AR(q). In the latter case, y
k
is
calculated by
y
k
À
q
i2
a
i
y
kÀi1
e
k
: 5:4
5.1.1.1 Model Structure Selection Criteria Two techniques, known as
Akaike's ®nal prediction error (FPE) criterion and the closely related Akaike's
information theoretic criterion (AIC), may be used to aid in the selection of model
structure. According to Akaike's theory, in the set of candidate models, the one with
the smallest values of FPE or AIC should be chosen. The FPE is calculated as
FPE
1 n=N
1 À n=N
V ; 5:5
where n is the total number of parameters of the model to be estimated, N is the
length of the data record, and V is the loss function for the model under
consideration. Here, V is de®ned as
V
n
i1
e
2
i
; 5:6
where e is as de®ned in Eq. 5.2. The AIC is calculated as
AIC log1 2n=N V 5:7
In the following, an AR(12) model was chosen to characterize SA. This selection
was based primarily on Braasch's recommendation [14]. As such, the resulting
model should be used with caution before the validity of this model structure
assumption is further studied using the above criteria.
5.1.1.2 Frequency Domain Description The ARMA models can be
equivalently described in the frequency domain, which provides further insight
5.1 SELECTIVE AVAILABILITYERRORS
107
into model behavior. Introducing a one-step delay operator Z
À1
, Eq. 5.2 can be
rewritten as
AZ
À1
y
k
BZ
Àl
x
k
e
k
; 5:8
where
AZ
À1
q
i1
a
i
Z
Àil
; 5:9
BZ
À1
p
i1
b
i
Z
i1
; 5:10
and
Z
À1
y
k
y
kÀ1
: 5:11
It is noted that AZ
À1
and BZ
À1
are polynomials of the time-shift operator Z
À1
and
normal arithmetic operations may be carried out under certain conditions. De®ning a
new function HZ
À1
as BZ
À1
divided by AZ
À1
and expanding the resulting
HZ
À1
in terms of operator Z
À1
,wehave
HZ
À1
BZ
À1
AZ
À1
I
i1
h
i
Z
i1
: 5:12
The numbers of {h
i
} are the impulse responses of the model. It can be shown that h
i
is the output of the ARMA model at time i 1; 2; ...when the model input x
i
takes
the value of zero at all times except for i 1. The function HZ
À1
is called the
frequency function of the system. By evaluating its value for Z
À1
e
jo
, the
frequency response of the model can be calculated directly. Note that this process
is a direct application of the de®nition of the discrete Fourier transform (DFT) of h
i
.
5.1.1.3 AR Model Parameter Estimation The parameters of an AR model
with structure
AZ
À1
y
k
e
k
5:13
may be estimated using the least-squares (LS) method. If we rewrite Eq. 5.13 in
matrix format for k q; q 1; ...; n, we get
y
n
y
nÀl
ÁÁÁ y
nÀq1
y
nÀl
y
nÀ2
ÁÁÁ y
nÀq
.
.
.
.
.
.
.
.
.
.
.
.
y
q
y
qÀ1
ÁÁÁ y
1
P
T
T
T
R
Q
U
U
U
S
a
1
a
2
.
.
.
a
q
P
T
T
T
R
Q
U
U
U
S
e
n
e
nÀ1
.
.
.
e
q
P
T
T
T
R
Q
U
U
U
S
5:14
108
GPS DATA ERRORS
or
H Á A E; 5:15
where
H
y
n
y
nÀl
ÁÁÁ y
nÀq1
y
nÀl
y
nÀ2
ÁÁÁ y
nÀq
.
.
.
.
.
.
.
.
.
.
.
.
y
q
y
qÀ1
ÁÁÁ y
1
P
T
T
T
T
T
R
Q
U
U
U
U
U
S
; 5:16
A a
1
a
2
a
3
ÁÁÁ a
q
T
; 5:17
and
E e
n
e
nÀ1
e
nÀ2
ÁÁÁ e
q
T
: 5:18
The LS estimation of the parameter matrix A can then be obtained by
A H
T
H
À1
H
T
E: 5:19
5.1.2 Collection of SA Data
To build effective SA models, samples of true SA data must be available. This
requirement cannot be met directly as the mechanism of SA generation and the
actual SA waveform are classi®ed. The approach we take is to extract SA from ¯ight
test data. National Satellite Test Bed (NSTB) ¯ight tests recorded the pseudorange
measurements at all 10 RMS (Reference Monitoring Station) locations. These
pseudorange measurements contain various clock, propagation, and receiver
measurement errors, and they can, in general, be described as
PR
M
r DT
sat
DT
rcvr
DT
iono
DT
trop
DT
multipath
SA Dt
noise
5:20
where r is the true distance between the GPS satellite and the RMS receiver; DT
sat
and DT
rcvr
are the satellite and receiver clock errors; DT
iono
and DT
trop
are the
ionosphere and troposphere propagation delays, DT
multipath
is the multipath error; SA
is the SA error; and Dt
noise
is the receiver measurement noise.
To best extract SA from PR
M
, values of the other terms were estimated. The true
distance r is calculated by knowing the RMS receiver location and the precise orbit
data available from the National Geodetic Survey (NGS) bulletin board. GIPSY=
OASIS analysis (GOA) was used for this calculation, which re-created the precise
orbit and converted all relevant data into the same coordinate system. Models for
propagation and satellite clock errors have been built into GOA, and these were used
5.1 SELECTIVE AVAILABILITYERRORS
109
to estimate DT
sat
; DT
iono
, and DT
trop
. The receiver clock errors were estimated by the
NSTB algorithm using data generated from GOA for the given ¯ight test conditions.
From these, a simulated pseudorange PR
sim
was formed.:
PR
sim
r
sim
DT
sat
sim
DT
rcvr
sim
DT
iono
sim
DT
trop
sim
5:21
where DT
sat
sim
; DT
rcvr
sim
; DT
iono
sim
, and DT
trop
sim
are, respectively, the estimated
values of DT
sat
; DT
rcvr
; DT
iono
, and DT
trop
in the simulation.
From Eqs. 5.20 and 5.21, pseudorange residuals are calculated:
DPR PR
M
À PR
sim
SA DT
multipath
Dt
noise
DT
models
; 5:22
where DT
models
stands for the total modeling error, given by
DT
models
r À r
sim
ÀÁ
DT
sat
À DT
sat
sim
DT
rcvr
À DT
rcvr
sim
DT
iono
À DT
iono
sim
DT
trop
À DT
trop
sim
5:23
It is noted that the terms DT
multipath
and Dt
noise
should be signi®cantly smaller than
SA, though it is not possible to estimate their values precisely. The term DT
models
should also be negligible compared to SA. It is, therefore, reasonable to use DPR as
an approximation to the actual SA term to estimate SA models. Examination of all
available data show that their values vary between Æ80 m. These are consistent with
previous reports on observed SA and with the DoD's speci®cation of SPS accuracy.
5.2 IONOSPHERIC PROPAGATION ERRORS
The ionosphere, which extends from approximately 50 to 1000 km above the surface
of the earth, consists of gases that have been ionized by solar radiation. The
ionization produces clouds of free electrons that act as a dispersive medium for GPS
signals in which propagation velocity is a function of frequency. A particular
location within the ionosphere is alternately illuminated by the sun and shadowed
from the sun by the earth in a daily cycle; consequently the characteristics of the
ionosphere exhibit a diurnal variation in which the ionization is usually maximum
late in midafternoon and minimum a few hours after midnight. Additional variations
result from changes in solar activity.
The primary effect of the ionosphere on GPS signals is to change the signal
propagation speed as compared to that of free space. A curious fact is that the signal
modulation (the code and data stream) is delayed, while the carrier phase is advanced
by the same amount. Thus the measured pseudorange using the code is larger than
the correct value, while that using the carrier phase is equally smaller. The
magnitude of either error is directly proportional to the total electron count (TEC)
in a tube of 1 m
2
cross section along the propagation path. The TEC varies spatially
110
GPS DATA ERRORS
due to spatial nonhomogeneity of the ionosphere. Temporal variations are caused not
only by ionospheric dynamics, but also by rapid changes in the propagation path due
to satellite motion. The path delay for a satellite at zenith typically varies from about
1 m at night to 5±15 m during late afternoon. At low elevation angles the propagation
path through the ionosphere is much longer, so the corresponding delays can
increase to several meters at night and as much as 50 m during the day.
Since ionospheric error is usually greater at low elevation angles, the impact of
these errors could be reduced by not using measurements from satellites below a
certain elevation mask angle. However, in dif®cult signal environments, including
blockage of some satellites by obstacles, the user may be forced to use low-elevation
satellites. Mask angles of 5
7:5
offer a good compromise between the loss of
measurements and the likelihood of large ionospheric errors.
The L
1
-only receivers in nondifferential operation can reduce ionospheric
pseudorange error by using a model of the ionosphere broadcast by the satellites,
which reduces the uncompensated ionospheric delay by about 50% on the average.
During the day errors as large as 10 m at midlatitudes can still exist after
compensation with this model and can be much worse with increased solar activity.
Other recently developed models offer somewhat better performance. However, they
still do not handle adequately the daily variability of the TEC, which can depart from
the modeled value by 25% or more.
The L
1
=L
2
receivers in nondifferential operation can take advantage of the
dependency of delay on frequency to remove most of the ionospheric error. A
relatively simple analysis shows that the group delay varies inversely as the square of
the carrier frequency. This can be seen from the following model of the code
pseudorange measurements at the L
1
and L
2
frequencies:
r
i
r Æ
k
f
2
i
; 5:24
where r is the error-free pseudorange, r
i
is the measured pseudorange, and k is a
constant that depends on the TEC along the propagation path. The subscript i 1, 2
identi®es the measurement at the L
1
or L
2
frequencies, respectively, and the plus or
minus sign is identi®ed with respective code and carrier phase pseudorange
measurements. The two equations can be solved for both r and k. The solution
for r for code pseudorange measurements is
r
f
2
1
f
2
1
À f
2
2
r
1
À
f
2
2
f
2
1
À f
2
2
r
2
; 5:25
where f
1
and f
2
are the L
1
and L
2
carrier frequencies, respectively, and r
1
and r
2
are
the corresponding pseudorange measurements.
An equation similar to the above can be obtained for carrier phase pseudorange
measurements. However, in nondifferential operation the residual carrier phase
5.2 IONOSPHERIC PROPAGATION ERRORS
111
pseudorange error can be greater than either an L
1
or L
2
carrier wavelength, making
ambiguity resolution dif®cult.
With differential operation ionospheric errors can be nearly eliminated in many
applications, because ionospheric errors tend to be highly correlated when the base
and roving stations are in suf®ciently close proximity. With two L
1
-only receivers
separated by 25 km, the unmodeled differential ionospheric error is typically at the
10±20-cm level. At 100 km separation this can increase to as much as a meter.
Additional error reduction using an ionospheric model can further reduce these
errors by 25±50%.
5.2.1 Ionospheric Delay Model
J. A. Klobuchar's model [37,76] for ionospheric delay in seconds is given by
T
g
DC A 1 À
x
2
2
x
4
24
!
for jxj
p
2
5:26
where x
2pt À T
p
P
(rad)
DC 5 ns (constant offset)
T
p
phase 50,400 s
A amplitude
P period
t local time of the earth subpoint of the signal intersection with mean
ionospheric height (s)
The algorithm assumes this latter height to be 350 km. The DC and phasing T
p
are
held constant at 5 ns and 14 h (50,400 s) local time.
Amplitude (A) and period (P) are modeled as third-order polynomials:
A
3
n0
a
n
f
n
m
s; P
3
n0
b
n
f
n
m
s;
where f
m
is the geomagnetic latitude of the ionospheric subpoint and a
n
; b
n
are
coef®cients selected (from 370 such sets of constants) by the GPS master control
station and placed in the satellite navigation upload message for downlink to the
user.
For Southbury, Connecticut,
a
n
0:8382 Â 10
À8
; À0:745 Â 10
À8
; À0:596 Â 10
À7
; 0:596 Â 10
À7
;
b
n
0:8806 Â 10
5
; À0:3277 Â 10
5
; À0:1966 Â 10
6
; 0:1966 Â 10
6
The parameter f
m
is calculated as follows:
112
GPS DATA ERRORS
1. Subtended earth angle (EA) between user and satellite is given by the
approximation
EA
445
el 20
À4
deg
where el is the elevation of the satellite and with respect to the user equals
15:5
.
2. Geodetic latitude and longitude of the ionospheric subpoint are found using
the approximations
Iono lat: f
I
f
user
EA cos AZ deg
Iono long: l
I
l
user
EA cos AZ
cos f
I
deg
where f
user
geodetic latitude 41
l
user
geodetic longitude À73
AZ azimuth of the satellite with respect to the user, 112:5
3. The geodetic latitude is converted to a geomagnetic coordinate system using
the approximation
f
m
f
I
11:6
cosl
I
À 291
deg:
The ®nal step in the algorithm is to account for elevation angle effect by scaling
with an obliquity factor (SF):
SF 1 2
96
À el
90
!
3
unitless:
With scaling, time delay due to ionospheric becomes
T
g
SFDCA 1 À
x
2
2
x
4
24
; jxj
p
2
;
SFDC; jxj
p
2
;
V
b
b
`
b
b
X
T
G
CT
g
C speed of light
where T
g
is in seconds and T
G
in meters. The MATLAB program Klobuchar_®x.m
for computing ionospheric delay is described in Appendix A.
5.2 IONOSPHERIC PROPAGATION ERRORS
113