# GNSS enhancement

GNSS enhancement refers to techniques used to improve the accuracy of positioning information provided by the Global Positioning System or other global navigation satellite systems in general, a network of satellites used for navigation. Enhancement methods of improving accuracy rely on external information being integrated into the calculation process. There are many such systems in place and they are generally named or described based on how the GPS sensor receives the information. Some systems transmit additional information about sources of error (such as clock drift, ephemeris, or ionospheric delay), others provide direct measurements of how much the signal was off in the past, while a third group provides additional navigational or vehicle information to be integrated into the calculation process.

## Background

The Global Positioning System (GPS) is the American satellite-based system for positioning and navigation. Receivers on or near the Earth's surface can determine their locations based on signals received from any four or more of the satellites in the network.
All GPS satellites broadcast on the same two frequencies, known as L1 (1575.42 MHz) and L2 (1227.60 MHz). The network uses code-division multiple access (CDMA) to allow separate messages from the individual satellites to be distinguished. Two distinct CDMA encodings are used: the coarse/acquisition (C/A) code, which is accessible by the general public, and the precise (P) code, which is encrypted, so that only the U.S. military can access it. The messages sent from each satellite contain information ranging from the satellite's health, the satellite's orbital path, the clock state of the satellite, and the configuration of the entire satellite network.

## Precise monitoring

The accuracy of a calculation can also be improved through precise monitoring and measuring of the existing GPS signals in additional or alternate ways.
After Selective Availability was turned off by the U.S. government, the largest error in GPS was usually the unpredictable delay through the ionosphere. The spacecraft broadcast ionospheric model parameters, but they are necessarily imperfect. This is one reason the GPS spacecraft transmit on at least two frequencies, L1 and L2. Ionospheric delay is a well-defined function of frequency and the total electron content (TEC) along the path, so measuring the arrival-time difference between the frequencies determines TEC and thus the precise ionospheric delay at each frequency.
Receivers with decryption keys can decode the P(Y)-code transmitted on both L1 and L2. However, these keys are reserved for the military and authorized agencies and are unavailable to the public. Without keys, it is still possible to use a codeless technique to compare the P(Y) codes on L1 and L2 to gain much of the same error information. However, this technique is slow and is currently limited to specialized surveying equipment. In the future, additional civilian codes are expected to be transmitted on the L2 and L5 frequencies (see GPS modernization). Then all users can perform dual-frequency measurements and directly compute ionospheric-delay errors.
A second form of precise monitoring is called carrier-phase enhancement (CPGPS). The error, which this corrects, arises because the pulse transition of the PRN is not instantaneous, and thus the correlation (satellite–receiver sequence matching) operation is imperfect. The CPGPS approach utilizes the L1 carrier wave, which has a period of
    ${\frac {1~{\text{s}}}{1575.42\times 10^{6}}}=0.63475~{\text{ns}}\approx 1~{\text{ns}},$
which is about one-thousandth of the C/A Gold code bit period of
    ${\frac {1~{\text{s}}}{1023\times 10^{3}}}=977.5~{\text{ns}}\approx 1000~{\text{ns}},$
to act as an additional clock signal and resolve the uncertainty. The phase-difference error in the normal GPS amounts to between 2 and 3 meters (6 to 10 ft) of ambiguity. CPGPS working to within 1% of perfect transition reduces this error to 3 centimeters (1 inch) of ambiguity. By eliminating this source of error, CPGPS coupled with DGPS normally realizes between 20 and 30 centimeters (8 to 12 inches) of absolute accuracy.

## Real-time kinematic positioning

Real-time kinematic positioning (RTK) is another approach for a precise GPS-based positioning system. In this approach, the determination of the range signal can be resolved to a precision of less than 10 centimeters (4 in). This is done by resolving the number of cycles in which the signal is transmitted and received by the receiver. This can be accomplished by using a combination of differential GPS (DGPS) correction data, transmitting GPS signal phase information, and ambiguity resolution techniques via statistical tests, possibly with processing in real time.

## Carrier-phase tracking (surveying)

Utilizing the navigation message to measure pseudo-range has been discussed. Another method that is used in GPS surveying applications is carrier-phase tracking. The period of the carrier frequency times the speed of light gives the wavelength, which is about 0.19 meters for the L1 carrier. With a 1% of wavelength accuracy in detecting the leading edge, this component of pseudo-range error might be as low as 2 millimeters. This compares to 3 meters for the C/A code and 0.3 meters for the P code.
However, this 2-millimeter accuracy requires measuring the total phase, the total number of wavelengths, plus the fractional wavelength. This requires specially equipped receivers. This method has many applications in the field of surveying.
We now describe a method that could potentially be used to estimate the position of receiver 2 given the position of receiver 1 using triple differencing followed by numerical root finding and a mathematical technique called least squares. A detailed discussion of the errors is omitted in order to avoid detracting from the description of the methodology. In this description, differences are taken in the order of differencing between satellites, differencing between receivers, and differencing between epochs. This should not be construed to mean that this is the only order that can be used. Indeed, other orders of taking differences are equally valid.
The satellite carrier's total phase can be measured with ambiguity regarding the number of cycles. Let $\phi _{i,j,k}$ denote the phase of the carrier of satellite $j$ measured by receiver $i$ at time $t_{k}$. Also, we define three functions: $\Delta ^{r},\Delta ^{s},\Delta ^{t}$, which perform differences between receivers, satellites, and time points, respectively. Each function has a linear combination of variables with three subscripts as its argument. These three functions are defined below:
    $\Delta ^{r}(\phi _{i,j,k})=\phi _{i+1,j,k}-\phi _{i,j,k},$
    $\Delta ^{s}(\phi _{i,j,k})=\phi _{i,j+1,k}-\phi _{i,j,k},$
    $\Delta ^{t}(\phi _{i,j,k})=\phi _{i,j,k+1}-\phi _{i,j,k}.$
Also if $\phi _{i,j,k}$ and $\phi _{l,m,n}$ are valid arguments for the three functions, and $a$ and $b$ are constants, then $(a\phi _{i,j,k}+b\phi _{l,m,n})$ is a valid argument with values defined as
    $\Delta ^{r}(a\phi _{i,j,k}+b\phi _{l,m,n})=a\Delta ^{r}(\phi _{i,j,k})+b\Delta ^{r}(\phi _{l,m,n}),$
    $\Delta ^{s}(a\phi _{i,j,k}+b\phi _{l,m,n})=a\Delta ^{s}(\phi _{i,j,k})+b\Delta ^{s}(\phi _{l,m,n}),$
    $\Delta ^{t}(a\phi _{i,j,k}+b\phi _{l,m,n})=a\Delta ^{t}(\phi _{i,j,k})+b\Delta ^{t}(\phi _{l,m,n}).$
Receiver-clock errors can be approximately eliminated by differencing the phases measured from satellite 1 with that from satellite 2 at the same epoch. This difference is designated as $\Delta ^{s}(\phi _{1,1,1})=\phi _{1,2,1}-\phi _{1,1,1}$.
Double differencing can be performed by taking the differences of the satellite difference observed by receiver 1 with that observed by receiver 2. The satellite-clock errors will be approximately eliminated by this between receiver differencing. This double difference is
    $\Delta ^{r}(\Delta ^{s}(\phi _{1,1,1}))=\Delta ^{r}(\phi _{1,2,1}-\phi _{1,1,1})=\Delta ^{r}(\phi _{1,2,1})-\Delta ^{r}(\phi _{1,1,1})=(\phi _{2,2,1}-\phi _{1,2,1})-(\phi _{2,1,1}-\phi _{1,1,1}).$
Triple differencing can be performed by taking the difference of double differencing performed at time $t_{2}$ with that performed at time $t_{1}$. This will eliminate the ambiguity associated with the integral number of wavelengths in carrier phase, provided this ambiguity does not change with time. Thus the triple difference result has eliminated all or practically all clock bias errors and integer ambiguity. Also, errors associated with atmospheric delay and satellite ephemeris have been significantly reduced. This triple difference is
    $\Delta ^{t}(\Delta ^{r}(\Delta ^{s}(\phi _{1,1,1}))).$
Triple-difference results can be used to estimate unknown variables. For example, if the position of receiver 1 is known, but the position of receiver 2 is unknown, it may be possible to estimate the position of receiver 2 using numerical root finding and least squares. Triple difference results for three independent time pairs quite possibly will be sufficient to solve for the three components of the position of receiver 2. This may require the use of a numerical procedure such as one of those found in the chapter on root finding and nonlinear sets of equations in Numerical Recipes. To use such a numerical method, an initial approximation of the position of receiver 2 is required. This initial value could probably be provided by a position approximation based on the navigation message and the intersection of sphere surfaces. Although multidimensional numerical root finding can have problems, this disadvantage may be overcome with this good initial estimate. This procedure using three-time pairs and a fairly good initial value followed by iteration will result in one observed triple-difference result for the receiver 2 positions. Greater accuracy may be obtained by processing triple-difference results for additional sets of three independent time pairs. This will result in an overdetermined system with multiple solutions. To get estimates for an overdetermined system, least squares can be used. The least-squares procedure determines the position of receiver 2 that best fits the observed triple-difference results for receiver 2 positions under the criterion of minimizing the sum of the squares.

## Other enhancements

Other examples of GNSS enhancements include Inertial Navigation Systems and Assisted GPS.