Abstract
Real-time clock products are essential and a prerequisite for global navigation satellite system (GNSS) real-time applications, which are usually estimated from real-time observations from reference stations of a ground network without fixing the phase ambiguities. To improve the precision of real-time clock products further, an undifferenced ambiguity fixing algorithm is proposed for the classical real-time clock estimation method without requiring modifications to the current data processing strategy and product consistency. Combined with the wide-lane (WL) ambiguities, the ionospheric-free (IF) ambiguity estimates generated by the traditional clock estimation method are fed to an independent ambiguity fixing process to estimate the WL and narrow-lane (NL) uncalibrated phase delays (UPDs) and fix the WL/NL undifferenced ambiguities at each epoch. The fixed IF ambiguities are recovered from these WL/NL UPDs and integer ambiguities and then used to constrain the float-ambiguity clock solution. The proposed strategy is tested on 30 days of observations of 85 globally distributed reference stations of the international GNSS service (IGS) and multi-GNSS experiment (MGEX) networks. In the experiment, 99.96% of the post-fit residuals of WL ambiguities and 99.31% of the post-fit residuals of NL ambiguities fall in the range of (− 0.3, 0.3), with standard deviations (STD) of 0.045 and 0.074 cycles, respectively, which demonstrates the high precision and consistency of UPDs and fixed ambiguities. With the constraint of fixed ambiguities, the traditional float-ambiguity clock solution is further refined, resulting in ambiguity-fixed clock solution. Comparison with the IGS 30 s final clock products shows that ambiguity-fixing brings as much as 50–87% precision improvement to the float-ambiguity clock solution, and with an average improvement over 30 days of 24–50% for each satellite. When used in the float-ambiguity kinematic PPP test, the ambiguity-fixed clock brings at least 5% improvement to the north component and at least 10% improvement to the east and vertical components.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
Introduction
The development of global navigation satellite systems (GNSS) and the improvement of precise orbit and clock products promote real-time precise applications of GNSS, such as real-time precise point positioning (PPP) (Elsobeiey and Al-Harbi 2016), real-time meteorology and ionospheric modeling (Lee et al. 2013; Abdelazeem et al. 2016), and tsunami and earthquake early warning (Li et al. 2013; Hoechner et al. 2013). To support these applications, real-time precise orbit and clock products for navigation satellites are essential. Unlike precise orbit that can be determined based on observations in the recent past and predicted to real-time with high precision, the precise clock should be estimated and updated in real-time (Kouba and Héroux 2001). Actually, the real-time precise clocks of navigation satellites are usually estimated from real-time observations from reference stations of a ground network (Zhang et al. 2011; Ge et al. 2012a), and need to be broadcast along with predicted satellite orbits to the real-time users via communication satellites or Internet (El-Mowafy et al. 2017).
For real-time clock estimation, it is usual to process the ionospheric-free (IF) combinations of dual-frequency code and phase observations in a Kalman filter (Hauschild and Montenbruck 2008, 2009; Laurichesse et al. 2013) or sequential least squares (Fu et al. 2018). Real-time clock estimation methods fall into three classes according to the observation models they adopt, i.e., the undifferenced (UD) method, epoch-differenced (ED) method, and mixed-differenced (MD) method. The ED method eliminates all ambiguity parameters and preserves only the differential satellite clock, receiver clock, and tropospheric delay by differencing observations between consecutive epochs. Because of fewer unknowns, the ED method is characterized by simplicity and high-computation efficiency, which has been used in the early days (Mervart et al. 2008; Zhang et al. 2011). The UD method estimates real-time clock together with ambiguity and tropospheric delay based on the UD IF code and phase observations, which is more rigorous and results into more precise clock solutions. With the advent of multi-GNSS, the UD method is not efficient enough to estimate multi-GNSS clocks in real-time. As a tradeoff, the MD method, which employs both UD code observations and ED phase observations, is developed to balance computation efficiency and solution precision (Ge et al. 2012a; Zhang et al. 2015). Alternatively, a parallel algorithm that runs the UD or ED methods with different updating rate in two independent processes has been studied in recent years for high-computation efficiency (Zhang et al. 2011; Dai et al. 2018).
The aforementioned methods have been applied successfully by many international GNSS service (IGS) analysis centers (ACs) and organizations (Mervart et al. 2008; Hauschild and Montenbruck 2009), which have contributed to the generation of real-time clock products. These methods, however, have a common defect that the phase ambiguity parameters are estimated as float numbers or eliminated by epoch differencing, without being fixed to integer numbers. It has been demonstrated that ambiguity fixing will bring significant improvement to parameter estimation in GNSS data processing (Dong and Bock 1989; Ge et al. 2005). Thus, there is room for precision improvements in current real-time clock products. In fact, of all the IGS ACs, the Centre National d’Etudes Spatiales (CNES) of France is providing a much more precise clock product by fixing phase ambiguity (Laurichesse and Mercier 2007; Laurichesse et al. 2008, 2009). Figure 1 presents the standard deviations (STD) with respect to the IGS 30 s final products for five IGS real-time clock products of the global positioning system (GPS) on the day of year (DOY) 182, 2017 (https://igs.bkg.bund.de/ntrip/orbits). As shown in the figure, the clock precision varies not only between different products, but also between satellites for the same product. Overall, the real-time clock products of the IGS ACs will achieve a normal precision of around 0.15 ns without fixing phase ambiguities. With ambiguity parameters fixed to integer numbers, the CNES real-time clock product exhibits extremely high precision which is better than 0.05 ns. Obviously, ambiguity-fixing in real-time clock estimation significantly improves the clock precision and real-time service performance.
The ambiguity of a GNSS phase observation consists of an integer number of cycles and a fractional bias due to uncalibrated phase delays (UPDs) in satellite and receiver. Consequently, the ambiguity parameters cannot be fixed directly and are usually estimated as float numbers. In the early stages of GNSS precise positioning, the float ambiguities were differenced between-satellite and between-receiver to eliminate the receiver and satellite UPDs, resulting in the fixable double-differenced (DD) ambiguities. The DD ambiguity-fixing method has been studied extensively and widely (Blewitt 1989; Teunissen 1995; Ge et al. 2006). However, the DD ambiguity-fixing method is not a good choice in real-time clock estimation because this method has to loop over all the available undifferenced ambiguities to form the set of independent DD ambiguities and search the most-easy-to-fix ones.
Gabor and Nerem (1999, 2002) have demonstrated that the satellite wide-lane (WL) UPDs are stable enough to be estimated from a ground reference network with high precision and reliability. The stability of satellite narrow-lane (NL) UPDs has been further demonstrated by Laurichesse and Mercier (2007) and Ge et al. (2008). If a correction for the UPD is applied, the undifferenced or between-satellite single-differenced ambiguities of an independent receiver can be fixed to integers. Several methods or variants have been proposed and formulated to estimate UPDs and support the single-receiver ambiguity-fixing, which differ in how the satellite UPDs are estimated by network processing and corrected for in PPP. Geng et al. (2010) and Shi and Gao (2013) compared the methods and demonstrated their equivalence. Teunissen and Khodabandeh (2014) have also compared these methods in detail, proving that all the methods are equivalent and transformable between each other. Furthermore, their research has shown that these methods are equivalent to the traditional DD ambiguity-fixing method in the frame of S-system theory.
The single-receiver ambiguity-fixing strategies not only free the end-users from selecting reference stations by correcting the ambiguities for UPDs, but can also simplify ambiguity-fixing in network data processing by estimating the common and stable UPDs. To decompose the satellite and receiver UPDs, Laurichesse and Mercier (2007) proposed the integer recovery clock (IRC) model and Collins et al. (2008) developed the similar decoupled clock (DC) model, in which the undifferenced ambiguities are fixed to integers with the NL UPDs being assimilated into the respective satellite and receiver clock offsets. The newly defined satellite clock, which is known as phase clock, exhibits much higher precision because the ambiguities have been fixed. However, the standard IGS clock product has to be provided alternatively to support the usage of code observations. Unlike the IRC/DC models, the UPD model estimates UPDs independently from the ambiguity estimates without modifications to the current data processing strategy and clock definition. Thus, the UPD model is compatible with the classical clock estimation method and suitable for ambiguity-fixing in real-time clock estimation. To improve the standard real-time clock product, we extend the traditional real-time clock estimation method by employing the UPD model to estimate satellite and receiver UPDs and fix the undifferenced ambiguities in real-time.
We start with a review of real-time clock estimation, UPD estimation and ambiguity-fixing. Next, the necessary mathematical basics for real-time clock estimation, UPD estimation and ambiguity fixing, and generation of ambiguity-fixed clock solution are introduced. Based on this introduction, the actual data processing flow of the proposed method is demonstrated. We then test and evaluate the proposed algorithm in clock estimation and kinematic PPP based on real data. The resulting UPD estimates, clock solutions and PPP solutions are analyzed to demonstrate the performance of the proposed method. Finally, a summary and conclusions are presented.
Method
The mathematical basics for real-time clock estimation, UPD estimation and ambiguity fixing, and generation of the ambiguity-fixed clock is presented in detail in this section. Then, the actual epoch processing flow of the proposed method is summarized and introduced.
Real-time precise clock estimation
The real-time satellite clock offsets are usually estimated from the IF combinations of dual-frequency phase and code observations. Thus, the observation equations used in clock estimation can be expressed as:
where \(r\) and \(s\) are the index of receiver and satellite, respectively, \(L_{{{\text{r,IF}}}}^{{\text{s}}}\) and \(P_{{{\text{r,IF}}}}^{{\text{s}}}\) represent the ionospheric-free phase and code combinations in meters, \({\varepsilon _{{\text{L,IF}}}}\) and \({\varepsilon _{{\text{P,IF}}}}\) are the corresponding measurement noise, \(\rho _{{\text{r}}}^{{\text{s}}}\) is the geometric distance from receiver \(r\) to satellite \(s\), which can be computed from the high precision coordinates of reference station and predicted satellite orbit, \({T_{\text{r}}}\) is the signal path delay due to the troposphere, \(c\) is the speed of light in vacuum, \({\lambda _n}\) and \({f_n}\) represent the wavelength and frequency of the IF phase combination, \(\delta {\tilde {t}_{\text{r}}}\) and \(\delta {\tilde {t}^{\text{s}}}\) denote the true receiver and satellite clock offsets, \({d_{{\text{r,IF}}}}\) and \(d_{{{\text{,IF}}}}^{{\text{s}}}\) are the code hardware delay of receiver and satellite respectively, \({b_{{\text{r,IF}}}}\) and \(b_{{{\text{,IF}}}}^{{\text{s}}}\) are the phase hardware delay of receiver and satellite, \(N_{{{\text{r,IF}}}}^{{\text{s}}}\) is the ionospheric-free phase ambiguity, \(a_{{{\text{r,IF}}}}^{{\text{s}}}\) is the estimated ionospheric-free phase ambiguity in clock estimation. To eliminate the rank defects, it is usual to combine code hardware delays of satellite and receiver with the corresponding clock offset parameters and phase hardware delays with phase ambiguities. \(\delta {t_{\text{r}}}\), \(\delta {t^{\text{s}}}\) and \(a_{{{\text{r,IF}}}}^{{\text{s}}}\) represent the corresponding unknown parameters that absorb hardware delays in the clock estimation filter. Thus, the estimated clock offsets depend on the combined code observations. Different code combinations lead to different clock estimates. In fact, the IGS clock products are by convention relative to the ionospheric-free combination of the P1 and P2 codes.
For a network consisting of several reference stations, there will be large amounts of observations at each epoch \(k\) which can be expressed as:
where \({{\mathbf{z}}_k}\) is the observation vector including all IF phase and code observations at epoch \(k\), \({{\mathbf{v}}_k}\) is the corresponding measurement noise vector, \({{\mathbf{x}}_k}\) is the unknown parameter vector including satellite and receiver clock offsets, tropospheric delays and the IF ambiguities, and \({{\mathbf{A}}_k}\) is the design matrix. Adding these observations into the filter as a measurement update will result in the following estimates of unknowns:
in which \({\mathbf{\hat {a}}}\) is the vector of estimated IF ambiguities and \({\mathbf{\hat {x}}}\) is the estimates of the other unknowns, and \({{\mathbf{Q}}_{{\mathbf{xx}}}}\), \({{\mathbf{Q}}_{{\mathbf{aa}}}}\) and \({{\mathbf{Q}}_{{\mathbf{xa}}}}\) are the variance and covariance matrices corresponding to the estimated vectors.
UPD estimation and ambiguity fixing
The IF ambiguity is real-valued because of the real-valued combination coefficients, and are usually expressed as combination of WL and NL ambiguities:
where \({f_i}\) \(\left( {i=1,2} \right)\) denotes the signal frequency and \(a_{{r,w}}^{s}\) and \(a_{{{\text{r,n}}}}^{{\text{w}}}\) are the corresponding WL and NL ambiguities.
The WL and NL ambiguities cannot be estimated simultaneously in clock estimation due to the rank defects. It is usual to compute the WL ambiguity first by averaging the Hatch-Melbourne-Wübbena (HMW) combinations over several epochs (Hatch 1983; Melbourne 1985; Wübbena 1985):
in which \(\langle\)\(\rangle\) denotes the average over epochs, \({L_i}\) and \({P_i}\) \(\left( {i=1,2} \right)\) are the original phase and code observations on each carrier, \({\lambda _{\text{w}}}\) denotes the wavelength of the WL combination, \({\varepsilon _{a,w}}\) is the WL noise.
Assuming the WL ambiguity is successfully fixed to the correct integer \(N_{{{\text{r,w}}}}^{{\text{s}}}\), the NL ambiguity can be derived from (4) as:
where \(\hat {a}_{{{\text{r,IF}}}}^{{\text{s}}}\) is the output of clock estimation, \({\varepsilon _{{\text{a,n}}}}\) is the NL estimate noise.
Obviously, both the WL and NL ambiguities in (5) and (6) are biased by the satellite and receiver UPDs, which are real-valued and unfixable in nature. To perform ambiguity fixing, the UPDs should be removed from these ambiguity estimates. Considering that both the WL and NL ambiguity estimates are fixed in the same procedure and have similar forms, we ignore the WL and NL specifiers in the following discussion if not necessary. Given that the estimated ambiguity \(\hat {a}_{{\text{r}}}^{{\text{s}}}\) is precise enough and the a priori UPD \({b_{{\text{0,r}}}}\) and \(b_{{\text{0}}}^{{\text{s}}}\) are available and rather precise, we can determine the corresponding integer ambiguity \(\hat {N}_{{\text{r}}}^{{\text{s}}}\) and the pre-fit ambiguity residual \(\hat {\varphi }_{{\text{r}}}^{{\text{s}}}\) as:
where \({\text{int}}()\) rounds a float number to the nearest integer number. The fixing decision is made according to the fixation probability \({P_0}\), which is calculated with the following formula (Dong and Bock 1989):
with
where \(a\) is the ambiguity estimate with UPDs corrected and \(\sigma\) its STD, and \(n\) the nearest integer.
For a given confidence level \(\alpha\), e.g., 0.1% as usual, the ambiguity can be fixed to the nearest integer if \({P_0}>1 - \alpha\), otherwise not.
Assuming there are \(r\) stations and \(s\) available satellites and each station observes \({s_i}\begin{array}{*{20}{c}} {} \end{array}({s_i} \leq s,\begin{array}{*{20}{c}} {} \end{array}i=1,2, \ldots ,r)\) satellites, we can get \({n_a}=\sum\nolimits_{{i=1}}^{r} {{s_i}}\) available WL/NL ambiguity estimates at each epoch. All the WL/NL ambiguity estimates can be expressed as (Ge et al. 2012b; Li and Zhang 2012):
in which \({{\mathbf{\hat {a}}}_{{s_i} \times 1}}\) and \({{\mathbf{N}}_{{s_i} \times 1}}\) are vectors of the estimated float ambiguities and integer ambiguities of station \(i\), \({{\mathbf{v}}_{{s_i} \times 1}}\) is the corresponding error vector, \({{\mathbf{b}}_r}\) and \({{\mathbf{b}}^s}\) are the respective unknown vectors of receiver and satellite UPDs, \({{\mathbf{I}}_{{s_i} \times {s_i}}}\) is the \({s_i} \times {s_i}\) unit matrix corresponding to \({{\mathbf{N}}_{{s_i} \times 1}}\), \({{\mathbf{R}}_{{s_i} \times r}}\) denotes the design matrix corresponding to \({{\mathbf{b}}_r}\), in which the elements of the \(i\)-th column are 1, \({{\mathbf{S}}_{{s_i} \times s}}\) is the design matrix corresponding to \({{\mathbf{b}}^s}\), in which the elements of each row are 1 if the corresponding satellite is observed, otherwise 0.
To eliminate the rank defects of (10), the integer parts \({{\mathbf{\hat {N}}}_{{s_i} \times 1}}\) of the real-valued ambiguity estimates are determined and subtracted in advance, resulting in the ambiguity residuals:
where \({{\mathbf{\hat {\varphi }}}_{{s_i} \times 1}}\) can be treated as the pseudo-observation vector of satellite and receiver UPDs. The rank defect of (11) is 1, which can be eliminated by selecting a reference satellite and fixing its UPD as an arbitrary constant. Then, the UPD estimates \({{\mathbf{\hat {b}}}_r}\) and \({{\mathbf{\hat {b}}}^s}\) at the current epoch can be solved from (11) using the least-square adjustment. It is important to note that, the ambiguity estimates that have low elevation angle, a short observation period, or cannot be fixed according to the fixation decision, are discarded and excluded from (11).
Generation of the ambiguity-fixed clock solution
After fixing all fixable ambiguities, the integer ambiguities and the corresponding UPD estimates can be used to impose constraints on the float-ambiguity clock solution to generate the ambiguity-fixed clock solution. Substituting the fixed WL and NL ambiguities and the WL and NL UPD estimates into (4), the fixed IF ambiguities can be expressed as:
and the ambiguity-fixed clock solution can be read as (Dong and Bock 1989; Geng et al. 2012):
where \({\mathbf{\tilde {x}}}\) is the refined estimate vector after ambiguity fixing.
Ambiguity-fixing algorithm in real-time clock estimation
Based on the above mathematical formulation, we summarize the epoch processing flow of real-time clock estimation with ambiguity-fixing in Fig. 2. As shown in the figure, the left process performs real-time clock estimation and the right one is in charge of ambiguity fixing. At the beginning of epoch \(k\), the real-time observations from the reference stations are first screened in a preprocessing module that checks data completeness, finds gross errors in code observations and detects and marks cycle slips in phase observations. Next is the orbit update module that checks if the current orbit product is expired and updates the latest one. Then, the clean observations and orbits are fed into the real-time clock estimation module which is an implementation of the square root information filter (SRIF) in our software (Bierman 1982). This module estimates the real-time clock offsets and other parameters without fixing ambiguities, generating the float-ambiguity clock solutions.
To recover the integer nature of the phase ambiguity, another independent process is developed based on the aforementioned strategy to successively fix WL and NL ambiguities. In this process, the clean observations are first fed into a WL ambiguity estimation module in which the float WL ambiguities are computed and averaged over epochs. After a period, the WL ambiguity estimates are precise enough to be fixed and used in UPD estimation. According to (7), the fixable WL ambiguity estimates are calibrated with the a priori WL UPDs and rounded off to the nearest integers, from which the ambiguity residuals are decomposed. The ambiguity residuals are pseudo-observations of the satellite and receiver UPD unknowns, which are far more than the UPD unknowns. Then they are adjusted in a WL UPD adjustment module to derive the adjusted satellite and receiver WL UPD estimates. Based on the fixed WL ambiguities, the ambiguity decomposition module transforms the IF ambiguity estimates fed from clock estimation process to the NL ambiguities. Similarly, the float NL ambiguity estimates are corrected with the a priori NL UPDs and fixed to integers in the NL ambiguity fixing module and the ambiguity residuals are adjusted in the NL UPD adjustment module to resolve the NL UPD estimates. If the number of fixed ambiguities is greater than 0, the fixed IF ambiguities are recovered from the WL/NL integer ambiguities and UPDs and then used to impose constraints on the float-ambiguity clock solution, resulting in the ambiguity-fixed clock solution as output. Otherwise, the program only outputs the float-ambiguity clock solution. After outputting the current clock solution, the program enters into the next epoch processing cycle.
In the ambiguity fixing process, the float ambiguity estimates and a priori UPDs should be precise enough so that the corrected ambiguities are much closer to integers with low errors, which guarantees that the float ambiguities are fixed to the correct integers with high probability (Dong and Bock 1989). Since the SRIF needs a few hours to converge to a stable state, the ambiguity-fixing process will only start after attaining a certain convergence level. In our processing, the ambiguity-fixing function is turned on 12 h after starting the program. When a satellite rises above the cutoff elevation angle and is re-observed by a station or a cycle slip occurs, the corresponding ambiguity parameter will be reset and excluded from ambiguity-fixing until for the next 600 s. Considering the stability in short time, the UPD estimates from the previous epoch are used as the a priori UPDs to correct the ambiguity estimates at the current epoch. For the special situation at the first epoch of ambiguity fixing, the a priori UPDs should be derived from the WL/NL ambiguities. We first fix the UPD of a reference satellite to an arbitrary value between − 0.5 and 0.5, which is subtracted from the ambiguities associated with this satellite. The corrected ambiguities are rounded to the closest integers and the fractional remainders are adopted as the a priori UPDs of receivers associated with these corrected ambiguities. Similarly, the unfixed ambiguities associated with these receivers are corrected with the a priori receiver UPDs and rounded to integers, resulting in the integer ambiguities and a priori satellite UPDs. This procedure will repeat until all the satellite and receiver a priori UPDs are determined. When there are multiple receivers (or satellites) UPD-corrected ambiguities associated with a satellite (or receiver), we will get more than one a priori UPD for the satellite (or receiver) which can be averaged to generate more precise a priori UPD. Finally, these a priori UPDs are subtracted from the rest of unfixed ambiguities to get the integer ambiguities and UPD residuals for adjustment.
Algorithm test and results analysis
The proposed algorithm has been implemented based on the Position And Navigation Data Analyst (PANDA) software for data processing in our experiments (Jing-nan and Mao-rong 2003). First, we generated the ambiguity-fixed GPS clock solutions based on globally distributed reference stations in a pseudo-real-time mode. For comparison, the float-ambiguity clock solutions were generated using the same program with the ambiguity-fixing function turned off. Both the ambiguity-fixed and float-ambiguity clock solutions are compared with the IGS 30 s final products to exhibit their precision. Then, the two clock solutions are used in a float-ambiguity kinematic PPP test to further demonstrate their real-time positioning performance.
Data collection and experiment configurations
The clock estimation experiment is based on 85 global reference stations that are primarily selected from the IGS network. For good distribution, a few stations of the multi-GNSS experiment (MGEX) network are selected as a supplement though we only use the GPS data. Another 12 independent stations are selected to perform PPP verification. All the selected stations used in clock estimation and PPP test are illustrated in Fig. 3.
The experiment period is from DOY 180–209, 2017 and the observation interval is 30 s. All data is processed epoch by epoch to simulate the real-time situation in a post-processing mode. To represent the true real-time situation, the predicted part of IGS ultra-rapid orbit is employed to calculate satellite positions, which is updated every 6 h with the delay of 3 h. Table 1 lists the general and specific configurations in our experiments. The common configurations are presented together for brevity and the specific configurations for clock estimation, ambiguity fixing and PPP are listed separately.
UPD estimation and ambiguity fixing
Ambiguity fixing and constraining in clock estimation directly depends on the precision of UPD estimates. To demonstrate the performance of UPD estimation, we investigate the post-fit ambiguity residual, which is defined as the float ambiguity estimate minus the integer ambiguity and receiver and satellite UPD estimates. Thus, the post-fit ambiguity \(\Delta _{{\text{r}}}^{{\text{s}}}\) can be expressed as:
in which \(\hat {a}_{{\text{r}}}^{{\text{s}}}\) is the float ambiguity estimate, \(\hat {N}_{{\text{r}}}^{{\text{s}}}\) is the fixed integer ambiguity and \({\hat {b}_{\text{r}}}\) and \({\hat {b}^{\text{s}}}\) denote the receiver and satellite UPD estimates. Obviously, the absolute values of post-fit ambiguity residuals will be less than 0.5 cycles. High precision ambiguity and UPD estimates will result in the small absolute values of the post-fit ambiguity residuals. Thus, the post-fit ambiguity residuals will reflect the consistency and precision of UPD and ambiguity estimates.
During the whole experiment, the post-fit ambiguity residuals are computed at each epoch after the float ambiguities are fixed and UPDs are estimated successfully; their statistical distribution is presented in Fig. 4 showing the normalized frequency and cumulative frequency of the post-fit WL and NL ambiguity residuals, respectively. As shown in the figure, 99.96% of the WL ambiguity residuals fall in the range of (− 0.3, 0.3), with the standard deviation (STD) of 0.045 cycles, and 99.31% NL ambiguity residuals are in the range of (− 0.3, 0.3), with the STD of 0.074 cycles. Both the WL and NL ambiguity residuals are rather small, which illustrates the high precision and consistency of UPD and ambiguity estimates.
Clock solutions comparison
The ambiguity-fixed and float-ambiguity clock solutions are now compared with the IGS 30 s final clock product to derive the clock differences for all available satellites. To remove the clock reference difference, the average clock difference of all available satellites is subtracted from each satellite clock difference at each epoch (Yao et al. 2017). Then, we compute the daily STD from the unbiased clock difference for each satellite. Figure 5 shows the clock STD of all available satellites for each solution on DOY 182, 2017. As shown in the figure, the ambiguity-fixed clock solution exhibits much higher precision than the float-ambiguity solution, with the STD less than 0.04 ns for most satellites. Specifically, the clock precision of the float-ambiguity solution varies dramatically, within the range of 0.03–0.14 ns, while that of the ambiguity-fixed solution is more stable, varying in the range of 0.02–0.08 ns. Ambiguity-fixing in real-time clock estimation brings significant improvement to the clock solution, especially for the satellites with rather low float-ambiguity precision.
For further illustration, Fig. 6 shows the clock differences of the ambiguity-fixed and float-ambiguity solutions with respect to the IGS final clock product for G03, G13, G21 and G30 satellites. As shown in this figure, the clock differences of the ambiguity-fixed solution are less variable over the full day, while that of the float-ambiguity solution exhibit noticeable variations and spikes at a few epochs.
Based on the 30 days of results, the contribution of ambiguity-fixing in real-time clock estimation is investigated. Figure 7 presents the mean and maximum daily precision improvement of the ambiguity-fixed solution over the float-ambiguity solution for each satellite. As shown in the fiugre, the maximum clock precision improvement brought by ambiguity-fixing is as much as 50–87%, with an average daily improvement over the 30 days of 24–50% for each satellite. Over all satellites, an average daily precision improvement of around 30% can be expected in the ambiguity-fixed clock solution.
PPP verification
To demonstrate the positioning performance of different clock solutions, the ambiguity-fixed and float-ambiguity clock solutions are tested on another 12 stations in a float-ambiguity kinematic PPP experiment. As listed in Table 1, most configurations are the same in the PPP test as in the clock estimation experiment, except that the satellite clocks are corrected using the clock solutions and the station coordinates are estimated in a float-ambiguity kinematic mode. The test period is from DOY 180-209, 2017 and the PPP software is restarted in the beginning of each day. The two PPP solutions of the test stations are compared to the station true coordinates, resulting in the coordinate differences in the north, east and vertical components for analysis.
Figure 8 demonstrates the coordinate differences of the two PPP solutions in the north, east and vertical components for the respective stations GRAC on 180, 2017 and PDEL on 187, 2017. As shown in this figure, compared to the PPP solutions using the float-ambiguity clocks, the PPP solutions using the ambiguity-fixed clocks exhibit shorter convergence time and more stable and precise coordinate series in all components.
Based on the two kinds of daily PPP solutions, we assessed the average improvement and RMS of coordinate components of each test station. As shown in Fig. 9, all the PPP solutions using the ambiguity-fixed clocks exhibit smaller average RMS than the solutions using the float-ambiguity clocks in all components. The average improvements of the test stations show that the ambiguity-fixed clocks can bring 5–30%, 10–50% and 10–30% improvement to the respective north, east and vertical coordinate components, with respect to the float-ambiguity clocks.
Summary and conclusions
GNSS real-time precise point positioning is heavily dependent on the real-time clock products that should be estimated from real-time observations of reference stations of a ground network. The recent real-time clock estimation strategy that is widely used by IGS and most of its ACs estimates the phase ambiguities as float parameters, ignoring their integer nature. For further improvement in the precision of real-time clock products, an undifferenced ambiguity fixing strategy is proposed for the real-time clock estimation method, which only processes the ambiguity estimates without changing the existing data processing strategy and product consistency. A real-time ambiguity fixing process independent of the clock estimation process is implemented. The IF ambiguity estimates generated by the clock estimation module, along with the WL ambiguity estimates, are fed to this ambiguity fixing process to estimate the WL/NL UPDs and fix the WL/NL undifferenced ambiguities at each epoch. Fixed IF ambiguities are then computed from these WL/NL UPDs and integer ambiguities and used as constraints to refine the float-ambiguity clock solution.
The proposed ambiguity fixing and clock estimation strategies are tested in a pseudo-real-time mode based on the 30 s GPS observations that are collected from 85 globally distributed reference stations of the IGS and MGEX networks during DOY 180-209, 2017. For comparison, the float-ambiguity clock solution is generated in a pseudo-real-time mode using the same software with the ambiguity-fixing function turned off. Analysis of the fixed ambiguities shows that 99.96% of the post-fit residuals of WL ambiguities and 99.31% of the post-fit residuals of NL ambiguities fall in the range of (− 0.3, 0.3), with the STD of 0.045 and 0.074 cycles, respectively. The rather small and concentrated post-fit ambiguity residuals demonstrate the high precision and consistency of UPDs and fixed ambiguities. Using these fixed ambiguities and associated UPDs as constraints, the float-ambiguity clock solution is further refined, resulting in the ambiguity-fixed clock solution. Comparison to the IGS 30 s final clock product shows that ambiguity-fixing brings up to 50–87% precision improvement over the float-ambiguity clock solution for different satellites, and the average daily improvement over the 30 days is 24–50% for each satellite. When used in the float-ambiguity kinematic PPP test, the ambiguity-fixed clock solution brings at least 5% improvement to the north component and at least 10% improvement to the east and vertical components.
References
Abdelazeem M, Çelik RN, El-Rabbany A (2016) An Enhanced real-time regional ionospheric model using IGS real-time service (IGS-RTS) products. J Navig 69(3):521–530. https://doi.org/10.1017/S0373463315000740
Bierman GJ (1982) Square-root information filtering and smoothing for precision orbit determination. In: Sorensen DC, Wets RJ-B (eds) Algorithms and theory in filtering and control. Springer, Berlin, Heidelberg, pp 61–75
Blewitt G (1989) Carrier phase ambiguity resolution for the global positioning system applied to geodetic baselines up to 2000 km. J Geophys Res Solid Earth 94(B8):10187–10203. https://doi.org/10.1029/JB094iB08p10187
Boehm J, Werl B, Schuh H (2006) Troposphere mapping functions for GPS and very long baseline interferometry from European Centre for Medium-Range Weather Forecasts operational analysis data. J Geophys Res Solid Earth 111(B02406):1–9. https://doi.org/10.1029/2005JB003629
Böhm J, Möller G, Schindelegger M, Pain G, Weber R (2014) Development of an improved empirical model for slant delays in the troposphere (GPT2w). GPS Solut 19(3):433–441. https://doi.org/10.1007/s10291-014-0403-7
Collins P, Lahaye F, Heroux P, Bisnath S (2008) Precise point positioning with ambiguity resolution using the decoupled clock model. In: Proc. ION GNSS 2008, Institute of Navigation, Savannah, Georgia, USA, pp 1315–1322
Dai Z, Dai X, Zhao Q, Bao Z, Li C (2018) Multi-GNSS real-time clock estimation using the dual-thread parallel method. Adv Space Res 62(9):2518–2528. https://doi.org/10.1016/j.asr.2018.07.011
Dong D-N, Bock Y (1989) Global positioning system network analysis with phase ambiguity resolution applied to crustal deformation studies in California. J Geophys Res Solid Earth 94(B4):3949–3966. https://doi.org/10.1029/JB094iB04p03949
El-Mowafy A, Deo M, Kubo N (2017) Maintaining real-time precise point positioning during outages of orbit and clock corrections. GPS Solut 21(3):937–947. https://doi.org/10.1007/s10291-016-0583-4
Elsobeiey M, Al-Harbi S (2016) Performance of real-time Precise Point Positioning using IGS real-time service. GPS Solut 20(3):565–571. https://doi.org/10.1007/s10291-015-0467-z
Fu W, Yang Y, Zhang Q, Huang G (2018) Real-time estimation of BDS/GPS high-rate satellite clock offsets using sequential least squares. Adv Space Res 62(2):477–487. https://doi.org/10.1016/j.asr.2018.04.025
Gabor MJ, Nerem RS (1999) GPS carrier phase ambiguity resolution using satellite-satellite single differences. In: Proc. ION GPS 1999, Institute of Navigation, Nashville, Tennessee, USA, pp 1569–1578
Gabor MJ, Nerem RS (2002) Satellite–satellite single-difference phase bias calibration as applied to ambiguity resolution. Navigation 49(9):223–242. https://doi.org/10.1002/j.2161-4296.2002.tb00270.x
Ge M, Gendt G, Dick G, Zhang FP (2005) Improving carrier-phase ambiguity resolution in global GPS network solutions. J Geodesy 79(1–3):103–110. https://doi.org/10.1007/s00190-005-0447-0
Ge M, Gendt G, Dick G, Zhang FP, Rothacher M (2006) A New Data Processing Strategy for Huge GNSS Global Networks. J Geodesy 80(4):199–203. https://doi.org/10.1007/s00190-006-0044-x
Ge M, Gendt G, Rothacher M, Shi C, Liu J (2008) Resolution of GPS carrier-phase ambiguities in precise point positioning (PPP) with daily observations. J Geodesy 82(7):389–399. https://doi.org/10.1007/s00190-007-0187-4
Ge M, Chen J, Douša J, Gendt G, Wickert J (2012a) A computationally efficient approach for estimating high-rate satellite clock corrections in realtime. GPS Solut 16(1):9–17. https://doi.org/10.1007/s10291-011-0206-z
Ge M, Douša J, Li X, Ramatschi M, Nischan T, Wickert J (2012b) A novel real-time precise positioning service system: global precise point positioning with regional augmentation. J Glob Position Syst 11(1):2–10. https://doi.org/10.5081/jgps.11.1.2
Geng J, Meng X, Dodson AH, Teferle FN (2010) Integer ambiguity resolution in precise point positioning: method comparison. J Geodesy 84(9):569–581. https://doi.org/10.1007/s00190-010-0399-x
Geng J, Shi C, Ge M, Dodson AH, Lou Y, Zhao Q, Liu J (2012) Improving the estimation of fractional-cycle biases for ambiguity resolution in precise point positioning. J Geodesy 86(8):579–589. https://doi.org/10.1007/s00190-011-0537-0
Hatch R (1983) The synergism of GPS code and carrier measurements. In: International geodetic symposium on satellite doppler positioning, Las Cruces, New Mexico, USA, pp 1213–1231
Hauschild A, Montenbruck O (2008) Real-time clock estimation for precise orbit determination of LEO-satellites. In: Proc. ION GNSS 2008, Institute of Navigation, Savannah, Georgia, USA, pp 581–589
Hauschild A, Montenbruck O (2009) Kalman-filter-based GPS clock estimation for near real-time positioning. GPS Solut 13(3):173–182. https://doi.org/10.1007/s10291-008-0110-3
Hoechner A, Ge M, Babeyko AY, Sobolev SV (2013) Instant tsunami early warning based on real-time GPS—Tohoku 2011 case study. Nat Hazards Earth Syst Sci 13(5):1285–1292. https://doi.org/10.5194/nhess-13-1285-2013
Jing-nan L, Mao-rong G (2003) PANDA software and its preliminary result of positioning and orbit determination. Wuhan Univ J Nat Sci 8(2):603–609. https://doi.org/10.1007/BF02899825
Kouba J, Héroux P (2001) Precise point positioning using IGS orbit and clock products. GPS Solut 5(2):12–28. https://doi.org/10.1007/PL00012883
Laurichesse D, Mercier F (2007) Integer ambiguity resolution on undifferenced GPS phase measurements and its application to PPP. In: Proc. ION GNSS 2007, institute of navigation, Fort Worth, Texas, USA, pp 839–848
Laurichesse D, Mercier F, Berthias JP, Bijac J (2008) Real time zero-difference ambiguities fixing and absolute RTK. Proc. ION NTM 2008, Institute of Navigation, San Diego, California, USA, pp 747–755
Laurichesse D, Mercier F, Berthias J-P, Broca P, Cerri L (2009) Integer ambiguity resolution on undifferenced GPS phase measurements and its application to PPP and satellite precise orbit determination. Navig J Inst Navig 56(2):135–149
Laurichesse D, Cerri L, Berthias JP, Mercier F (2013) Real time precise gps constellation and clocks estimation by means of a Kalman filter. In: Proc. ION GNSS + 2013, institute of navigation, Nashville, Tennessee, pp 1155–1163
Lee S-W, Kouba J, Schutz B, Kim DH, Lee YJ (2013) Monitoring precipitable water vapor in real-time using global navigation satellite systems. J Geodesy 87(10–12):923–934. https://doi.org/10.1007/s00190-013-0655-y
Li X, Zhang X (2012) Improving the estimation of uncalibrated fractional phase offsets for PPP ambiguity resolution. J Navig 65(3):513–529. https://doi.org/10.1017/S0373463312000112
Li X, Ge M, Zhang X, Zhang Y, Guo B, Wang R, Klotz J, Wickert J (2013) Real-time high-rate co-seismic displacement from ambiguity-fixed precise point positioning: application to earthquake early warning. Geophys Res Lett 40(2):295–300. https://doi.org/10.1002/grl.50138
Melbourne W (1985) The case for ranging in GPS based geodetic systems. In: Proceedings of the 1st international symposium on precise positioning with the global positioning system, Rockville, Maryland, USA, pp 73–386
Mervart L, Lukes Z, Rocken C, Iwabuchi T (2008) Precise point positioning with ambiguity resolution in real-time. In: Proc. ION GNSS 2008, Institute of Navigation, Savannah, Georgia, USA, pp 397–405
Saastamoinen J (1972) Contributions to the theory of atmospheric refraction. Bull Geodesy 105(1):279–298. https://doi.org/10.1007/BF02521844
Shi J, Gao Y (2013) A comparison of three PPP integer ambiguity resolution methods. GPS Solut 18(4):519–528. https://doi.org/10.1007/s10291-013-0348-2
Teunissen PJG (1995) The least-squares ambiguity decorrelation adjustment: a method for fast GPS integer ambiguity estimation. J Geodesy 70(1–2):65–82. https://doi.org/10.1007/BF00863419
Teunissen PJG, Khodabandeh A (2014) Review and principles of PPP-RTK methods. J Geodesy 89(3):217–240. https://doi.org/10.1007/s00190-014-0771-3
Wu JT, Wu SC, Hajj GA, Bertiger WI, Lichten SM (1992) Effects of antenna orientation on GPS carrier phase. In: Proc. AAS/AIAA astrodynamics, Durango, Colorado, USA, pp 1647–1660
Wübbena G (1985) Software developments for geodetic positioning with GPS using TI-4100 code and carrier measurements. In: Proceedings 1st international symposium on precise positioning with the global positioning system. Rockville, Maryland, USA, pp 403–412
Yao Y, He Y, Yi W et al (2017) Method for evaluating real-time GNSS satellite clock offset products. GPS Solut 21(4):1417–1425. https://doi.org/10.1007/s10291-017-0619-4
Zhang X, Li X, Guo F (2011) Satellite clock estimation at 1 Hz for realtime kinematic PPP applications. GPS Solut 15(4):315–324. https://doi.org/10.1007/s10291-010-0191-7
Zhang W, Lou Y, Gu S, Shi C, Haase JS, Liu J (2015) Joint estimation of GPS/BDS real-time clocks and initial results. GPS Solut 20(4):665–676. https://doi.org/10.1007/s10291-015-0476-y
Acknowledgements
The experiment data is collected from the IGS and MGEX networks. The author would like to thank the editor and reviewers. This work was supported by the Excellent Scientist Foundation of Hube (Grant no. 2018CFA052), Guangzhou (China) Post-doctoral International Training Program (Grant no. 20173096), National Science Foundation for Post-doctoral Scientists of China (Grant no. 2018M632918).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Dai, Z., Dai, X., Zhao, Q. et al. Improving real-time clock estimation with undifferenced ambiguity fixing. GPS Solut 23, 44 (2019). https://doi.org/10.1007/s10291-019-0837-z
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10291-019-0837-z