Introduction

A satellite of the Global Navigation Satellite System (GNSS) carries a clock, which serves as the time reference for distance measurement. Satellite clock error is a significant factor that affects positioning accuracy, while delivering a high-precision positioning service is a routine task. Originally, the GNSS provided this service by transmitting the corresponding parameters generated using an extrapolation method. This service, known as broadcast ephemeris, was designed to meet the meter-level Single Point Positioning (SPP) requirement (Leick et al., 2015). However, the age of the satellite clock parameter in the GNSS broadcast ephemeris is limited due to the poor long-term extrapolation performance of GNSS satellite clocks. Consequently, the satellite clock parameter in the broadcast ephemeris requires frequent updating. The update intervals for different GNSSs, including Global Positioning System (GPS), GLObal NAvigation Satellite System (GLONASS) and BeiDou Navigation Satellite System (BDS), are presented in Table 1. The table indicates that the update interval for satellite clock correction parameters in the BeiDou-3 Navigation Satellite System (BDS-3) broadcast ephemeris is six times longer than that of the Galileo navigation satellite system (Galileo).

Table 1 Update intervals of the satellite clock correction parameters in broadcast ephemeris for the different GNSS systems

The high-precision satellite clock products with different updating intervals have been provided by the International GNSS Service (IGS) since the time when the Precise Point Positioning (PPP) was proposed (Malys & Jensen, 1990; Zumberge et al., 1997), as discussed by Dow et al. (2009). Initially, the IGS offered the final satellite clock products with a delay of approximately 15 d, which are mainly used for the post-processing applications of PPP. However, due to the increasing demand for real-time PPP in the fields such as weather forecasting (Li et al., 2012) and earthquake magnitude determination (Fang et al., 2014; Geng et al., 2010), the real-time satellite clock estimation and services have been studied. In real-time scenarios, the estimation of satellite clocks is typically performed using dual-frequency ionosphere-free linear combinations (Bock et al., 2009; Ge et al., 2012; Hauschild & Montenbruck, 2009; Li et al., 2010a, b; Zhang et al. 2011). To accommodate various observation requirements, the impact of GNSS satellite biases on satellite clock correction was investigated (Li et al., 2017). Additionally, the studies have explored the satellite Inter-Frequency Clock Bias (IFCB) (Cai et al., 2016; Li et al., 2013, 2016; Montenbruck et al., 2012; Pan et al., 2017) to compute triple-frequency satellite clocks (Li et al., 2018).

Real-time PPP processing is crucial for the users who require the most up-to-date satellite clock products. Therefore, the Real-Time Service (RTS) for satellite clock correction plays a vital role in maintaining accuracy while simplifying delivery. The International GNSS Service (IGS) Real-Time Working Group was established in 2011 to provide real-time satellite clock corrections relative to the broadcast ephemeris (Elsobeiey & Al-Harbi, 2016). The IGS RTS updates satellite clock parameters at 6-s intervals. However, the frequent updating of satellite clock correction imposes a burden on the service. To address this issue, researchers investigated the methods to improve the RTS for BDS-3 and Galileo systems. These studies, conducted by Yang et al., (2020, 2022), Wu et al. (2020), Li et al., (2022a, b), and Feng et al. (2023), aim to prolong the update interval and enhance the service capabilities. However, these methods often use high-order polynomials and harmonic-based functions, which require the broadcast of multiple parameters and can complicate the RTS method. To leverage the favorable characteristics of Galileo and BDS-3 satellite clocks, which are equipped with stable Passive Hydrogen Maser (PHM) clocks (Jaduszliwer & Camparo, 2021), a new RTS method is developed in this paper, which utilizes linear functions to simplify the process. Additionally, the PPP performance with this method is thoroughly analyzed.

Method

The RTS of satellite clock errors is a precondition for RT PPP processing. To develop an RTS method, the parameters that aim to extrapolate real-time GNSS satellite clock correction variations are updated at different intervals. These parameters and the intervals are typically generated based on the satellite clock performance and the PPP user's accuracy requirements. The extrapolation algorithm typically estimates the coefficients of a function fitting to the computed satellite clock correction series, which are then used for the positioning application for the next time span. It is evident that the arc length of the used satellite clock correction series is directly related to the timeliness of the fitting coefficients in the extrapolation algorithm. A linear model offers simple coefficients, which facilitates delivery. Therefore, the construction of an RTS method using the linear model is discussed.

PPP

Assuming the station coordinates and satellite clock and orbit products remain fixed, the linearized ionosphere-free carrier phase and code combinations at epoch i can be expressed as follows:

$$\begin{array}{l}\left\{\begin{array}{l}{l}_{r}^{s}\left(i\right)={\rho }_{r}^{s}\left(i\right)+ {\delta }_{r}(i)+{a}_{r}^{s} (i)-{T}_{r}^{s}(i)\\ {p}_{r}^{s}\left(i\right)={\rho }_{r}^{s}\left(i\right)+{\delta }_{r}(i)-{T}_{r}^{s}(i)\end{array}\right.\end{array}$$
(1)

where \({l}_{r}^{s}\left(i\right)\) and \({p}_{r}^{s}\) are the phase and code observations, respectively; \({\rho }_{r}^{s}\) is the range from the satellite to the receiver; \({\delta }_{r}\) is the receiver clock error; \({a}_{r}^{s}\) is the ambiguity of the ionosphere-free carrier phase combinations of satellite s at receiver r; and \({T}_{r}^{s}\) is slant tropospheric delay. An estimator of Least Squares (LS) and an elevation-dependent weight are used in computing these biases. The elevation-dependent weight is written as follows:

$$\begin{array}{l}{w}_{i}=\left\{\begin{array}{cc}1/{\sigma }^{2}& {30}^{0}\le {\theta }_{i}\le {90}^{0}\\ 2\mathrm{sin}({\theta }_{i})/{\sigma }^{2}& {7}^{0}\le {\theta }_{i}<{30}^{0}\end{array}\right\}\end{array}$$
(2)

where \({\sigma }^{2}\) is the variances of carrier phase and code observations, respectively; and \({\theta }_{i}\) is the elevation at i epoch.

Linear model

The PPP processing relies on the service of satellite orbit and clock error. As the estimation methods for these parameters have developed, the corresponding RTS is a routine task implemented by IGS and GNSS systems. The RTS method must consider the timeliness and age of satellite parameters. Polynomial functions are commonly used to model and extrapolate satellite clock corrections (Leick et al., 2015). However, the linear model, which considers satellite clock variation and has a small number of parameters, is an alternative option. The linear model can be expressed as follows:

$$\delta (t)={a}_{0}+{a}_{1}\times (t-{t}_{0})$$
(3)

where t is observation time and \({t}_{0}\) is reference time; \(\delta (t)\) is the satellite clock correction at t, \({a}_{0}\) and \({a}_{1}\) are coefficients.

In GNSS satellite clock parameterization, the linear model is typically employed to construct the broadcast ephemeris, which has an age in the order of hours. Because of the long term of prediction, the accuracy of the satellite clock correction is only sufficient for meter-level positioning. Nevertheless, the linear model with its two coefficients can easily capture decimeter-level satellite clock variations. Therefore, it is essential to examine the performance of the linear model in constructing RTS for BDS-3 and Galileo satellite clock corrections.

RTS strategy

A good RTS method should consider both the timeliness and accuracy of the broadcasted parameters. For BDS-3, a difference in the satellite clock correction between the broadcast ephemeris and estimated values is directly broadcasted (Li et al., 2022b). It is clear that the arc length of the observations used to estimate the satellite clock correction affects the timeliness of the broadcasted parameters, as computation is required. Therefore, it is important to use an appropriate arc length for the satellite clock correction and extrapolation algorithm. The extrapolation algorithm is particularly useful in saving time and maintaining the timeliness of the broadcasted parameters. Considering these factors, the flow chart of the proposed RTS method is shown in Fig. 1.

Fig. 1
figure 1

Flow chart of the presented RTS strategy

Data processing

To evaluate the performance of the linear model in its corresponding RTS method, we used one-month (May 1–31, 2021) IGS BDS-3 and Galileo satellite clock correction products (ftp://ftp.gfz-potsdam.de/pub/GNSS/products/mgnss) of GeoForschungsZentrum (GFZ) to simulate the RT experiment. Additionally, we employed 10 IGS stations to test the proposed RTS method. The PPP processing strategy used is outlined in Table 2. We analyzed the positioning accuracy and convergence time. The convergence time is defined as the elapsed time when the PPP coordinate errors for all consecutive epochs in the north, east, and up directions are less than 10 cm.

Table 2 PPP processing strategy

Extrapolation of the linear model

Extrapolation is a key component of the RTS method, where a function is fitted to a set of observed satellite clock correction series and then used to predict future values. In this study, we used IGS satellite clock correction series of different arc lengths to analyze the performance of the linear model in extrapolating satellite clock corrections for BDS-3 and Galileo. The coefficients of the linear model were fitted using different arc lengths of satellite clock correction series, and the extrapolated values for the next time spans were obtained using the fitting coefficients. The 24 h satellite clock corrections were generated using the analogous procedure. The Root Mean Square (RMS) of the difference between the extrapolated and IGS values were computed. The one month mean RMS values of min-level extrapolation results for BDS-3 and Galileo are plotted in Figs. 2 and 3, respectively. These figures show the min-level extrapolation results decrease as the extrapolation time increases and the accuracy for Galileo is better than that of BDS-3. It is also observed that the min-level extrapolation RMS results are less than 0.09 ns.

Fig. 2
figure 2

Mean RMS for BDS-3 min-level extrapolation results

Fig. 3
figure 3

Mean RMS for Galileo minute-level extrapolation results

The one month mean RMS values of hour-level extrapolation results for BDS-3 and Galileo are given in Figs. 4 and 5, respectively. It is obvious that the hour-level extrapolation results are worse than the min-level results, and the 4 h results of BDS-3 and Galileo reach a mean accuracy of 0.3 ns and 0.2 ns, respectively. Similar to the min-level extrapolation results, the hour-level extrapolation accuracy decreases as the arc length increases and the 4 h extrapolation results for 1 h arc length is better than that of 4 h arc length. The mean accuracies for different arc length and different extrapolation times are computed and provided in Fig. 6. This figure shows that the results become worse with increasing arc length of the satellite clock correction series and the optimal arc length for the satellite clock correction series is 1 h. From Fig. 6, the minute- and hour-level extrapolation results for BDS-3 and Galileo are better, and the mean accuracies of minute-level results for BDS-3 and Galileo are better than 0.044 ns and 0.035 ns, respectively, when a 1-h arc length for the satellite clock correction series is used. This highlights the importance of selecting an appropriate satellite clock correction series estimated using observations to construct the RTS method. A satellite clock correction series with a long arc length can waste time for estimation and affect the timeliness of the RTS.

Fig. 4
figure 4

Mean RMS for BDS-3 h-level extrapolation results

Fig. 5
figure 5

Mean RMS for Galileo hour-level extrapolation results

Fig. 6
figure 6

Mean accuracies of BDS-3 (Up) and Galileo (Down) for different arc length and different extrapolation times

RTS performance

The advantage of the extrapolation algorithm in preserving the timeliness of broadcast RTS parameters is apparent. Following the procedure depicted in Fig. 1, a 1 h estimated satellite clock correction series is utilized to determine the parameters of the linear model. These parameters are subsequently transmitted and updated at the minute level. The analysis of PPP performances for various strategies aims to determine the optimal RTS method. In PPP processing, the IGS orbit of the corresponding satellite clock products is utilized. This approach aligns with the common strategy. The convergence time and positioning error of BDS-3 and Galileo for different strategies are assessed over a one-month period. Figure 7 illustrates the computed one-month convergence time of BDS-3 and Galileo for different static PPP strategies. It is evident from the figure that the convergence time of both Galileo and BDS-3 under different RTS strategies can reach a centimeter-level accuracy, albeit taking longer than the IGS standard. The static PPP positioning of Galileo and BDS-3 also achieve centimeter-level precision, with the mean convergence time of 57 and 53 min, respectively, even when the linear model parameters are broadcasted and updated every 10 min. The decreasing trend in convergence time suggests the accuracy of the extrapolated Galileo and BDS-3 satellite clock error is improved. As a result, users have the flexibility to choose their preferred strategy based on their specific requirements.

Fig. 7
figure 7

Mean convergence time of BDS-3 (Up) and Galileo (Down)

The one-month static and kinematic PPP processing results are analyzed, and the mean positioning errors are calculated and presented in Figs. 8 and 9, respectively. It is evident from these figures that the static positioning results outperform the kinematic results. The static PPP using RTS intervals of 1, 2, 5, and 10 min in the North, East, and Up directions achieve centimeter-level accuracy. This indicates that the static PPP approach yields better results compared to the kinematic approach in various strategies and directions. It is evident that the positioning accuracy in North and East directions is better than that in Up direction. Figures 10 and 11 present the static and kinematic positioning results for BDS-3 and Galileo at 10 observation stations using a 10 min RTS strategy. Remarkably, all observation stations achieve centimeter-level positioning accuracy, despite the linear model parameters being updated at 10 min intervals. These results highlight the effectiveness of the linear model in establishing a better RTS, especially when considering timeliness and simplicity. The simplicity and suitability make the linear model a favorable choice for constructing BDS-3 and Galileo RTS for satellite clock correction.

Fig. 8
figure 8

Static positioning of BDS-3 (Left) and Galileo (Right) for different strategies

Fig. 9
figure 9

Kinematic positioning of BDS-3 (Left) and Galileo (Right) for different strategies

Fig. 10
figure 10

BDS-3 (Left) and Galileo (Right) PPP static positioning results of IGS and 10 min strategy

Fig. 11
figure 11

BDS-3 (Left) and Galileo (Right) PPP kinematic positioning results of IGS and 10 min strategy

Conclusion

The provision of highly accurate RTS for satellite clock correction, orbit, and bias is crucial for high-precision and real-time PPP processing. The IGS, BDS-3, and Galileo systems have provided these RTS, with the satellite clock correction being transmitted and updated at high-frequency. However, frequent updating of the correction parameters can increase the computational burden and compromise the timeliness of these parameters. To address this issue, an improved RTS is established using the extrapolation algorithm and a linear model. The results indicate that a 1 h arc length of the satellite clock correction series is optimal for fitting a linear model of the RTS. With this approach, the 1 h extrapolation results for BDS-3 and Galileo are better than 0.09 ns. Furthermore, when these coefficients are updated at intervals of 1, 2, 5, and 10 min, the corresponding PPP positioning can converge at the centimeter-level. It is evident that these improved RTS methods outperform the current approaches that transmit and update the coefficients at high-frequency, as they struggle to maintain the timeliness of these correction parameters.