Precise total electron content (TEC) is required to produce accurate spatial and temporal resolution of global ionosphere maps (GIMs). Receivers and satellite differential code biases (DCBs) are one of the main error sources in estimating precise TEC from Global Positioning System (GPS) data. Recently, researchers have been interested in developing models and algorithms to compute DCBs of receivers and satellites close to those computed from the Ionosphere Associated Analysis Centers (IAACs). Here we introduce a MATLAB code called Multi Station DCB Estimation (MSDCBE) to calculate satellite and receiver DCBs from GPS data. MSDCBE based on a spherical harmonic function and a geometry-free combination of GPS carrier-phase, pseudo-range code observations, and weighted least squares was applied to solve observation equations and to improve estimation of DCB values. There are many factors affecting the estimated values of DCBs. The first one is the observation weighting function which depends on the satellite elevation angle. The second factor is concerned with estimating DCBs using a single GPS station using the Zero Difference DCB Estimation (ZDDCBE) code or using the GPS network used by the MSDCBE code. The third factor is the number of GPS receivers in the network. Results from MSDCBE were evaluated and compared with data from IAACs and other codes like M_DCB and ZDDCBE. The results of weighted (MSDCBE) least squares show an improvement for estimated DCBs, where mean differences from the Center for Orbit Determination in Europe (CODE) (University of Bern, Switzerland) are less than 0.746 ns. DCBs estimated from the GPS network show better agreement with IAAC than DCBs estimated from precise point positioning (PPP), where the mean differences are less than 0.1477 and 1.1866 ns, respectively. The mean differences of computed DCBs improved by increasing the number of GPS stations in the network.

Total electron content (TEC) is an important parameter in the study of ionospheric dynamics, structures, and variabilities. The ionosphere is a dispersive medium for space geodetic techniques operating in the microwave band (Böhm and Schuh, 2013) that allows calculation of TEC using Global Positioning System (GPS) dual-frequency radio transmissions. The global availability of GPS has made it a valuable tool for monitoring regional and global Earth ionospheric activity (Hernández-Pajares et al., 1999; Komjathy et al., 2005; Li et al., 2015; Liu and Gao, 2004; Mannucci et al., 1993). Unfortunately, GPS-derived TEC measurements are adversely affected by an inherent inter-frequency bias within the receiver and satellite hardware, typically referred to as the differential code biases (DCBs). Careful estimation of the DCBs is required to obtain accurate TEC, which is used in several applications, such as in several ionospheric prediction models, and in the correction of GPS positioning measurements (McCaffrey et al., 2017). A number of methods have been proposed for the estimation of GPS receiver DCBs, each with varying requirements and limitations, including making assumptions about the ionospheric structure, the use of internal calibration (Arikan et al., 2008; Themens et al., 2013, 2015), or the use of a reference instrument or model. Estimating DCBs for receivers and satellites from GPS observations depends on two approaches, the relative and absolute methods. The relative method utilizes a GPS network, while the absolute method determines DCBs from a single station (Sedeek et al., 2017). In the current study, we applied a relative method to calculate DCBs of satellites and GPS receivers.

The flowchart shows how the code works.

There has also been growing interest in measuring the accuracy of these methods and how different factors, e.g., ionospheric activity, play a role in these methods (McCaffrey et al., 2017). Nowadays, reliable GIMs and accurate DCBs of satellites and the International GNSS Service (IGS) stations can be obtained from IAACs like CODE (Schaer, 1999), the European Space Agency (ESA, Germany) (Feltens and Schaer, 1998), the Jet Propulsion Laboratory (JPL, USA) (Mannucci et al., 1998), and UPC (Technical University of Catalonia, Spain) (Hernández-Pajares et al., 1999; Orús et al., 2005). However, the IAAC DCB receivers' values are only available for IGS stations. Furthermore, some of the IGS ground receivers' DCB estimates are not available from all analysis centers. Also, some regions do not have any IGS ground stations, like our country Egypt, which means the TEC values over them would be interpolated from the nearest calculated values. As TEC values are dependent on DCB values, a mathematical model is required to calculate DCBs from GPS data.

In this study we introduce a mathematical model estimating satellites and
receiver DCBs for a GPS network based on a spherical harmonic function (SHF)
written under the MATLAB environment; the developed mathematical model uses
a geometry-free combination of pseudo-range observables (

For a GPS satellite, the pseudo-range and carrier-phase observations between
a receiver and a satellite can be expressed as (Jin et al., 2008; Leandro,
2009; Leick et al., 2015; Zhang et al., 2018)

IGS station locations.

Here, we consider a measurement scenario where one GPS receiver tracks dual-frequency code and phase data from a total of

Firstly, the code read the RINEX files and extracted the pseudo-range and
carrier-phase observations which are the range distances between the
receivers and satellites measured using

Mean difference between the receiver DCB values of CODE and the computed values by each of MSDCBE and M_DCB estimated from 1 to 31 January 2010.

Mean differences between receiver DCB values estimated by MSDCBE and those released by CODE, JPL, and IGS combined from 1 to 31 January 2010.

To reduce the multipath and noise level in the pseudo-range observables, the carrier-phase measurements are used to compute a more precise relative smoothed range. Although the carrier-phase observables are more precise than the code derived, they are ambiguous due to the presence of integer-phase ambiguities in the carrier-phase measurements. To take advantage of the low-noise carrier-phase-derived and unambiguous nature of the pseudo range, both measurements are combined to collect the best of both observations.

Smoothed

Mean difference between the receiver DCB values of the IGS and the computed values by MSDCBE estimated from 1 to 5 January 2010.

Mean difference between the satellite DCB values of the IGS and the computed values by MSDCBE estimated from 1 to 5 January 2010.

To determine the receiver DCB, there are two different methods. The first one is to calibrate the receiver device and obtain the DCB directly. This method calculates the DCB of the receiver device, ignoring that from the antenna cabling used during observation (Hansen, 2002). The second method calculates the receiver DCB as a part of the GPS signal time delay which is independent of the type of antenna. MSDCBE code works like the second method (Fig. 1).

The ionosphere delay can be expressed as follows (Abid et al., 2016):

Mean difference between the receiver DCB values of the IGS and the computed values by each of M_DCB, ZDDCBE, and MSDCBE estimated from 1 to 5 January 2010.

Mean difference between the satellite DCB values of the IGS and the computed values by M_DCB, ZDDCBE, and MSDCBE estimated from 1 to 5 January 2010.

STEC can be translated into vertical total electron content (VTEC) using the
modified single-layer model (MSLM) (Haines, 1985; Jin et al., 2012):

To estimate the satellite and receiver HDs, the current study applies a
model based on a spherical harmonic function to calculate them using
zero-difference observations. The used model is expressed as follows (Schaer,
1999; Li et al., 2015; Elghazouly et al., 2019):

By substituting Eqs. (8), (10), and (11) into Eq. (9), we get

Only one GPS station has more than 20 000 observations per day. When
applying Eq. (12) using station observation data, the number of
equations is much more than the number of unknown coefficients. These
coefficients were determined using the weighted least squares method. The general
form of the weighted least square function can be expressed as (Ghilani and
Wolf, 2012)

As is known, the quality of observations is affected by satellite elevation
angle, and each observation has a weight value dependent on its satellite elevation
angle. The weight value can be computed from the following Eqs. (14), (15),
and (16) (Luo, 2013):

The MSDCBE software was written in MATLAB (version 2016a). The first input
is GPS observations in Receiver Independent Exchange (RINEX) format
according to the selected stations (Fig. 2) downloaded from

In the present contribution, to evaluate the performance of the developed model, numerical case studies were performed. The main goals of the numerical case studies are to investigate three issues.

The

BOGO, BRUS, GOPE, GRAS, ONSA, POTS, PTBB, SOFI, and WTZA IGS station data from 1 to 31 January 2010 were applied as it was the same network used by Jin et al. (2012).

The

This study was applied using IGS station data from 1 to 5 January 2010 of six stations, namely BOGO, BRUS, GOPE, GRAS, ONSA, POTS, PTBB, SOFI, and WTZA.

The

This study was applied using data from 1 to 5 January 2010 of six stations, namely GOPE, GRAS, ONSA, MADR, PTBB, and SOFI, which was the same network used by Jin et al. (2012) and Sedeek et al. (2017).

The first evaluation made by this paper is the evaluation of a weight function. MSDCBE used a weight function depending on the satellite elevation angle as mentioned before. Table 1 shows the differences and rms between satellites and receivers estimated from 1 to 31 January 2010 using multiple GPS stations of both MSDCBE (weighted) and M_DCB (unweighted).

The differences and rms between satellites and receivers estimated from 1 to 31 January 2010 using multiple GPS stations (MSDCBE and M_DCB minus CODE).

Mean difference between the receiver DCB values computed by the IGS and the computed values by using single-station M_DCB, ZDDCBE, and multi-station MSDCBE estimated from 1 to 5 January 2010.

From the table one can see that the differences of MSDCBE-estimated
satellite DCBs are less than 0.302 ns and the rms of all satellite DCB
differences is less than 0.128, except G1, whose rms

By using multi-station DCB estimation, the number of stations used will appear as a factor influencing DCB estimation. This test was done by comparing DCBs computed by MSDCBE of a network of three receivers, namely GOPE, GRAS, ONSA, and DCBs of the same receivers, but this time as a part of a network of nine receivers, namely BOGO, BRUS, GOPE, GRAS, ONSA, PTBB, SOFI, and WTZA. Figure 5 shows these results which demonstrate that using nine receivers gives more accurate DCBs. Also, the satellite DCB differences (Fig. 6) almost improved, but not like receiver DCBs, because satellite DCBs are small values compared with those of receivers.

In this section the performance of a multi-station network against single-station DCB estimation will be evaluated. Table 2 shows the mean difference between the receiver DCB values computed by IGS and the computed values by each of M_DCB, ZDDCBE, and MSDCBE estimated from 1 to 5 January 2010. Figure 7 shows these results graphically and Fig. 8 shows the mean differences computed from M_DCB, ZDDCBE, and MSDCBE for GPS satellites. The results show a significant difference between multi-station network and single-station DCB estimation. The maximum difference between receiver DCB estimation using IGS and MSDCBE is 0.1477 ns of the MADR station, but it is 1.1866 and 0.7982 ns for M_DCB and ZDDCBE, respectively.

The current study proposes a new MATLAB code called MSDCBE able to calculate
DCBs of GPS satellites and receivers. This code was compared with two other
codes and evaluated using IAAC data and, from all the above, we can conclude
the following.

The estimated DCB results are affected by using a weight function according to satellite elevation angle observations. In addition, results show good agreement with IGS, CODE, and JPL results than using multi-station estimation DCB without a weight function.

When using multi-station DCB estimation, the number of input stations influences the DCB results. However, it is recommended to enlarge the size of the used network, but it needs high computer requirements and much more analysis time (only one station has more than 20 000 observations per a day).

The most effective factor in DCB estimation is using a multi-station network instead of a single station that appeared from results which improved from 1.1866 and 0.7982 ns maximum DCB mean differences for M_DCB and ZDDCBE single-station analysis to 0.1477 ns for MSDCBE. So, using multi-station network DCB estimation – if available – is strongly recommended.

The IGS stations data can be downloaded from

All the authors participated in the development of the used code. Alaa Elghazouly carried out most of the analysis and prepared the paper. All the co-authors helped in the interpretation of the results, read the paper, and commented on it.

The authors declare that they have no conflict of interest.

This article is part of the special issue “Vertical coupling in the atmosphere-ionosphere system”. It is a result of the 7th Vertical coupling workshop, Potsdam, Germany, 2–6 July 2018.

This paper was edited by Christina Arras and reviewed by four anonymous referees.