Accurate characterization of ionospheric parameters such as total electron content (TEC) and scintillation (signal fluctuation due to ionospheric irregularities) is critical to all users of GPS, whether the ultimate goal is measurement in navigation, geodesy, ionospheric, or atmospheric studies. Improved absolute TEC measurement accuracy is demanded by many global ionospheric characterization schemes, where small errors can be magnified in 3-D tomographic profile reconstructions. We present research showing that there are three errors, or biases that typically result from characterizing TEC with GPS receiver data. These biases are (1) estimation, instead of measurement of receiver differential code bias (DCB); (2) ionospheric divergence of pseudorange-code-derived TEC resulting from code smoothing; and (3) delay of pseudorange TEC as a result of code smoothing. We present results of ionospheric data collected with a receiver that mitigates these biases to demonstrate the utility of improved accuracy, particularly for ingestion into tomographic reconstructions, but also for conversion from slant to vertical TEC.
 GPS receivers have been profitably employed by researchers for investigations into ionospheric and atmospheric science for 20 years, yet a number of improvements in measurement accuracy are necessary for today's applications. These applications include systems (receiver, monitoring system, control segment) associated with increasing requirements from Precise Navigation and Timing (PNT) to the space weather effects on the ionosphere. This paper describes the issues associated with the ionospheric effects on GPS, the deficiencies of conventional receivers for precise ionospheric observations, and results obtained with a precise ionospheric monitoring receiver developed by celestial reference system (CRS), which mitigates many measurement errors. The primary focus is on mitigating biases and eliminating bias in absolute total electron content (TEC) (see Dyrud et al.  regarding ionospheric scintillation measurements).
 The next section presents research demonstrating that three primary biases can result from characterizing TEC with GPS receiver data. These biases can range in magnitude from approximately 1–5 total electron content unit (TECU, 1 TECU = 1016 el m−2) for normal conditions and become as a large as 10s of TECU for active conditions. Ciraolo et al.  have investigated the effects of receiver bias as well and found effects from phase smoothing to be has high as 5 TEC and that the intraday receiver bias could vary by as much as 8.8 TEC. This paper demonstrates how these biases occur and provides and demonstrates techniques for their mitigation using a CRS Ionospheric Monitoring GPS Receiver.
2. Measurement of TEC
 The perturbation to the measured pseudorange due to the ionosphere represents one of the largest sources of error to accurate positioning using GPS. This delay can be characterized by a measurement of the TEC between GPS receiver and satellite, which is achieved using dual frequency measurements (GPS L1 and L2). The following relation for group delay due to propagation through plasma applies when the radio frequency vastly exceeds the plasma frequency (peak ionospheric plasma frequencies are below 10 MHz),
where the group delay, Δr, is measured in meters, TEC is the column density of electrons measured in electrons m−2 (1 TECU = 1016 electrons m−2), and the radio frequency f is in Hz. One TECU of electrons induces a delay of 0.163 m on L1 signals, and on L2 the delay is 0.267 m. It can thus be readily seen that every excess 10 cm of pseudorange on L2 − L1 corresponds to 1 TECU of electron content, or more formally,
where the pseudorange measurements, ρ, are provided in meters. We shall refer to this measurement of TEC as absolute code-derived TEC. Similarly, GPS carrier phase can be used to derive TEC, because the phase of the radio wave advances during propagation through a plasma by an equivalent distance as the group velocity is retarded. After converting phase from radians to meters for the L1 and L2 wavelengths, the phase TEC counterpart to equation (2) is written as follows,
 Because carrier phase is measured with far greater precision than pseudoranges derived from code correlation, this GPS carrier-phase-derived TEC provides a smooth and precise, albeit relative measurement of ionospheric TEC. The relativity is due to ambiguities in the total number of wave cycles between satellite and receiver. Excluding effects such as multipath, the code-derived TEC in equation (2) provides an absolute, yet noisy measurement of TEC, where this noise is due to the inherent meter level precision in pseudorange measurements. Therefore, scientific quality TEC estimates are typically arrived by using some form of least squares fitting of the phase-derived TEC to the code-derived TEC for the epoch of an entire satellite pass, normally 4–6 h in duration at U.S. latitudes. A typical form of the procedure, and that used in this paper follows:
where TECphase offset represents an estimate for the DC offset between the relative phase TEC and the absolute code TEC. It is calculated in this paper by conducting a standard least squares fit of a DC value to the collection of points comprising the difference of phase and code TEC as a function of time, i.e.,
 Using such a procedure provides a smooth and absolute measure of the slant TEC for each satellite for an entire satellite pass. The research presented here indicates that there are three errors, or biases that typically result from this procedure. These biases are (1) delay of pseudorange TEC as a result of code smoothing; (2) estimation, instead of measurement, of receiver differential code bias (DCB); and (3) ionospheric divergence of pseudorange TEC resulting from code smoothing. We continue with a presentation of these biases, together with techniques for their mitigation.
3. Effects of Code Smoothing
 To mitigate inherent fluctuations in pseudorange due to bandwidth limited precision, receiver noise, and multipath, typical GPS receivers generally employ so-called phase smoothing or leveling of code. Phase smoothing is essentially some combination of the noisy code pseudorange with the comparatively smoothly varying carrier phase. These smoothed pseudoranges are typically the only pseudorange output available to a GPS receiver user. As the following derivations demonstrate, this smoothness is achieved at the expense of imposing bias on the code TEC estimate [Walter et al., 2004].
 A standard definition for smoothed pseudorange generally takes the following form, and is known as a Hatch filter [Hatch, 1982],
where Si is the smoothed pseudorange at time step i, ρ is the raw pseudorange and ϕ is the carrier phase, and w is a weight factor, between 0 and 1, that controls the effective length of the smoothing filter in time. Generally, values of w are much less then 1 (0.01–0.001), which entails smoothing times ranging from 100 to 1000 s. All the terms in equation (6) are written in units of meters, so the carrier phase ϕ = c/fϕtrue, where c is the speed of light and f is the carrier frequency.
 We can define raw pseudorange as having the following components, still working in units of distance for all quantities of interest,
and similarly, the carrier phase can be defined as having the following components
where ri represents the terms in common between pseudorange and phase, particularly range to the satellite in meters, troposphere delay, and receiver clock offset, Ii represents the ionospheric correction in meters at time step i, and Mi is the contribution of multipath, which has been ignored in the phase measurements since it represents at least 1 order of magnitude smaller error in phase than it does in pseudorange. As discussed in the introduction, the ionospheric correction terms in equation (7) and equation (8) contain a negative sign for the phase and a positive sign for the pseudorange. This property is known as ionospheric divergence and its effect on navigation accuracy has been highlighted in a number of recent articles [McGraw, 2006; Walter et al., 2004; Kim et al., 2006].
 The following paragraphs demonstrate why this phase smoothing may be desirable for navigation and aid in multipath mitigation, but it introduces two unwanted biases in the calculation of absolute ionospheric TEC. These biases are:
 1. Phase smoothing of the code using a Hatch type filter results in ionospheric divergence error. The error in pseudorange is approximately equal to −2ΔITsmooth, and the error in code-derived ionospheric TEC is approximately −ΔITsmooth.
 2. Such smoothing also causes the output of the code calculated ionospheric correction to be delayed approximately 0.3 Tsmooth, which introduces an error approximately equal to 0.3ΔI Tsmooth, where ΔI is the ionospheric TEC rate of change represented in meters per second and Tsmooth is the duration of the smoothing filter.
 Smoothing induced bias arises when the ionospheric TEC changes from one time step to the next. This change in TEC can occur because of natural ionospheric fluctuations and diurnal changes, or simply during each satellite pass through increasing and decreasing elevation angles. Under such changes, even if the true satellite range does not change, equation (7) and equation (8) show that, the raw pseudorange will grow larger, and the phase will decrease by an equivalent amount. This divergence for one time step is depicted in Figure 1. If the ionospheric TEC continues to change, the smoothed pseudorange will continue to deviate from the actual range and will only recover once the ionosphere stops changing for at least Tsmooth.
4. Ionospheric Divergence Effects on the Calculation of Ionospheric Correction and TEC
 Since receiver output pseudorange on L1 and L2 are used to derive the absolute ionospheric correction to the pseudorange for navigation, and the absolute TEC for scientific measurement, ionospheric divergence errors in the individual pseudoranges will bias the estimate of ionospheric correction (TEC). We continue with a derivation demonstrating this mathematically, and continue with examples of ionospheric divergence bias in real GPS data.
 The ionospheric correction in meters for L1 or the equation for absolute code TEC (1 TEC unit = 16.3 cm of ionospheric correction on L1), is calculated as follows,
and the phase TEC is calculated in a similar manner,
If we replace the definition of S from equation (6) into equation (9), and assuming the weight factors for L1 and L2 are the same, and that ΔI from the previous time step was zero, we can examine the effect of ionospheric divergence on ionospheric correction for 1 time step,
 We continue by inserting the definitions for ϕ and ρ from equations (7) and (8) and simplify by applying the definition, F = , and to avoid recursive calculations we assume that the I of the previous time step is zero such that SL1i−1 = SL2i−1, and that wL1 = wL2 yielding,
and since, ΔI = Ii and IL2 = IL1, the equation reduces to
Now we may see that the difference between the true ionospheric correction on L1 and that estimated from smoothed pseudorange is opposite in direction and nearly (w ≪ 1) equal in magnitude. Therefore, ionospheric divergence not only corrupts individual pseudoranges, but this corruption is carried through to the calculation of code TEC or ionospheric correction.
5. Mitigating Ionospheric Divergence With a Divergence-Free Filter
 The use of a dual frequency GPS receiver allows for the novel mitigation of code smoothing induced ionospheric divergence. If we replace ϕi − ϕi−1 in equation (6) with a corrected ionospheric term, the effects of ionospheric divergence are easily removed.
where the change in ionosphere is obtained from the dual frequency phase measurements,
It can thus be shown that such a smoothing algorithm will not accumulate ionospheric divergence errors during ionospheric changes. The following section demonstrates these procedures on GPS data collected in Fairfax, Virginia.
6. Examples of Ionospheric Divergence and Delay of TEC From GPS Data
Figure 2 demonstrates an example of code TEC and phase TEC from the celestial reference system GPS receiver for the first 10,000 s of observation of pseudorandom number 2 (PRN 2) on 30 November 2006. This date, time, and PRN were chosen arbitrarily as a demonstration of typical data for a GPS receiver in the continental U.S. Figure 2 plots ionospheric TEC in meters of L1 ionospheric correction. The plot displays raw code TEC, with no smoothing, obtained from raw L1 and L2 pseudoranges in black. It should be noted here that the raw code TEC displayed here has been smoothed by a centered 20 point boxcar average, so that 10 m point to point fluctuations do not overwhelm Figure 2. This was done only for plotting and not during the analysis. The phase TEC has been fit using the LSF method described above to the raw code TEC and is also shown in black. Two additional code TEC estimates are shown, which were calculated using two smoothing techniques. The first is the standard Hatch filter using a 500 s smoothing time and is shown in blue. The second is a 500 s ionospheric divergence free (Divfree) filter that is available using the CRS receiver and is shown in yellow. Both smoothed code TEC estimates are considerably smoother then the raw TEC estimate that shows noise and multipath fluctuations. Here the TEC is decreasing from 9 to 4 m over the course of 10,000 s as the satellite increases in elevation. The ionospheric change rate of 1 m per 2000 s induces between a 0.5–1 m ionospheric divergence error over the 500 s smoothing time, as seen by comparing the yellow line to the blue. An additional error is induced by the delay effect of applying a trailing smoothing such as the Hatch filter. This effect is shown to be between 0.5 and 1 m as well, as evidenced by comparing the yellow code TEC to the black raw code TEC. These data were collected raw at 50 Hz and the smoothing was applied in post processing to demonstrate the effects of delay and ionospheric divergence with as few other factors as possible. Comparisons using simultaneously operating receivers in raw, Hatch-smoothed, and Divfree smoothing modes showed similar results as these postprocessing results presented here. Additional examples of ionospheric divergence are shown in Figures 3 and 4. Figure 3 shows a rapid enhancement in ionospheric TEC during sunrise in Calcutta, India, and Figure 4 shows a TEC enhancement during a solar flare on 6 December 2006. Our analysis of the solar flare data has shown that all PRNs were subject to a, temporary, 2 m ionospheric correction error during this period, which caused a persistent positioning error for nearly 30 min.
 The fact that all code smoothing is conducted by a trailing filter, imposes an unavoidable delay on the pseudorange output and particularly, code estimated TEC. Figure 5 demonstrates the delay between smoothed pseudorange and raw pseudorange code TEC for the CRS receiver operating in raw mode and common receiver architecture used for TEC measurements the Novatel OEM 4 receiver. Our research has shown that the delay between true code TEC and smoothed code TEC is approximately one-third Tsmooth. The observed 30 s delay of the Novatel receiver indicates that it smoothes using an approximately 100 s filter.
Figure 2 also demonstrates the effects that these biases have on fitting the phase TEC to a biased code TEC. Figure 2 showed that both the delay induced by smoothing and the ionospheric divergence cause a combined 1.5 m bias in the TECFinal estimate. This error in absolute TEC estimation of nearly 10 TECU, and is substantial. Clearly a number of methods can be applied to avoid these situations, such as using only high-elevation portions of satellite passes to conduct the least squares fit. However, doing so dramatically reduces the number of points available for the fit, diminishing the inherent accuracy of the fit. Further, such techniques are impractical if quality real time or near real time TEC estimates are required, since satellites always come into view at low elevation angles, and demonstrate a decreasing ionosphere as that elevation increases. For the most scientifically accurate postprocessed TEC estimation, we have found that raw pseudoranges, with no smoothing, avoid both biases. If multipath is a significant concern, employing a ionospheric divergence free smoothing, such as the Divfree smoothing mode of the CRS Ionospheric monitoring receiver to mitigate multipath, without inducing ionospheric divergence issues presents a compromise. Delay effects can then be mitigated by shifting code TEC ahead in time 0.3 Tsmooth to best match the conditions of the phase TEC before least squares fitting.
7. Receiver Differential Code Bias and Calibration
 As discussed previously, GPS phase TEC provides a smooth but relative measurement of ionospheric TEC, while code TEC provides a noisy but absolute measurement. However, this absolute measurement is plagued by an additional instrumental bias that must be accounted for before GPS data can be reliably used for ionospheric characterization, and these are the so-called receiver and satellite differential code biases or DCBs. The calculation of absolute TEC is rewritten as follows,
where S is the smoothed or raw pseudorange in meters, and Iono is the ionospheric correction on L1 in meters (16 cm of ionospheric correction on L1 = 1 TECU = 1 × 1016 electrons m−2). A number of methods exist for estimating receiver and satellite DCBs, all of these methods require comparing measurements from one receiver to another. Yet, solving simultaneously for both receiver and PRNs and satellite bias is hampered by the fact that each receiver and satellite provide an additional equation (equation (16)), but also provides an additional unknown producing an underdetermined set of linear equations. Nonetheless, the IGS ionospheric working group compiles a daily list of satellite DCBs and the corresponding receiver DCB for about 100 worldwide receivers using a Kalman Filter approach for combining GPS data [Dow et al., 2005; Komjathy et al., 2005]. These results are used to generate a publish Global Ionosphere Maps (GIM) that have a quoted 2–9 TECU accuracy and available for download at the NASA Jet Propulsion Laboratory (JPL) website via ftp (http://igscb.jpl.nasa.gov/components/prods.html).
 An additional common technique for estimating receiver DCB is to assume that TEC is never negative, or nighttime vertical TEC values are near 1–3 TECU and therefore the receiver DCB is the number necessary to eliminate negative TEC from all slant TEC observations. Such techniques yield approximate DCBs, and limit the type of scientific study that can be conducted with the resulting data. However, instead of estimating receiver DCB, here we present a technique for measurement of receiver DCB to better than 1 cm, or less then 0.1 TECU.
 In order to properly measure receiver DCB, the CRS GPS receiver contains a patented internal calibrator that measures absolute code delay and phase offset on L1 and L2 frequencies [Ganguly et al., 2007]. This is accomplished by attaching a cable from a GPS signal generator with an output on the receiver box, to the antenna input of the receiver. This allows for the direct characterization of receiver DCB and any drift in phase offset that may occur between subsequent calibrations. Example results using this calibrator to derive accurate absolute TEC are shown in Figure 6. Figure 6 compares TEC from 7 December 2006 for a National Geodetic Survey (NGS) Continuously Operating Reference Station GPS receiver LWX1 located in Sterling, Virginia and the CRS GPS receiver located 15 km away in Fairfax, Virginia. Slant TEC estimates are shown in red, and vertical TEC estimates are blue. Both receivers' TEC estimates have been adjusted for satellite DCBs using the NASA JPL estimates available via ftp. The CRS receiver DCB was adjusted using the internal calibrator, and was found to be 13.3 TECU. The LWX1 receiver DCB is unknown, but is clearly approximately −42 TECU. Figure 6 shows that without proper characterization of the receiver DCB, the resulting TEC estimates of NGS and IGS monitoring receivers do not provide absolute TEC. Using the CRS internal calibrator we have collected over 1 year of TEC data without ever measuring negative TEC, a testament to the accuracy of the calibrator.
 An additional, more detailed, test of instrumental measurement of receiver DCB comes from comparing TEC calculated by two receivers connected to the same antenna. Figure 7 shows code and phase TEC estimation for PRN 17 from two CRS receivers operating simultaneously and operating from the same antenna on 1 January 2007. Receiver 1 phase and code TEC are shown in blue, and Receiver 2 in black. The DCB for each receiver has been subtracted using internal calibration measurements taken just after data acquisition. The plot demonstrates that the calibrator correctly removes the interreceiver DCB to within 5 cm or 1/2 TECU. These results are typical, and are worse than the inherent accuracy of the calibration system due slight differences in cabling and signal splitting, but are primarily due to the variance in the code TEC used in the LSF. For example if the variance in an individual code TEC is 5 m, and Figure 7 is fit using 10,000 points the resulting variance is 5 cm.
8. A Method for Achieving Subcentimeter Accuracy in Receiver DCB
 While the inherent noise in code TEC limits the demonstration of the calibrator precision using a single satellite pass, higher data rate TEC and climatological measurements can benefit from calibrations at an even higher precision, and the following paragraphs demonstrate a technique for achieving such precision.
 Since the CRS GPS receiver calibrator measures the absolute receiver delay for code offset and relative phase, we have devised a novel method for improving the receiver DCB measurements demonstrated above by combining phase and code measurements to achieve subcentimeter accuracy in absolute calibration. Because even the code calibration scheme is subject to the same thermal noise as code pseudorange measurements in general, the absolute accuracy of code calibration is still limited in practice to a few centimeters. However, by combining code and phase measurements we can achieve a subcentimeter accuracy measurement, and we describe our methodology below.
 The delay in meters, through the system on L1, and similarly for L2, can be characterized in the following manner,
where ncycles is the integer number of wavelengths for the L1 or L2 signals, λ is the center wavelength of L1 or L2(0.190294 m and 0.24421 m respectively) and ϕ is the calibrator measured phase offset. ncycles is measured using the calibrator code delay in the following fashion,
where dcodeL1 is the code delay measured by the calibrator. The results of applying these operations from equation (17) and equation (18) to the calibrator output are plotted in Figure 8. Such as scheme uses the code calibration to measure system delay to within one wavelength and the phase measurement is used to measure the relative delay at the subwavelength level. This is somewhat corollary to techniques used for combining phase and code TEC in ionospheric measurements. The accuracy of this technique is also demonstrated in Figure 8, which shows the measured absolute delay though the system for both L1 and L2 frequencies using four different cables to attach the calibrator output to the antenna input. The delay though each of the four cables was independently measured using a network analyzer that demonstrated that the dispersion in cable length between L1 and L2 was less than 0.004 m for all of the cables. Therefore, attaching different cable lengths to between calibrator output and antenna should change the absolute delay of the system but the L2 − L1 offset should remain invariant to a particular cable, at least to within the measured cable dispersion. Figure 8 shows that the absolute delay for L1 and L2 as a function of cable length forms two straight lines indicating a stable measurement of receiver L2 − L1 offset.
Table 1 summarizes the results of Figure 8 to show that the variation in L2 − L1 offset from cable to cable remains constant to within 0.004 m, which is similar to the measured dispersion of the individual cables.
Table 1. Corresponding Calibrator Measurements and L2 − L1 Offsets for Figure 8
L1 Delay (m)
L2 Delay (m)
L2 − L1 (m)
 Three removable sources of error or bias often exist in GPS measurements of absolute ionospheric TEC. These result from (1) estimation instead of measurement of the receiver DCB, (2) smoothing induced delay of code TEC, and (3) smoothing induced ionospheric divergence bias of code TEC. Removing these effects is achievable by calibrating the GPS receiver DCB and operating a GPS receiver with no code smoothing or Divfree smoothing with delay adjustment to code TEC. Improved accuracy in absolute ionospheric TEC measurements will enhance the accuracy of global ionospheric reconstructions, and reduce error in conversion from slant to vertical TEC, see Ganguly and Brown .
 The authors would like to thank Jeanette Johnson for her help in preparation of this paper.