Introduction

For over 30 years, the development of PPP has progressed slowly. The lengthy convergence time of PPP has posed an international challenge, impeding its adoption in the scientific, academic, and industrial communities and preventing its real-time and commercial use. To address the issue of shortening PPP convergence time effectively, international scholars have proposed several classic PPP models, including the Single-Difference (SD) model1,2, the Uncombined (UC) positioning model3, the University of Calgary model (UoFC)4, and the ionosphere-free combination model (IF)5,6,7,8. In recent years, with the development of BeiDou Navigation Satellite System (BDS) and Galileo, research on PPP using multi-frequency, multi-system, and multi-frequency multi-system combinations has become a hot topic.

BDS-3 was the first to launch onboard real-time PPP services internationally. Researchers such as Zhang et al. evaluated the static and dynamic positioning performance of PPP-B2b9. For BDS-3 (BDS-3 + GPS), the static positioning accuracy was 2.6 (2.1) cm, the dynamic positioning accuracy was 21.5 (15.2) cm horizontally and 33.4 (30.3) cm vertically, with a convergence time of 17.4 (16.2) minutes. Other scholars have reported similar performance results10,11,12,13. Multi-frequency combination models are advantageous for speeding up PPP convergence14. Duong V analyzed the UD model, showing that its convergence time could reach 15 min with positioning accuracy better than 10 cm15. Laurichesse D analyzed the positioning performance of three-frequency PPP, demonstrating centimeter-level accuracy16. Academician Yang Yuanxi, Basile F, Zhang Xiaohong, and others analyzed the convergence performance of three-frequency PPP. The experimental results indicate that the convergence time of three-frequency PPP can be shortened to 10 minutes17,18,19.

Multi-system combination models also play a significant role in accelerating PPP convergence20. The primary benefit of employing multi-system combination lies in the increased number of observed satellites and improved spatial geometry, resulting in enhanced PPP convergence time and positioning accuracy. Noteworthy researchers such as Geng Jianghui, Li Xingxing, and Duong V. have delved into the study of multi-system PPP models, demonstrating that, in comparison to single-system models, multi-system PPP models have the capability to expedite the resolution of integer ambiguities21,22. In another exploration, Zhang Baocheng, Li Xingxing, and their colleagues investigated the GCRE four-system PPP model and determined that the static convergence time for the four-system PPP model could be reduced to less than 10 min, with positioning accuracy better than 10 cm23. Furthermore, the multi-frequency multi-system combination model has also attracted great attention. The results show that the combination of multi-frequency and multi-system can further shorten the convergence time24. In conclusion, diverse combination models can significantly reduce PPP convergence time, albeit facing constraints such as errors in atmospheric delay models, time-varying effects, and gradual changes in GNSS satellite constellations.

In recent years, two new PPP mechanisms, Precise Point Positioning and Real-Time Kinematic (PPP–RTK) and Low Earth Orbit Satellite Navigation Enhanced GNSS (LE-GNSS), have gained significant attention. PPP–RTK aims to overcome the factors impeding rapid convergence in PPP, with a primary focus on effectively resolving errors in atmospheric delay models and their temporal variations25. Introduced by Germany’s Wübbena in 2005, this concept relies on ground-based CORS networks to accurately differentiate satellite orbits, satellite clock errors, and atmospheric delay errors. Users can leverage this model data to achieve instantaneous centimeter-level positioning, akin to Real-Time Kinematic (RTK)26,27,28. The “Heavenly RTK” proposed by Hexagon in the United States, essentially disseminates this data via satellites, rendering it a satellite-based PPP–RTK technology. LE-GNSS addresses the slow-changing GNSS satellite constellation structure. Low Earth Orbit (LEO) satellites operate at high speeds, and when combined with BDS-3, they can rapidly alter the geometric structure of GNSS navigation constellations. This approach can solve the ill-posed problem of multi-epoch combined PPP models in a short time frame. Researchers like Li Bofeng and Li Xingxing have conducted studies and analysis, suggesting preliminary conclusions that, with a sufficient number of deployed LEO satellites (300 or more), LE-GNSS can achieve PPP convergence times of less than 1 minute29,30.

Harnessing external aids, such as Heavenly RTK and LEO Satellite Navigation Enhancement, undeniably contributes to overcoming the international challenge of PPP slow convergence. This paper seeks to investigate whether PPP can achieve swift convergence autonomously, without relying on external assistance.

Principles and methods

CZS-PPP principle

The core principle entails employing itself as a reference, essentially considering the epochs before and after as the reference station and the mobile station. This involves a static baseline length of zero and a dynamic baseline length approaching zero, forming a zero-baseline self-differencing mode. Changes in position relative to the previous epoch are computed by analyzing the carrier phase variations between the current and preceding epochs. This involves subtracting the carrier phase from the previous epoch from the carrier phase of the current epoch. Subsequently, the self-differencing values for carrier phase at each frequency are calculated. The coordinates are then determined using a dual-frequency ionosphere-free combination model.

The basic procedure of our method is as follows: In the first step, Single-Point Positioning (SPP) is used to determine the receiver coordinates at the initial epoch. In the second step, taking the receiver coordinates at the initial epoch as a virtual station, epoch differencing is performed between the second epoch and the initial epoch. The solution provides the coordinate changes relative to the virtual station, so the receiver coordinates at the second epoch are obtained by adding the virtual station coordinates and the coordinate changes. In the third step, the virtual station is updated, taking the receiver coordinates at the second epoch as the new virtual station. Similarly, epoch differencing is performed between the third epoch and the second epoch to obtain new coordinate changes and the receiver coordinates at the third epoch, updating the virtual station. This process is iteratively applied to subsequent epochs until convergence to the true receiver coordinates is achieved. The carrier phase observation equation (converted to distance), as shown in the equation, is used.

$$L_{i} = \rho + c \cdot \delta t_{k} - c \cdot \delta t^{j} + G_{h} \cdot T_{h} + G_{w} \cdot T_{w} - I_{i} + N_{i} + \varepsilon_{{L_{i} }}$$
(1)

In the above equation, \(L_{i}\) represents the carrier phase observations (converted to distance), where the subscript \(i\) denotes the carrier frequency. \(\rho\) is the satellite-to-ground geometric distance, \(\delta t_{k}\) represents the receiver clock bias, \(\delta t^{j}\) represents the satellite clock bias, and c is the speed of light, all in units of seconds. \(G_{h}\) and \(G_{w}\) are the tropospheric zenith direction dry and wet mapping functions, respectively. \(T_{h}\) represents the zenith direction dry delay component, obtained from the Saastamoinen model31. \(T_{w}\) represents the zenith direction wet delay component and is treated as an estimated parameter alongside position parameters. \(I_{i}\) represents the ionospheric delay on \(L_{i}\). \(\varepsilon_{{L_{i} }}\) represents the observation noise for carrier phase, all in units of meters. \(N_{i}\) represents the integer ambiguity on \(L_{i}\).

The Eq. (1) is differenced between consecutive epochs to obtain the zero-baseline self-differencing equation (converted to distance) as follows:

$$\Delta L_{i} = L_{t} - L_{t - 1} = \Delta \rho + c \cdot \left( {\Delta \delta t_{k} - \Delta \delta t^{j} } \right) + G_{h} \cdot \Delta T_{h} + G_{w} \cdot \Delta T_{w} - \Delta I_{i} + \Delta \varepsilon_{{L_{i} }}$$
(2)

In the equation, \({\Delta }\) represents the differencing operator between consecutive epochs. The carrier phase zero-baseline self-differencing eliminates the integer ambiguity parameters. \({\Delta }\rho\) represents the change in satellite-to-receiver geometric distance between consecutive epochs, and \({\Delta }\rho\) is defined as follows:

$$\Delta \rho = \rho_{t} - \rho_{t - 1} = e_{t} \cdot \left( {R_{t}^{s} - R_{t}^{r} } \right) - e_{t - 1} \cdot \left( {R_{t - 1}^{s} - R_{t - 1}^{r} } \right)$$
(3)

In the equation, \(t\) and \(t - 1\) represent two consecutive epochs; \(e_{t} = \frac{{R_{t}^{s} - R_{t}^{r} }}{{\left| {R_{t}^{s} - R_{t}^{r} } \right|}}\) represents the unit direction vector from the receiver to the satellite; \(R_{t}^{s}\) represents the satellite coordinate vector, and \(R_{t}^{r}\) represents the receiver coordinate vector. Additionally, \(R_{t}^{r} = R_{t - 1}^{r} + \Delta R\), where \({ }\Delta R\) represents the change in receiver coordinates. Therefore, \({\Delta }\rho\) can be expressed as follows:

$$\Delta \rho = - e_{t} \cdot \Delta R + e_{t} \cdot \left( {R_{t}^{s} - R_{t - 1}^{r} } \right) - e_{t - 1} \cdot \left( {R_{t - 1}^{s} - R_{t - 1}^{r} } \right)$$
(4)

Substituting Eq. (4) into Eq. (2) yields:

$$\begin{aligned} \Delta L_{i} = & - e_{t} \cdot \Delta R + e_{t} \cdot \left( {R_{t}^{s} - R_{t - 1}^{r} } \right) - e_{t - 1} \cdot \left( {R_{t - 1}^{s} - R_{t - 1}^{r} } \right) + c \cdot \left( {\Delta \delta t_{k} - \Delta \delta t^{j} } \right) \\ & \; + G_{h} \cdot \Delta T_{h} + G_{w} \cdot \Delta T_{w} - \Delta I_{i} + \Delta \varepsilon_{{L_{i} }} \\ \end{aligned}$$
(5)

and calculate its error equation as:

$$v = \left[ { - e_{x} - e_{y} - e_{z} 1 G_{w} } \right] \cdot \left[ {\begin{array}{*{20}c} {\Delta x} \\ {\Delta y} \\ {\Delta z} \\ {c \cdot \Delta \delta t_{k} } \\ {\Delta T_{w} } \\ \end{array} } \right] - l$$
(6)

where \(l\) is:

$$e_{t} = \left( {e_{x} ,e_{y} ,e_{z} } \right) = \left( {\frac{{X^{J} - X_{K}^{0} }}{{\left| {R_{t}^{s} - R_{t}^{r} } \right|}},\frac{{Y^{J} - Y_{K}^{0} }}{{\left| {R_{t}^{s} - R_{t}^{r} } \right|}},\frac{{Z^{J} - Z_{K}^{0} }}{{\left| {R_{t}^{s} - R_{t}^{r} } \right|}}} \right)$$
(7)

\(\left( {X^{J} ,Y^{J} ,Z^{J} } \right)\) represents the satellite coordinates, while \(\left( {X_{K}^{0} ,Y_{K}^{0} ,Z_{K}^{0} } \right)\) represents the approximate coordinates of the receiver.

$$\Delta R = \left( {\Delta x,\Delta y,\Delta z} \right)$$
(8)
$$l = \Delta L_{i} - e_{t} \cdot \left( {R_{t}^{s} - R_{t - 1}^{r} } \right) + e_{t - 1} \cdot \left( {R_{t - 1}^{s} - R_{t - 1}^{r} } \right) + c \cdot \Delta \delta t^{j} - G_{h} \cdot \Delta T_{h} + \Delta I_{i}$$
(9)

In Eqs. (6), \(v\) represents the residual vector, \(l\) denotes the known parameters, and the parameters to be estimated include the changes in receiver coordinates \(\Delta R\) for both before and after epochs, the variation in tropospheric zenith wet delay component \(\Delta T_{w}\), and the receiver clock bias change \(\Delta \delta t_{k}\). When a sufficient number of visible satellites is available, these parameters can be estimated through the least-squares method or Kalman filtering.

Reconstructed Doppler method

Presently, the unprocessed Doppler observations obtained from receivers display substantial noise, making them unsuitable for accurate GNSS positioning or velocity estimation due to elevated error levels and diminished accuracy. As a result, a method has been suggested to reconstruct Doppler frequency shift values, aiming to produce noise-free theoretical values. The reconstructed alterations in carrier phase demonstrate remarkable precision and are devoid of cycle slips.

The reconstructed Doppler frequency shift values depend on various parameters, such as satellite positions, satellite clock biases, tropospheric delays, ionospheric delays, receiver velocity, receiver position, and receiver clock biases, among others. These parameters constitute the variables to be estimated, establishing a theoretical basis for the pseudorange single-point positioning model utilizing reconstructed Doppler values.

For satellite positioning, satellites orbit around the Earth, making them mobile signal sources. When extending the formula to single-point positioning, one can derive the reconstructed Doppler frequency shift value, denoted as \({ }f_{d}\). In Fig. 1, the observation vector \(\overrightarrow {{{ }{\varvec{\rho}}{ }}}\) of a satellite points from the receiver to the satellite, while the \(\overrightarrow {{{ }{\varvec{v}}{ }}}\) vector represents the receiver’s velocity. Let \(\overrightarrow {{v_{s} }} = (x_{vs} ,{ }y_{vs} ,{ }z_{vs} )\) be the satellite velocity, \(P_{s} = (x_{s} ,{ }y_{s} ,{ }z_{s} )\) be the satellite position, and \(P_{u} = (x_{u} ,{ }y_{u} ,{ }z_{u} )\) be the receiver’s position, obtained through pseudorange positioning. Therefore, \(\vec{\user2{\rho }} = (x_{\rho } ,{ }y_{\rho } ,{ }z_{\rho } ) = \left( {x_{s} - x_{u} ,{ }y_{s} - y_{u} ,{ }z_{s} - z_{u} } \right)\). The reconstructed Doppler value can be calculated as follows:

$$f_{d} = \frac{{\left( {\overrightarrow {v} - \overrightarrow {{v_{s} }} } \right) \cdot \overrightarrow {l} }}{\lambda }$$
(10)
Figure 1
figure 1

Doppler model of satellites and receivers.

In the equation, \(\vec{\user2{l}}\) is the unit observation vector, \(\vec{\user2{l}} = \vec{\user2{\rho }}/\left| {\vec{\user2{\rho }}} \right|\), where \(\left| {\vec{\user2{\rho }}} \right|\) represents the satellite-to-earth geometric distance, \(\lambda\) is the wavelength. The dot symbol “.”denotes vector dot product.

Due to the presence of cycle slips, clock jumps, and gross errors in traditional carrier phase-smoothed pseudorange methods, this paper introduces a method to calculate the carrier phase change quantity \(\lambda \cdot \Delta \Phi_{ij}\) (converted to distance) through the integration of the reconstructed Doppler frequency shift values. This method can be expressed as follows:

$$\lambda \cdot \Delta \Phi_{ij} = \lambda \left( { \Phi_{j} - \Phi_{i} } \right) = \lambda \mathop \smallint \limits_{{t_{i} }}^{{t_{j} }} f_{d} {\text{d}}t$$
(11)

In the equation, \(\lambda\) represents the wavelength of the carrier signal transmitted by the satellite, \(t_{i}\) and \(t_{j}\) are two epochs in time, \(f_{d} \left( {t_{i} } \right)\) and \(f_{d} \left( {t_{j} } \right)\) represent the reconstructed Doppler frequency shift values at the two epochs, \(\Phi_{i}\) and \(\Phi_{j}\) denote the carrier phase observations at the two epochs, and \(\lambda \cdot \Delta \Phi_{ij}\) represents the carrier phase change between the two epochs. The time difference between \(t_{j} { }\) and \(t_{i}\) represents the time interval between the two epochs. This approach effectively mitigates the effects of carrier phase observations including cycle slips, clock jumps, and gross errors.

Moreover, considering the carrier phase change between epochs as an indicator of the pseudorange rate, and in an ideal scenario where factors like ionospheric effects, tropospheric effects, and receiver clock bias are disregarded, the theoretical equivalence of pseudorange change and carrier phase change between the same epochs holds true. Nevertheless, in real-world scenarios, owing to diverse errors and observational noise, the carrier phase change exhibits greater precision compared to the pseudorange change. Consequently, incorporating the reconstructed Doppler frequency shift values to substitute the pseudorange change can result in a more smoothed pseudorange and enhanced pseudorange accuracy, as outlined below:

$$\delta \rho^{j} \left( {t_{i} ,t_{j} } \right) = \lambda \cdot \Delta \Phi_{ij} = \lambda \mathop \smallint \limits_{{t_{i} }}^{{t_{j} }} f_{d} {\text{d}}t$$
(12)

In the equation, \(\delta \rho^{j} \left( {t_{i} ,t_{j} } \right)\) represents the change in pseudorange between two epochs, \(t_{i}\) and \(t_{j}\).

The initial epoch positioning relies on single-point pseudorange positioning, where pseudorange measurements are susceptible to significant noise. This noise is a random variable conforming to a zero-mean normal distribution, typically ranging between 5 and 10 m. Consequently, mitigating pseudorange noise becomes imperative. While traditional carrier phase-smoothed pseudorange techniques32 with Doppler observations show no signs of cycle slips, Doppler observations from GNSS receivers often harbor considerable noise, leading to heightened errors and diminished accuracy. In light of this, a novel approach based on reconstructed Doppler for carrier phase-smoothed pseudorange is proposed to effectively suppress pseudorange noise and enhance accuracy. The underlying principle of this method is elucidated below:

The pseudorange observations at the first epoch can be deduced by integrating the carrier phase change quantities obtained from different epochs’ reconstructed Doppler values. A smoothing window of length k is defined, which means there are k observations within the window: \(\rho^{j} \left( {t_{1} } \right)\), \(\rho^{j} \left( {t_{2} } \right)\), …, \(\rho^{j} \left( {t_{k} } \right)\). By utilizing the integrated reconstructed Doppler frequency shift values, carrier phase change quantities \(\delta \rho^{j} \left( {t_{1} ,t_{2} } \right)\), \(\delta \rho^{j} \left( {t_{1} ,t_{3} } \right)\), …, \(\delta \rho^{j} \left( {t_{1} ,t_{k} } \right)\) can be calculated from \(t_{1}\) to \(t_{k}\) and retroactively applied to the first epoch. Consequently, k pseudorange observations are available for the first epoch, namely:

$$\begin{aligned} \rho^{j} \left( {t_{1} } \right)_{1} = & \rho^{j} \left( {t_{1} } \right) \\ \rho^{j} \left( {t_{1} } \right)_{2} = & \rho^{j} \left( {t_{2} } \right) - \delta \rho^{j} \left( {t_{1} ,t_{2} } \right) = \rho^{j} \left( {t_{2} } \right) - \lambda \mathop \smallint \limits_{{t_{1} }}^{{t_{2} }} f_{d} {\text{d}}t \\ \cdots \cdots \\ \rho^{j} \left( {t_{1} } \right)_{k} = & \rho^{j} \left( {t_{k} } \right) - \delta \rho^{j} \left( {t_{1} ,t_{k} } \right) = \rho^{j} \left( {t_{k} } \right) - \lambda \mathop \smallint \limits_{{t_{1} }}^{{t_{k} }} f_{d} {\text{d}}t \\ \end{aligned}$$
(13)

As the sliding window encompasses k epochs, the pseudorange values computed for these k epochs are averaged to derive the smoothed pseudorange value for the initial epoch:

$$\overline{{\rho^{j} \left( {t_{1} } \right)}} = \frac{1}{k}\mathop \sum \limits_{i = 1}^{k} \rho^{j} \left( {t_{1} } \right)_{i}$$
(14)

By leveraging the integrated Doppler frequency shift values reconstructed at any specific epoch, it is possible to calculate the alteration in pseudorange concerning the initial epoch time. Following this, through the process of smoothing and adjusting the mean pseudorange value at the initial epoch time, one can obtain smoothed pseudorange values for all subsequent epochs.

$$\overline{{\rho^{j} \left( {t_{i} } \right)}} = \overline{{\rho^{j} \left( {t_{1} } \right)}} + \delta \rho^{j} \left( {t_{1} ,t_{i} } \right) = \overline{{\rho^{j} \left( {t_{1} } \right)}} + \lambda \mathop \smallint \limits_{{t_{1} }}^{{t_{i} }} f_{d} d$$
(15)

First, we integrate the Doppler values, and then obtain the integrated change by subtracting the values between consecutive epochs. This integrated change reflects the variation in noise. In Fig. 2, the comparison shows the difference between reconstructed Doppler values and Doppler observations (generated by the receiver observation file): Reconstructed Doppler values are smooth and noise-free, with a monotonically increasing curve reflecting the relative motion trajectory between the satellite and the receiver. In contrast, Doppler observation values are mixed with observational noise, displaying irregular and non-stationary fluctuations.

Figure 2
figure 2

Comparison of the integrated changes between observed Doppler values and reconstructed Doppler values.

Figure 3 compares the original pseudorange observations with the pseudorange observations smoothed by reconstructed Doppler. The positioning performance of these two types of observations is further validated in Fig. 4. It can be observed from Fig. 4 that the SPP-Reconstruct Doppler (the SPP with Reconstructed Doppler smoothed pseudorange) demonstrates significantly better positioning accuracy and stability compared to SPP with original pseudorange observations.

Figure 3
figure 3

Comparison between original observations and newly generated observations.

Figure 4
figure 4

Comparison of three-dimensional positioning errors between SPP and SPP-reconstruct doppler.

CZS-PPP ionosphere-free combination model

The conventional PPP method employs the dual-frequency ionosphere-free model (PPP-IF), where the combined model of pseudorange and carrier phase observations is as follows:

$$P_{IF} = \frac{{f_{1}^{2} P_{1} - f_{2}^{2} P_{2} }}{{f_{1}^{2} - f_{2}^{2} }} = \rho + c \cdot \left( {\delta t_{k} - \delta t^{j} } \right) + G_{h} \cdot T_{h} + G_{w} \cdot T_{w} + \varepsilon_{{P_{IF} }}$$
(16)
$$L_{IF} = \frac{{f_{1}^{2} L_{1} - f_{2}^{2} L_{2} }}{{f_{1}^{2} - f_{2}^{2} }} = \rho + c \cdot \left( {\delta t_{k} - \delta t^{j} } \right) + G_{h} \cdot T_{h} + G_{w} \cdot T_{w} + \lambda_{IF} \cdot N_{IF} + \varepsilon_{{L_{IF} }}$$
(17)

In eqs. (16) and (17), \(P_{IF}\) represents the ionosphere-free combined observations of dual-frequency pseudorange observations \(P_{1}\) and \(P_{2}\); \(L_{IF}\) represents the ionosphere-free combined observations of dual-frequency carrier phase observations \(L_{1}\) and \(L_{2}\); \(f_{1}\) and \(f_{2}\) are the frequencies of the observations; \(\delta t_{k}\) denotes the receiver clock bias; \(\delta t^{j}\) represents the satellite clock bias; \(c\) is the speed of light in vacuum; \(G_{h}\) and \(G_{w}\) are the mapping functions for dry and wet tropospheric delays, respectively; \(T_{h}\) and \(T_{w}\) are the dry and wet tropospheric delays; \(N_{IF}\) is the integer ambiguity of the ionosphere-free combined carrier phase observations; \(\lambda_{IF}\) is the wavelength of the ionosphere-free combined observations; \(\varepsilon_{{P_{IF} }}\) and \(\varepsilon_{{L_{IF} }}\) denote the noise errors of the pseudorange and carrier phase observations, respectively.

The dual-frequency ionosphere-free combination model33 for CZS-PPP is presented as follows:

$$P_{IF} = \frac{{f_{1}^{2} P_{1} - f_{2}^{2} P_{2} }}{{f_{1}^{2} - f_{2}^{2} }} = \rho + c \cdot \left( {\delta t_{k} - \delta t^{j} } \right) + G_{h} \cdot T_{h} + G_{w} \cdot T_{w} + \varepsilon_{{P_{IF} }}$$
(18)
$$\Delta L_{IF} = \frac{{f_{1}^{2} \cdot L_{1} - f_{2}^{2} \cdot L_{2} }}{{f_{1}^{2} - f_{2}^{2} }} = \Delta \rho + c \cdot \left( {\Delta \delta t_{k} - \Delta \delta t^{j} } \right) + G_{h} \cdot \Delta T_{h} + G_{w} \cdot \Delta T_{w} + \Delta \varepsilon_{{L_{IF} }}$$
(19)

In Eqs. (18) and (19), \(P_{IF}\) and \(\Delta L_{IF}\) represent the ionosphere-free linear combinations of pseudorange observations and carrier phase self-differencing values on BDS-3 satellites B1C and B2A, respectively. \(\rho\) is the geometric distance from the receiver to the satellite, and \(\Delta \rho\) represents the change in satellite-to-receiver geometric distance between the previous and current epochs. \(G_{h}\) and \(G_{w}\) are the tropospheric zenith direction dry and wet mapping functions, respectively. \(\Delta T_{h}\) is the change in tropospheric zenith direction dry delay component between the previous and current epochs, and \(\Delta T_{w}\) is the change in tropospheric zenith direction wet delay component between the previous and current epochs. \(\Delta T_{w}\) is treated as an estimated parameter along with position parameters. \(\varepsilon_{{P_{IF} }}\) represents the pseudorange observation noise for the ionosphere-free combination, while \(\Delta \varepsilon_{{L_{IF} }}\) represents the phase observation noise for the ionosphere-free combination between the previous and current epochs. All the above units are in meters. c denotes the speed of light. \(\Delta \delta t_{k}\) is the change in receiver clock bias between the previous and current epochs, and \({\Delta }\delta t^{j}\) is the change in satellite clock bias between the previous and current epochs, both in seconds. Other error terms in the observation equation (such as antenna phase center corrections34, phase wind-up effects35, tidal loading deformations36, relativistic effects37, and Earth rotation38) are corrected using respective models. The dual-frequency ionosphere-free combination model offers the advantages of eliminating first-order ionospheric effects with fewer estimated parameters, resulting in stable positioning performance, a simple model, and ease of operation.

In our research, we utilized \(L_{1}\) and \(L_{2}\) dual-frequency observations from the BDS-3 and GPS dual-systems39 to compute the intermediate-frequency combinations. The ionosphere-free combination equation, established based on pseudorange observations and carrier phase self-differencing values, can be expressed as:

$$P_{IF}^{g} = \rho^{g} + c \cdot \delta t_{k} + G_{w} \cdot T_{w}^{g} + \varepsilon_{{P_{IF} }}^{^{\prime}g}$$
(20)
$$\Delta L_{IF}^{g} = \Delta \rho^{g} + c \cdot \Delta \delta t_{k} + G_{w} \cdot \Delta T_{w}^{g} + \Delta \varepsilon_{{L_{IF} }}^{^{\prime}g}$$
(21)
$$P_{IF}^{b} = \rho^{b} + c \cdot \delta t_{k} + G_{w} \cdot T_{w}^{b} + c \cdot \delta t_{sys}^{b,g} + \varepsilon_{{P_{IF} }}^{^{\prime}b}$$
(22)
$$\Delta L_{IF}^{b} = \Delta \rho^{b} + c \cdot \Delta \delta t_{k} + G_{w} \cdot \Delta T_{w}^{b} + c \cdot \Delta \delta t_{sys}^{b,g} + \Delta \varepsilon_{{L_{IF} }}^{^{\prime}b}$$
(23)

In the equations, \({\Delta }\) represents the differencing operator between the previous and current epochs. The superscripts \(g\) and \(b\) denote GPS and BDS-3 satellites, respectively. \(\delta t_{sys}^{b,g}\) represents the system time difference parameter between GPS and BDS-3, measured in seconds. In the dual-constellation PPP model combining GPS and BDS-3, in this paper, GPS time is used as the reference and BDS-3 time is converted to GPS time. In addition, we include the parameter \(\Delta \delta t_{sys}^{b,g}\) in the set of parameters to be determined for estimating the system clock difference between GPS and BDS-3. The dual-frequency ionosphere-free combination model consists of five parameters: position changes (\(\Delta x,\Delta y,\Delta z\)), receiver clock bias \(\Delta \delta t_{k}\), tropospheric zenith wet component \(\Delta T_{w}\), and system time difference parameter \(\Delta \delta t_{sys}^{b,g}\).

$${\text{d}}X = \left[ {\Delta x,\Delta y,\Delta z,\Delta \delta t_{k} ,\Delta T_{w} ,{ }\Delta \delta t_{sys}^{b,g} } \right]$$
(24)

In this paper, a conventional random model is used, and the noise (\(\sigma\)) in the observation equation is weighted according to the elevation angle.

$$\left\{ {\begin{array}{*{20}l} {\sigma \left( {ele} \right) = \sigma_{0} } \hfill & {ele > 30^{^\circ } } \hfill \\ {\sigma \left( {ele} \right) = \frac{{\sigma_{0} }}{{2\sin \left( {ele} \right)}} } \hfill & {else } \hfill \\ \end{array} } \right.$$
(25)

In the Eq. (25), \(ele\) is the elevation angle. \(\sigma_{0}\) is commonly set to 1 m for pseudorange observations and 1 cm for phase observations. The random model is as follows:

$$w = R^{ - 1} = \left[ {\begin{array}{*{20}c} {\frac{1}{{\sigma_{1}^{2} }}} & {} & {} \\ {} & \ddots & {} \\ {} & {} & {\frac{1}{{\sigma_{n}^{2} }}} \\ \end{array} } \right]$$
(26)

In the Eq. (26), \(w\) signifies the weight matrix of the observations, while \(R\) denotes the covariance matrix associated with the observations.

Due to the different observation accuracies of GPS and BDS, the corresponding observation weights are also different. In this paper the observation weights of GPS and BDS are set to 1:2.

Algorithm validation and performance analysis

The method in this paper is applicable to static mode, in order to verify the effectiveness of the above CZS-PPP algorithm for static data processing, experiments will be carried out utilizing a Beidou Xingtong receiver at the Intelligent Navigation and Remote Sensing Research Center of Xiangtan University. All receivers employed in these experiments will utilize both the GPS and BDS-3 satellite navigation systems for precise positioning.

As depicted in Fig. 5, the algorithmic experiments employed a dual-frequency GNSS receiver (BeiDou Xingtong) positioned on the rooftop of the Information Building at Xiangtan University to capture satellite signals. This setup significantly reduced multipath effects, which could be considered negligible. The Earth Centered, Earth Fixed (ECEF) coordinates of its antenna were accurately measured using standard precision instruments, achieving an accuracy better than 3 mm. Original observation data spanning days 017–023 of the year 2023, totaling 7 days, was acquired. The data was sampled at 1-s intervals, encompassing simultaneous reception of BDS-3 and GPS satellite data. Raw observation data was collected daily from 9:00 to 10:00, over a one-hour period. The convergence criteria in this paper are as follows: achieving convergence thresholds simultaneously in the East (E), North (N), and Up (U) directions for PPP, and ensuring stability within the thresholds for 120 consecutive epochs (with a sampling interval of 60 min). The convergence threshold is set at 10 cm, and the convergence time is measured from the initial epoch to reaching the convergence threshold. The experiment utilized dual-frequency raw observation data from BDS-3 and GPS satellite systems to validate the superiority of CZS-PPP.

Figure 5
figure 5

(a) Beidou Xingtong Receiver and (b) Beidou Xingtong Antenna.

Experiment 1

In conditions where only a single system was considered, distinct experiments were conducted to validate and compare the individual BDS-3 system40,41 and the standalone GPS system. Precise satellite coordinates and accurate satellite clock biases were sourced from products provided by the International GNSS Service (IGS) center. CZS-PPP utilized 5-min precise satellite coordinates and 30-s precise satellite clock bias products from the German Research Centre for Geosciences (GFZ). Raw observations in dual frequency, encompassing BDS-3 B1C, B2A42,43, and GPS L1C, L2W, were collected over seven consecutive days, from the 17th to the 23rd day of the year 2023, as acquired by the receiver.

Figure 6 showcases the positioning results for a single BDS-3 system. In the diagram, (E, N, U) represent a specific station coordinate system, known as the East-North-Up (ENU) coordinate system. The ENU coordinate system captures the positional changes of the receiver in the East (E), North (N), and Up (U) directions. The error curves in the figure depict the absolute differences between the coordinates obtained through CZS-PPP calculations and the receiver’s standard coordinates in the ENU coordinate systems. Over time, convergence is achieved. At 217 s, the convergence reaches 0.07 m in the E direction, 0.06 m in the N direction, and 0.08 m in the U direction. Figure 7 illustrates the number of BDS-3 satellites observed within an hour. During the specified time interval, approximately 8 satellites are observed, meeting the minimum requirement of at least 4 satellites for positioning.

Figure 6
figure 6

Positioning results for a single BDS-3 system.

Figure 7
figure 7

BDS-3 satellite observations.

Figure 8 depicts the positioning results for a single GPS system. Over time, convergence is attained, reaching 0.03 m in the E direction, 0.08 m in the N direction, and 0.09 m in the U direction at 201 s. Following convergence, the positioning accuracy remains consistently stable. In contrast, Fig. 9 illustrates that the number of GPS satellites is approximately equivalent to the number of BDS-3 satellites.

Figure 8
figure 8

Presents the positioning results for a single GPS system.

Figure 9
figure 9

Displays the number of observed GPS satellites.

Table 1 presents information on the convergence time and three-dimensional RMS positioning accuracy in the ENU coordinates for both the individual BDS-3 satellite system and the standalone GPS satellite system. Based on continuous observations spanning 7 days, it is evident that the average convergence time for the single BDS-3 system is 220 s, accompanied by an average ENU three-dimensional RMS positioning accuracy of 0.08 m. In comparison, the single GPS system demonstrates an average convergence time of 214 s, with an average ENU three-dimensional RMS positioning accuracy of 0.076 m. The two satellite systems display comparable average convergence times and average positioning accuracy.

Table 1 Comparison between BDS-3 and GPS systems.

Experiment 2

In the context of the BDS-3/GPS dual-satellite system44,45, the positioning results of CZS-PPP are compared with those of the widely employed PPP method. The conventional PPP method employs the PPP-IF model46,47. Both methodologies utilize identical observational data and precise ephemeris. A comparative analysis is conducted using data continuously collected for 7 days, drawn from the dual-frequency raw data received by the receiver over the consecutive 7 days, spanning from day 17 to day 23 in 2023.

In Fig. 10, in the context of a dual-satellite navigation system, a notable increase in the count of visible satellites is depicted, leading to an enhanced satellite spatial geometry.

Figure 10
figure 10

Number of BDS-3/GPS dual-system satellite observations.

In Fig. 11, it is evident that the convergence time for PPP-IF is notably extended, requiring approximately 700 s to converge, and achieving a three-dimensional average positioning accuracy of 0.15 m.

Figure 11
figure 11

PPP-IF positioning results.

The outcomes illustrated in Fig. 12 clearly demonstrate the superior performance of CZS-PPP over PPP-IF. CZS-PPP achieves convergence in 152 s and sustains a three-dimensional average positioning accuracy of 0.06 m. This highlights the superior performance of CZS-PPP in terms of both convergence time and positioning accuracy when compared to PPP-IF.

Figure 12
figure 12

Positioning results of CZS-PPP.

In Fig. 13, this paper presents a statistical comparison of the system residual errors between CZS-PPP and the traditional PPP-IF method under the dual-constellation conditions of GPS and BDS-3. The horizontal axis represents satellite numbers, and the vertical axis represents system residual errors. It can be observed that the system residual errors of the proposed method are significantly smaller than those of the traditional PPP-IF method.

Figure 13
figure 13

Comparison of system residual errors between CZS-PPP and PPP-IF.

Table 2 presents data spanning seven consecutive days. The average convergence time for PPP-IF is 709 s, accompanied by an average three-dimensional RMS positioning accuracy of 0.132 m. In contrast, CZS-PPP attains an average convergence time of 156 s, with an average three-dimensional RMS positioning accuracy of 0.068 m. This underscores the superior performance of CZS-PPP.

Table 2 Comparison between CZS-PPP and PPP-IF.

Conclusions

This study delves into the critical factors impeding the rapid convergence of PPP, such as integer ambiguity and residual errors within the system. Notably, it addresses these challenges without relying on external sources like ground augmentation networks or enhancements from low Earth orbit satellite navigation systems, resulting in a significant reduction in PPP convergence time. The proposed method, termed Carrier Phase Zero-Baseline Self-Differencing PPP (CZS-PPP), initially employs principles of satellite precise orbits and Doppler generation to reconstruct error-free Doppler measurements. It then utilizes Doppler integration equations to smooth pseudorange, minimizing cumulative residual errors and enhancing pseudorange accuracy for precise initial epoch coordinates. Subsequently, through self-differencing between consecutive epochs, system residual errors and integer ambiguities are further mitigated, leading to a substantial reduction in PPP convergence time. The single-system case achieves convergence in less than 4 min, while the dual-system case converges in under 3 min. The accuracy of these findings is effectively validated using actual measurements from BDS-3, GPS, and BDS-3/GPS. This research contributes crucial theoretical and technical support for real-world applications of BDS-3/GNSS real-time PPP.