1 Introduction

When multi-frequency data are used for GNSS precise point positioning (PPP) (Zumberge et al. 1997), hardware delays in both code and carrier-phase observations must be considered (Ge et al. 2008; Geng and Bock 2013). The satellite Inter-Frequency Clock Bias (IFCB) is defined as the differences between satellite clock estimates that use ionosphere-free observations on different frequencies (e.g., L1/L2 and L1/L5 observations for GPS satellites). It is caused by inconsistent frequency-dependent hardware delays in both code and carrier-phase observations (Montenbruck et al. 2012). Specifically, the satellite code-based IFCB consists of differential code biases (DCB) on different frequencies (Li et al. 2016). As DCBs are usually sufficiently stable over a period of 24 h or a few days (Sardon and Zarraoa 1997), code-based IFCB can be regarded as constant over the course of a single day. However, Montenbruck et al. (2012) reported apparent sub-daily variations with peak-to-peak amplitudes of 10–40 cm between L1/L2 and L1/L5 clock estimates of GPS Block-IIF satellites. These variations were related to hardware delays in carrier-phase observations. It has been demonstrated that the sub-daily variations of these satellites exhibit periodic changes with respect to the sun–spacecraft–earth angle. The thermal differences associated with the change in solar illumination were identified as a driving factor for this periodic variation (Montenbruck et al. 2012). Thus, the GPS satellite phase-based IFCB can be precisely modeled and predicted by the empirical periodic function (Li et al. 2016; Pan et al. 2018b). The instability of satellite IFCB cannot be ignored when GPS triple-frequency data are used. Results from Pan et al. (2017) showed that the average errors of GPS triple-frequency PPP increased from 2.1 cm, 0.7 cm, and 2.3 cm to 3.1 cm, 1.1 cm, and 3.3 cm for the east, north, and up directions when phase-based IFCB is not corrected.

The geometry-free and ionosphere-free (GFIF) combinations have proven to be identical to the difference between satellite clocks estimated using two ionosphere-free combinations (Montenbruck et al. 2012). Thus, GFIF provides a convenient way for estimation of both phase-based and code-based IFCBs, and it is widely used for IFCB analysis (Li et al. 2012a, 2016; Pan et al. 2017). However, the large amount of noise in GFIF combinations prevents a high-precision IFCB solution, especially for code observations. In view of this, the phase-smoothed range has been widely used instead of code observations. Yet the observation combination is significantly influenced by the multipath effect that cannot be reduced through smoothing procedure (Ciraolo et al. 2007). Therefore, the traditional GFIF combination method is no longer the most suitable option for IFCB estimation. Instead of using GFIF combination, Zhao et al. (2019) developed an alternative IFCB estimation method in a network scheme. In this scheme, epoch-differenced IFCB was estimated together with L1/L2 clock values by forming two different ionosphere-free combinations. However, this becomes inconvenient if more than three frequency bands are involved.

As linear observation combinations are complex and noisy, the uncombined model was proposed to process multi-frequency raw data (Schönemann et al. 2011). By introducing external precise satellite orbit and clock products, the uncombined model has become widely used to estimate slant ionosphere delay as well as DCB parameters (Zhang et al. 2012; Liu et al. 2019). Previous studies indicated that a higher accuracy of ionospheric delays and DCB parameters could be obtained via the uncombined model than from geometry-free combination (Zhang et al. 2012; Shi et al. 2016). Furthermore, apparent large phase residuals have been found on GPS L5 observations when uncombined triple-frequency PPP is applied (Schönemann et al. 2014; Li et al. 2018). To deal with this inconsistency, GPS satellite phase-based IFCB calculated from the GFIF combination was proposed to be used as corrections to the L1/L2 satellite clock offset for L5 observations (Pan et al. 2018a). The satellite code-based IFCB calculated from external DCB products was also applied by Pan et al. (2018a), but the DCB products are affected by the ionosphere modeling errors (Wang et al. 2015). In addition to the large amount of noise in GFIF combinations, the calculation of phase-based and code-based IFCBs are independent of each other, resulting in weak consistency with current satellite clock product, e.g., International GNSS Service (IGS) final product. Another approach to deal with the inconsistency of L5 observations is the additional satellite clock estimation in a network scheme. In this approach, an extra satellite clock parameter dedicated to L5 observations was proposed that would be estimated along with the legacy satellite clock based on L1/L2 observations (Guo and Geng 2017). Thus, both phase-based and code-based IFCBs would be included in a set of new satellite clock parameters. However, the satellite clocks cannot be predicted with high accuracy due to their short-term fluctuation, and the high-accuracy IFCB modeling and prediction are not fully considered. Besides, the stochastic model of the two clock parameters needs to be carefully determined because inaccurate process noise might affect the results. In short, the IFCB has become a key tool for dealing with the inconsistency of multi-frequency raw observations. It’s better to take full consideration of the high accuracy of IFCB modeling in the uncombined model and make it consistent with the current satellite clock product. However, no study has concentrated on the overall estimation and evaluation of both phase-based and code-based IFCBs based on the uncombined model. The performance of periodic function of phase-based IFCB in the uncombined model and its effect on the a posteriori residuals also require additional study.

In this paper, we propose a unified multi-frequency uncombined model to estimate GPS satellite IFCB in both code and carrier-phase observations. Different with the GFIF combination method and the additional satellite clock estimation approach, the periodic function for satellite phase-based IFCB and the zero-mean condition for satellite code-based IFCB are introduced in the uncombined multi-frequency model, realizing an overall estimation of both phase-based and code-based IFCBs in a network scheme. Three months of real data recorded from 40 globally distributed stations are used to test the proposed model. The impact of periodic variation of the satellite phase-based IFCB on the a posteriori phase residuals is then analyzed. To assess the validity of the new method, the satellite phase-based and code-based IFCBs estimates are compared with those from GFIF phase combination and external DCB products.

2 Methodology

In this section, the full-rank function model with multi-frequency raw observations is first derived via a re-parameterization process. Then, the modeling approach that includes both phase-based and code-based IFCBs is studied to render IFCB parameters estimable. Finally, the proposed method is summarized and implemented in a computer program.

2.1 Full-rank functional model with multi-frequency raw observations

In general, the original GNSS observation equations for multi-frequency code and carrier-phase observations can be expressed as follows:

$$ \begin{aligned} & P_{r,i}^{s} = \rho_{r}^{s} + t_{r} - t^{s} + T_{r}^{s} + \mu_{i} \;I_{r,1}^{s} + b_{r,i} + b_{i}^{s} + \varepsilon_{i,P}^{s} \\ & \varPhi_{r,i}^{s} = \rho_{r}^{s} + t_{r} - t^{s} + T_{r}^{s} - \mu_{i} \;I_{r,1}^{s} + N_{r,i}^{s} + \varphi_{r,i} + \varphi_{i}^{s} + \varepsilon_{i,\varPhi }^{s} \\ \end{aligned} , $$
(1)

where s represents satellite PRN, r indicates receiver ID, and i represents frequency \( f_{i} \) (e.g., the GPS frequencies are \( f_{1} = 1575.42\,{\text{MHz}} \) for L1 observation, \( f_{2} = 1227.60\,{\text{MHz}} \) for L2 observation and \( f_{3} = 1176.45\,{\text{MHz}} \) for L5 observation); \( P_{r,i}^{s} \) and \( \varPhi_{r,i}^{s} \) are the code and carrier-phase observation at each frequency. \( \rho_{r}^{s} \) is the geometric range from GPS satellite to receiver antennas. \( t_{r} \) and \( t^{s} \) are the receiver and satellite clock errors referring to GPS time, respectively. \( T_{r}^{s} \) denotes the line-of-sight (LOS) tropospheric delays. \( I_{r,1}^{s} \) is the LOS ionospheric delay at frequency \( f_{1} \); \( \mu_{i} = f_{1}^{2} /f_{i}^{2} \) is a frequency-dependent factor which is used to convert \( I_{{r,\text{1}}}^{s} \) to the ionospheric delay at frequency \( f_{i} \), and higher-order ionospheric delays are ignored. \( N_{r,i}^{s} \) is the carrier-phase ambiguity, and it is a constant in an arc. \( b_{i}^{s} \) and \( b_{r,i} \) are the satellite and receiver hardware delays in code observations. \( \varphi_{i}^{s} \) and \( \varphi_{r,i} \) are the satellite and receiver hardware delays in carrier-phase observations. \( \varepsilon_{i,P}^{s} \) and \( \varepsilon_{i,\varPhi }^{s} \) are the unmodeled errors (including noise and multipath errors) in code and carrier-phase observations. All the symbols or parameters are expressed in meter units.

The hardware delays associated with both satellite and receiver in code observations are usually stable enough to be considered as constant values over a period of 24 h or even a few days (Sardon and Zarraoa 1997; Liu et al. 2019). However, the hardware delays in carrier-phase observations are time variable over the course of a day (Montenbruck et al. 2012). Therefore, we separate the time-variant part of the phase hardware delays from the constant part, as expressed in Eq. (2).

$$ \begin{aligned} & \varphi_{i}^{s} = \bar{\varphi }_{i}^{s} + \delta \varphi_{i}^{s} \\ & \varphi_{r,i} = \bar{\varphi }_{r,i} + \delta \varphi_{r,i} \\ \end{aligned} , $$
(2)

where \( \bar{\varphi }_{i}^{s} \) and \( \bar{\varphi }_{r,i} \) are the constant part of the satellite and receiver phase hardware delays on different frequencies, while \( \delta \varphi_{i}^{s} \) and \( \delta \varphi_{r,i} \) are the time-variant part of satellite and receiver phase hardware delays on different frequencies.

Linearization of Eq. (1) is needed before parameter estimation. The satellite orbit (included implicitly in \( \rho_{r}^{s} \)) and clock errors are generally eliminated by introducing the IGS precise products (Dow et al. 2009). In the IGS precise products, both satellite orbit and clock products are generated using the ionosphere-free combination of code and carrier-phase observations (e.g., P1/P2 and L1/L2 for GPS) (Kouba 2009a). In such cases, the satellite hardware delays of code observations as well as the time-variant part of satellite phase hardware delays are introduced to the satellite clock product (Ye et al. 2017), as shown in Eq. (3):

$$ \tilde{t}^{s} = t^{s} - {\text{IF}}(b_{1}^{s} ,b_{2}^{s} ) - {\text{IF}}(\delta \varphi_{1}^{s} ,\delta \varphi_{2}^{s} ), $$
(3)

where \( \tilde{t}^{s} \) is the satellite clock offset published by IGS, \( {\text{IF}}(A,B) = \frac{{\mu_{2} }}{{\mu_{2} - 1}}A - \frac{1}{{\mu_{2} - 1}}B \) denotes an ionosphere-free combination operator in which A and B represent code or carrier-phase observations on different frequencies.

Parameters are not estimable due to rank deficiency of the linearized equations. Since LOS tropospheric delays can be modeled as the product of zenith total delay and a general mapping function, the rank deficiency mainly arises from singularities among parameters including carrier-phase ambiguities (i.e., \( N_{r,i}^{s} \)), receiver clock (i.e., \( t_{r} \)), and hardware delays in both code and carrier-phase observations (i.e., \( b_{r,i} \), \( b_{i}^{s} \), \( \bar{\varphi }_{r,i} \), \( \bar{\varphi }_{i}^{s} \), \( \delta \varphi_{r,i} \), and \( \delta \varphi_{i}^{s} \)). Re-parameterization is employed to eliminate rank deficiency.

Due to their constant nature, \( \bar{\varphi }_{i}^{s} \) and \( \bar{\varphi }_{r,i} \) can be combined into a single variable to form the following equation:

$$ \bar{N}_{r,i}^{s} = N_{r,i}^{s} + \bar{\varphi }_{i}^{s} + \bar{\varphi }_{r,i} , $$
(4)

To further eliminate rank deficiency, we use DCBs (Sardon and Zarraoa 1997) and the time-variant part of differential phase biases (DPBs) (Elmowafy et al. 2016; Zhang et al. 2017a) for both satellite and receiver. The definition of DCBs and the time-variant part of DPBs are shown in Eqs. (5) and (6), respectively.

$$ \begin{aligned} & {\text{DCB}}_{i}^{s} = b_{1}^{s} - b_{i}^{s} \\ & {\text{DCB}}_{r,i} = b_{r,1} - b_{r,i} \\ \end{aligned} , $$
(5)
$$ \begin{aligned} & \delta {\text{DPB}}_{i}^{s} = \delta \varphi_{1}^{s} - \delta \varphi_{i}^{s} \\ & \delta {\text{DPB}}_{r,i} = \delta \varphi_{r,1} - \delta \varphi_{r,i} \\ \end{aligned} , $$
(6)

where \( i \in Z \) and \( i \in [2,\infty ) \).

After reorganizing equations from (1) to (6), the full-rank linear equation of the uncombined model can be derived as shown in Eq. (7).

$$ \begin{aligned} & \Delta P_{r,i}^{s} = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} + \mu_{i} \widetilde{I}_{r,1}^{s} + \tilde{B}_{r,i}^{s} + \varepsilon_{i,P}^{s} \\ & \Delta \varPhi_{r,i}^{s} = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} - \mu_{i} \widetilde{I}_{r,1}^{s} - \tilde{B}_{r,i}^{s} + \bar{M}_{r,i}^{s} + \varepsilon_{i,\varPhi }^{s} \\ \end{aligned} , $$
(7)

where \( \Delta P_{r,i}^{s} \) and \( \Delta \varPhi_{r,i}^{s} \) are the observed minus calculated observations for the code and carrier-phase observations with all necessary errors corrected (see Table 1); \( \vec{\gamma }_{r}^{s} \) is the unit direction vector from receiver to satellite antenna; and \( \vec{x}_{r} \) is the correction to the approximate coordinates of the receiver. \( {\text{ZTD}}_{w,r} \) and \( m_{w,r}^{s} \) denote wet zenith tropospheric delay (ZTD) and its mapping function related to the satellite’s zenith distance. The generation of other estimated parameters is shown in Eq. (8).

$$ \begin{aligned} & \tilde{t}_{r} = t_{r} + {\text{IF}}(b_{r,1} ,b_{r,2} ) + {\text{IF}}(\delta \varphi_{r,1} ,\delta \varphi_{r,2} ) \\ & \tilde{I}_{r,1}^{s} = I_{r,1}^{s} - \frac{1}{{\mu_{2} - 1}}{\text{DCB}}_{r,2}^{s} + \frac{1}{{\mu_{2} - 1}}\delta {\text{DPB}}_{r,2}^{s} \\ & \tilde{B}_{r,i}^{s} = \left\{ {\begin{array}{*{20}l} 0 \hfill & {i \in Z\quad {\text{and}}\quad i \in [1,2]} \hfill \\ {\frac{{\mu_{i} - 1}}{{\mu_{2} - 1}}{\text{DCB}}_{r,2}^{s} - {\text{DCB}}_{r,i}^{s} - \frac{{\mu_{i} - 1}}{{\mu_{2} - 1}}\delta {\text{DPB}}_{r,2}^{s} + \delta {\text{DPB}}_{r,i}^{s} ,} \hfill & {i \in Z\quad {\text{and}}\quad i \in [3,\infty )} \hfill \\ \end{array} } \right. \\ & \bar{M}_{r,i}^{s} = \left\{ {\begin{array}{*{20}l} {\bar{N}_{r,i}^{s} - \frac{2}{{\mu_{2} - 1}}{\text{DCB}}_{r,2}^{s} - (b_{1}^{s} + b_{r,1} )} \hfill & {i = 1} \hfill \\ {\bar{N}_{r,i}^{s} - \frac{{2\mu_{2} }}{{\mu_{2} - 1}}{\text{DCB}}_{r,2}^{s} - (b_{2}^{s} + b_{r,2} )} \hfill & {i = 2} \hfill \\ {\bar{N}_{r,i}^{s} - \frac{2}{{\mu_{2} - 1}}{\text{DCB}}_{r,2}^{s} - DCB_{r,i}^{s} - (b_{1}^{s} + b_{r,1} ),} \hfill & {i \in Z\quad {\text{and}}\quad i \in [3,\infty )} \hfill \\ \end{array} } \right. \\ \end{aligned} , $$
(8)

where \( {\text{DCB}}_{r,i}^{s} = {\text{DCB}}_{i}^{s} + {\text{DCB}}_{r,i} \) denotes satellite plus receiver (SPR) DCBs; \( \delta {\text{DPB}}_{r,i}^{s} = \delta {\text{DPB}}_{i}^{s} + \delta {\text{DPB}}_{r,i} \) denotes the time-variant part of SPR DPBs; \( \tilde{t}_{r} \) is estimated receiver clock error; \( \tilde{I}_{r,1}^{s} \) is estimated LOS slant ionospheric delay; \( \bar{M}_{r,i}^{s} \) is estimated carrier-phase ambiguity; and \( \tilde{B}_{r,i}^{s} \) is the inter-frequency bias parameter in terms of inconsistency between IGS precise clock product and both code and carrier-phase observation at frequency \( f_{i} \). Although the time-variant part of SPR DPBs in \( \tilde{B}_{r,i}^{s} \) would affect the observed minus calculated code observations, it could be ignored due to its small value relative to the noise of code observations and it would be included in the code residuals. It can be seen that \( \tilde{B}_{r,i}^{s} \) is formed from DCBs and the time-variant part of DPBs, which is the key component for IFCB estimation in this paper.

Table 1 Summary of models and processing strategies

2.2 Modeling and estimation of satellite IFCB

Traditionally, the GFIF combination of code and carrier-phase observations has often been used for IFCB estimation and analysis, as described in the "Appendix". However, the inter-frequency bias parameter in the uncombined model is not equivalent to the GFIF combination. Therefore, a conversion from inter-frequency bias parameter to IFCB needs to be employed. The relationship between the inter-frequency bias parameter and the IFCB parameter calculated from the GFIF combination is derived, as shown in Eq. (9).

$$ \tilde{B}_{r,i}^{s} = \left\{ {\begin{array}{*{20}l} 0 \hfill & {i \in Z\quad {\text{and}}\quad i \in [1,2]} \hfill \\ {(\mu_{i} - 1)({\text{IFCB}}_{P,r,i}^{s} - \delta {\text{IFCB}}_{\varPhi ,i}^{s} ),} \hfill & {i \in Z\quad {\text{and}}\quad i \in [3,\infty )} \hfill \\ \end{array} } \right. , $$
(9)

where \( {\text{IFCB}}_{P,r,i}^{s} = {\text{IFCB}}_{P,i}^{s} + {\text{IFCB}}_{P,r,i} \) is the SPR code-based IFCB, and \( \delta {\text{IFCB}}_{\varPhi ,i}^{s} \) is the time-variant part of the satellite phase-based IFCB. Note that we can only obtain the time-variant part of the phase-based IFCB. This is because the constant part of the phase-based IFCB cannot be separated from the ambiguity parameter [see Eq. (4)]. For brevity, the satellite phase-based IFCB refers to the time-variant part of the satellite phase-based IFCB in this paper.

In Eq. (9), the satellite phase-based IFCB cannot be distinguished from the SPR code-based IFCB because they are linearly dependent. As a consequence, the satellite phase-based IFCB needs to be modeled to render parameters estimable. Under the assumption that solar illumination is the only causal factor in the satellite phase-based IFCB sub-daily variation, a periodic function related to the sun–spacecraft–earth angle is introduced (Montenbruck et al. 2012). This function is used by Li et al. (2016) and Pan et al. (2018b) to model the satellite phase-based IFCB. It is also used for predicting the satellite phase-based IFCB, and results show that most predicted satellite IFCBs reach an accuracy of centimeter level which verifies the validity of the model. This function is shown in Eq. (10).

$$ \delta {\text{IFCB}}_{\varPhi ,i}^{s} = \sum\limits_{k = 1}^{{n_{p} }} {(p_{k,i}^{s} } \;\sin (k\eta_{t}^{s} ) + q_{k,i}^{s} \;\cos (k\eta_{t}^{s} )) , $$
(10)

where \( \eta_{t}^{s} \) denotes the sun–spacecraft–earth angle (i.e., quantified as the line between the center of the earth and the satellite’s midnight point), while \( p_{k,i}^{s} \) and \( q_{k,i}^{s} \) are the harmonic coefficients to be estimated with the max degree of \( n_{p} \). The appropriate max degree of Eq. (10) should be determined after periodic analysis of satellite phase-based IFCB.

By plugging Eqs. (9) and (10) into Eqs. (7) and (8), the final full-rank linear equation for GNSS satellite IFCB estimation is formed, as shown in Eq. (11).

$$ \begin{aligned} \Delta P_{r,1}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} + \mu_{1} \widetilde{I}_{r,1}^{s} + \varepsilon_{1,P}^{s} \\ \Delta P_{r,2}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} + \mu_{2} \widetilde{I}_{r,1}^{s} + \varepsilon_{2,P}^{s} \\ \Delta P_{r,i}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} + \mu_{i} \widetilde{I}_{r,1}^{s} \\ & \quad + \,(\mu_{i} - 1)({\text{IFCB}}_{P,r,i}^{s} - \sum\limits_{k = 1}^{{n_{p} }} {(p_{k,i}^{s} } \;\sin (k\eta_{t}^{s} ) + q_{k,i}^{s} \;\cos (k\eta_{t}^{s} ))) + \varepsilon_{i,P}^{s} \\ \Delta \varPhi_{r,1}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} - \mu_{1} \widetilde{I}_{r,1}^{s} + \bar{M}_{r,1}^{s} + \varepsilon_{1,\varPhi }^{s} \\ \Delta \varPhi_{r,2}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} - \mu_{2} \widetilde{I}_{r,1}^{s} + \bar{M}_{r,2}^{s} + \varepsilon_{2,\varPhi }^{s} \\ \Delta \varPhi_{r,i}^{s} & = - \vec{\gamma }_{r}^{s} \cdot \vec{x}_{r} + \tilde{t}_{r} + m_{w,r}^{s} \;{\text{ZTD}}_{w,r} - \mu_{i} \widetilde{I}_{r,1}^{s} + \bar{M}_{r,i}^{s} \\ & \quad - \,(\mu_{i} - 1)\left( {{\text{IFCB}}_{P,r,i}^{s} - \sum\limits_{k = 1}^{{n_{p} }} {(p_{k,i}^{s} \sin (k\eta_{t}^{s} ) + q_{k,i}^{s} \;\cos (k\eta_{t}^{s} ))} } \right) + \varepsilon_{i,\varPhi }^{s} \\ \end{aligned} , $$
(11)

where \( i \in Z\;{\text{and}}\;i \in [3,\infty ) \). In this equation, the inter-frequency bias parameter is replaced by the SPR code-based IFCB and harmonic coefficients of satellite phase-based IFCB. Consequently, the final full-rank linear equation allows for the estimation of parameters including receiver coordinate corrections, receiver clock errors, wet ZTD, LOS slant ionospheric delays, SPR code-based IFCBs, harmonic coefficients of satellite phase-based IFCB, and float ambiguities. The list of parameters to be estimated is shown with \( \vec{X} \) in Eq. (12). In contrast to the uncombined PPP model (Fan et al. 2017), harmonic coefficients of phase-based IFCB for a certain satellite are common to all stations. Therefore, the proposed method provides a practical network solution when raw data collected from more than one station are used.

$$ \vec{X} = \left( {\vec{x}_{r} ,\tilde{t}_{r} ,{\text{ZTD}}_{w,r} ,\widetilde{I}_{r,1}^{s} ,{\text{IFCB}}_{P,r,i}^{s} ,\vec{p}_{i}^{s} ,\vec{q}_{i}^{s} ,\bar{M}_{r,1}^{s} ,\bar{M}_{r,2}^{s} ,\bar{M}_{r,i}^{s} } \right)^{\text{T}} , $$
(12)

where \( \vec{p}_{i}^{s} = \left( {p_{1,i}^{s} , \ldots ,p_{{n_{p} ,i}}^{s} } \right) \) and \( \vec{q}_{i}^{s} = \left( {q_{1,i}^{s} , \ldots ,q_{{n_{p} ,i}}^{s} } \right) \).

The a posteriori residuals of the carrier-phase observations on all frequencies are important values to verify validity of the proposed model. The a posteriori phase residuals can be calculated after all parameters are estimated, as follows:

$$ \begin{aligned} V_{r,1,\varPhi }^{s} & = - \vec{\gamma }_{r}^{s} \cdot \hat{\vec{x}}_{r} + \hat{t}_{r} + m_{w,r}^{s}\; \widehat{\text{ZTD}}_{w,r} - \mu_{1} \hat{I}_{r,1}^{s} + \hat{M}_{r,1}^{s} - \Delta \varPhi_{r,1}^{s} \\ V_{r,2,\varPhi }^{s} & = - \vec{\gamma }_{r}^{s} \cdot \hat{\vec{x}}_{r} + \hat{t}_{r} + m_{w,r}^{s} \;\widehat{\text{ZTD}}_{w,r} - \mu_{2} \hat{I}_{r,1}^{s} + \hat{M}_{r,2}^{s} - \Delta \varPhi_{r,2}^{s} \\ V_{r,i,\varPhi }^{s} & = - \vec{\gamma }_{r}^{s} \cdot \hat{\vec{x}}_{r} + \hat{t}_{r} + m_{w,r}^{s} \;\widehat{\text{ZTD}}_{w,r} - \mu_{i} \hat{I}_{r,1}^{s} + \hat{M}_{r,i}^{s} \\ & \quad - \,(\mu_{i} - 1)\left( {\widehat{\text{IFCB}}_{P,r,i}^{s} - \sum\limits_{k = 1}^{{n_{p} }} {(\hat{p}_{k,i}^{s} \sin (k\eta_{t}^{s} ) + \hat{q}_{k,i}^{s} \;\cos (k\eta_{t}^{s} ))} } \right) - \Delta \varPhi_{r,i}^{s} \\ \end{aligned} , $$
(13)

where \( V_{r,i,\varPhi }^{s} \) is the value of the a posteriori phase residuals on different frequencies; \( \hat{\vec{x}}_{r} \), \( \hat{t}_{r} \), \( \widehat{\text{ZTD}}_{w,r} \), \( \hat{I}_{r,1}^{s} \), \( \widehat{\text{IFCB}}_{P,r,i}^{s} \), \( \hat{p}_{k,i}^{s} \), \( \hat{q}_{k,i}^{s} \), \( \hat{M}_{r,i}^{s} \) are the estimates of parameters shown in Eq. (12).

Based on the SPR code-based IFCB estimates (i.e., \( \widehat{\text{IFCB}}_{P,r,i}^{s} \)), satellite code-based IFCB could be further distinguished from receiver values by introducing additional references. To be consistent with the strategy of satellite DCB estimation suggested by the IGS (Feltens and Schaer 1998), this paper adopts the zero-mean condition for satellite code-based IFCBs from all available satellites that support multi-frequency signals. The observation equation and the additional condition for satellite code-based IFCB estimation can be formed, as shown in Eq. (14).

$$ \begin{aligned} & \Delta {\text{IFCB}}_{P,r,i}^{s} = \widehat{\text{IFCB}}_{P,r,i}^{s} - ({\text{IFCB}}_{P,r,i} + {\text{IFCB}}_{P,i}^{s} ) \\ & \Delta {\text{IFCB}}_{P,con,i}^{{}} = \sum\limits_{j = 1}^{{n_{s} }} {{\text{IFCB}}_{P,i}^{j} } \\ \end{aligned} , $$
(14)

where \( \Delta {\text{IFCB}}_{P,r,i}^{s} \) and \( \Delta {\text{IFCB}}_{{P,{\text{con}},i}} \) are the observed minus calculated observations, while ns denotes the number of satellites that are transmitting multi-frequency signals. The satellite code-based IFCBs can then be estimated via least-squares adjustment with additional constraint.

2.3 Implementation of the proposed method

Using GPS satellites as example, the proposed method is implemented in three steps. First, GPS precise orbit and clock products as well as GPS triple-frequency raw code and carrier-phase observations are taken as input to form the full-rank linear equation. In this step, the periodic function related to the sun–spacecraft–earth angle is introduced for satellite phase-based IFCB [see Eq. (10)]. Next, data are processed epoch by epoch at a daily interval to form normal equations, and harmonic coefficients of satellite phase-based IFCB and SPR code-based IFCBs [see Eq. (12)] are estimated using the least-squares method. Finally, the zero-mean condition for satellite code-based IFCBs [see Eq. (14)] is introduced to separate satellite code-based IFCBs from receiver IFCBs. At the same time, satellite phase-based IFCB is calculated using the periodic function with the derived harmonic coefficients. A flowchart of the proposed method is shown in Fig. 1. The computer program is developed based on the Position And Navigation Data Analyst (PANDA) software, which has been widely used for GNSS applications such as satellite orbit determination and PPP (Liu and Ge 2003).

Fig. 1
figure 1

Flowchart of the proposed method to estimate GPS satellite IFCB using triple-frequency raw observations

3 Data collection and processing strategies

A network of 40 IGS Multi-GNSS Experiment (MGEX) stations worldwide (Montenbruck et al. 2017) was selected to perform data analysis and algorithm evaluation. The distribution of the 40 stations is shown in Fig. 2. Currently, there are up to 9 different tracking channels defined in the RINEX 3.02 standard for each of the GPS frequencies (IGS 2013). This leads to a wide variety of IFCBs that must be estimated if all these channels are considered. To make IFCB unique, only one channel is chosen for each frequency in this paper, that is, 1W, 2W, and 5X for frequencies \( f_{1} \), \( f_{2} \), and \( f_{3} \), respectively. It is important to note that there are 20 receivers that only support GPS C1C observations (i.e., TRIMBLE NETR9). Thus, the GPS P1-C1 DCB (equivalent to C1 W-C1C DCB) product from the Center for Orbit Determination in Europe (CODE) (ftp.unibe.ch/aiub/CODE/2016/) is used to correct GPS C1C observables to ensure the correctness of satellite code-based IFCB estimations (Schaer and Steigenberger 2006).

Fig. 2
figure 2

Global distribution of 40 selected MGEX stations

Three months of GPS triple-frequency code and carrier-phase observations collected from April 1st (DOY = 092) to July 1st (DOY = 183) of 2016 are processed at an interval of 300 s. The errors related to satellites (i.e., phase center offset (PCO) and phase center variation (PCV) of GPS satellites), propagation path (i.e., phase windup correction), and the ground stations (i.e., tide displacement and PCO/PCV of the receiver) are corrected using empirical models, as listed in Table 1. Pre-processing is performed to detect cycle-slip, and data with gross errors are removed (Blewitt 1990). Because PCO and PCV corrections for L5 observations are not available at present, we use the same values that were utilized for L2 observations (Guo and Geng 2017; Pan et al. 2017). Details of these models and processing strategies are summarized in Table 1.

4 Results and data analysis

In this section, the performance of network data processing is first evaluated by analyzing the periodic changes of the a posteriori phase residuals. Then, the equivalence between GPS satellite phase-based IFCB estimates and GFIF phase combination is certified. The validity of the proposed method for satellite phase-based IFCB estimation is verified via comparison with values derived from the GFIF phase combination. Finally, the stability of GPS satellite code-based IFCB estimates is analyzed and their accuracy is evaluated via comparison with results derived from external multi-frequency DCB products.

4.1 Periodic analysis of the a posteriori phase residuals

The max degree shown in Eq. (10) is chosen as 0, 2, and 4 to study the effects of the periodic function on the a posteriori phase residuals. These residuals of L1, L2, and L5 observations calculated by Eq. (13) are shown as red, black, and blue curves in Fig. 3. The upper panels of Fig. 3 show the average time series (from April 1 to April 3, 2016) of the a posteriori phase residuals for PRN01 at all 40 stations. Other satellites have similar patterns that are not shown here. Via a fast Fourier transform process, the average amplitude spectra of phase residuals with a time range of 3 months for all satellites are depicted in the bottom panels of Fig. 3.

Fig. 3
figure 3

The average time series (upper panels) and average amplitude spectra (bottom panels) of the a posteriori phase residuals at each frequency. Different curves shown in the upper panels, one bottom panel (a2), and two bottom panels (b2, c2) are offset by 20, 7, and 2 mm, respectively, to improve clarify

Large phase residuals with significant periodic variations can be found in Fig. 3a1 when no periodic function is introduced, especially for L2 and L5 observations. As shown in Fig. 3a2, corresponding peak amplitudes for each frequency appear at 12 h, 6 h, 4 h, and 3 h. The amplitudes at 12 h and 6 h are much larger than those at 4 h and 3 h. This indicates that the time-variant part of phase-based IFCB would affect the phase residuals when no periodic function is introduced. Although the IFCB parameter is only valid for L5 observations in the full-rank uncombined function model, the phase residuals at all three frequencies are affected. This is because the time-variant part of phase hardware delays would be partially included in common parameters, such as slant ionospheric delays [see Eq. (8)]. The errors in these common parameters would be reflected in L1 and L2 residuals. In addition, the errors in the slant ionosphere parameter are scaled by \( \mu_{2} \) and \( \mu_{3} \) (\( \mu_{2} \) = 1.6469 and \( \mu_{3} \) = 1.7933 for GPS) for L2 and L5 residuals, accounting for larger variation amplitudes of L2 and L5 residuals compared to L1 residuals.

Comparison of Fig. 3a1, b1 shows that the amplitude of periodic variation is significantly reduced after introducing a 2nd-order periodic function. No obvious peak amplitudes corresponding to 12 h and 6 h can be observed in Fig. 3b2, indicating that the time-variant part of the GPS satellite phase-based IFCB can be adequately eliminated by introducing the periodic function. However, amplitudes corresponding to 4 h and 3 h are still relatively larger for L2 and L5 residuals. As shown in Fig. 3c2, peak amplitudes corresponding to 4 h and 3 h are further eliminated by introducing a 4th-order periodic function. At this point, no obvious periodic variation can be found in phase residuals at all frequencies. These results verify the effectiveness of a 4th-order periodic function for GPS satellite phase-based IFCB in a triple-frequency uncombined model.

4.2 GPS satellite phase-based IFCB estimates

Based on the analysis in Sect. 4.1, the 4th-order periodic function is chosen for GPS satellite phase-based IFCB estimation. By fixing precise orbit and clock products from IGS, harmonic coefficients of the periodic function are estimated for each day using the least-squares method. The satellite phase-based IFCB, which consists of time-variant part of L1–L2 DPB and L1–L5 DPB, is then calculated using the estimated coefficients of the periodic function. The time series of phase-based IFCB estimates for PRN01 and PRN10 over 24 h (01 April 2016) are shown in Fig. 4 (red curve). For comparison, the average values of GFIF phase combination at all 40 stations for these two satellites are also shown in Fig. 4 (blue curve) after removing the ambiguities [see Eq. (A1)].

Fig. 4
figure 4

The time series of satellite phase-based IFCBs for PRN01 and PRN10 over 24 h (01 April 2016). The red line represents the results derived from the uncombined model, while the blue line denotes the results derived from GFIF phase combination

For GPS Block-IIF satellites, the phase-based IFCB has sub-daily variations with peak-to-peak amplitudes of several centimeters (Fig. 4). The satellite phase-based IFCB estimates and the GFIF phase combination exhibit identical variation patterns. This initially confirms their equivalence. In order to further evaluate satellite phase-based IFCB consistency between the proposed method and GFIF phase combination, we calculated the daily root mean square (RMS) of the differences between IFCB estimates and the GFIF phase combination for 12 Block-IIF GPS satellites over 3 months. The time series of daily RMS values are shown in Fig. 5 with a blue curve. Results from PRN32 are not provided on DOY = 140 due to the unavailability of precise clock data from the IGS product. For auxiliary analysis, the sun elevation for each satellite (i.e., the angle made between the satellite, the earth, and the sun) is shown in Fig. 5 with a red curve.

Fig. 5
figure 5

The daily RMS of the differences between satellite phase-based IFCB estimates and GFIF phase combination (blue curve). The sun elevation for each satellite is also shown (red curve). Shaded bar with dark gray indicates the eclipse period

Figure 5 shows that the daily RMS of differences between IFCB estimates and GFIF phase combination for each satellite is below 5 mm during most times. The average daily RMS is 4.3 mm. The time series of the daily RMS for each satellite is quite stable over 3 months since the changes are approximately within 2 mm. This indicates that satellite phase-based IFCB estimates show good consistency with those from GFIF phase combination. However, a relatively larger difference can be found in some periods, e.g., DOY from 130 to 180 for GPS PRN08. To further investigate this phenomenon, the eclipse period for each satellite, i.e., the period during which the absolute value of the sun elevation is below 13.5° (Kouba 2009b), has been highlighted with a dark gray bar (Fig. 5). We can see that the larger differences only occur during the eclipse period. This can potentially be explained by the following two phenomenon: (1) the satellite orbit and clock product in the eclipse period are less accurate (Rodriguez-Solano et al. 2012; Li et al. 2015); and (2) the probable lower temperature of satellites in the eclipse period leads to less stability in periodic changes of satellite phase-based IFCB (Montenbruck et al. 2012; Pan et al. 2018b).

Figure 6 shows the average RMS between the satellite phase-based IFCB estimates and GFIF phase combination for each satellite in the eclipse period and eclipse-free period, respectively. It can be seen that the average RMS in the eclipse-free period concentrates on a small range between 3.5 and 4 mm (equivalent with 0.011–0.013 ns), while the average RMS in the eclipse period ranges from 5 to 6 mm (equivalent with 0.017–0.020 ns). The average RMS in the eclipse period is approximately 50% larger than that in the eclipse-free period for all satellites. Even during the eclipse period, the results show the good performance of our method.

Fig. 6
figure 6

The average RMS of the differences between satellite phase-based IFCB estimates and GFIF phase combination

4.3 GPS satellite code-based IFCB estimates

A time series of code-based IFCB estimates for each GPS satellite, which is a combination of P1–P2 DCB and P1–P5 DCB, can be obtained after processing 3 months of data. The results are shown in Fig. 7. Because the nanosecond is the unit generally used for DCB estimation and analysis (Sardon and Zarraoa 1997; Li et al. 2012b), it is also used for the analysis of satellite code-based IFCB in this study. The results from GPS PRN32 are not given due to the unavailability of the precise clock product from IGS on May 19th (DOY = 140). Figure 7 shows that GPS satellite code-based IFCBs vary from − 6 to + 6 ns, which indicates non-ignorable error for triple-frequency code-related applications. It can also be seen that GPS satellite code-based IFCBs are rather stable over the 3 months. This illustrates that our method can precisely estimate GPS satellite code-based IFCBs.

Fig. 7
figure 7

The time series of GPS satellite daily code-based IFCB estimates over 3 months

Additional analysis of the stability of daily satellite code-based IFCB estimates was conducted based on the monthly standard deviation (STD) of daily IFCB estimates. It has also been widely used as an indicator to evaluate the DCB stability (Li et al. 2012b; Shi et al. 2016). The monthly STD of GPS satellite code-based IFCB estimates are shown in Fig. 8 (From April to June 2016). The average values of monthly STD for all satellites are listed in Table 2. For comparison purposes, satellite code-based IFCBs that were derived from the multi-frequency DCB products [see Eq. (A1)] given by DLR (Montenbruck et al. 2014) and IGG (Wang et al. 2015) are also shown in Fig. 8 and Table 2. It was reported that GPS satellite DCB products from both DLR and IGG have a typical STD of 0.1 ns, and achieve an accuracy of less than 0.3 ns when compared with the CODE DCB product (Wang et al. 2015). This indicates that the DCB products from DLR and IGG are a reliable reference for comparison.

Fig. 8
figure 8

The monthly STD of GPS satellite code-based IFCB estimates and those derived from DLR and IGG DCB products

Table 2 The average monthly STD of code-based IFCB estimates for all GPS satellites (unit: ns)

It is worth noting that different datums are currently adopted for different types of DCB product. For example, the zero-mean condition of all 32 GPS satellites is used for C1W–C2W DCB, while only the 12 GPS Block-IIF satellites are used for C1C–C5X DCB. Thus, satellite code-based IFCBs cannot be directly obtained from Eq. (A1) until a unified datum is adopted for all types of DCBs. For datum consistency in this paper, i.e., zero-mean condition of 12 Block-IIF satellites, C1W–C2W and C1C–C1W satellite DCBs are reprocessed via a S-transformation procedure (Odijk et al. 2016) and are then used for the calculation of satellite code-based IFCB.

Figure 8 shows that the monthly STDs of GPS satellite code-based IFCB estimates are less than 0.15 ns, except for PRN32. This demonstrates that our estimated code-based IFCB values for each satellite are rather stable over a period of 3 months. Furthermore, the monthly STDs of GPS satellite code-based IFCBs derived from DLR and IGG are all below 0.15 ns, except for PRN03. The monthly STD of IFCB estimates exhibited an average value of 0.01 ns and 0.03 ns deviation from the DLR and IGG products, respectively. This illustrates that the IFCB estimates are in good agreement with those from DLR and IGG products.

As shown in Table 2, the average monthly STD of the satellite code-based IFCB estimates is 0.09 ns. This represents a 25% improvement when compared with the DCB estimates from IGG, although it is at the same level when compared with the values from the DLR DCB products. The average monthly STD from the IGG product is slightly larger than that from DLR, which is in accordance with the results reported by Wang et al. (2015). This is because the local ionosphere model at individual stations is used in the IGG DCB product, and thus errors caused by inaccurate local ionospheric models at some stations (e.g., those located in low-latitude areas) might affect the stability of DCB estimates (Wang et al. 2015). In contrast to the strategy of IGG, DLR uses the IGS Global Ionosphere Map (GIM) to remove the ionospheric delay. GIM can be more accurate in such cases because it is generated by more than 300 stations (Hernandez-Pajares et al. 2009), while a limited number of MGEX stations are used for the IGG product. Since the satellite code-based IFCB estimates in our method are not affected by the ionospheric model error, the results should be closer to the DLR DCB products.

It should be noted that only 40 stations are used for satellite IFCB estimation in this paper, while around 80 stations are used for DCB estimation by DLR and IGG. This indicates that the proposed method can achieve high-precision satellite code-based IFCBs with sparsely distributed stations. Three factors might contribute to high stability of IFCB values estimated from the uncombined model: (1) the observation multipath error and noise are reduced when the uncombined model is used (Zhang et al. 2012); (2) the code-based IFCB estimate from the uncombined model is globally optimal through the least-squares procedure that helps to improve its accuracy; and (3) the ionospheric modeling error is avoided in the proposed method. Further improvement is expected if more stations are used, because the bias estimates would be affected by the choice of the number of stations and the distribution of the tracking network (Montenbruck et al. 2014).

In order to evaluate the precision of GPS satellite code-based IFCB estimates, DCB products from DLR and IGG were assumed as the ground truth. The mean daily differences between satellite code-based IFCB estimates and those from the DLR and IGG DCB products over 3 months are shown in Fig. 9. It can be seen that the mean difference is in the range of − 0.5 to 0.5 ns, except for PRN01 and PRN03. Specifically, the RMS for all satellites is 0.32 ns and 0.38 ns compared with DLR and IGG DCB products. The satellite code-based IFCB estimates have better consistency with the DLR DCB product, which is in accordance with the monthly STD results. The daily difference comes mainly from systematic errors caused by both the proposed uncombined model and the model used by DLR and IGG, which can be summed up to four aspects: (1) the error caused by the incorrect PCO correction of both satellite and receiver for L5 observations will be included in the satellite code-based IFCBs estimates since it only affects code and carrier-phase observations at frequency \( f_{3} \); (2) the satellite code-based IFCB estimates can be influenced by the accuracy of the precise clock product due to the strong correlation between the satellite clock offset and the satellite code-based IFCB; (3) the multipath errors cannot be reduced in the smoothed code measurements used by DLR and IGG products (Ciraolo et al. 2007); and (4) ionosphere modeling error in DLR and IGG DCB products also needs to be considered (Wang et al. 2015; Roma-Dollase et al. 2018). It should be noted that the systematic errors caused by the incorrect PCO correction and the satellite clock product cannot be reduced by increasing the number of stations used.

Fig. 9
figure 9

Three months of mean daily differences between satellite code-based IFCB estimates from the uncombined model and those from DLR and IGG DCB products

5 Discussion

The proposed uncombined model provides an alternative approach to estimate GPS satellite IFCB. This method is different from the traditional GFIF combination methods, and it has numerous advantages. First, the phase-based and code-based IFCBs related to all frequencies are included in a system of linear equations. The generation of this system of linear equations allows for the unified optimal estimation of satellite IFCBs in a multi-frequency environment. The method takes full use of the raw data; thus, high observation noise is avoided, and multipath errors are also reduced through the least-squares method. Second, the time-variant part of satellite phase-based IFCB is modeled via a periodic function rather than estimated as a set of additional satellite clock offsets. This enhances the strength of the normal equation and significantly reduces the number of estimated parameters. Meanwhile, short-term fluctuation of satellite clock offset is avoided and satellite phase-based IFCB can be predicted precisely using the estimated coefficients of the periodic function. Third, the satellite IFCB estimates most closely match the corresponding precise clock product, which is important for the correction stage in a multi-frequency PPP process. Fourth, the proposed method can avoid the ionosphere modeling error when compared with values derived from multi-frequency DCB products. Therefore, high-accuracy code-based IFCB can be obtained even when a limited number of stations are used. Moreover, due to the datum inconsistency of different DCB types, the S-transformation procedure needs to be applied if satellite DCB products are used as the corrections in a multi-frequency PPP process. The S-transformation procedure is inconvenient for users because it should be conducted in a least-squares procedure where both satellite and receiver DCBs must be included. On the contrary, the satellite code-based IFCB estimated from the proposed method can be directly used.

In addition to satellite IFCB estimation, the proposed method provides a general model that can be used for other multi-frequency applications, such as precise orbit determination, clock estimation, and ionosphere monitoring. Moreover, it has been reported that IFCBs of other GNSS satellites, e.g., BeiDou satellites, have a similar pattern as found in GPS Block-IIF satellites (Montenbruck et al. 2013; Zhang et al. 2017b). Thus, the proposed method can also be conveniently used with multi-GNSS satellites by simply adding the Inter-System Bias parameter that must be estimated (Torre and Caporali 2014). Performance of the proposed method for other GNSS satellites needs to be further elaborated and studied to ensure data compatibility at different frequency bands.

6 Conclusions

This paper proposes a unified uncombined model to estimate GPS satellite IFCB using multi-frequency raw data. We generated a full-rank linear equation using raw code and carrier-phase observations in which the time-variant part of the phase hardware bias is carefully considered and the formula of the IFCB parameter is rigorously derived. As the constant part of the phase-based IFCB cannot be separated from the ambiguity parameter, we focus on the time-variant part of the phase-based IFCB. Therefore, the satellite phase-based IFCB refers to the time-variant part of the satellite phase-based IFCB for brevity. The satellite phase-based IFCB is obtained by estimating harmonic coefficients of the periodic function on a daily basis. In addition, a zero-mean condition for all available GPS satellites that support triple-frequency signals is introduced to enable estimates of satellite code-based IFCB.

Three months of GPS triple-frequency data collected from 40 globally distributed MGEX stations are used to demonstrate the performance of the proposed method. The a posteriori phase residuals are analyzed to evaluate the effectiveness of the introduced periodic function. The results show that the 4th-order periodic function can adequately eliminate the 12-h, 6-h, 4-h, and 3-h periods that are present in the a posteriori phase residuals when no periodic function is introduced. In order to verify the validity of GPS satellite phase-based IFCB estimates, the GFIF phase combination is used for comparison. The results show that the average RMS between IFCB estimates and GFIF in the eclipse-free period is 4.3 mm. The average RMS in the eclipse period increased by 50% compared with that for the eclipse-free period. This is mainly due to the reduced precision in the orbit and clock products, as well as the instability of phase hardware delays during eclipse periods.

GPS satellite code-based IFCB estimates vary from − 6 to + 6 ns, which is a non-negligible error for triple-frequency code-related applications. For comparison purposes, GPS satellite code-based IFCB values derived from DLR and IGG DCB products are also analyzed. The stability of satellite code-based IFCB estimates is analyzed by calculating the monthly STD over a 3-month period. The results show that the mean value of monthly STD is 0.09 ns for satellite code-based IFCB estimates which indicates good agreement with the DCB products. Specifically, the monthly STD of the proposed method is improved by 25% when compared with the DCB estimates from IGG. This is because the DCB product can be affected by the ionosphere modeling error. The mean RMS of code-based IFCB differences is 0.32 ns and 0.38 ns using the DCB products from DLR and IGG as reference, respectively. The incorrect PCO correction for L5 observations and the accuracy of the satellite clock product can affect the satellite code-based IFCB estimates.