Introduction

By means of precise satellite orbit and clock offset products, precise point positioning (PPP) can achieve position accuracy at the centimeter level in static mode and at the decimeter level in kinematic mode (Malys and Jensen 1990; Zumberge et al. 1997; Zhao et al. 2021). Together with Galileo and BDS-3 broadcast ephemerides, an opportunity is given to conduct PPP with broadcast ephemerides (BE-PPP) instead of precise products (Kouba et al. 2001; Montenbruck et al. 2020; Chen et al. 2021). In this approach, high-precision positioning can be obtained in real-time, whereas standard PPP is inevitably subject to the latency and discontinuity of precise products.

It has been validated that Galileo has a global root mean square (RMS) of about 10–20 cm for signal-in-space error (SISE), which is about a factor of three or four smaller than for GPS because of a highly stable atomic clock and more frequent uploads of broadcast ephemerides (Montenbruck et al. 2018; Wu et al. 2020; European GNSS Service Centre 2022). Likewise, benefitted from inter-satellite links (ISLs) and updated onboard atomic clocks, the BDS-3 broadcast ephemerides are also superior to those of GPS. The BDS-3 broadcast orbit has an accuracy of 10 cm validated by satellite laser ranging observations. The user range error (URE) of BDS-3 broadcast orbit and clock is about 0.5 m, which can even be reduced to 0.3 m when the biases induced by satellite hardware delays are removed from the clock offsets (Chen et al. 2021).

Carlin et al. (2021) have proven that if SISE parameters were well modeled in GPS/Galileo integrated BE-PPP, a position accuracy of 25 cm could be obtained. Although this positioning accuracy is mainly attributed to the lower SISE of the Galileo system, the dual-constellation solution is still preferred as it can strengthen the geometry of visible satellites, resulting in reduced convergence time and improved accuracy and robustness as well (Cai and Gao 2013; Togedor et al. 2014; Bahadur and Nohutcu 2018). Recently, the integrated GPS/Galileo BE-PPP has successfully been applied to the low earth orbit (LEO) of Sentinel-6A satellites (Montenbruck et al. 2022). Thus, BE-PPP is certainly an important technique for real-time orbit determination of LEOs (Montenbruck et al. 2008; Wang et al. 2020; Gong et al. 2020).

Currently, the broadcast ephemerides of each GNSS system are generated on different Terrestrial Reference Frames (TRFs), i.e., BDCS (2019v01) for BDS-3 (Liu et al. 2019), WGS84 (G2139) for GPS (NGA, 2021), GTRF (2019v01) for Galileo (Enderle 2018). In the study of Carlin et al. (2021), the inconsistencies of TRFs between GPS and Galileo are ignored as they are well below the typical uncertainty of multi-GNSS PPP. However, obvious systematic rotation errors are found in BDS-3 broadcast orbits, which can result in positioning errors up to 25 cm (Chen et al. 2021). Therefore, if we want to incorporate BDS-3 to improve GPS/Galileo PPP further, the systematic errors in the BDS-3 broadcast ephemerides should be considered.

We implement an optimal approach of BDS-3 and GPS/Galileo integrated BE-PPP by considering the systematic errors in BDS-3 broadcast orbits. First, multi-GNSS broadcast and precise ephemerides for one year and multi-GNSS observations for one month were collected from 64 selected global stations. The SISE and the discontinuity of broadcast satellite positions and clocks are assessed and compared for different constellations. Then the optimal strategies of multi-GNSS BE-PPP are presented. Subsequently, PPP tests in static and simulated kinematic modes are conducted.

Data sets and BE-PPP strategies

The systematic errors of broadcast ephemerides and the SISE for BDS-3, GPS, and Galileo are assessed by comparing broadcast ephemerides with precise products. Based on this assessment, we proposed an optimized processing strategy of BDS-3 and GPS/Galileo integrated BE-PPP.

Broadcast ephemerides and station observations

From January to December 2020, the merged GNSS broadcast ephemerides and the multi-GNSS observations of 64 globally distributed stations were collected as the input data for BE-PPP (Fig. 1). To obtain the reference values for assessing the effects of systematic errors in broadcast ephemerides on positioning and the SISE of each constellation, we also collected the precise orbit and clock products generated by GeoForschungsZentrum (GFZ) within the Multi-GNSS Experiment (MGEX) project (Montenbruck et al. 2017). The GFZ precise orbit and clock products were also adopted to conduct PPP to evaluate the performance of BE-PPP.

Fig. 1
figure 1

Site distribution of MGEX GNSS stations used for integrated BE-PPP of BDS-3/GPS/Galileo. The ten stations marked with blue stars are used to analyze the sensitivity of position errors to SISE process noise in static PPP mode

BE-PPP strategy

For the standard multi-GNSS PPP, the observational model based on the dual-frequency ionospheric-free combination of raw observations is usually expressed as follows:

$$P_{{{{IF}},r}}^{s,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{s0\_s} + T_{r}^{s,j}$$
(1)
$$L_{{{{IF}},r}}^{s,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{s0\_s} + T_{r}^{s,j} + \lambda_{{{{IF}}}}^{s} N_{r}^{s,j}$$
(2)

where \({P}_{{IF},r}^{s,j}\) and \({L}_{{IF},r}^{s,j}\) are the ionospheric-free pseudorange and carrier phase combinations. Subscripts \(r\) indicate the receiver; subscripts \(s\) and \(j\) indicate the GNSS system (G: GPS, E: Galileo, C: BDS-3) and the satellite PRN, respectively. \({\rho }_{r}^{s,j}\) is the geometric range including corrections, such as tide displacement, the relativistic effect and so on, c is the speed of light; \({{cd}}_{r}^{s0}\) and \({{cd}}^{s,j}\) are the receiver and satellite clock offsets, respectively; \({T}_{r}^{s,j}\) is the tropospheric delay in line-of-sight (LOS) direction; \({{ISB}}_{r}^{s0\_s}\) is the inter-system bias of \(s\) relative to the reference system \(s0\) (i.e., GPS); \({\lambda }_{{IF}}^{s}\) and \({N}_{r}^{s,j}\) are the wavelength of the combined frequency and float ambiguity parameter; For clarity, the observation noise and multipath effect are not included.

In contrast to the standard PPP model, additional errors should be considered and modeled for multi-GNSS BE-PPP. We develop an approach for BDS-3 and GPS/Galileo integrated PPP by calibrating the systematic errors in BDS-3 broadcast ephemerides and the SISE of all constellations.

First, the transformation parameters between broadcast and precise orbits are calculated and analyzed. Obvious systematic errors in z-translation and three rotations were found in BDS-3 broadcast orbits and should be calibrated for BDS-3/GPS/Galileo integrated BE-PPP. Otherwise, they would lump into the error budget of the integrated BE-PPP. Specifically, the annual variations in the z-translation of BDS-3 broadcast orbits are calibrated using a fitting model following Chen et al. (2022). The rotation errors are modeled as unknown parameters in BE-PPP processing. No calibration of transformation parameters was required for Galileo and GPS broadcast orbits since they have no obvious systematic errors compared to precise orbits.

Second, obvious nonzero biases in BDS-3 broadcast clock offsets for individual satellites compared with precise products were noticed (Zhang et al. 2020a; Chen et al. 2021). Although the biases could be reduced by precise differential code bias (DCB) products provided within GNSS community (Wang et al. 2016), the DCB products are not available for specific signals of some stations used in this study. Any satellite-specific bias would increase the convergence time for PPP, although a much smaller weight is assigned to pseudorange than carrier phase observations. Therefore, these nonzero biases should be calculated and removed from the ionospheric-free observations before BE-PPP processing.

Finally, to obtain positions at the decimeter level, SISE parameters modeled as random walk are also required to account for the remaining random errors in broadcast orbit and clock products (Carlin et al. 2021). Notice that the process noise of SISE parameter is partly dependent on the discontinuities of broadcast orbit and clock while the broadcast messages are uploaded at intervals ranging from 10 min to hours for different constellations. Here we assess the discontinuity of SISE to have an intuitive comparison among different constellations. Additionally, we also use the discontinuity of SISE to determine whether the initial sigma of SISE parameter needs to be reset at the epoch that ephemerides are updated.

The processing strategies of the above three kinds of errors are described in detail in the next sections. Apart from them, the major processing settings for BE-PPP are listed in Table 1.

Table 1 Processing settings of BE-PPP

Calibration of rotation and translation errors in BDS-3 broadcast orbits

The daily transformation parameters between broadcast and precise orbits were first calculated for the year 2020. We then formed the root sum square (RSS) of position difference introduced by these transformation parameters to quantify the systematic errors in broadcast orbits following Malys et al. (2021). The RSS of position difference for users at the surface of the earth can be expressed by the sum of translation (\({\Theta }_{T}\)), scale (\({\Theta }_{S}\)) and rotation (\({\Theta }_{R}\)) components as follows:

$$\Theta = \sqrt {\Theta_{T}^{2} + \Theta_{S}^{2} + \Theta_{R}^{2} }$$
(3)

where \(\Theta_{T} = \sqrt {{{TX}}^{2} + {{TY}}^{2} + {{TZ}}^{2} }\), \(\Theta_{S} = \sqrt {r_{e}^{2} S^{2} }\), and \(\Theta_{R} = \sqrt {\frac{{2r_{e}^{2} }}{3}\left( {{{RX}}^{2} + {{RY}}^{2} + {{RZ}}^{2} } \right)}\). \({{TX}}\), \({{TY}}\), and \({{TZ}}\) are the three components of the translation vector. \(r_{e} = 6371\, {\text{km}}\) is the mean radius of earth. \(S\) is the scale factor and \({{RX}}\), \({{RY}}\), and \({{RZ}}\) are the three rotation angles in radians.

Figure 2 demonstrates the \({\Theta }\) for BDS-3/GPS/Galileo for the year 2020. Significant jitters are found in the \(\Theta\) variations for BDS-3 with a maximum value of up to 20 cm. It is also validated that an RMS decrease of approximately 10–20 cm could be obtained for the along- and cross-track components of broadcast orbits when the rotation parameters are considered during orbit comparison. Galileo performs best as the maximum \(\Theta\) is only 8.9 cm, less than half of the respective value for BDS-3. Overall, the average \(\Theta\) are 9.4 ± 3.4, 6.4 ± 1.9 and 4.1 ± 1.2 cm for BDS-3, GPS, and Galileo, respectively. Notice that although BDS-3 has a much larger \(\Theta\) than GPS, this does not mean that inclusion of BDS-3 cannot benefit GPS/Galileo BE-PPP. It is because the accuracy of BDS-3 broadcast orbit is superior to that of GPS (Montenbruck et al. 2020).

Fig. 2
figure 2

RMS of transformation parameters between broadcast and precise orbits for the year 2020. The indication of \(\Theta_{T}\), \(\Theta_{R}\), \(\Theta_{S}\), and \(\Theta\) in each subplot presents the results of translation, rotation, scale, and the sum, respectively. The texts in the same colors indicate the corresponding statistic values

Figure 2 also depicts the position difference related to the translation (\(\Theta_{T}\)), rotation (\(\Theta_{R}\)), and scale (\(\Theta_{S}\)). The \(\Theta_{S}\) of the three constellations, all show stable variations and the impact on the positioning is less than 2.0 cm. Obviously, the \(\Theta_{T}\) of BDS-3 presents systematic errors characterized by annual variations. Most importantly, \(\Theta_{R}\) remarkably dominates the \(\Theta\) of transformation parameters for BDS-3, with a maximum value up to 25 cm. The broadcast earth rotation parameters of BDS-3 are 2–4 times more scattered than that of GPS (Steigenberger et al. 2022). As a result, more significant rotation errors of BDS-3 could be expected for broadcast orbits. Notice that the constant bias of \(\Theta_{S}\) could be absorbed into the receiver clock during positioning. Consequently, we decided to compensate only the non-linear part of \(\Theta\) induced by the z-translation and three rotations for BDS-3 integrated BE-PPP.

The annual harmonic function was used to fit the translation parameters of BDS-3 following Chen et al. (2022), as a period of 365.25 days was detected. Therefore, before BE-PPP processing, the posterior model is applied to BDS-3 broadcast orbits to calibrate the anomalous annual variations of z-translation as follows:

$${{TZ}} = 7.09 \cdot \cos \left( {2\pi \cdot {\text{d}}t} \right) - 2.77 \cdot \sin \left( {2\pi \cdot {\text{d}}t} \right)$$
(4)

where \({\text{d}}t = {\text{DOY}}/365.25\) is the fractional year. Notice that no calibration is needed for x- and y-translations of BDS-3 because of their indistinctive periodical variations.

Second, additional rotation parameters (\({dRX},{ dRY},{ dRZ}\)) were introduced into the observational model of BDS-3 in the integrated BE-PPP to mitigate the rotation inconsistencies between BDS-3 and GPS/Galileo orbits. Meanwhile, satellite-dependent random noises (\({S}^{s,j}\)) for the three constellations were also considered to compensate for the SISE of broadcast ephemerides. The observation equation for integrated BE-PPP can thus be extended as follows:

$$P_{{{{IF}},r}}^{G/E,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{s0\_s} + S^{s,j} + T_{r}^{s,j}$$
(5)
$$L_{{{{IF}},r}}^{G/E,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{{s0_{s} }} + S^{s,j} + \lambda_{{{{IF}}}}^{s} N_{r}^{s,j} + T_{r}^{s,j}$$
(6)
$$P_{{{{IF}},r}}^{C,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{s0\_s} + S^{s,j} + H_{{{{RX}}}}^{s,j} {{dRX}} + H_{{{{RY}}}}^{s,j} {{dRY}} + H_{{{{RZ}}}}^{s,j} {{dRZ}} + T_{r}^{s,j}$$
(7)
$$L_{{{{IF}},r}}^{C,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} + {{ISB}}_{r}^{s0\_s} + S^{s,j} + \lambda_{{{{IF}}}}^{s} N_{r}^{s,j} + H_{RX}^{s,j} {{dRX}} + H_{{{{RY}}}}^{s,j} {{dRY}} + H_{{{{RZ}}}}^{s,j} {{dRZ}} + T_{r}^{s,j}$$
(8)

where \(H_{{{{RX}}}}^{s,j}\), \(H_{{{{RY}}}}^{s,j}\), and \(H_{{{{RZ}}}}^{s,j}\) are the partial derivatives of the three rotation parameters for BDS-3, which can be expressed as:

$$\left[ {\begin{array}{*{20}c} {H_{{{{RX}}}}^{s,j} } \\ {H_{{{{RY}}}}^{s,j} } \\ {H_{{{{RZ}}}}^{s,j} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} 0 & { - Z^{s,j} } & {Y^{s,j} } \\ {Z^{s,j} } & 0 & { - X^{s,j} } \\ { - Y^{s,j} } & {X^{s,j} } & 0 \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {\gamma_{r}^{s,j} } \\ {\delta_{r}^{s,j} } \\ {\epsilon_{r}^{s,j} } \\ \end{array} } \right]$$
(9)

where \({X}^{s,j}\), \({Y}^{s,j}\) and \({Z}^{s,j}\) are satellite position coordinates derived from broadcast ephemerides. The three rightmost items are the components of the LOS unit vector. It also should be noted that the rotations will not be included for BDS-3 only BE-PPP since these parameters can be estimable only in multi-constellation cases.

Bias calibration of URE

The radial component of orbit and clock errors (labeled as \(R\) and \(\tau\)) dominate the URE, which are almost projected onto the user LOS vector and lumped into the error budget of BE-PPP processing. As such, the radial orbit and clock combined error, i.e., \(\alpha \cdot R-\tau\) for the broadcast orbit and clock of healthy satellites, was computed by comparison with the precise products of the year 2020, where \(\alpha\) is the satellite related coefficient (Montenbruck et al. 2018). The \(\alpha \cdot R-\tau\) for each satellite of the three constellations is shown in Fig. 3. A significant bias of \(\alpha \cdot R- \tau\) is noticed for BDS-3, which should be mainly related to the broadcast clocks (Zhang et al. 2020b). It is because no bias is found in the radial orbit errors for BDS-3 satellites (gray triangles in Fig. 3). A positive bias is also noticed for Galileo FOC satellites. Generally, these satellite-dependent biases mainly affect the convergence time of BE-PPP, since they are highly correlated with the ambiguity and the common component could also be absorbed by receiver clock parameters (Zheng et al. 2019).

Fig. 3
figure 3

RMS of signal-in-space error for broadcast ephemerides in 2020. Due to limited observations, C59 of BDS-3, G14/077, G18/034, G23/060, and G23/076 of GPS, E14/202, and E18/201 of Galileo are excluded. The green texts indicate the mean and standard deviation of \(\alpha \cdot R - \tau\) for each satellite

The obvious biases of satellite clocks can be removed from the precise DCB products. In this case, however, residual biases are still observed for BDS-3 satellites (Chen et al. 2021). Therefore, we propose an observation-driven bias calibration method for a single station. The method takes all biases, including broadcast clocks and satellite and receiver hardware delays, as one parameter to be estimated, i.e., the comprehensive bias (CB) as follows:

$$P_{{{{IF}},r}}^{s,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} - {{cB}}_{r,c}^{s,j} + {{ISB}}_{r}^{s0\_s} + T_{r}^{s,j}$$
(10)
$$L_{{{{IF}},r}}^{s,j} = \rho_{r}^{s,j} + {{cd}}_{r}^{s0} - {{cd}}^{s,j} - {{cB}}_{r,c}^{s,j} + {{ISB}}_{r}^{s0\_s} + T_{r}^{s,j} + \lambda_{{{{IF}}}}^{s} N_{r}^{s,j}$$
(11)

where \({B}_{r,c}^{s,j}\) is the CB.

Based on first term of (10) and (11), the daily constant CBs can be estimated when satellite position and clock are held fixed with broadcast ephemerides, and the station coordinates are fixed using the estimates derived from PPP with precise products. Besides pseudorange measurements, the phase measurements were also used due to their lower noise. Additionally, the sum of CBs for each constellation was constrained to zero to separate the highly correlated CBs and receiver clocks. The CBs of the three constellations were computed for each station in May 2020. Figure 4 presents the repeatability of the CBs for stations ARHT, CUT0, and ULAB on May 1 and 2, 2020. Larger amplitudes of the CBs are found for BDS-3 and GPS compared to Galileo. The CBs of BDS-3 and GPS can reach 2 m, whereas those of Galileo are mostly less than 0.5 m. Fortunately, a good agreement of the CBs between the two adjacent days is noticed for BDS-3 and GPS. This indicates that the CBs of the previous day could be used to construct a priori model for correcting the CBs of the present day. Notice that the remaining random errors of broadcast ephemerides could be absorbed by the SISE parameter discussed in the next section. Unlike BDS-3 and GPS, the correlation of CBs between the two adjacent days is not notable for Galileo, as the magnitude of the CBs for Galileo is very limited and thus readily contaminated by the noise of broadcast clock and the measurements.

Fig. 4
figure 4

Comprehensive bias of the ionospheric-free combined observation for individual satellites on the first two days of May in 2020 for stations ARHT, CUT0 and ULAB. The gray lines are the linear fitting, and the gray texts are the slopes of the fitted lines

Figure 5 summarizes the daily standard deviations (SDs) of the CBs for the three constellations in May. Galileo achieves the smallest scatter, less than 0.3 m, for the whole test period, with a few exceptions. On the contrary, GPS has the maximum scattered CBs among the three constellations, partly attributed to the less precise GPS broadcast ephemerides than BDS-3 and Galileo. Overall, the monthly averaged repeatability of the CBs are 0.33, 0.50 and 0.20 m for BDS-3, GPS, and Galileo, respectively. Importantly, these values are adopted as the initial SDs of SISE parameter introduced in the BE-PPP processing in the next section.

Fig. 5
figure 5

Repeatability of the CBs of the ionospheric-free combination for BDS-3, GPS and Galileo in May 2020. The x-axis refers to the numerical station name

Constraints on SISE parameter

The discontinuities of broadcast orbit and clock are the differences between the currently available ephemerides and the next updated one. Since the noise of the SISE parameter could partly be related to orbit and clock discontinuities, it is important to assess the orbit and clock discontinuities using consecutive broadcast ephemerides. The discontinuities of each constellation were calculated at every epoch the broadcast messages are updated. Notice that the update intervals of broadcast messages are different among the three constellations, and the intervals are generally 2 h, 1 h, and 10 min for GPS, BDS-3, and Galileo, respectively.

Figure 6 depicts the empirical cumulative distribution function (CDF) of orbit and clock discontinuities. For BDS-3, the CDFs of GEO, IGSO, and MEO show different patterns except for the radial orbit discontinuity. The 95th-percentile of along, cross, radial, and clock components are (55.6, 59.3, 12.6, 20.6) cm for GEO, (26.5, 29.1, 8.5, 67.9) cm for IGSO, and (11.6, 7.5, 9.2, 62.3) cm for MEO. Compared to BDS-3, GPS has larger orbit discontinuity, and the empirical CDFs are not well consistent among satellites. However, the GPS clock discontinuity performs better than BDS-3, except for four satellites (G08, G17, G24, and G28), although the update interval of GPS is twice more than that of BDS-3. Due to the highly stable passive hydrogen maser clock and more frequent upload of navigation messages, Galileo's broadcast orbit and clock achieve the smallest discontinuity errors compared to BDS-3 and GPS. The 95th percentile values of GPS are (105.8, 44.9, 21.5, 24.3) cm, while those of Galileo are (13.1, 9.1, 4.7, 5.5) cm for the three components of orbits and clocks.

Fig. 6
figure 6

CDFs of SISE discontinuity for each satellite of BDS-3, GPS, and Galileo

Considering the formula of URE for orbit and clock error described by Montenbruck et al. (2018), the globally averaged URE of SISE discontinuity, hereafter referred to dURE, could be obtained in an analogous way:

$${{dURE}} = \sqrt {\left( {\alpha \cdot {\text{d}}R - {\text{d}}\tau } \right)^{2} + \beta^{2} \left( {{\text{d}}A^{2} + {\text{d}}C^{2} } \right)}$$
(12)

where \({\text{d}}A\), \({\text{d}}C\), and \({\text{d}}R\) are orbit discontinuity in the direction of along-, cross-track, and radial, respectively. \(\alpha\) and \(\beta\) denote the contribution of orbit discontinuity to \({dURE}\), which is related to the cutoff elevation. Here the values of 0.982 and 0.132 for BDS-3 MEO, 0.992 and 0.087 for IGSO and GEO were adopted when the cutoff elevation of 5° was used. For GPS and Galileo, the values of 0.980 and 0.984 for \(\alpha\), and 0.139 and 0.124 for \(\beta\) were adopted, respectively.

Figure 7 summarizes the RMS of \(dURE\) for individual satellites of the three constellations. Galileo again achieves the smallest \({dURE}\) among the three constellations, and the average RMS for all satellites is 2.8 cm. For BDS-3, two GEO satellites (C59/C60) have smaller \(dURE\) than IGSO and MEO satellites, although the dominant budget of URE, i.e., \(\alpha \bullet R-\tau\) are much larger. This may be explained by the more frequent updates of ephemerides and the higher correlation between errors of radial orbit and clock for GEO satellites compared to IGSO and MEO satellites (Chen et al. 2021). The variance of SISE random walk noise could be expressed as \(\sigma_{{{{sise}}}}^{2} = {{\sigma_{p}^{2} \Delta t} \mathord{\left/ {\vphantom {{\sigma_{p}^{2} \Delta t} {\tau_{p} }}} \right. \kern-\nulldelimiterspace} {\tau_{p} }}\), where \({\sigma }_{p}^{2}\) is the variance of process noise, \(\Delta t\) is the update interval of observations, and \({\tau }_{p}\) is the time constant with the same value as the observation interval, which is 30 s in this study. The RMS of \({dURE}\) may be taken as an approximate estimate of \({\sigma }_{{sise}}\). However, it should be noted that \({dURE}\) consists of extrapolation errors of broadcast orbit and clock, and the difference of time scale implied in the broadcast clock between adjacent ephemerides. As a result, the process noise derived from the RMS of \({dURE}\) may be conservative and impractical in BE-PPP.

Fig. 7
figure 7

RMS of SISE discontinuity for individual satellites in 2020

Therefore, tests similar to Carlin et al. (2021) are made to determine the optimal process noise of SISE parameter. For each constellation, the process noise with SDs ranging from 0 to 15 mm was tested on 10 global stations with 30 s sampling interval (Fig. 1). The optimal process noise can be finalized when the best positioning accuracy is obtained, taking positioning results of PPP with precise products as baselines. Before performing the tests, BDS-3 broadcast orbits were aligned to precise orbits to remove the non-negligible systematic errors in translations and rotations between these two orbits. Moreover, the CB estimates from the day before were also adopted during the determination of process noise constraints.

It is reasonable to set identical process noise of SISE parameters for all Galileo satellites (Carlin et al. 2021), since the SDs of \(\alpha \bullet R-\tau\) residuals are consistent among satellites, as shown in Fig. 3. However, this is not the case for GPS and BDS-3 when the three constellations are integrated. The larger SDs of \(\alpha \bullet R-\tau\) are noticed for satellites G08, G17, G24 and G28 than for other GPS satellites, which is mainly attributed to the large scatter of a few meters for the related broadcast clock. As a consequence, the larger process noise should be applied to the SISE parameters of these satellites. An alternative approach is to down-weight the observations of these satellites in BE-PPP processing. For simplicity, we assign identical process noises to individual satellites of each constellation. Satellites with large SDs detected using measurement residuals of single-point position are assigned a smaller weight during BE-PPP.

Daily BE-PPP solutions were carried out in May 2020. The monthly positioning accuracy is shown in Fig. 8. For BDS-3, two tests were carried out, one with and one without resetting SISE constraints when ephemerides are updated. These are referred to as C_reset and C_no in the figure. It is noticed that the position accuracy is no longer sensitive to process noise when the noise is in the range of 4 to 15 mm. Moreover, the position errors of C_reset are approximately 10 cm smaller than those of C_no. The process noise that obtains the smallest position error is selected as the optimal value, shown in Table 2. Galileo achieves the smallest process noise of 0.3 cm, which can be explained by the smallest dURE shown in Fig. 7. On the contrary, GPS achieves the biggest process noise of 1.1 cm, remarkably larger than that of C_reset, although the dURE of GPS and BDS-3 are almost at the same level. It is reasonable as BDS-3 has smaller SDs of \(\alpha \bullet R-\tau\) and more frequent updated ephemerides. In the kinematic mode, \({\sigma }_{p}\) of 0.7 cm is adopted for BDS-3 only BE-PPP, and the SISE parameter is not reset when ephemerides are updated to avoid worse positioning results. However, for other BE-PPP tests, the SISE parameter would be reset and the process noise of 0.3 cm is adopted for BDS-3 in both static and kinematic modes.

Fig. 8
figure 8

Sensitivity of positioning errors to the process noise of SISE parameter in static BE-PPP of BDS-3, GPS, and Galileo

Table 2 Initial uncertainty and the sigma of process noise for the SISE parameter adopted in BE-PPP

Results

BDS-3 and GPS/Galileo integrated BE-PPP is examined and validated. The 30-s interval observations of 64 global stations (Fig. 1) were processed in static and simulated kinematic modes, where the position accuracy was assessed by comparison with the results of BDS-3/GPS/Galileo PPP using precise products in static mode. Besides the integrated BE-PPP, the BE-PPP of a single constellation was also carried out for comparison. The BE-PPP solution is performed in sequential least square estimation without dynamic models. Notice that the epochs with visible satellites less than 5 and the first 120 epochs during the convergence phase were excluded.

Static positioning

Statistics of position errors of different BE-PPP solutions at all stations are summarized in Fig. 9 and Table 3. As expected, GPS-only solutions show the worst performance among all tests. The relatively large RMS up to 17.2 cm (horizontal) and 19.5 cm (up) certainly suffer from the more significant SISE of GPS. In contrast, BDS-3 only solutions achieve better accuracy, especially in the up component. The average RMS is 15.0 and 10.7 cm in the horizontal and up components. Nevertheless, the accuracy of BDS-3 and GPS integrated solutions is improved by less than 1.0 cm compared to BDS-3 only solutions. When it comes to the solutions with Galileo, either single-constellation or multi-constellation ones, substantial improvements are always obtained with three-dimensional (3D) accuracy better than 10 cm. We thus suggest that Galileo may dominate the position accuracy of integrated BE-PPP. The GEC solutions perform the best among all the integrated solutions, with a 5.5 and 6.0 cm position accuracy in the horizontal and up components. Although suffering from fewer BDS-3 observations tracked by ground stations, the triple-constellation solutions with BDS-3 still offer about 9% of improvements in 3D accuracy compared with GPS/Galileo solutions.

Fig. 9
figure 9

Position accuracy of BE-PPP for each station

Table 3 Position accuracy of static and kinematic BE-PPP

Taking station CHPI for an example, the dual- and triple-constellation solutions on May 31, 2020 are shown in Fig. 10. It further confirms that Galileo dominates the integrated BE-PPP results because all solutions except for GC solution are characterized with similar variations. Meanwhile, almost all solutions present position biases in the north and up components, and they should be induced by the SISE which is not completely compensated in BE-PPP. Notice that the optimal constraint \({\sigma }_{p}\) for the process noise is determined by the selected stations (Fig. 1), and any inconsistent \({\sigma }_{p}\) of individual stations would contaminate the position accuracy.

Fig. 10
figure 10

Static positioning errors of station CHPI in the east, north and up directions on May 31, 2020

Effects of rotation parameters

We here investigate the effects on positioning of the rotation and translation inconsistencies of BDS-3 with respect to the other constellations. Figure 11 presents the daily position accuracy differences between GEC solution without correcting translation and rotation errors of BDS-3 (GEC_wo) and GEC solution in May 2020. In this figure, positive values mean GEC solutions achieve better accuracy. It thus indicates that GEC solutions are certainly improved, especially in the horizontal component, by correcting the rotation and translation errors of BDS-3. Compared to the GEC_wo solutions, 72.2 and 62.6% of daily solutions achieve better accuracy for the horizontal and vertical components, and the horizontal and vertical RMS decreases by 1.5 and 0.5 cm on average (Table 3). Table 3 shows that the GC and CE solutions also achieve comparable improvements when systematic errors of BDS-3 are calibrated.

Fig. 11
figure 11

Static position RMS differences between GEC_wo and GEC solutions in May 2020. Each circle indicates the results of an individual station

However, the reduced position RMS of the GEC solutions is much less than the expected values inferred from the \({\Theta }_{T}\) and \({\Theta }_{R}\) of BDS-3. This may be because the SISE parameters might have absorbed a part of the transformation errors of BDS-3. Another potential reason is that the contribution of BDS-3 to the triple-constellation integrated BE-PPP is subject to the relatively smaller number of visible BDS-3 satellites tracked by ground stations currently. Additionally, we must emphasize that the z-translation is largely absorbed by SISE parameters, which means the differences between GEC_wo and GEC almost reflect the effects of rotation parameters of BDS-3 on position accuracy.

On the other hand, the improved horizontal position indicates that BE-PPP processing with additional rotation parameters have efficiently calibrated the orientation deficiencies of BDS-3 broadcast ephemerides. Taking CE solutions for instance, Fig. 12 depicts the daily estimates of the rotation parameter for individual stations. The rotation parameters seem more scattered and the amplitudes are two times larger than those derived from orbit comparison (ORB_R) shown in blue stars in Fig. 12. However, if these daily rotation estimates from CE solutions are averaged for all stations, they become nearly identical to ORB_R. Their correlations are 0.79, 0.88, and 0.94 for RX, RY, and RZ, respectively. The high correlations indicate that the majority of the orientation errors of BDS-3 broadcast orbits have been captured by the rotation parameters estimated in BE-PPP. Consequently, we can conclude that GEC integrated BE-PPP also provide a promising way to calibrate the rotation errors of BDS-3 broadcast orbits in real time.

Fig. 12
figure 12

Rotations estimated in BDS-3/Galileo integrated BE-PPP in static mode

In order to have an insight into the estimates of rotation errors in BDS-3 orbit for a single station, Fig. 13 illustrates the epoch estimates of rotations for station CHPI in static mode and the daily rotation parameters from orbit comparison. It is noticed that there is a convergence phase for rotation estimates of the three components. For example, it takes at least 2 h for RY to converge to the respective values of ORB_R (i.e., − 6.0 mas). Meanwhile, apparent discrepancies up to − 1.3 mas (RX) and − 2.7 mas (RZ) are found compared with the respective values of ORB_R. This can be explained by the fact that both the ORB_R and rotation estimates of BE-PPP are susceptible to the accuracy of broadcast ephemerides, and the latter is also correlated with SISE estimates of BE-PPP. Nevertheless, the RMS of CE solution for CHPI is reduced from 7.0 to 3.5 cm in the east and from 12.5 to 5.6 cm in the north, compared with CE_wo (Fig. 10), which indeed indicates that the accuracy of BDS-3 integrated BE-PPP could benefit from the additional estimates of rotation.

Fig. 13
figure 13

Rotations estimated in BDS-3/Galileo integrated positioning for station CHPI in static mode on May 31, 2020. The red, blue, and green horizontal dash lines indicate the rotations derived from orbit comparison

Simulated kinematic positioning

Simulated kinematic BE-PPP using global static stations were also performed and tested with observations of May 2020. Figure 14 depicts the statistic results of individual stations in kinematic mode, and the average position accuracy is listed in Table 3. Like the single-constellation results for static positioning, Galileo performs the best because of the superior quality of broadcast ephemerides, while GPS still performs the worst. BDS-3 only solutions obtain position accuracy of 39.8 and 56.0 cm for the horizontal and up components, respectively. Notice that the 3D position accuracy of the GC solutions is almost two times larger than those of the other multi-constellation solutions due to the larger SISE for GPS and the larger dURE of BDS-3. The good performance of multi-constellation solutions with Galileo can be attributed to the superior quality of the Galileo broadcast ephemerides. Compared to Galileo-only solutions, GEC integrated solutions achieve an average improvement of 6 cm for the vertical component and 1.4 cm for the horizontal component. Similar to the static mode, the triple-constellation solutions with BDS-3 in kinematic mode offer about 20% of improvements in 3D position accuracy compared with GE solutions.

Fig. 14
figure 14

Position errors of BE-PPP for each station in kinematic mode

As a typical example, the integrated BE-PPP solutions for station CHPI on May 31, 2020 are presented in Fig. 15. Similar to the solutions in static mode (Fig. 10), the consideration of translation and rotation errors of BDS-3 broadcast ephemerides mainly contributes to the decrease of position bias for east and north components. It can be explained by the fact that the dominant rotation errors of BDS-3 broadcast ephemerides would be lumped into the horizontal position when no rotation parameters are estimated in the integrated BE-PPP.

Fig. 15
figure 15

BE-PPP positioning errors in the east, north, and up directions on May 31, 2020 for station CHPI in kinematic mode

Conclusions

Improved broadcast ephemerides of BDS-3 and Galileo systems provide new opportunities for BE-PPP. We develop an approach of BDS-3 and GPS/Galileo integrated BE-PPP focusing on calibrating specific errors of broadcast ephemerides, including the systematic errors in BDS-3 broadcast orbits and the relative more significant biases of clock offsets. First, the rotation parameters are estimated explicitly to mitigate the orientation inconsistency in BDS-3 broadcast orbits, and the annual translation errors are calibrated using a fitting model. Second, an observation-driven calibration method for a single station is proposed for the constant biases, including broadcast clocks bias compared to precise clocks, and the satellite/receiver hardware delays. Finally, a SISE parameter is adopted in similar way of Carlin et al. (2021) for each satellite to compensate for the remaining random errors in broadcast ephemerides.

Static and simulated kinematic BE-PPP tests have validated that Galileo-only solutions achieve the best positioning performance among the three single-constellation solutions due to the smallest SISE and discontinuity. In static mode, the horizontal position errors are 17.2, 15.0, and 5.8 cm for GPS-, BDS-3-, and Galileo-only BE-PPP, and the vertical positioning errors are 19.5, 10.7 and 7.4 cm, respectively. In simulated kinematic mode, roughly three times larger positioning errors than that of static mode are obtained for individual constellations, and the 3D position errors of 79.2, 70.9, and 29.1 cm are achieved for GPS-, BDS-3-, and Galileo-only solutions, respectively.

Attributed to the best performance of Galileo-only solutions, the integrated BE-PPP with Galileo always performs better with 3D position errors of 10 and 30 cm for static and kinematic modes, respectively. Furthermore, the triple-constellation integrated solutions achieve the best positioning performance than all the dual-constellation solutions because of the relatively larger number of tracked satellites, and the 3D position errors of 8.6 and 23.4 cm can be obtained for GEC solutions in static and simulated kinematic modes, respectively.

On the other hand, the orientation deficiencies of BDS-3 broadcast orbits have been successfully mitigated by an explicit estimation of rotation parameters in the integrated BE-PPP. It provides a feasible way to obtain stable estimates of BDS-3 rotation errors in real time, even using a single station after a convergence phase. This is very important since BDS-3 rotation errors obtained by orbit comparisons are only accessible with time delay depending on the availability of precise products. The consideration of rotation and translation errors of BDS-3 can currently improve the integrated BE-PPP performance up to 1.7 cm (static) and 0.9 cm (kinematic), much less than the expected magnitude inferred from orbit comparison. This can be explained as the contribution of BDS-3 to the integrated BE-PPP is limited by the currently insufficient BDS-3 observations used for integrated positioning. However, we can expect that integrated solutions with broadcast ephemerides can further improve as global stations track more BDS-3 satellites.

The proposed BE-PPP approach is also applicable for the uncombined measurements, while ionospheric-free measurements are used in this study. Nevertheless, the optimal process noise should be reassessed since the residual ionospheric delay of BE-PPP with uncombined measurements may be absorbed partly in the SISE parameter. In future work, the proposed BE-PPP model will be tested for positioning of satellites with low earth orbit using raw observations and the ionospheric-free combination.