Gps Data Processing Methodology
Gps Data Processing Methodology
Geoffrey Blewitt
Department of Geomatics, University of Newcastle, Newcastle upon Tyne, NE1 7RU,
United Kingdom
6.1 INTRODUCTION
The idea behind this chapter is to use a few fundamental concepts to help develop a
way of thinking about GPS data processing that is intuitive, yet has a firm theoretical
foundation. Intuition is based on distilling an alarming array of information into a
few core concepts that are basically simple. The fundamental concepts I have chosen
to explore and develop here are generally based on equivalence principles and
symmetry in problems. This involves looking at the same thing from different ways,
or looking at apparently different things in the same way. Using symmetry and
equivalence, we can often discover elegant explanations to problems.
The ultimate goal is that, the reader will be able to see answers to apparently
complicated questions from first principles. An immediate goal, is to use this
theoretical-intuitive approach as a vehicle to introduce a broad variety of algorithms
and their application to high precision geodesy.
6.1.1 Background
It is useful to begin by placing this work into context briefly, by listing some of the
common features of GPS data processing for high precision geodesy:
Data Preprocessing
•GPS observation files, site database, Earth rotation data, satellite ephemerides,
surface meteorological data, water vapour radiometer data
•formatting
•tools (satellite removal, data windowing, concatenation, etc.)
•editing (detecting and removing outliers and cycle slips)
•thinning (data decimation, data smoothing)
•data transformation (double differencing, ionosphere-free combination, etc.)
•ambiguity initialisation (and possible resolution)
6. GPS Data Processing Methodology 2
Observation Models
•nominal values for model parameters
•(observed - computed) observations and partial derivatives
•orbit dynamics and satellite orientation
•Earth rotation and surface kinematics
•media propagation (troposphere, ionosphere)
•clocks
•relativistic corrections (clocks, spacetime curvature)
•antenna reference point and phase centre offset
•antenna kinematics
•phase modelling (phase centre variation, polarisation, cycle ambiguity)
Parameter Estimation
•parameter selection
•stochastic model and a priori constraints
•inversion (specific algorithms, filtering, blocking techniques, etc.)
•residual analysis (outliers, cycle slips) and re-processing
•sensitivity analysis (to unestimated parameters)
Solution Processing
•a priori constraints
•ambiguity resolution
•solution combination and kinematic modelling
•frame projection and transformation tools
•statistics (formal errors, repeatability, in various coordinate systems, etc.)
Output Processing
•archive solution files
•information for the user
•export formatting (RINEX, SINEX, IONEX, etc.)
•presentation formatting (e.g., graphics)
This chapter introduces some theoretical ideas behind GPS data processing, leading
to discussions on how this theory relates to applications. It is certainly not intended to
review specific software, but rather to point to concepts underlying the software.
Obviously, it would be beyond the scope of this text to go into each of the above
items in detail. Observation models have already been covered in depth in previous
chapters. I have therefore chosen to focus on three topics that generally lie within the
areas of data preprocessing, parameter estimation, and solution processing.
I’ll start with a very practical equivalence, the equivalence of pseudorange and
carrier phase, which can be used to develop data processing algorithms. Then I
explain what I mean by the equivalence of the stochastic and functional model, and
show how this leads to different (but equivalent) methods of estimating parameters.
3 Geoffrey Blewitt
Finally, I discuss frame invariance and estimability to (1) introduce geometry from a
relativistic perspective, and (2) help the reader to distinguish between what can and
what cannot be inferred from GPS data. In each case, I begin with a theoretical
development of the concept, followed by a discussion, and then the ideas are used for
a variety of applications.
We start with an equation that will serve as a useful working model of the GPS
observables, which can be manipulated to develop suitable data processing
algorithms. In chapter 5, we see carrier phase developed in units of distance.
Simplifying equations (5.23) and (5.32), the dual-frequency carrier phase and
pseudorange data can be expressed in a concise and elegant form (where we purposely
space the equations to emphasise the symmetry):
Φ1 = ρ − I + λ 1 N1 + δm1
Φ 2 = ρ − ( f 1 f 2 ) I + λ 2 N 2 + δm2
2
(6.1a)
P1 = ρ +I + dm1
P2 = ρ + ( f 1 f 2 ) I + dm2
2
The reader should beware that all of parameters in this equation are generally
biased, so should not be interpreted literally except in a few special cases which will
be discussed. The term ρ is the satellite-receiver range; but it is biased by clock
errors, S/A, and tropospheric delay. It is often called the non-dispersive delay as it is
identical for all four data types. The term I is the ionospheric group delay at the L1
frequency, which has the opposite sign as phase delay. It is a biased parameter, as the
L1 and L2 signals are transmitted at slightly different times for different satellites. The
terms N1 and N2 are the ambiguity parameters which, it should be remembered, are
biased by initialisation constants, and are therefore generally not integers; however
they can change by integer amounts due to cycle slips. We call λ 1 N1 and λ 2 N2 the
carrier phase biases (which have distance units). Finally, the last column of
parameters are multipath terms, where it has been assumed that most of the error is
due to multipath rather than receiver noise.
6. GPS Data Processing Methodology 4
There are a few terms missing from equation (6.1a) which will be referred to below
in a discussion on systematic errors. These errors will negligibly affect most
algorithms developed from this equation, however, any limitations should be kept in
mind.
Equation (6.1a) can be conveniently arranged into matrix form. Since this is really
the same equation but in a matrix form, we denote it as equation (6.1b):
Φ1 1 −1 1 0 ρ δm1
1 −( f1 f2 )
2
Φ2 0 1 I δm2
= + (6.1b)
P1 1 +1 0 0 λ 1 N1 dm1
1 +( f1 f2 ) 0 λ 2 N2
2
P2 0 dm2
We note that the above equation has been arranged so that the coefficient matrix has
no units. This proves to be convenient when analysing the derived covariance matrix.
It is worth commenting that, when performing numerical calculations, the coefficient
for the L2 ionospheric delay should always be computed exactly using
f1 f2 ≡ 154 120 .
6.2.2 Discussion
Interpreting the Terms. As will now be explained, not only can we apply
equation (6.1) to raw, undifferenced observation data, but also to single and double
difference data, and to observation residuals. Depending on the application, the terms
have different interpretations. In some cases, a particular term might have very
predictable behaviour; in others, it might be very unpredictable, and require stochastic
estimation.
For example, in the case of the double difference observation equations, the
ambiguity parameters N1 and N2 are not biased, but are truely integers. Moreover,
the ionosphere parameter I is truely an unbiased (but differential) ionospheric
parameter. For short enough distances and depending on various factors that affect
the ionosphere, it might be adequate to ignore I when using double differences.
Chapter 13 goes in this in more detail.
Equation (6.1) might also be interpreted as a residual equation, where a model for
the observations have been subtracted from the left hand side. In this case, the
parameter terms are to be interpreted as residual offsets to nominal values. For
example, if the equation is applied to double difference residuals, and if the
differential tropospheric delay can be adequately modelled, then the range term ρ can
be interpreted as a double difference range residual due to errors in the nominal station
coordinates.
All parameters generally vary from one epoch to another, often unpredictably.
Whether using undifferenced, single differenced, or double differenced data, any cycle
slip or loss of lock that occurs will induce a change in the value of the ambiguity
parameters, by exactly an integer. For undifferenced data, the range term ρ is
typically extremely unpredictable due to the combined effects of S/A and receiver
clock variation. The ionospheric delay I can often be predicted several minutes
ahead using polynomials, but it can also exhibit wild fluctuations. Double
5 Geoffrey Blewitt
Using Equation (6.1). Can we use equation (6.1) to form a least-squares solution
for the unknown parameters? Even if we interpret the multipath terms as residuals to
be minimised, we would have 4 parameters at each epoch, and only 4 observational
data. We can therefore construct an exact solution for each epoch, if we ignore the
multipath terms. (Once again, we caution that any numerical computations should use
exact values for f1 f2 ≡ 154 120 ).
−1
ρ 1 −1 1 0 Φ1
1 −( f 1 f 2 )
2
I 0 1 Φ2
=
λ 1 N1 1 +1 0 0 P1
λ 2 N2 1 +( f 1 f 2 )
2
0 0 P2
0 0 (f − f )
+ f 12 1
2
−f (f − f )
2
2
2
2
1
2
2
2
Φ1
0 0 −f (f − f )
2 2
+f (f − f )
2 2 2 2
Φ2
=
2 1 2 2 1 2
−( f + f ) ( f − f ) +2 f ( f − f )
2 2 2 2 2 2 2
(6.2)
1 0 1 2 1 2 2 1 2
P1
0 1 −2 f ( f − f )
1
2
+( f + f ) ( f − f )
1
2
2
2
1
2
2
2
1
2
2
2
P2
0 0 +2.546 −1546
. Φ1
0 0 −1546
. +1546
. Φ2
≅
1 0 −4.091 +3.091 P1
0 1 −5.091 +4.091 P2
Note that the carrier phase biases are constant until lock is lost on the satellite, or
until a cycle slip occurs. We can therefore use these equations to construct algorithms
that (1) resolve ambiguities, and (2) detect and solve for cycle slips. The second point
to notice, is that between cycle slips, we know that the ambiguities are constant. If we
are interested in only the variation in the other parameters (rather than the absolute
values), then we are free to ignore any constant terms due to the ambiguity parameters.
We can rearrange equation (6.1) to reflect this idea, by attaching the ambiguity
parameters to the carrier phase observations. Of course, we might not know these
parameters perfectly, but that will have no effect on the estimated variation in the
other parameters. Furthermore, we can explicitly introduce the pseudorange multipath
terms into the parameter vector:
6. GPS Data Processing Methodology 6
~ Φ1 − λ 1 N 1
Φ1
~ Φ2 − λ 2 N2
Φ2
≡
P1 P1
P2 P2
(6.3)
1 −1 0 0 ρ δm1
1 −( f 1 f 2 ) δm2
2
0 0 I
= +
1 +1 1 0 dm1 e1
1 +( f 1 f 2 )
2
0 1 dm2 e2
(f − f )
+ f 12 1
2
−f (f − f )
2
2
2
2
1
2
2
2 ~
0 0 Φ 1
+f (f − f )
2 2
−f (f − f )
2 2 2 2 ~
0 0 Φ
=
2 1 2 2 1 2 2
−( f + f ) ( f − f ) +2 f ( f − f )
2 2 2 2 2 2 2
(6.4)
1 2 1 2 2 1 2 1 0 P1
−2 f ( f − f )
1
2
1
2
+( f + f ) ( f − f )
2
2
1
2
2
2
1
2
2
2
0 1 P2
+2.546 −1546 ~
. 0 0 Φ1
+1546 −1546 ~
. . 0 0 Φ2
≅
−4.091 +3.091 1 0 P1
−5.091 +4.091 0 1 P2
Notice the striking similarity in equations (6.2) and (6.4), and reversal of roles
between carrier phase and pseudorange. One can see the familiar ionosphere-free
linear combination of data as solutions for the range term; whereas in equation (6.2) it
applies to pseudorange, in equation (6.4) it applies to carrier phase. Similarly, the
ionospheric delay term is equal the familiar ionospheric or geometry-free linear
combination of pseudorange in equation (6.2), and of carrier phase in equation (6.4).
The coefficients for the ambiguity and multipath estimates are symmetrical between
equations (6.2) and (6.4). We can interpret this as follows. In equation (6.2), the
pseudorange is being effectively used as a model for the carrier phase due in order to
infer the carrier phase bias parameters. On the other hand, in equation (6.4) the carrier
phase is effectively being used to model time variations in the pseudorange in order to
infer pseudorange multipath variations. The symmetry of the coefficients in the two
equations is therefore not surprising given this explanation.
Statistical Errors. Since the level of errors are strikingly higher for pseudorange
as compared with carrier phase, we should look at the propagation of errors into the
7 Geoffrey Blewitt
above parameters. The method used here is similar to the familiar computation of
dilution of precision for point positioning. The covariance matrix for the parameter
estimates given by equation (6.2) can be computed by the usual procedure as follows:
( )
−1
C = A T C−data
1
A (6.5)
where A is the coefficient matrix in equations (6.1) or (6.3), and Cdata = W −1 is the
data covariance matrix. If we assume that the data covariance is diagonal, that there is
no difference between the level of errors on L1 and L2, and that the variance for
carrier phase is negligible compared to the pseudorange then we write the data
covariance:
εσ 2 0 0 0
0 εσ 2
0 0
Cdata = lim (6.6)
ε→0 0 0 σ2 0
0 0 0 σ2
Recall that in a real situation, a typical value might be ε ≈ 10 −4 , which justifies our
simplification by taking the limit ε → 0 . Applying equations (6.5) and (6.6) to
equation (6.2), and substituting values for the frequencies, we find the parameter
covariance:
The formal standard deviations for the parameters are the square root of the
diagonal elements:
The formal error for the ionosphere-free range term is approximately 3 times the
level of the measurement errors. This result also applies to the estimates of range
variation in equation (6.4) which uses the ionosphere-free carrier phase data. It
illustrates the problem for short baselines, where there is a trade-off between raising
the effective measurement error, versus reducing systematic error from the ionosphere
(see chapter 13). The formal error for the ionospheric delay (at the L1 frequency) is
6. GPS Data Processing Methodology 8
approximately 2 times the level of the measurement errors, which shows that the L1
and L2 signals are sufficiently well separated in frequency to resolve ionospheric
delay. The large scaling factors of 5.128 to 6.532 for the carrier phase ambiguities
shows that pseudorange multipath must be adequately controlled if there is any hope
to resolve ambiguities (or detect cycle slips) using pseudorange data. For example, if
we aim for an N1 standard deviation of 0.25 cycles, then the pseudorange precision
must be approximately 5 times smaller than this, which is less than 1 cm!
Systematic Errors. At this point, it is worth recalling that we have not used any
functional model for the range term or the ionospheric term, other than that they
satisfy the following assumptions:
• The range term (which includes range, tropospheric delay, and clock offsets) are
identical for all observables.
• Ionospheric delay varies as the inverse square of the frequency, with the phase
delay having the same magnitude but opposite sign to the group delay
Equations (6.2) and (6.4) tells us that we can form an estimators for the carrier
phase ambiguities and pseudorange multipath variation, even in the extreme situation
when we have no functional model for range, tropospheric delay, clocks, and
ionospheric delay (other than the above simple assumptions). For example, no
assumptions have been made concerning motion of the GPS antenna, and we can
therefore derive algorithms to fix cycle slips and resolve carrier phase ambiguities that
are suitable for kinematic applications. Similarly, pseudorange multipath can be
assessed as an antenna is moved through the environment.
In the next section, we derive algorithms that can be considered application
independent. This is only strictly true as far as the above assumptions are valid. For
completeness, we list here reasons why the above assumptions might not be valid:
• The carrier signal is circularly polarised, and hence the model should really include
the phase wind up effect caused by relative rotation between the GPS satellite’s
antenna and the receiver’s antenna [Wu et al., 1993]. This is particularly important
for moving antennas with data editing algorithms operating on undifferenced data.
It has also happened in the past that one of the GPS satellites began to spin due to
some malfunction, thus causing a dramatic phase wind up effect in the carrier
phase, which was of course not observed in the pseudorange. One way around
such problems is to use the widelane phase combination, which is rotationally
invariant ϕ W ≡ (ϕ 1 − ϕ 2 ) = ( Φ1 λ 1 − Φ 2 λ 2 ) . The phase wind up effect can be
almost eliminated by double differencing, or by using an iterative procedure to
account for antenna orientation (which can often be modelled adequately using a
preliminary solution for the direction of motion). An interesting twist on this is to
try to use the observed phase wind up to help with models of vehicle motion. For
this purpose, the single differenced ionospheric phase could be used between a
nearby reference antenna, and an antenna on a moving vehicle. Over short
distances, the ionospheric delay would almost cancel, leaving a clear signature due
to antenna rotation.
• The model should really include antenna phase centre offsets and antenna phase
centre variation. We are free to define any such errors under the umbrella term
multipath, but it is advisable to correct the data for such effects. Double
differencing over short baselines almost eliminates phase centre effects, provided
9 Geoffrey Blewitt
6.2.3 Applications
Multipath Observables. This is the simplest and most obvious application from
the previous discussion. Equation (6.4) shows how pseudorange multipath can be
estimated epoch by epoch. It relies on the assumption that the carrier phase biases are
constant. If not, then the data should first be edited to correct for any cycle slips. It
should also be remembered that such multipath estimates are biased; therefore, only
multipath variation and not the absolute multipath can be inferred by this method.
This method is particularly useful for assessing the quality of the environment at a
GPS station. This might be used for site selection, for example. Another application
is to look at the multipath statistics. These could then be used to compute
pseudorange data weights in least squares estimation, or for other algorithms that use
the pseudorange.
Data Editing. Data editing includes the process of outlier detection, cycle slip
detection, and cycle slip correction. Equations (6.1-6.4) point to a possible method for
data editing, as it shows that the parameters are correlated, and therefore perhaps at
each epoch, the set of four observations can be assessed for self-consistency. But
outlier detection requires data redundancy, which we do not have for individual
epochs.
However, we can monitor the solution for the parameters, equation (6.2), and ask
whether they are behaving as expected. This line of thought leads naturally to a
sophisticated approach involving a Kalman filter to predict the solution at the next
epoch, and then compare this prediction with the new data. If the data rate is
sufficiently high that prediction becomes meaningful, then this approach might be
useful.
However, experience by the author and those developing the GIPSY software at the
6. GPS Data Processing Methodology 10
. σ
5128
σ slip ( n) = 2 (6.8)
n
where n is the number of epochs either side of the hypothesised cycle slip. For
example, if we insist that this computed error be less than one quarter of a cycle, i.e.,
approximately 5 cm, and if we assume that the pseudorange error σ is approximately
50 cm, then we see that the number of epochs must be greater than approximately
5000. This is clearly an unrealistic approach as it stands.
11 Geoffrey Blewitt
We can use the above approach, if instead we use the well known widelane carrier
phase ambiguity. From equation (6.7) and using the law of propagation of errors, we
can compute the formal variance in the widelane ambiguity, N W ≡ N1 − N 2
26.297 33.480 1 λ1
CW = σ 2 (1 λ 1 −1 λ2)
33.480 42.663 − 1 λ 2
= σ 2 ( 26.297 λ 12 − 2 × 33.480 λ 1λ 2 + 42.663 λ 2 2 ) (6.9)
(
= (σ λ 1 ) 26.297 - 66.960 × (120 154) + 42.663 × (120 154)
2 2
)
= ( 0.15720σ λ 1 )
2
This derivation uses the exact relation ( λ 1 λ 2 ) = ( f2 f1 ) = (120 154) . (As a rule for
numerical stability, it is always wise to substitute explicitly for the L1 carrier
wavelength only at the very last step).
Remarkably, the standard error in the widelane wavelength does not reach 1 cycle
until the pseudorange errors approach σ = λ 1 0.15720 = 6.3613λ 1 ≈ 120cm . We can
therefore use such widelane estimates on an epoch by epoch basis as an algorithm to
flag possible cycle slips. The hypothesis can then be tested by averaging down the
pseudorange noise either side of the proposed slip, as discussed previously.
Widelaning data editing methods are generally very successful for modern geodetic
receivers, which have well behaved pseudorange. However, they do not distinguish as
to whether the slip occurred on L1, L2, or both.
This problem can be resolved by looking at either the biased range parameter ρ or
biased ionospheric parameter I in equation (6.4). Note that the carrier phase
ambiguity parameters appear to the right side of this equation. Were there to be a
cycle slip, it would manifest itself as a discontinuity in both parameters I and ρ .
Using this method requires that either one of these parameters be predictable, to
effectively bridge the time period during which the receiver lost lock on the signal.
For double differenced data, this should be rather straightforward for both parameters,
particularly for short baselines. For undifferenced data, parameter ρ tends to be too
unpredictable due to S/A and receiver clock variation; however, I is usually
sufficiently well behaved that time periods of up to several minutes can be bridged. A
low order polynomial predictor could be used for this purpose.
Data editing algorithms can be designed to be adaptive to the changing quality of
the data and the predictability of the parameters. The level of pseudorange noise can
be easily monitored, as discussed, using equation (6.4) to estimate the multipath terms
(taking care to correct for cycle slips detected so far).
The predictability of the parameters can be tested by applying the prediction
algorithm backwards in time to previous data which are known to be clean or
corrected for cycle slips. For example, if we have a loss of lock and subsequent data
outage of 5 minutes, we might want to test a simple algorithm which predicts the I
parameter using a second order polynomial on 15 minutes of data prior to the loss of
lock. The test could be conducted by extrapolating the polynomial backwards, and
comparing it with existing data.
6. GPS Data Processing Methodology 12
Data Thinning. For static GPS where data are collected over a period of several
hours, a carrier phase data rate of 1 epoch every 5 minutes should be more than
sufficient to achieve high precision results. In fact, using higher rate data is unlikely
to improve the result significantly. The reason for this is that if we continue to
increase the data rate, we may well be able to reduce the contribution of measurement
error to errors in the parameter estimates; however, we will do little to reduce the
effect of systematic error, for example, low frequency components of multipath.
Therefore, if we are presented with a file with carrier phase data every 30 seconds, a
simple and effective way to speed up the processing is to decimate the data, only
accepting one point every 5 minutes.
For pseudorange data, however, a higher data rate often leads to improved results,
presumably because measurement error and high frequency components of multipath
continue to be significant error sources. A better approach than decimation would be
to interpolate the high rate pseudorange data to every 5 minute data epoch, because the
interpolation process would help average down the high frequency noise. For
subsequent least squares analysis to be valid, the interpolator should strictly only
independent 5 minute segments of high rate data, so that no artificial correlations are
introduced (which could, for example, confound other algorithms in your software).
A convenient method of interpolation is to use the carrier phase as a model for the
pseudorange. The multipath expressions in Equation (6.4) provides us the solution to
this problem. For example, we can rearrange (6.4) to express a model of the
pseudorange data in terms of the carrier phase data and the pseudorange multipath:
~ ~
P1 = 4.091Φ1 − 3.091Φ 2 + dm1
(6.10)
= 4.091Φ1 − 3.091Φ 2 + dm1 + B
The carrier phase here is effectively being used to mimic the time variation in the
pseudoranges, correctly accounting for variation in range and ionospheric delay. The
constant B is due to the (unknown) carrier phase biases. We can procede to express
an estimator for P1 as the expected value:
P1 ≡ E ( P1 )
= E ( 4.091Φ1 − 3.091Φ 2 + dm1 + B) (6.11)
= 4.091Φ1 − 3.091Φ 2 + E ( B)
where, for the carrier phase data, the expected values are simply the actual data
recorded at the desired 5-minute epoch, and we have assumed that the expected value
for multipath is zero. If we wish our resulting estimate P1 to be truely independent
from one 5 minute epoch to the next, then E(B) can only be based on data found in a 5
minute window surrounding this epoch, giving us the following expression:
(where the angled brackets denote the time average operator). The result is a
smoothed estimate for the pseudoranges. Remember, only the smoothed pseudorange
13 Geoffrey Blewitt
finding the correct value for N1 . Once again, one possible answer lies in the solutions
for the the (double differenced) ionospheric term I. Using equation (6.4), and
assuming we have a very good model for I, we can find the best fitting values of the
~ ~
ambiguities for Φ1 ≡ Φ1 − λ 1 N1 and Φ 2 ≡ Φ 2 − λ 2 N 2 , subject to the constraint
N1 − N 2 = N W , where N W is the widelane ambiguity, previously resolved using
equation (6.2)
~ ~
I = 1546
. Φ1 − 1546
. Φ2
I 1546
. = ( Φ1 − λ 1 N 1 ) − ( Φ 2 − λ 2 N 2 )
(6.13)
= Φ1 − Φ 2 − λ 1 N 1 + λ 2 N 2
= Φ1 − Φ 2 − λ 2 N w + ( λ 2 − λ 1 ) N 1
This situation is relatively easy over baselines of a few km, where it can be assumed
that, to a good approximation, I = 0. However, the coefficient ( λ 2 − λ 1 ) ≈ 5.4 cm is
very small, so we can easily run into problems over 5 km during daylight hours, and
over 30 km at night. However, it is an almost an instantaneous technique, and was
used successfully for rapid static surveying of post-seismic motion following the
Loma Prieta earthquake of 1989 [Blewitt et al., 1990].
Over longer baselines, Melbourne [1985] suggested an approach that uses the
ionosphere-free phase combination of equation (6.4) and a good model for the range
term. Later experience has shown that the range model must be based on a
preliminary bias-free solution (since our a priori knowledge of the troposphere is
generally inadequate). From equation (6.4), we can find the value of N1 that best fits
the range model, subject to the usual widelane constraint:
~ ~
ρ = 2.546Φ1 − 1546
. Φ2
= 2.546( Φ1 − λ 1 N1 ) − 1546
. (Φ2 − λ 2 N 2 )
(6.14)
. Φ 2 − 2.546λ 1 N1 + 1546
= 2.546Φ1 − 1546 . λ 2 N2
= 2.546Φ1 − 1546 . λ 2 N w + (1546
. Φ 2 − 1546 . λ 2 − 2.546λ 1 ) N1
We are familiar with standard least squares theory, where the observations have
both a functional model, which tells us how to compute the observation, and a
stochastic model, which tells us the expected statistics of the errors. If we decide to
15 Geoffrey Blewitt
augment the functional model with extra parameters, an equivalent result can be
obtained if instead we modify the stochastic model. As we shall see, this equivalence
introduces great flexibility into estimation algorithms, with a wide variety of geodetic
applications..
z = Ax + v (6.15)
E ( v) = 0
( )
(6.16)
E vv T = C ≡ W −1
Assuming a well conditioned problem, the best linear unbiased estimator of x is:
( )
−1
x = ATWA ATWz (6.17)
E ( x) = E ( x) = x
(6.18)
( ) ( )
−1
E xx T = ATWA ≡ Cx
( )
−1
x = ATWA + C0 −1 ATWz (6.17b)
We see that (6.17b) approaches (6.17) in the limit C0 → ∞ , hence we can consider
(6.17) the special case of (6.17b) where we have no a priori information.
z = Ax + By + v (6.19)
x
z = ( A B) +v (6.20)
y
We can therefore see by analogy with (6.17) that the solution for the augmented set of
parameters will be
−1
x AT AT
= W ( A B) Wz
y BT BT
(6.21)
T T −1 T
A WA A WB A Wz
=
BTWA BTWB B TWz
We now use the following lemma on matrix inversion for symmetric matrices,
which can easily be verified:
(Λ ) (Λ )
−1 −1 −1 −1 −1 −1
Λ1 Λ 12 − Λ12 Λ 2 Λ 21 Λ 2 Λ 21 − Λ1 Λ12 Λ 2
=
1 12
(6.22)
(Λ ) (Λ )
−1 −1
Λ 21 Λ2 −1 −1 −1
21Λ 1 Λ 12 − Λ 2 Λ 21Λ1 2 − Λ 21Λ1 Λ12
Applying this lemma, we can derive the following elegant result for the estimates of x,
the parameters of interest (defining the projection operator P):
( ) ( )
−1 −1
x = A TWPA A TWPz where P ≡ I − B B TWB B TW (6.23)
W ′ ≡ WP
(6.24)
= W − WB( BT WB) BT W
−1
( )
−1
y = B TWB B TW ( z − Ax ) (6.25)
Augmented Stochastic Model. We need to find a stochastic model that gives rise
to the reduced weight matrix (6.24). A stochastic model is correctly stated in terms of
the expectation values (6.16), but unfortunately, the reduced weight matrix is singular
(because P is an idempotent matrix: PP=P). However, an interesting interpretation
arises if we derive the stochastic model from first principles. If we treat the
augmented part of the model as a source of noise (called process noise) rather than as
17 Geoffrey Blewitt
part of the functional model, we can write the augmented stochastic model as follows:
C ′ = E( v ′v ′ T )
(
= E ( By + v)( By + v)
T
)
(6.26)
= E( vv T
) + BE( yy ) B T T
= C + BCy BT
(Λ ) ( )
−1 −1
1 ± Λ12 Λ 2 −1Λ 21 = Λ 1−1 Λ 1−1Λ12 Λ 2 ± Λ 21Λ 1−1Λ 12 Λ 21Λ 1−1 (6.27)
( )
−1
W ′ = C + BCy BT
( )
−1
= C −1 − C −1 B BC −1 BT + Cy −1 BT C −1 (6.28)
( )
−1
= W − WB BWBT + Cy −1 BT W
Comparing this expression with (6.24), we find the only difference is the presence
of the a priori covariance matrix for parameters y. The functional and stochastic
approach are equivalent in the limit that the a priori stochastic parameter covariance is
made sufficiently large. (See the discussion following (6.17b)). For the two models to
be equivalent, the augmented stochastic model should only account for correlations
introduced by data’s functional dependence on the process noise (as defined by the
matrix B), with no a priori information on the actual variance of the process noise.
E ( yi ) = 0
( )
(6.29)
E yi y j = σ 2δ ij
( )
E yi − y j = 0
(( ) ) = ϑ (t − t )
2 (6.30)
E yi − y j i j
In the absence of data, the white noise parameters become zero with a constant
assumed variance, whereas the random walk parameters retain the last estimated
value, with a variance that increases linearly in time. The white noise model is useful
where we wish to impose no preconceived ideas as to how a parameter might vary,
other than (perhaps) its expected average value. As (6.30) does not require us to
specify E ( yi ) , the random walk model is particularly useful for cases where we do
expect small variations in time, but we might have little idea on what to expect for the
overall bias of the solution.
The white noise and random walk models are actually special cases of the first order
Gauss-Markov model of process noise [Bierman, 1977], however, this general model
is rarely used in GPS geodesy.
6.3.2 Discussion
Model Equivalence. The equivalence of (6.23) with (6.21), and (6.24) with
(6.26) proves the correspondence between modifying the functional model and
modifying the stochastic model. Instead of estimating extra parameters, we can
instead choose to modify the stochastic model so as to produce the reduced weight
matrix, or equivalently, an augmented covariance. Note that, as we would expect, the
weight matrix is reduced in magnitude, which is why it is said that estimating extra
parameters weakens the data strength. It follows that the corresponding covariance
matrices for the data and for the estimated parameters will increase.
We can summarise the above theoretical development by the maxim:
That is, augmenting the stochastic model can be considered implicit estimation of
additional parameters, with the advantage of that there is a saving in computation.
The only disadvantage is that the full covariance matrix between all x and y
parameters is not computed. Fortunately, there are many applications where the full
covariance matrix is of little interest, particularly for problems that are naturally
localised in space and time.
Stochastic Parameters. The above theory indicates possible ways to deal with
19 Geoffrey Blewitt
stochastic parameters, that are allowed to vary in time according to some stochastic
model. Equations (6.23), (6.26) and (6.28) provides a simple mechanism for us to
estimate a special class of stochastic parameters called white noise parameters, that
are allowed to vary from one (specified) batch of data to the next, with no a priori
correlation between batches. The a priori covariance matrix in (6.28) can be ignored
if we wish, but it can be useful if we believe we know the parameter variance a priori
(from some other source), and we do not wish to weaken the data strength
unnecessarily.
For example, if we have some parameters which are stochastic in time, we could
group the data into batches covering a set time interval, and apply equation (6.23) to
estimate the x parameters at each batch interval. The final x parameter estimates could
then be derived by accumulating the normal equations from every batch, and then
inverting.
The formalism presented above also suggests a method for implementing random
walk parameter estimation. Specifically, (6.28) allows for the introduction of an a
priori covariance, which could come from the previous batch interval solution,
augmented by the model (6.30). Several convenient formulisms have been developed
for the step-by-step (batch sequential) approach to estimation, including algorithms
such as the Kalman Filter. It is beyond the scope of this chapter to go into specific
algorithms, but we shall describe filtering in general terms.
Filtering. In filtering algorithms, the a priori estimate for each batch is a function
of the current running estimate mapped from the previous batch. The current estimate
is then specified as a weighted linear combination of the a priori estimate, and the data
from the current batch. The relative weights are determined by the gain matrix, which
can also account for the a priori correlations between stochastic parameters in
accordance with the user-specified stochastic model (6.29) or (6.30). The principles
of separating stochastic from global parameters are the same as described earlier. The
process of backsubstitution in this context is called smoothing, which is essentially
achieved by running the filter backwards to allow earlier data to be influenced by the
later data in a symmetric way.
data. Hence, in the SRIF, there is no longer a distinction between stochastic and
functional model, and algorithm development becomes extremely easy (for example,
as used by Blewitt [1989] to facilitate ambiguity bootstrapping).
In summary, one can effectively implement the same functional and stochastic
model in data estimation using the following methods:
(1) explicit estimation by augmenting the functional model;
(2) implicit estimation by augmenting the stochastic model;
(3) parameter elimination by transforming the data and stochastic model.
This presents a rich variety of possible techniques to deal with parameters, which
partly explains the very different approaches that software packages might take.
Specific algorithms, such as the square root information filter may effectively embody
approaches at once, which illustrates the point that the algorithm itself is not
fundamental, but rather the underlying functional and stochastic model.
6.3.3 Applications
Global and Arc Parameters. We sometimes call x global parameters and y local
parameters (if they are localised in space, e.g., for a local network connected to a
global network through a subset of stations) or arc parameters (if they are localised in
time, e.g., coordinates for the Earth’s pole estimated for each day). More generally y
can be called stochastic parameters, since it allows us to estimate a parameter that
varies (in some statistical way) in either space or time. As we have seen, we don’t
actually have to explicitly estimate y, if all we are interested in are the global
parameters, x.
Earth Rotation Parameters. A typical daily solution for a global GPS network
might contain coordinates for all the stations, plus parameters to model the orientation
of the Earth’s spin axis in the conventional terrestrial frame and its rate of rotation (for
example, X and Y pole coordinates, and length of day). We can then combine several
day’s solutions for the station coordinates, in which case the station coordinates can be
considered global parameters. It is also possible to estimate station velocity at this
stage, to account for tectonic motion. Next, we can orient this station coordinate (and
velocity) solution to a conventional frame, such as the ITRF (IERS Terrestrial
Reference Frame). If we then wished to produce improved estimates for daily Earth
rotation parameters in this frame, we could then apply equation (6.25) to compute the
corrections:
( ) ( B WA)∆x
−1
∆y = − B TWB T
(6.31)
This can easily be done if the coefficient matrix relating ∆y to ∆x is stored along
with each daily solution. This is an example of smoothing, without having to resort
to the full Kalman filter formulism. Effectively, the Earth rotation parameter have
been estimated as white noise parameters. The length of day estimates can then be
integrated to form an estimate of variation in the Earth’s hour angle (UT1-UTC),
which would effectively have been modelled as random walk (which can be defined
21 Geoffrey Blewitt
Helmert Wolf Method. The spatial analogy to the above is sometimes called the
Helmert-Wolf Method or Helmert Blocking.. The data are instead batched according
to geographic location, where the stochastic y parameters are the station coordinates of
a local network. The x parameters comprise station coordinates at the overlap (or
nodes) between local networks. The x parameters are first estimated for each network
according to (6.23); then these estimates are combined; finally the y parameters can
obtained using (6.25). Helmert Blocking seen in this context is therefore simply a
specific application of a more general concept.
Clock Estimation. The white noise model is commonly used for clock
estimation when processing undifferenced data. This is partly because one does not
have to worry about any type of glitch because the a prior correlation is assumed to be
zero. As already mentioned, white noise clock estimation is an alternative to the
double differencing approach. The advantage, of course, is that we obtain clock
estimates, which leads us naturally to the application precise point positioning.
Putting all of this together, we can therefore see that (1) producing a single receiver
point position solution using a precise ephemerides in the Earth fixed frame is
essentially equivalent to (2) processing the station’s data as double differences
together in a simultaneous solutions with the global network’s data. The only
difference is that the user’s receiver cannot influence the orbit solution. This is
astonishingly simple, and has revolutionised high precision geodetic research due to
the very short time it takes to produce high precision results, which is typically a few
minutes for a 24 hour data set [Zumberge et al., 1996].
Strange as it may seem, station coordinates are generally not estimable parameters.
This statement may appear ludicrous, given that GPS is supposedly designed to allow
us to position ourselves. But position relative to what? In the simple case of point
positioning, we are positioning ourselves relative to the given positions of the GPS
satellites, in the reference frame known as WGS-84. How are the orbits known?
They are determined using the Control Segment’s tracking stations at known
coordinates. How are these tracking station coordinates known? By using GPS. And
so the questions continue, in a circular fashion.
To view this problem clearly, we consider the general case of the one step
procedure, estimating all the satellite orbits and all the station coordinates at the same
time. In this section, we consider the nature of these coordinates, and consider exactly
what is estimable when attempting to position a global network of GPS stations.
x= xi e i (6.32)
i
in terms of coordinates xi and base vectors ei (vectors which define the direction of the
coordinate axes). The same vector can be written in frame F’ as:
x= xi′e ′i (6.33)
i
We can, for analytical convenience, write this equivalence in matrix form, where we
define the row matrix e and column matrix x as follows:
x1
x = ( e1 e2 e3 ) x2 ≡ ex
x3
(6.34)
x1′
= ( e1′ e′2 e′3 ) x2′ ≡ e′ x ′
x3′
Notice that both coordinates and the base vectors must change such that the vector
itself remains unchanged. This axiomatic invariance of a vector requires that the
transformation for the base vectors is accompanied by a related (but generally
different) transformation of the coordinates. We can start by following the convenient
matrix form of (6.34) to define each base vector of the new frame e′i as a vector in the
old frame with coordinates γ ji . Coordinates γ ji are elements of the transformation
matrix Γ:
e′i = e jγ ji
j (6.35)
e′ = eΓ
Using the equivalence relation (6.34), we find the corresponding transformation for
coordinates:
6. GPS Data Processing Methodology 24
x = ex
= e( ΓΓ −1 ) x
= ( e Γ ) ( Γ −1 x ) (6.36)
= e′x ′
∴ x ′ = Γ −1 x
Objects such as the coordinates are said to transform contragradiently to the base
vectors. Objects which transform in the same way are said to transform cogradiently.
φ ( e1 ) = α 1
φ (e 2 ) = α 2 (6.37)
φ (e 3 ) = α 3
When the scalar function is applied to a general vector x, the result can be written
φ ( x) = φ ( x1e1 + x2 e 2 + x3e3 )
= α 1 x1 + α 2 x2 + α 3 x3
x1 (6.38)
= (α 1 α 2 α 3 ) x2
x3
≡ αx
The result must be independent of reference frame, because the geometrical vector x is
frame invariant. Therefore we can derive the law of transformation for the scalar
components α:
25 Geoffrey Blewitt
φ ( x ) = αx
= α ( ΓΓ −1 ) x
= (αΓ ) ( Γ −1 x ) (6.39)
= α ′x ′
∴ α ′ = αΓ
This proves that the scalar components transform cogradiently with the base
vectors, and contragradiently with the coordinates.
It would appear that the scalar functions have very similar properties to vectors, but
with slightly different rules about how to transform their components. The scalar
function is said to form a dual space, with the same dimensionality as the original
vectors.
Supposing we have a vector y in our geodetic system, we can define a special the
scalar function that always forms the dot product with y. The result can be expressed
in matrix form:
φ y ( x) = y. x
= ( ey) . ( ex )
T
(6.40)
(
= y T eT .e x )
= y T gx
where g is the matrix representation of the metric tensor, which can be thought of as
describing the unit of length for possible directions in space (here represented in 3
dimensions) [Misner, Thorne, and Wheeler, 1973]:
Comparing (6.38) and (6.40), we see that the components of the dot product scalar
function are given in matrix form by
α y = yT g (6.42)
Proper length. One can therefore easily construct such a scalar function for every
vector, simply using the vector’s coordinates, and the metric properties of the space.
1
lx = φ x ( x) 2
(6.43)
( )
1
= x gxT 2
6. GPS Data Processing Methodology 26
It is easy to prove using all the above definitions, that the length of a vector, defined
by (6.43) is completely frame invariant, no matter what kind of transformation is
performed. For example, if the frame were scaled up so that a different unit of length
were being used, the metric tensor would be scaled down to compensate.
In the language of relativity, such a length defined using a 4-dimensional spacetime
metric, is called a proper length. Proper length which is said to be a scalar invariant
(i.e., a tensor of rank 0). The geometry expressed by (6.43) is known as a Riemann
geometry. In a Riemannian space (e.g., the surface of a sphere), length is calculated
along geodesics, which are in turn defined by the metric tensor. It reduces to
Euclidean geometry in the special case that the metric is the identity matrix, in which
case we have cartesian coordinates.
In physics, the metric tensor (6.41) is a property of spacetime, to be inferred by
experiment. According to special relativity, a natural consequence of the universality
of the speed of light is that spacetime according to an inertial observer has the metric
1 0 0 0
0 1 0 0
g0 = (6.44)
0 0 1 0
0 0 0 − c2
It might seem odd that a dot product e t .e t has a negative value, but if we accept that
any reasonable definition of “length” must be frame invariant, that’s what experiment
tells us! [Schutz, 1990]. The proper length between two points of relative coordinates
in the rest frame (∆x, ∆y, ∆z, ∆t) is therefore defined as:
( )
1
l0 ≡ ∆x 2 + ∆y 2 + ∆z 2 − c2 ∆t 2 2 (6.45)
which reduces to our normal concept of spatial length between two points at the same
time coordinate (Pythagoras Theorem):
( )
1
s0 ≡ l0 ( ∆t = 0) = ∆x 2 + ∆y 2 + ∆z 2 2 (6.46)
( ) ( )
1 1
l ′ ≡ ∆x ′ + ∆y ′ + ∆z ′ − c ∆t ′
2 2 2 2 2 2
= l0 ≡ ∆x + ∆y + ∆z − c ∆t
2 2 2 2 2 2
(6.47)
But, in general, our normal concept of the spatial length would be different!
( ) ( )
1 1
s′ ≡ ∆x ′ 2 + ∆y ′ 2 + ∆z ′ 2 2 ≠ s0 ≡ ∆x 2 + ∆y 2 + ∆z 2 2 (6.48)
In general relativity, spatial length is affected not only by relative motion, but also
27 Geoffrey Blewitt
two vectors. The equivalence relation (6.34) tells us that the dot product between any
two vectors must give the same answer no matter which frame is used. Since we
assume we can construct orthonormal base vectors (of unit length, and at right angles
to each other, as in a Cartesian frame), we can write the dot product for both frames
as:
s ≡ x. y = x T y = x ′ T y ′ (6.49)
What types of coordinate transformation are allowed that satisfy (6.41)? It can
easily be shown that the transformation matrix must be orthogonal; that is its
transpose equals its inverse. In matrix notation, let us consider equation (6.49), where
we apply a transformation R to go from frame F coordinates to frame F’ coordinates:
x T y = x ′T y′
= ( Rx ) ( Ry)
T
(6.50)
= x ( R R) y
T T
∴ RT = R−1
Such transformations are called rotations, and (6.50) shows the property of rotation
matrices. We therefore deduce that global rotations have no effect on dot products
computed according to (6.49) (which assumed Euclidean frames).
The analogy in special relativity is the Lorentz transformation, which can be
considered as a rotation in 4-dimensional spacetime (3 rotations + 3 velocity boosts).
Relativistic transformations preserve proper length, but can change spatial length.
The only change in scale which is physically acceptable is that due to the relativistic
choice of reference frame, which depends on relative speed (special relativity) and the
gravitational potential (general relativity). For example, VLBI solutions computed in
the barycentric frame (origin at the centre of mass of the solar system) produce
baselines with a different scale to SLR solutions computed in the geocentric frame.
6.4.2 Discussion
Geometrical Paradigm. The paradigm for this section is geometrical. In the spirit
of Einstein, although conventions and coordinates provide a convenient representation
of reality for computational purposes, our intuition is often better served by a
geometrical model that is independent of these conventions. The relationship between
the geometrical paradigm and the conventional model is discussed below, where we
refer the reader to Chapter 1 for a more complete description of the conventional
terms.
Consider a network of GPS stations, tracking all the GPS satellites. Using the GPS
data, we can estimate the geometrical figure defined by the stations and the satellite
orbits. That is, GPS provides information on internal geometry, including the
distances between stations, and the angles between baselines, and how these
parameters vary in time. The geometrical figure defined by the stations is sometimes
called the polyhedron, particularly in IGS jargon. This is to remind us that,
fundamentally, the data can tell us precisely the shape of the figure described by the
network of points. For permanent tracking networks, the data can also tell us how the
polyhedron’s internal geometry changes over time. The elegant aspect of this
geometrical picture, is that it more closely relates to quantities that can actually be
measured in principle, such as the time it takes for light to travel from one station to
another. This is in contrast to coordinates which are frame dependent.
Since GPS orbits can be well modelled over an arc length of a day (2 complete
orbits), we have access to an instantaneous inertial frame, which by definition, is the
frame in which Newton’s laws appear to be obeyed. In historical terminology, GPS
data together with dynamical orbit models give us access to an inertial frame of date.
A frame determined this way, cannot rotate significantly relative to inertial space,
otherwise the orbits would not appear to obey Newton’s laws.
The system can therefore determine the direction of the instantaneous spin axis of
the Earth with respect to the polyhedron. Although the spin axis is not tangible like
stations and satellites, it is an example of an estimable vector. For example, GPS can
tell us unambiguously the angles between any baseline and the instantaneous spin axis
(called the Celestial Ephemeris Pole, CEP). We can therefore determine a station’s
latitude relative to the CEP without any problem. However, the direction of the CEP
as viewed by the polyhedron does wander from one day to the next, a phenomenon
known as polar motion. It would therefore be impractical to define a station’s latitude
this way, so instead, a conventional reference pole direction is defined (called the
conventional terrestrial pole, or CTP).
The problem is, the choice of CTP is arbitrary, and fundamentally has nothing to do
with GPS data. Therefore, conventional station latitudes (relative to the CTP) strictly
cannot be estimated, but only true latitudes can (relative to the CEP). This state of
affairs is not hopeless; for example, the CTP can be defined by constraining at 2
station latitudes. If we allow for time evolution of the polyhedron (which we must),
then we must also specify the time evolution of the CTP with respect to the
polyhedron, which again goes beyond GPS, and into the domain of conventions.
GPS is also sensitive to the rate of rotation of the Earth about the CEP. Again, this
is because the satellites are forced to obey Newton’s laws in our model. Since the
spin rate can be estimated, our model can map the time series of station positions in
the instantaneous inertial frame back to an arbitrary reference time. We can therefore
determine the relative longitude between stations, as angles subtended around the
CEP. However, just as for latitudes, the longitudes determined this way would
6. GPS Data Processing Methodology 30
wander from one day to the next due to polar motion (an effect that is maximum near
the poles, and negligible at the equator). Longitudes are therefore also dependent on
the choice of CTP. Moreover, only relative longitude can be inferred, since GPS data
has no way to tell us exactly the location of the Prime Meridian. Once again, we
would have to go beyond GPS, and arbitrarily fix some station’s longitude to a
conventional value (preferably, near the equator), thus effectively defining the Prime
Meridian.
We note in passing that the CEP also varies in inertial space (by nutation and
precession). We only need to model this variation over the period for which we are
modelling the satellite dynamics, which is typically over a day or so. GPS is therefore
insensitive to nutation and precession errors longer than this period, because, in effect,
we are defining a brand new inertial frame of date every time we reset the orbit model.
The reason for having relatively short orbit arcs (as compared to SLR) is not because
of fears about nutation, but rather because of inadequacies in the orbit model. But an
orbit arc of a day is sufficient for the purpose of precisely determining the polyhedron,
which implicitly requires a sufficiently precise determination of polar motion and
Earth spin rate. (The Earth’s spin rate is often parameterised as the excess length of
day, or variation in UT1-UTC, that is the variation in the Earth’s hour angle of
rotation relative to atomic time).
Finally, there is another geometrical object to which GPS is sensitive, and that is the
location of the Earth’s centre of mass within the geometrical figure of the polyhedron.
In Keplerian terms, the Earth centre of mass is at the focus for each and every GPS
elliptical orbit. Of course, Kepler’s laws are only approximate. More precisely, the
Earth’s centre of mass is the dynamical origin of the force models used to compute the
GPS satellite orbits.
If we arbitrarily displaced the polyhedron relative to this origin, we would find the
satellite orbits appearing to violate Newton’s laws. We therefore can say that GPS
can locate the geocentre, which is to say that it can determine a displacement of the
centre of figure with respect to the centre of mass [Vigue et al., 1992]. Effectively,
GPS therefore allows us to estimate geocentric station height, which is the radial
distance from the Earth centre of mass. However, it should be kept in mind, that the
geocentre estimate is very sensitive to the accuracy of orbit force models, and is not
determined as precisely as the geometry of the figure. In fact, vary rarely is true
geocentric height variation shown from GPS analyses, but rather height relative to the
average figure, which is an order of magnitude more precise, with the (apparent)
geocentre variation often displayed separately as a global parameter.
6.4.3 Applications
We discuss below several applications of free network solutions, which for example
can be used directly to estimate geophysical parameters of interest, since geophysical
parameters depend on scalar functions of the vectors, not the coordinates. For some
applications, though, a frame definition may be necessary.
not permit a direct comparison of VLBI station coordinates with, say, GPS; however,
it does permit a comparison of the vectors. However, if one were to insist on
comparing single station positions, one could remove an estimated translational bias
between the frames, but the resulting station coordinates would logically then be some
linear combination of all estimated station coordinates, making interpretation
potentially difficult.
Finally, as already discussed, a change in scale is not considered an acceptable
transformation between frames assuming Euclidean space. Apart from relativistic
considerations, scaling between solutions must be considered as systematic error
rather than a valid frame transformation.
Coordinate Precision. We should now be able to see that coordinates could not be
estimated unless we have observational access to any physical objects that might have
been used to define the unit vectors. (For example, a physical inscription marking the
Prime Meridian). Coordinate precision therefore not only reflects the precision to
which we have determined the true geometry of the figure, but also the precision to
which we have attached ourselves to a particular frame. Coordinate precision (e.g., as
formally given by a covariance matrix computation) can therefore be a very
misleading measure of the geometrical precision.
Ambiguity Resolution. This section could more generally refer to all inherently
scalar parameters, such as tropospheric or clock parameters. Like these parameters,
the carrier phase ambiguities are manifestly frame independent quantities. As a
consequence, no frame constraints are necessary at all to estimate ambiguity
parameters. In fact, there are good reasons for not including frame constraints. Frame
constraints, if not minimal, can distort solutions due to systematic error in the a priori
geometry. This can be very undesirable where the a priori information is suspect.
As a test of this concept, Blewitt and Lichten [1992] solved for ambiguities on a
33 Geoffrey Blewitt
global scale using a network solution free of frame constraints, and found they could
resolve ambiguities over even the longest baselines (up to 12,000 km).
x = Rx ′ + v (6.51)
This can be rearranged so that the 3 unknown angles contained in R are put into a
column vector θ , and defining a rectangular matrix A as a linear function of θ such
that:
Aθ ≡ Rx ′ (6.52)
Therefore, after substitution in to (6.23), we find the least squares estimator for the
errors:
v = x − Aθ
( )
−1
= x − A ATWA ATWx (6.53)
= ( I − A( A WA) )
T −1
A TW x
( ( ) ) ( ( ) )
−1 −1 T
Cv = I − A ATWA AT W Cx I − A ATWA AT W
− A( A WA)
−1
= Cx T
AT (6.54)
= Cx − ACθ AT
This is called projecting the covariance matrix onto the space of errors [Blewitt et
al., 1992]. Since these errors are scalar quantities (independent of frame), they
represent the geometrical errors of the system. Therefore, the projected covariance
matrix is a formal computation of the precision to which the geometry has been
estimated, without us having to define a frame.
Note from (6.54) that we can write the original covariance matrix for coordinates
as:
6. GPS Data Processing Methodology 34
( )
−1
Cx = Cv + A ATWA AT
= Cv + ACθ AT (6.55)
= Cinternal + Cexternal
This shows explicitly that the coordinate covariance can be decomposed into a
covariance due to internal geometrical errors, and an external term which depends on
the level of frame attachment.
( )
−1
Cx = Cv + A ATWA + E −1 AT
(6.56)
≈ Cv + AEAT
where we use the fact that the data themselves provide no information on global
−1
orientation, hence the components of ATWA = Cθ can be considered negligibly
small.
We call (6.56) a loosening transformation, or a covariance augmentation. The
resulting covariance is often called a loosened covariance, or loosened solution (even
though we have not changed the estimates themselves). It can be applied, for
example, to network solutions that have a well defined constraint in orientation, for
applications where we wish to effectively remove the frame definition. Once
augmented in this way, the coordinate covariance can then be projected onto another
frame, applying the projection operator.
Equation (6.55) should look familiar. We have actually seen it before in equation
(6.26), in the context of augmenting the stochastic model as an alternative to
estimating extra parameters. Effectively, this is telling us that a combination of
loosened solutions is equivalent to estimating and removing a relative rotation
between constrained networks and combining them. It also tells us that it is
unnecessary to estimate and remove relative rotations between loose solutions prior to
combination.
This has very practical applications when combining network solutions from
various analysis groups, who might apply different minimal coordinate constraints.
Upon receiving a coordinate solution with full covariance matrix, one can procede to
loosen the covariance matrix prior to combination with other solutions. Therefore,
one does not have to estimate and apply transformation parameters every time the
coordinate solution is processed. Moreover, covariance loosening has the elegant
aspect in that the fundamental rank-3 deficiency is represented in an obvious way to
the user, as the diagonal elements of the covariance matrix will be large, with the off-
diagonal elements containing the geometrical information to which the data are truely
sensitive.
As an example, the IGS Densification Program (IDP) currently uses the above
concept of combining loose covariance matrices from a variety of analysis centres.
35 Geoffrey Blewitt
Models for the pseudorange can be constructed using carrier phase, and visa versa
This allows us to develop algorithms that use both data types to:
•Estimate pseudorange multipath
•Edit carrier phase and pseudorange data for outliers
•Edit carrier phase data for cycle slips
•Smooth the pseudorange using the carrier phase
•Process undifferenced data without a preliminary point position solution
•Resolve carrier phase ambiguities in a model independent way
•frame definition
•the importance and utility of free network solutions
•internal and external components of coordinate error
•covariance projection as a means to quantify geometrical error
•loosening transformation to remove rotational information
•network combination analysis
Acknowledgement
I would like to thank the late Professor Richard P. Feynman as a teacher and
researcher during my years at the California Institute of Technology, for his
inspiration.
References
Bierman, G., Factorization methods for discrete sequential estimation, Academic Press, New
York, NY (1977).
Blewitt, G., Carrier phase ambiguity resolution for the Global Positioning System applied to
geodetic baselines up to 2000 km, Journ. Geophys. Res., Vol. 94, No. B8, pp. 10187-
10283 (1989)
Blewitt, G., An automatic editing algorithm for GPS data, Geophys. Res. Lett., Vol. 17, No.
3, pp. 199-202 (1990).
Blewitt, G., A new tool for dense monitoring of crustal strain: GPS rapid static surveying,
Eos. Trans. Am. Geophys. U., Vol. 71, No. 17, p. 483, (1990).
Blewitt, G., and S.M. Lichten, Carrier phase ambiguity resolution up to 12000 km: Results
from the GIG'91 experiment, in Proc. of the Sixth Int. Symp. on Satellite Positioning,
Columbus, Ohio State University, USA (1992)
Blewitt, G., M.B. Heflin, F.H. Webb, U.J. Lindqwister, and R. P. Malla, Global coordinates
with centimeter accuracy in the International Terrestrial Reference Frame using the Global
Positioning System, Geophy. Res. Lett., 19, pp. 853-856 (1992).
Blewitt, G., Y. Bock, and G. Gendt, Regional clusters and distributed processing, in Proc. of
the IGS Analysis Center Workshop, Ed. by J. Kouba, pp. 62-91, Ottawa, Canada (1993).
Blewitt, G., Y. Bock, and J. Kouba, "Constructing the IGS polyhedron by distributed
processing," in Proc. of the IGS Workshop, ed. by J. Zumberge, IGS Central Bureau,
Pasadena, Calif., USA, p. 21-36 (1995)
Butkov, E., Mathematical physics, Addison-Wesley, Amsterdam (1968)
Heflin, M.B., W.I. Bertiger, G. Blewitt, A.P. Freedman, K.J. Hurst, S.M. Lichten, U.J.
Lindqwister, Y. Vigue, F.H. Webb, T.P. Yunck, and J.F. Zumberge, Global geodesy using
37 Geoffrey Blewitt
GPS without fiducial sites, Geophysical Research Letters, Vol. 19, pp. 131-134 (1992).
Mathews, J., and R.L. Walker, Mathematical methods of physics, Benjamin Cummings,
Amsterdam (1964)
Melbourne, W.G., The case for ranging in GPS based geodetic systems, in Proc. of 1st Int.
Symp. on Precise Positioning with the Global Positioning System, U.S. Dept. of
Commerce, Rockville, MD (1985).
Misner, C. W., K.S. Thorne, and J.A. Wheeler, Gravitation, Freeman, San Francisco (1973)
Wu, J.T., S.C. Wu, G.A. Hajj, W.I. Bertiger, and S.M. Lichten, Effects of antenna orientation
on GPS carrier phase, Manuscripta Geodaetica, 18, pp. 91-93 (1993).
Schutz, B.F., A first course in general relativity, Cambridge Univ. Press, Cambridge (1990)
Truehaft, R.N. and G.E. Lanyi, The effects of the dynamic wet troposphere on radio
interferometric measurements, Radio Science, 22, pp. 251-265 (1987).
Vigue, Y., S.M. Lichten, G. Blewitt, M.B. Heflin, and R.P. Malla, Precise determination of
the Earth's center of mass using measurements from the Global Positioning System,"
Geophys. Res. Lett., 19, pp. 1487-1490 (1992)
Zumberge, J.F., M.B. Heflin, D.C. Jefferson, M.M. Watkins, and F.H. Webb, Precise point
positioning for the efficient and robust analysis of GPS data from large networks, Journ.
Geophys. Res., 102, No. B3, pp. 5005-5018 (1997).