Table 1. Five typical receiver types and their data characteristics
Five receiver types based on the pseudorange observables are summarized in Table \ref{tab:type}. P1 and $P2$ mean the P-code pseudoranges on the L1 and L2 frequencies. P2' is codeless pseudorange at L2 frequency, which is defined as C/A+(P2-P1). Of dual frequency receivers, these can be divided into two types: cross-correlation type and codeless tracking type. The cross-correlation types produce degraded accuracy, while the codeless tracking is more accurate \citep{intro}. The observables and their relationship between cross-correlation and non cross-correlation type receivers are well described in Appendix \ref{app:igsmail}. If the satellite dependent biases between the two pseudorange observables, C/A and P1, are precisely known, they can improve ambiguity resolution in a receiver mixed network by calibrating $C/A$ to mimic P1 pseudorange.
Since the International GPS Service (IGS) started the multinational GPS service in 1994, its data products and tracking network has played a major role in geodetic positioning and geophysical research. Over the past decade the IGS global network has evolved with equipment with newer technology as well as growth in size. Replacement of receivers over time has eventually caused there to be a mixture of receiver types. There are 382 IGS global stations as of July 2005. The portion of Ashtech receivers is increasing (Figure \ref{fig:manufac}). But there are still many other receivers mixed in the global IGS sites.
{Classification of receivers of the global IGS sites, 1999--2005 (Source: IGS).}
As the IGS global tracking network began to replace the cross-correlating type older style receivers generating $C/A$ and $P2'$ pseudoranges with the codeless type (Z-tracking) receivers such as Ashtech Z-12, generating $C/A$, $P1$, and $P2$ pseudoranges, it was noticed that the $C/A$ and $P1$ data were inconsistently biased, at the level of 1--3\,nsec which is equivalent to 30--90\,cm. Simple mixing of data from these different types of receivers produced corrupt timing estimates and degraded ambiguity resolution. The IGS have made the $C/A$ versus $P1$ calibration to minimize timing errors of the mixed networks using simple equations. These differential code bias (DCB) values for each satellite have been noticed as similar patterns for different receiver, therefore this implies that there are transmitter specific biases, $\Delta_{PC}^s$, between $C/A$ and $P1$ for each satellite (Equation \ref{eq:satbias}).
P1 = {C/A} + \Delta_{PC}^s
where, $s$ is a satellite number, pseudorandom noise (PRN). Currently, $s=1\ldots31$.
{(a) Differential Code Biases (DCB) estimated by the CODE, University of Bern (January 2004). PRN identifies the satellite number. The mean of these estimates has been removed. (b) Timeseries of selected satellites shows time-varying }
One major in situ pseudorange bias experiment has been conducted by Gao et~al.\citep{gao-ion,gao-geodesy,gao-calgary} of the University of Calgary. He assembled a large number of receivers and used a splitter to set up a ``zero-baseline" experiment. If a difference of observables between the two receivers is not zero, there is an evidence of a systematic error. His research found fairly good agreement with the JPL's pseudorange bias study. He also confirmed that there are receiver-dependent as well as transmitter-dependent biases. He introduced a satellite/receiver-independent but time-varying biases as well. The following Sections show the receiver dependent, temperature independent biases. The primary goal of this Chapter is to calibrate pseudorange biases with receiver-dependent bias fixed values. In this way the biases can be applied either to old type or newer type receivers without any further receiver-specific calibration.
{C/A-P1 biases using the reference satellite method. Jump due to the cable change has been removed but a drift is added by selecting unhealthy satellite (PRN 25) as a reference.}
A = 1 -1 ... 0 0
1 0 -1 ... 0
.. .. .. .. ..
0 ... 1 -1 0
1 ... 0 1 -1
x = x_1
x_2
...
x_n
b = b_1
b_2
...
b_m
In this particular case, the linear equation is overdetermined, m>n, and
Equation \ref{eq:Amatrix} is a singular matrix.
In order to keep the $\mathbf{A}$ matrix full rank,
another row is added to make a zero mean.
If k is defined as m+1, $k th row can be expressed as
A_{k,:} = 1 1 ... 1
which makes
sum_{i=1}^{n} x_i = b_k = 0
and the each element of {b} is a mean of double differences of a given satellite set.
b_i = {sum_{j=1}^{h} (({P1}_j^{sat1} -{C/A}_j^{sat1}) - ({P1}_j^{sat2} -{C/A}_j^{sat2}))}/ h
= Mean (-c(Delta^{sat1}_{PC} - Delta^{sat2}_{PC}))
where, h is the number of epochs with both satellites are in view.
Although many numerical methods are available to solve the least square problem, Singular Value Decomposition (SVD) method is used to solve this articular problem. One advantage of this method is that it is numerically stable for any case even when the equations are very close to singular \citep{nr}. Detailed description of SVD can be found in Appendix \ref{app:SVD}.
{Picture of rooftop antenna used in this experiment. This Trimble Choke Ring antenna is located on the rooftop of UNAVCO facility at Boulder, Colorado. Photo is taken eastward.}
{Picture of thermal isolation chamber used in this experiment. This chamber is programmed to change temperature as in Figure \ref{fig:profile}. }
{Temperature profile of the experiment. It ranges from -20 to +50\,$\tccentigrade$. }
{Comparison of daily averaged DCB values during the experiment. Each background color indicates the temperature of the chamber. }
{A list of IGS sites of the three receiver types.}
Receiver Model Ashtech Z-12 Ashtech Micro-Z AOA ACT
BRUS HYDE YAR2
Site Names MADR BREW HOB2
USUD BLSA FLIN
{ A map showing the location of 9 sites indicated in Table \ref{tab:9sites}. Receiver models of each site are indicated by the different marks. }
Two Ashtech and one AOA receiver models are selected and analyzed for one year to get monthly averaged pseudorange biases. Figure \ref{fig:compRCV}(a) shows that the receivers from the same manufacture shows correlated DCB values ($R=\sim1$), whereas Figure \ref{fig:compRCV}(b) shows less correlation ($R=0.66$). This indicates that the GPS users should apply correct DCB values depending on the receiver manufacture.
{Comparison of monthly averaged DCB values between (a) Ashtech Z-12 and micro-Z, (b) Ashtech Z-12 and AOA ACT receivers. Each PRN has up to 12 months of data.}
Most of the Ashtech receivers used in the global tracking sites record both C/A and P1. Therefore it is not necessary to have Ashtech-specific DCB values. Among AOA receivers, however, only ACT models record both codes. For the second dominant AOA receivers, the bias values can be obtained from AOA ACT receivers. Obtaining both codes from a single receiver is beneficiary in terms of noise source; receiver noise can be canceled out and additional error sources from cables and splitter can be avoided. For the other type of receivers such as Trimble and Leica, which record only $C/A$-code in $L1$ frequency, zero-baseline experiment should be considered. It may need additional procedures for removing clock offsets between the receivers.
{This schematic diagram shows the basic concept of the zero-baseline experiment. Both of the receivers are non-cross-correlation type receivers.}
The zero-baseline experiment is illustrated in Figure \ref{fig:basic}. Let us define each receiver clock bias as a constant and it can be modeled as,
delta_A = delta_{common} + delta_{cable A} + delta_{rcv A}
delta_B = delta_{common} + delta_{cable B} + delta_{rcv B}
where delta_{A} and delta_{B} are total receiver-specific clock biases for
receiver $A$ and $B$, respectively.
delta_{common} is a time delay from the antenna to the splitter,
delta_{cable A} and $\delta_{cable B}$ are the cable delay from the
splitter to each receiver.
delta_{rcv A} and delta_{rcv B} are the time delays of each receiver hardware.
If the receiver A records only P1 and receiver B has only the C/A observable, double differences between two receivers will not be zero because of the biases between the two pseudorange observables. As atmospheric delays are canceled out, the observable models, Equation \ref{eq:RL1} and \ref{eq:CL1}, can be rewritten as,
P1_{A}^{s} = rho_A^s - c delta^s + c delta_A + epsilon_{P1}
C/A_{B}^{s} = rho_B^s - c delta^s + c delta_B + c Delta_{PC}^s + epsilon_{C}
where P1_{A}^{s} and {C/A}_{B}^{s} are the P1 from satellite s to
receiver A and C/A from satellite s to receiver B, respectively,
and both are in meters.
Delta_{PC}^{s} is a DCB of satellite s (Equation \ref{eq:satbias}).
If two receiver noise terms, $\epsilon_{P1}$ and epsilon_{C/A}, are ignored,
the double difference of two codes is a difference between DCB's of two satellites
, such that
(P1_{A}^{1} - C/A_{B}^{1}) - (P1_{A}^{2} - C/A_{B}^{2}) = - c ( Delta_{PC}^1 - Delta_{PC}^2 )
which forms a linear algebraic equation mentioned in Section \ref{subs:svd}.
{A list of receivers used in the zero-baseline experiment.}
Site Name Receiver Model Pseudorange Observables
ING0 Ashtech microZ C/A , P1 , P2
ING1 Trimble NetRS C/A , P2
ING2 Ashtech microZ C/A , P1 , P2
ING3 Trimble NetRS C/A , P2
An Rubidium external clock (Symmetricom 8040) is served as a frequency standard in 5\,MHz.
It is used to get synchronized timing for all
the receivers. Therefore, in theory, the $C/A$ observables of four receivers
should be the same at each epoch.
One month of data (September. 2005) were collected after twenty days of test run.
{Clock offsets before and after the external frequency are applied. External frequency was turned on the day 138. (a) differences in $C/A$-codes of ING0 and ING2. (b) differences in $C/A$-codes of ING1 and ING3. }
The basic issue here is that when you turn on an external reference, the NetRS clock will be very stable, but the absolute value is not steered to zero. Therefore arbitrary clock offsets are expected for each satellite. The difference in offsets could be as great as 1\,msec (Brian Frohring, personal communication, 2005). The NetRS receivers power up with slightly different clock offsets and they only last the cycle of power. The clock offsets are calibrated by applying the clock offsets to the DCB values. Figure \ref{trmcom} compares DCB values between CODE and Trimble-specific. It shows high agreement ($R=0.96$) and is expected to have little difference in positioning.
{Plot comparing CODE and Trimble-specific DCB values. $R$ value is a correlation coefficient.}
L_{delta} = {(f_1 L_1 - f_2 L_2 )}/{(f_1 - f_2 )}
P_{delta} = {(f_1 P_1 - f_2 P_2 )}/{(f_1 + f_2 )}
b_{delta} = 1/{lambda_{delta}} * (L_{delta} - P_{delta})
where L_{delta} and P_{delta} are carrier phase and pseudorange widelane combination, respectively.
f_1 and f_2 are the L1 and L2 carrier frequency.
L and P are the carrier phase and pseudorange data in meters for each frequency.
The widelane wavelength, lambda_{delta} = c/{f_1-f_2}, is ~ 86.2 cm.
Figure \ref{fig:cpcal} shows three closely located GPS sties of the Southern California
Integrated GPS Network (SCIGN).
Two AOA receivers (AOA1 and JPLM) are 20--30 km apart from a Ashtech receiver (UCLP).
This experiment is designed to reflect the real-world network settings.
An arbitrary day (April 15, 2004) was picked for the test.
The widelane of 6 different satellite sets and their double differences
above 15\textdegree\, elevation angle was tested
in order to compare the performance of ambiguity resolution
between the CODE and the AOA specific DCB values.
Each DCB is applied to the $C/A$-code of the AOA receiver to calibrate its C/A to P1-code.
The widelaning method (Equations \ref{eq:wd1} to \ref{eq:wd3}) using pseudoranges
can be applied to any length of baselines with common visibility of the satellites \citep{blewitt}.
Although the pseudorange data are much noisier than the carrier phase data,
averaging over a typical satellite path is usually sufficient to determine the integer value.
{Test sites for short term effect. An Ashtech receiver and two AOA Benchmark receivers in California are marked in different symbols.}
Figure \ref{fig:wldd} compares the averaged widelane values between CODE and AOA-specific DCB. In order to clearly see the widelane cycle differences, only the decimal fractions are shown in the plot. Thus, the fraction closer to an integer ($0$ or $1$) means better ambiguity resolution. All cases show improvement of ambiguity resolution except for the case of PRN 18/22 of UCLP vs. JPLM (Figure \ref{fig:wldd} (b)). Even though it became worse its widelane is below 0.1, which is far below the threshold of bias fixing criteria of the GIPSY software. In the case of PRN 04/24 of Figure \ref{fig:wldd} (b), the integer bias adjusted from 1 to 0 when using AOA-specific DCB values. This indicates that the ambiguity could be resolved incorrectly if inaccurate bias values are applied. The receiver specific bias values seem to work well in a daily widelane double-difference analysis. Since the bias values are changing over time, Section \ref{sub:long} is investigating a long term effect using a year of DCB values to compare the result of ambiguity resolution of the two DCB values.
{Widelane double difference results of selected satellite sets. As in \ref{fig:cpcal}, UCLP is Ashtech Z-12 receiver and AOA1 and JPLM are AOA Rogue SNR receivers. }
For the AOA-specific DCB values, forty of AOA ACT receivers were selected from different location of the world (Figure \ref{fig:40aoa}), and the monthly averaged DCB values of each site are weighted averaged for each satellite. Figure \ref{fig:aoaCODE} compares CODE and AOA-specific values. The AOA-specific DCB values slightly differ from the CODE's. Some satellites, such as PRN 9, 26, and 31, shows good agreement with CODE values, whereas others show difference about 0.1 to 0.2\,m, which is equivalent to 0.3--0.6\,ns.
One-year of zero-baseline analysis was performed using the GIPSY software \citep{gipsy}. The carrier phase ambiguity was resolved using pseudorange widelaning technique \citep{blewitt}. The one year ambiguity resolution test shows that the global receiver-specific bias values (AOA-specific) resolve more ambiguities than CODE values (Figure \ref{fig:month_comp}). The receiver-specific DCB values resolved more ambiguities throughout the year 2004; AOA-specific did 90.40\,\%, whereas the CODE did 86.86\,\%.
{A map showing the location of 40 IGS sites using AOA ACT receivers.}
{Comparison of monthly averaged $C/A-P1$ bias values between the global weighted averaged AOA and the CODE values. Both are zero mean.}
{Comparison of ambiguity resolution performance for the year 2004. Each dot is a monthly average ambiguity resolution percentage and error bar is +- 1 sigma. }
Daily positions of GOL2 relative to GOLD are estimated by GIPSY software. In order to closely see the performance of monthly DCB values, the standard deviation of each component is shown in Figure \ref{fig:aoa_pos}. {\bf I am not sure whether I can claim this tiny difference as an improvement.} Although the AOA-specific DCB's distinctly resolved more ambiguities, the standard deviations of the positions show minor improvements of sub-millimeters.
{Monthly standard deviations of each component are compared. }
The DCB values for the Trimble receivers are obtained from zero-baseline experiment in Section \ref{sub:zero}. Although it was not possible to get averaged DCB over many sites, it shows good correlation with CODE DCB values ($R=??$). Some of the worse correlation in some satellites might be caused by less number of data points in double differencing. Two continuous GPS sites in southern California were considered as a test case: BILL \footnote{BILL is one of Southern California Integrated GPS Network (SCIGN), which is located near Lake Skinner, California.} and P474 \footnote{P474 is one of the Plate Boundary Observatory (PBO) sites located in Fallbrook, California.}. They are about 30\,km apart with a receiver mixed case (Figure \ref{fig:cptrm}). BILL is run by a Ashtech Z-XII3 and P474 by Trimble NetRS, and both uses their own internal clock. Owing to little difference in DCB values, the percentage of ambiguity resolution for one month shows similar performance.
{Map showing the test sites for Trimble-specific DCB effect. An Ashtech and a Trimble receiver in Southern California are marked in different symbols.}
Some receiver manufactures tend to smooth pseudoranges to reduce noise particularly in lower elevation angle. However, it sometimes results in false smoothing. Improver smoothing can cause misinterpretation of double differences, which directly affect getting correct DCB values. If the user can turn off smoothing option, DCB values for a particular receiver model can always be obtained using zero-baseline experiment.