Skip to main content
  • Original Article
  • Open access
  • Published:

Stepwise autonomous orbit determination of large LEO constellations by GNSS observations with partial inter-satellite ranging

Abstract

Large constellations composed of a great amount of Low Earth Orbit (LEO) satellites are widely applied in satellite communication, remote sensing, augmented satellite navigation, environment monitoring, and so on. The satellite Orbit Determination (OD) is critical for the various function realization of the large constellation. Three different stepwise autonomous OD strategies for the large constellation of LEO satellites are proposed based on the spaceborne Global Navigation Satellite System (GNSS) observations and Inter-Satellite Link (ISL) range measurements, including the stepwise OD with both GNSS and ISL range measurements, stepwise OD with ISL range constraints, and an adaptive stepwise OD with both kinds of measurements. All of the three proposed stepwise autonomous OD approaches first estimate the initial orbit parameters for each satellite utilizing the spaceborne GNSS observations based on either a kinematic or dynamic OD strategy. The correction vector for the orbit parameters of each satellite is then individually calculated using the partial ISL range observations or ISL range constraints. The difference of the adaptive stepwise OD algorithm is that the covariance matrix of the predicted orbit parameters based on the dynamic model is modified by an adaptive factor. The LEO satellite parameters estimated with the stepwise OD strategies are equivalent to those obtained with the related integrated OD strategies. The main advantages of the proposed stepwise OD estimators are: (1) the orbit parameters of each satellite can be estimated in parallel, reducing the OD computational load for a large LEO constellation; (2) the spaceborne GNSS observations and the ILS range measurements in the three proposed approaches can be separately joined the OD procedures, making the parameter estimation flexible; (3) the adaptive stepwise OD mode with an adaptive factor acting on the covariance matrix of the predicted orbit parameters can effectively control the effects of the abnormal dynamic model information on the orbit parameter estimates. The simulation results for different OD strategies are analyzed. It is shown that the Root Mean Square Error (RMSE) of the estimated positions of the LEO satellites using the kinematic OD method is 60.527 cm, assuming the GNSS pseudorange noise of 30 cm. In contrast, the RMSE for the stepwise strategy, which considers only four adjacent ISL range measurements with an accuracy of 5 cm, is 18.287 cm. When the dynamic models for the LEO satellites are adopted, the RMSE of the estimated satellite positions using the stepwise orbit determination is further reduced to 11.340 cm. If the ISI ranging accuracy is better than 5 cm, the results remain nearly the same disregarding the ISL ranges are employed as observations or as constraints in the stepwise OD approaches. If the dynamic model information contains a few outliers, the adaptive stepwise OD can effectively control their effects on the orbit parameter estimates.

Introduction

Currently, microsatellite constellations are commonly used for the satellite communication, satellite navigation augmentation (Hong et al., 2023; Yang et al., 2022, 2023, 2025) and satellite remote sensing (Yunck et al., 1990). Characterized by their small size, low cost, and flexibility, multiple microsatellites with various functions can be launched with a single rocket, which is a mainstream option in the global space market. Many microsatellite constellations are currently under construction or in planning stages in China and Europe. The operation, control, and the Orbit Determination (OD) of microsatellites are essential for their efficient operation. (Guo et al., 2023; He et al., 2022).

It is challenging to simultaneously determine the orbit parameters of a Low Earth Orbit (LEO) constellation with a large number of satellites using ground tracking stations, especially for high-precision OD over entire arcs. Therefore, spaceborne Global Navigation Satellite System (GNSS) receivers are employed to autonomously determine satellite orbits and achieve real-time time synchronization ( Yang & Ren, 2018; Yang and Wen, 2004; Yang et al., 2024). Regarding the autonomous OD of LEO satellites, several dual-satellite formations have yields promising results, such as Gravity Recovery and Climate Experiment (GRACE) and Interferometric Synthetic Aperture Radar (InSAR) satellite formation (Qin & Yang, 2009a, 2009b).

The algorithms for autonomous OD based on spaceborne GNSS observations include kinematic, dynamic, and reduced dynamic methods (Hu & Ou, 2000; Li et al., 2019; Svehla & Rothacher, 2023; Yang & Qin, 2013). The kinematic OD approach is essentially kinematic positioning using carrier and pseudorange observations from the onboard GNSS receiver on the LEO satellite (Cui et al., 2011; Hu & Ou, 2000). The dynamic OD approach estimates the orbit parameters of the LEO satellite by considering both the dynamic model information of the satellite and the onboard GNSS observations. Using this approach, the accuracy of the estimated position of the LEO satellite is about 3 cm, while the relative position accuracy in a two-satellite formation can reach the millimeter level (Shao et al., 2021). The Reduced Dynamic Orbit Determination (RDOD) method offers greater flexibility for estimating the positions of LEO satellites. In this approach, dynamic model error is compensated for by attaching an imaginary force (process noise) into the dynamic model. Furthermore, the contributions of the dynamic model and real-time observations are balanced by appropriately adjusting the steady-state variance of the stochastic process and the correlation time parameters (Wu et al., 1991; Yunck et al., 1994). The Kalman filter algorithm is commonly employed in the reduced dynamic OD (Qin & Yang, 2009a, 2009b; Zhao et al., 2006, 2008).

The adaptive OD strategy is another flexible approach that optimally balances the contribution of dynamic model information and real-time GNSS observations to the satellite orbit parameter estimates (Yang and Wen, 2004). The core of this algorithm is the adaptive adjustment of the covariance matrix associated with the dynamic model parameters of LEO satellites. This is achieved by introducing an adaptive factor to inflate the variance of the abnormal dynamic model information based on the reliable GNSS receiver observations, thereby reducing the impact of abnormal dynamic model errors on the final orbital parameter estimates (Yang & Gao, 2006; Yang et al., 2001).

All of the aforementioned LEO satellite OD algorithms rely solely on the observations of spaceborne GNSS receivers. Research has been conducted on joint OD strategies that combine ground tracking network and ISL observations for large LEO constellations using simulated data (He et al., 2022). Recently, actual LEO satellite orbit determination with the observations of both spaceborne receiver and ISLs was researched (Michalak et al., 2021). Actually, there are already numerous studies on the algorithms for the autonomous OD of BeiDou navigation satellites based on ISL ranges and joint OD strategy that combine local ground tracking network with ISL range observations (Ren et al., 2017, 2019; Yang et al., 2019). When the observations of both spaceborne GNSS receivers and ISL ranging are employed in the OD of a large constellation, an integrated OD algorithm is usually applied, by which all the satellite parameters are estimated together. The integrated OD strategy is strict but accompanied with heavy computational burden and low computational efficiency. Given that the vast majority of LEO satellites are equipped with spaceborne GNSS terminals, it is of a great potential to utilize the satellite-borne GNSS observations and partial inter-satellite range observations to determine the orbit parameters of satellites in parallel and in autonomous mode, and therefore facilitate the autonomous operation and control of large constellations.

This paper aims to develop an autonomous and parallel OD method for individual satellites using GNSS observations and partial ISL ranges to simplify the OD algorithms for large LEO constellations. The functional models related to OD are presented in Sect. "Models of Spaceborne GNSS orbit determination". In Sect. "Simulation results and validation", two kinds of stepwise OD estimators are derived, where GNSS observations are employed to obtain the individual satellite orbit parameters, and then the ISL observations are used to calculate orbit parameter corrections. An adaptively stepwise OD estimator incorporating ISL ranges is derived in Sect. "Conclusions" presents validation testing and analysis introducing the resilient compensation terms for the satellite dynamic model errors to enhance the accuracy of dynamic models.

Models of Spaceborne GNSS orbit determination

Functional models

Theoretically, it is feasible to determine the orbits of LEO satellites using the observations from spaceborne GNSS receivers without ground tracking stations. This approach simplifies the autonomous OD of large LEO constellations. Consequently, the consistency of the spatial–temporal datum between the orbits of LEO satellites and GNSS satellites can be maintained (Yang & Ren, 2018).

Usually the dual- frequency pseudorange observations from the on-board GNSS receivers are employed in the OD of the LEO satellites, with the observation equation given as follows:

$$p = \rho - c{\updelta }t^{s} + c{\updelta }t^{r} + e_{p}$$
(1)

where \(p\) is the pseudorange observation, \(\rho\) is the geometric distance from the observed GNSS satellite to the on-board receiver of a LEO satellite, \(\updelta {t}^{s}\) and \(\updelta {t}^{r}\) are the clock offsets of the GNSS satellite and the onboard GNSS receiver, respectively, \(c\) is the light speed, and \({e}_{p}\) is the random error of the pseudorange observation.

When carrier-phase observations are utilized in the OD, the corresponding observation equation can be expressed as follows:

$$\psi = \rho - c{\updelta }t^{s} + c{\updelta }t^{r} + N\lambda + e_{\psi }$$
(2)

where \(\psi\) is the dual-frequency combination of carrier observations, \(N\) is the integer ambiguity parameter of the combined carrier, \(\lambda\) is the wavelength of the combined signal, and \({e}_{\psi }\) is the random error of the carrier observation.

Considering the contribution of the ISL observations between the LEO satellites to the OD, we can express the range observation equations as follows:

$$\tilde{S}_{{{\text{ij}}}} \left( {t_{i} } \right) = S_{{ij}} \left( {t_{i} } \right) + \Delta S_{{ij}} + e_{{ij}}$$
(3)
$$\tilde{S}_{ji} \left( {t_{j} } \right) = S_{ji} \left( {t_{j} } \right) + \Delta S_{ji} + e_{ji}$$
(4)

where \({\widetilde{S}}_{\text{ij}}({t}_{i})\) and \({\widetilde{S}}_{ji}({t}_{j})\) are the round-trip range observations between satellite \(i\) and satellite \(j\) at epoch \(t_{i}\) and \({\text{t}}_{\text{j}}\), respectively; \({S}_{ij}({t}_{i})\) and \({S}_{ji}({t}_{j})\) are the corresponding theoretical distances; and \(\Delta {S}_{ij}\) and \(\Delta {S}_{ji}\) are the systematic errors in the ISL range observations. Typically, only one systematic error is estimated for each pair of satellites. If a priori correction parameter for \(\Delta {S}_{ij}\) is obtained, and then the \(\Delta {S}_{ij}\) term will be excluded from the observation model.

If the dynamic model of the LEO satellite is available, then dynamic OD method is a reasonable choice. In this case, the initial position vector \({{\varvec{X}}}_{0}^{i}\) and the initial velocity vector \({\dot{{\varvec{X}}}}_{0}^{i}\) of the \(i\)-th satellite should be determined at first. The dynamic equation of the satellite state at time \(t\) can be directly expressed as follows (Montenbruck & Gill, 2000):

$${\varvec{X}}^{i} = f\left( {{\varvec{X}}_{0}^{i} , \dot{\user2{X}}_{0}^{i} , h, t} \right)$$
(5)

where \({{\varvec{X}}}^{i}\) is the state vector of satellite \(i\) at time \(t\), \({{\varvec{X}}}_{0}^{i}\) and \({\dot{{\varvec{X}}}}_{0}^{i}\) are the corresponding initial position and the velocity vectors, and \({h}_{i}\) is the prior dynamic model parameter. The orbit state vector of the i-th LEO satellite at epoch k can be simply expressed as a linearized dynamic model:

$${\varvec{X}}_{k + 1}^{i} ={\varvec{\varPhi}}_{{k + 1,{ }k}}^{i} {\varvec{X}}_{k}^{i} + {\varvec{W}}_{k}^{i}$$
(6)

where \({{\varvec{X}}}_{k+1}^{i}\) and \({{\varvec{X}}}_{k}^{i}\) denote the orbit state vectors at epoch \(k+1\) and \(k\), respectively, \({\Phi }_{k+1, k}^{i}\) is the transition matrix of the satellite state of the i-th satellite, and \({{\varvec{W}}}_{k}^{i}\) is the dynamic model error vector. Similarly, the orbit state vector of the j-th satellite can be expressed in the same manner.

Error equations

Based on the pseudorange observation Eq. (1), the linearized error equation for the predicted state vector of the i-th satellite is expressed as:

$$v_{{p_{i} }} = a_{i1} {\updelta }\hat{x}_{i} + a_{i2} {\updelta }\hat{y}_{i} + a_{i3} {\updelta }\hat{z}_{i} - c{\updelta }\hat{t}^{s} + c{\updelta }\hat{t}^{r} - l_{{p_{i} }}$$
(7)

where \(\updelta {\widehat{x}}_{i}\), \(\updelta {\widehat{y}}_{i}\) and \(\updelta {\widehat{z}}_{i}\) are the position correction components to be estimated for the LEO satellite \(i\), \(\updelta {\widehat{t}}^{s}\) and \(\updelta {\widehat{t}}^{r}\) represent the clock offsets of the GNSS satellite and the receiver on the LEO satellite, respectively, \({a}_{i1}\), \({a}_{i2}\) and \({a}_{i3}\) are the partial derivatives of the i-th pseudorange observation with respect to the LEO satellite position components, and \({l}_{{p}_{i}}\) is the difference between the pseudorange observation and the calculated distance between the LEO satellite and the observed GNSS satellite, commonly referred to as the observed-minus-calculated (O-C) residual.

The linearized error equation for the carrier phase corresponding to the observation Eq. (2) is expressed as

$$v_{{\varphi_{i} }} = b_{i1} \delta \hat{x}_{i} + b_{i2} \delta \hat{y}_{i} + b_{i3} \delta \hat{z}_{i} - c\delta \hat{t}^{s} + c\delta \hat{t}^{r} + \hat{N}\lambda - l_{{\varphi_{i} }}$$
(8)

where \({b}_{i1}\), \({b}_{i2}\) and \({b}_{i3}\) are the partial derivatives of the i-th carrier phase observation with respect to the position components of the LEO satellite, \(\widehat{N}\) denotes the phase ambiguity parameter to be estimated, and \({l}_{{\varphi }_{i}}\) is the difference between the carrier phase observation and the calculated distance between the LEO satellite and the observed GNSS satellite positions.

The linearized error equation for the inter-satellite range observation is expressed as

$$v_{ij} = c_{i1} {\updelta }\hat{x}_{i} + c_{i2} {\updelta }\hat{y}_{i} + c_{i3} {\updelta }\hat{z}_{i} + d_{i1} {\updelta }\hat{x}_{j} + d_{i2} {\updelta }\hat{y}_{j} + d_{i3} {\updelta }\hat{z}_{j} - c{\updelta }\hat{t}^{{s_{i} }} + c{\updelta }\hat{t}^{{s_{j} }} + {\updelta }\hat{s}_{i} - l_{{s_{ij} }}$$
(9)

where \(\updelta {\widehat{x}}_{j}\), \(\updelta {\widehat{y}}_{j}\) and \(\updelta {\widehat{z}}_{j}\) are the position components to be estimated for the LEO satellite \(j\), \({c}_{i1}\), \({c}_{i2}\), \({c}_{i3}\) and \({d}_{i1}\), \({d}_{i2}\), \({d}_{i3}\) are the partial derivatives of the ISL range observation between satellite \(i\) and \(j\) with respect to the state parameters of the two satellites, \(\updelta {\widehat{s}}_{i}\) is the systematic error to be estimated, and \({l}_{{s}_{ij}}\) is the difference between the inter-satellite range observation and the calculated value.

It is important to note that the model parameters to be estimated in the above mentioned observation equations include both the common parameters (i.e. the satellite orbit parameters) and the specific parameters used to compensate for certain systematic errors. For simplicity, the spaceborne GNSS pseudorange observation Eq. (7) can be expressed as

$${\varvec{V}}_{pk}^{i} = {\varvec{A}}_{pk}^{i} {\updelta }\hat{\user2{X}}_{k}^{i} - {\varvec{l}}_{pk}^{i}$$
(10)

where \(\updelta {\widehat{{\varvec{X}}}}_{k}^{i}\) is the correction vector of the state parameters for LEO satellite \(i\) at the epoch \(k\), \({{\varvec{A}}}_{pk}^{i}\) is the coefficient matrix of the pseudorange error equation, \({{\varvec{V}}}_{pk}^{i}\) is the residual vector, \({{\varvec{l}}}_{pk}^{i}\) is the vector of (O-C), and the weight matrix for the pseudorange observation vector \({{\varvec{V}}}_{pk}^{i}\) is \({{\varvec{P}}}_{p}\). Similarly, the carrier phase observation equation is expressed as:

$${\varvec{V}}_{\varphi k}^{i} = {\varvec{A}}_{\varphi k}^{i} {\updelta }\hat{\user2{X}}_{k}^{i} - {\varvec{l}}_{\varphi k}^{i}$$
(11)

where \({{\varvec{A}}}_{\varphi k}^{i}\) is the coefficient matrix of the carrier observation equation, \({{\varvec{V}}}_{\varphi k}^{i}\) is the residual vector of the carrier phase observation vector, \({{\varvec{l}}}_{\varphi k}^{i}\) is the corresponding vector of (O-C), and the weight matrix of the carrier phase observation vector \({{\varvec{l}}}_{\varphi k}^{i}\) is \({{\varvec{P}}}_{\varphi }\). For simplicity, the spaceborne GNSS observation Eqs. (10) and (11) can be expressed uniformly as

$${\varvec{V}}_{Gk}^{i} = {\varvec{A}}_{Gk}^{i} {\updelta }\hat{\user2{X}}_{k}^{i} - {\varvec{l}}_{Gk}^{i}$$
(12)

where \({{\varvec{V}}}_{Gk}^{i}\), consisting of \({{\varvec{V}}}_{{p}_{ik}}\) and \({{\varvec{V}}}_{{\varphi }_{ik}}\), is the observation residual vector for the GNSS observations of i-th satellite, and \({{\varvec{A}}}_{Gk}^{i}\) is the design matrix consisting of \({{\varvec{A}}}_{{p}_{ik}}\) and \({{\varvec{A}}}_{{\varphi }_{ik}}\). The \({{\varvec{l}}}_{Gk}^{i}\) is the vector of (O-C) of the error equation which is expressed as

$${\varvec{l}}_{Gk}^{i} = {\varvec{L}}_{Gk}^{i} - {\varvec{A}}_{Gk}^{i} {\varvec{X}}_{k}^{0i}$$
(13)

\({{\varvec{L}}}_{Gk}^{i}\) is the observation vector with covariance matrix as \({\boldsymbol{\Sigma }}_{Gk}^{i}\), and the unified weight matrix is expressed uniformly as \({{\varvec{P}}}_{Gk}^{i}\), \({{\varvec{X}}}_{k}^{0i}\) is the approximate orbit parameter vector of the satellite \(i\) at epoch \(k\).

The ISL ranging observation Eq. (10) is rewritten as follows:

$${\varvec{V}}_{{{\varvec{sk}}}}^{{{\varvec{ij}}}} = {\varvec{A}}_{sk}^{i} {\updelta }\hat{\user2{X}}_{k}^{i} + {\varvec{A}}_{sk}^{j} {\updelta }\hat{\user2{X}}_{k}^{j} - {\varvec{l}}_{sk}^{ij}$$
(14)

where \(\updelta {\widehat{{\varvec{X}}}}_{k}^{j}\) is the orbit state parameter correction vector for satellite j at epoch \(k\), \({{\varvec{A}}}_{sk}^{i}\) and \({{\varvec{A}}}_{sk}^{j}\) are the coefficient matrices of the error equation, \({{\varvec{V}}}_{sk}^{ij}\) is the residual vector of the range between satellite \(i\) and satellite \(j\), and \({{\varvec{l}}}_{sk}^{ij}\) is the vector of (O-C). The covariance matrix of the inter-satellite range observation vector is denoted as \({\boldsymbol{\Sigma }}_{sk}^{ij}\), and the corresponding weight matrix is \({{\varvec{P}}}_{sk}^{i}=({\boldsymbol{\Sigma }}_{sk}^{i}{)}^{-1}\).

The satellite’s dynamic Eq. (6) can also be expressed as a linear predicted state equation:

$$\overline{\user2{X}}_{k}^{i} ={\varvec{\varPhi}}_{{k,{ }k - 1}}^{i} \hat{\user2{X}}_{k - 1}^{i}$$
(15)

where \({\overline{{\varvec{X}}} }_{k}^{i}\) is the predicted orbit parameter vector at epoch \(k\) with the covariance matrix \({\boldsymbol{\Sigma }}_{{\overline{{\varvec{X}}} }_{k}^{i}}\) given by:

$${\varvec{\varSigma}}_{{\overline{\user2{X}}_{k}^{i} }} ={\varvec{\varPhi}}_{{k,{ }k - 1}}^{i}{\varvec{\varSigma}}_{{\hat{\user2{X}}_{k - 1}^{i}}}{({\varvec{\varPhi}}_{{k,{ }k - 1}}^{i}) ^T} +{\varvec{\varSigma}}_{{{\varvec{W}}_{{\text{k}}} }}$$
(16)

where \({\widehat{{\varvec{X}}}}_{k-1}^{i}\) is the estimated orbit parameter vector and \({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k-1}^{i}}\) is its covariance matrix at epoch \((k-1)\), and \({\boldsymbol{\Sigma }}_{{{\varvec{W}}}_{\text{k}}}\) is the covariance matrix of the dynamic model error vector at epoch \(k\).

The error equation corresponding to the predicted dynamic state Eq. (15) is given by:

$${\mathbf{V}}_{{\overline{\user2{X}}_{k} }}^{i} = {\updelta }\hat{\user2{X}}_{k}^{i}$$
(17)

where \({{\varvec{V}}}_{{\overline{{\varvec{X}}} }_{k}}^{i}\) is the residual vector of the dynamic model state vector, and \({\overline{{\varvec{X}}} }_{k}^{i}\), for the LEO satellite i. It is important to note that the virtual observation vector \({\overline{{\varvec{X}}} }_{k}^{i}\) predicted from the dynamic orbit model, is also an approximate state vector for the satellite \(i\), with its covariance matrix denoted as \({\boldsymbol{\Sigma }}_{{\overline{{\varvec{X}}} }_{k}^{i}}\).The corresponding weight matrix is denoted as \({{\varvec{P}}}_{{\overline{{\varvec{X}}} }_{k}^{i}}={\boldsymbol{\Sigma }}_{{\overline{{\varvec{X}}} }_{k}^{i}}^{-1}\).

Stepwise OD based on spaceborne GNSS observations and ISL ranges

The first step of autonomous OD is based on spaceborne GNSS observations. Let the orbital parameter vector to be estimated for each LEO satellite \(i\) at epoch \(k\) is denoted as \(\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i}\), with its covariance matrix \(\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} {}\). The least squares estimator is expressed as:

$$\delta \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} = \left[ {\left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} {\varvec{P}}_{Gk}^{i} {\varvec{A}}_{Gk}^{i} } \right]^{ - 1} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} {\varvec{P}}_{Gk}^{i} {\varvec{l}}_{Gk}^{i}$$
(18)

and the updated state vector is:

$$\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} = {\varvec{X}}_{k}^{0i} + \delta \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i}$$
(19)

where \({{\varvec{X}}}_{k}^{0i}\) is the initial approximate state parameter vector of the satellite i, without any prior information, and \({{\varvec{P}}}_{Gk}^{i}={\boldsymbol{\Sigma }}_{{{\varvec{l}}}_{Gk}^{i}}^{-1}\) is the weight matrix of \({{\varvec{l}}}_{Gk}^{i}\). The posterior covariance matrix of the estimated orbit parameters using the kinematic OD approach is given by:

$$\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} { = \left[ {({\varvec{A}}_{Gk}^{i} )^{T} {\varvec{P}}_{Gk}^{i} {\varvec{A}}_{Gk}^{i} } \right]^{ - 1} \hat{\sigma }_{0}^{2} }$$
(20)

where \({\widehat{\sigma }}_{0}^{2}\) is the estimated variance factor.

If the predicted dynamic orbit parameter vector \({\overline{{\varvec{X}}} }_{k}^{i}\) for each satellite is employed, the estimator for the orbit parameter vector is given by:

$$\hat{\user2{X}}_{k}^{i} = \overline{\user2{X}}_{k}^{i} + \left[ {{\varvec{P}}_{{\overline{X}_{k} }}^{i} + ({\varvec{A}}_{Gk}^{i} )^{{\text{T}}} {\varvec{P}}_{Gk}^{i} {\varvec{A}}_{Gk}^{i} } \right]^{ - 1} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} {\varvec{P}}_{Gk}^{i} {\varvec{l}}_{Gk}^{i}$$
(21)

where \({{\varvec{l}}}_{Gk}^{i}\) is expressed as:

$${\varvec{l}}_{Gk}^{i} = {\varvec{L}}_{Gk}^{i} - {\varvec{A}}_{Gk}^{i} \overline{\user2{X}}_{k}^{i}$$
(22)

The covariance matrix of the estimated orbit parameters is as follows (Yang et al., 2001):

$$\sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} { = \left[ {{\varvec{P}}_{{\overline{X}_{k} }}^{i} + ({\varvec{A}}_{Gk}^{i} )^{{\text{T}}} {\varvec{P}}_{Gk}^{i} {\varvec{A}}_{Gk}^{i} } \right]^{ - 1} \hat{\sigma }_{0}^{2} }$$
(23)

Similarly, the orbit parameter estimates \({\widehat{{\varvec{X}}}}_{k}^{j}\) for the j-th satellite along with its covariance matrix \({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{j}}\) can be obtained using the same approach.

An alternative recursive estimator of the orbit parameters is (Yang and Gao 2006; Yang et al., 2001):

$$\hat{\user2{X}}_{k}^{i} = \overline{\user2{X}}_{k}^{i} +{\varvec{\varSigma}}_{{\overline{\user2{X}}_{k}^{i} }} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} = \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} + \sum\nolimits_{Gk}^{i} {} } \right]^{ - 1} {\varvec{l}}_{Gk}^{i}$$
(24)

And the posterior covariance matrix is followed:

$$\sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} {} = \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} - \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{{{\varvec{Gk}}}}^{{\varvec{i}}} } \right)^{{\mathbf{T}}} \left[ {{\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\mathbf{T}}} + \sum\nolimits_{Gk}^{i} {} } \right]^{ - 1} {\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {}$$
(25)

The second step of the OD involves using the ISL range measurements between the satellite \(i\) and \(j\) to calculate the orbit parameter corrections. The corresponding range error equation is:

$${\varvec{V}}_{sk}^{ij} = {\varvec{A}}_{sk}^{ij} {\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} - {\varvec{l}}_{sk}^{ij}$$
(26)

where \(\updelta {\widehat{\widetilde{{\varvec{X}}}}}_{k}^{ij}=\left(\genfrac{}{}{0pt}{}{\delta {\widehat{\widetilde{{\varvec{X}}}}}_{k}^{i}}{\delta {\widehat{\widetilde{{\varvec{X}}}}}_{k}^{j}}\right)\) is the correction vector for \({\widehat{{\varvec{X}}}}_{k}^{ij}\), which is expressed as \({\widehat{{\varvec{X}}}}_{k}^{ij}=\left(\genfrac{}{}{0pt}{}{{\widehat{{\varvec{X}}}}_{k}^{i}}{{\widehat{{\varvec{X}}}}_{k}^{j}}\right)\) and estimated from the first step OD, and \({{\varvec{l}}}_{sk}^{ij}\) is the vector of (O-C), with the expression as:

$${\varvec{l}}_{sk}^{ij} = {\varvec{L}}_{Gk}^{ij} - {\varvec{A}}_{Gk}^{i} \hat{\user2{X}}_{k}^{ij}$$
(27)

where \({{\varvec{A}}}_{sk}^{ij}=[\begin{array}{cc}{{\varvec{A}}}_{sk}^{i}& -{{\varvec{A}}}_{sk}^{j}\end{array}]\) denotes the design matrix and \({{\varvec{L}}}_{Gk}^{ij}\) is the observation vector.

According to the principle of sequential least squares, the correction vector estimator for the orbit parameters is given by:

$${\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} = \left[ {\left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\mathbf{T}}} {\varvec{P}}_{sk}^{ij} {\varvec{A}}_{sk}^{ij} + \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }}^{ - 1} {} } \right]^{ - 1} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\mathbf{T}}} {\varvec{P}}_{sk}^{ij} {\varvec{l}}_{sk}^{ij}$$
(28)

The estimator can be equivalently expressed as:

$${\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} ={\varvec{\varSigma}}_{{\hat{\user2{X}}_{k}^{ij} }} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\mathbf{T}}} \left[ {{\varvec{A}}_{sk}^{ij}{\varvec{\varSigma}}_{{\hat{\user2{X}}_{k}^{ij} }} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\mathbf{T}}} +{\varvec{\varSigma}}_{sk}^{ij} } \right]^{ - 1} {\varvec{l}}_{sk}^{ij}$$
(29)

It is important to note that the matrix inversion in Eq. (28) and Eq. (29) corresponds to the number of orbital parameters and ISL range measurements, respectively. If only a few effective inter-satellite range observations are available, Eq. (29) is computationally more efficient. The integrated solution for the orbital parameter vector is

$$\widehat{{\tilde{\user2{X}}}}_{k}^{ij} = \hat{\user2{X}}_{k}^{ij} + {\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij}$$
(30)

with the posterior covariance matrix as

$$\sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ij} }} {} = \left[ {\left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\mathbf{T}}} {\varvec{P}}_{sk}^{ij} {\varvec{A}}_{sk}^{ij} + \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }}^{ - 1} {} } \right]^{ - 1}$$
(31)

or

$$\sum\nolimits_{\widehat {\tilde X}_k^{ij}} {} = \sum\nolimits_{\hat X_k^{ij}} {} - \sum\nolimits_{\hat X_k^{ij}} {} {\left( {A_{sk}^{ij}} \right)^{\text{T}}}{\left[ {A_{sk}^{ij}\sum\nolimits_{\hat X_k^{ij}} {} {{\left( {A_{sk}^{ij}} \right)}^{\text{T}}} + \sum\nolimits_{sk}^{ij} {} } \right]^{ - 1}}A_{sk}^{ij}\sum\nolimits_{\hat X_k^{ij}} {}$$
(32)

Obviously, when any additional ISL range observation is used in the OD, the posterior covariance matrix of the orbital parameter estimates is improved as

$$\Delta \sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ij} }} {} = \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} {\varvec{A}}_{sk}^{{ij}{\text{T}}} \left( {{\varvec{A}}_{sk}^{ij}{\varvec{\varSigma}}_{{\hat{\user2{X}}_{k}^{ij} }} {\varvec{A}}_{sk}^{{ij}{\text{T}}} +{\varvec{\varSigma}}_{sk}^{ij} } \right)^{ - 1} {\varvec{A}}_{sk}^{ij} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {}$$
(33)

It should be pointed that the orbit determination at the second step is easy in computation without any ill-posed problem, because the a priori orbit parameters are estimated with covariance matrix at the first step.

Stepwise OD with ISL distance constraints

We know that the microwave ranging accuracy between two satellites is at centimeter level, and the laser ranging accuracy at millimeter level, and the accuracy of GNSS-based positioning by using pseudorange observations is at about meter level. Therefore, the ISL ranges measured by laser links can be taken as constraints in the autonomous OD. For the sake of convenience, the satellite orbit state vector associated with the ISL range observations at the epoch \(k\) still uses the expression as \({\widehat{{\varvec{X}}}}_{k}^{ij}=\left(\genfrac{}{}{0pt}{}{{\widehat{{\varvec{X}}}}_{k}^{i}}{{\widehat{{\varvec{X}}}}_{k}^{j}}\right)\), with the covariance matrix as \({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{ij}}\). In this way, the ISL ranges \({\widetilde{S}}_{k}^{ij}\) between the LEO satellite i and j at epoch k can be taken as a constraint:

$$\left[ {\left( {\Delta \widehat{{\tilde{x}}}_{k}^{ij} } \right)^{2} + \left( {{\Delta }\widehat{{\tilde{y}}}_{k}^{ij} } \right)^{2} + \left( {{\Delta }\widehat{{\tilde{z}}}_{k}^{ij} } \right)^{2} } \right]^{\frac{1}{2}} - \tilde{S}_{k}^{ij} = 0$$
(34)

where \(\Delta {\widehat{\widetilde{x}}}_{k}^{ij}\), \({\Delta \widehat{\widetilde{y}}}_{k}^{ij}\) and \({\Delta \widehat{\widetilde{z}}}_{k}^{ij}\) are the estimated differences of the three coordinate components when LEO satellite \(i\) observing LEO satellite \(j\) at epoch k. The above constraint equation can be linearized at the estimated satellite positions by using the spaceborne GNSS observations with the expression as:

$${\varvec{B}}_{{\text{k}}} {\updelta }\widehat{{\tilde{\user2{X}}}}_{k} - {\text{d}}S_{k} = 0$$
(35)

where \(\updelta {\widehat{\widetilde{{\varvec{X}}}}}_{k}\) is the orbit parameter correction vector, \({{\varvec{B}}}_{k}\) is the unit vector between the two linked satellites, and \({\text{d}S}_{k}\) is expressed as:

$${\text{d}}S_{k} = \tilde{S}_{k}^{ij} - \left[ {\left( {\Delta \tilde{x}_{k}^{ij} } \right)^{2} + \left( {\Delta \tilde{y}_{k}^{ij} } \right)^{2} + \left( {\Delta \tilde{z}_{k}^{ij} } \right)^{2} } \right]^{\frac{1}{2}}$$
(36)

where \(\Delta {\widetilde{x}}_{k}^{ij}\), \(\Delta {\widetilde{y}}_{k}^{ij}\) and \(\Delta {\widetilde{z}}_{k}^{ij}\) are the coordinate difference components between the LEO satellite i and j determined by spaceborne GNSS observations.

It should be noted that the correlation between LEO satellites i and j determined by spaceborne GNSS observations is relatively weak after ignoring the correlation between the estimated positions of the satellites i and j, we can approximately express the covariance matrix \({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{ij}}\) as

$$\sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} = \left[ {\begin{array}{*{20}c} {\sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} {} } & {} \\ {} & {\sum\nolimits_{{\hat{\user2{X}}_{k}^{j} }} {} } \\ \end{array} } \right]$$
(37)

The least squares objective function can be described as follows:

$$\left( {{\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} } \right)^{{\text{T}}} ({\varvec{\varSigma}}_{{\hat{\user2{X}}_{k}^{ij} }} )^{ - 1} \left( {{\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} } \right) - 2{\varvec{\varLambda}}^{{\text{T}}} \left( {{\varvec{B}}_{k} {\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} - {\text{d}}S_{k} } \right) = {\text{min}}$$
(38)

where \(\boldsymbol{\Lambda }\) is the Lagrange multiplier vector. By derivation, we obtain the estimator for the orbit correction vector as

$${\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ij} = \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} {\varvec{B}}_{k}^{{\text{T}}} \left( {{\varvec{B}}_{k} {\Sigma }_{{\hat{\user2{X}}_{k}^{ij} }} {\varvec{B}}_{k}^{{\text{T}}} } \right)^{ - 1} {\text{d}}S_{k}$$
(39)

The final estimated orbit parameter vector is identical to that in Eq. (30). The posterior covariance matrix of the orbital parameter estimates is written as follows:

$$\sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ij} }} {} = \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} - \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} {\varvec{B}}_{k}^{{\text{T}}} \left( {{\varvec{B}}_{k} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} {\varvec{B}}_{k}^{{\text{T}}} } \right)^{ - 1} {\varvec{B}}_{k} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {}$$
(40)

It should be pointed out that the contribution of the inter-satellite distance constraints to the orbit parameter estimates and the covariance matrix are\({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{ij}}{{\varvec{B}}}_{k}^{\text{T}}{({{\varvec{B}}}_{k}{\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{ij}}{{\varvec{B}}}_{k}^{\text{T}})}^{-1}{{\varvec{dS}}}_{k}\), and \(\sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {} {\varvec{B}}_{k}^{{\text{T}}} \left( {{\varvec{B}}_{k}{\varvec{\varSigma}}_{{\hat{\user2{X}}_{k}^{ij} }} {\varvec{B}}_{k}^{{\text{T}}} } \right)^{ - 1} {\varvec{B}}_{k} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ij} }} {}\).

It is obvious that \({\boldsymbol{\Sigma }}_{{\widehat{\widetilde{{\varvec{X}}}}}_{k}}\le {\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}}\), which means that the constraints of ISL ranges usually improve the precision of the estimated orbit parameters. However, if there are some outlying ISL observations, incorrect constraints could distort the orbit parameter estimates.

If the observation accuracy of the ISL is not high enough, then we strongly recommend employing the stepwise orbit parameter estimator expressed from (28) to (32), i.e., the orbit parameters, \({\widehat{{\varvec{X}}}}_{k}\) are firstly determined using a kinematic or dynamic approach that relies solely on spaceborne GNSS observations. Subsequently, the parameter correction vector is calculated by ISL measurements.

The accuracy of the autonomous OD of large LEO constellations can be affected by the orbital dynamic model errors or satellite orbit destabilization. This can result in the anomalies in the predicted satellite orbit states and consequently distort the orbit parameter estimates. With the support of spaceborne GNSS observations and ISL range observations, the contribution of the dynamic model information can be adaptively adjusted. Assuming that the orbit parameter vector \({\overline{{\varvec{X}}} }_{k}^{i}\) of the i-th satellite at epoch \(k\) can be obtained by dynamic state error Eq. (15), the adaptive recursive solution of the satellite orbit parameters based on the dynamic model information and the on board GNSS observations can be expressed as follows (Yang et al., 2001)

$$\hat{\user2{X}}_{k}^{ia} = \overline{\user2{X}}_{k}^{i} + \frac{1}{{\alpha_{k} }}\sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{{{\varvec{G}}k}}^{i} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{Gk}^{i} \left( {\frac{1}{{\alpha_{k} }}\sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} } \right)\left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} + \sum\nolimits_{Gk}^{i} {} } \right]^{ - 1} {\varvec{l}}_{Gk}^{i}$$
(41)

where \({\widehat{{\varvec{X}}}}_{k}^{ia}\) is the adaptive estimates of the orbital parameter vector, \({\alpha }_{k}\) (\({0<\alpha }_{k}<1\)) is an adaptive factor expressed as (Yang & Gao, 2006)

$$\alpha _{k} = \left\{ {\begin{array}{*{20}c} 1 & {\left\| {\user2{\bar{X}}_{k}^{i} - \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} } \right\|^{2} \le \left\| {\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} {} } \right\|} \\ {\frac{{\left\| {\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} {} } \right\|}}{{\left\| {\user2{\bar{X}}_{k}^{i} - \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{{i}} } \right\|^2}}} & {\left\| {\user2{\bar{X}}_{k}^{i} - \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} } \right\|^{2}> \left\| {\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} {} } \right\|} \\ \end{array} } \right.$$
(42)

When the dynamic model error is normal, then \({\alpha }_{k}=1\); when \(\left\| {\user2{\bar{X}}_{k}^{i} - \user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} } \right\|^{2}> \left\| {\sum\nolimits_{{\user2{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{X} }_{k}^{i} }} {} } \right\|\), then \({\alpha }_{k}<1\), that is, the corresponding dynamic model’s contribution to the orbital parameter estimates can be reduced by amplification of the covariance matrix of the predicted state. Equation (41) can be equivalently expressed as

$$\hat{\user2{X}}_{k}^{ia} = \overline{\user2{X}}_{k}^{i} + \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{{{\varvec{Gk}}}}^{{\varvec{i}}} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} + \alpha_{k} \sum\nolimits_{Gk}^{i} {} } \right]^{ - 1} {\varvec{l}}_{Gk}^{i}$$
(43)

with the covariance matrix \({\boldsymbol{\Sigma }}_{{\widehat{{\varvec{X}}}}_{k}^{ia}}\). By using the variance–covariance propagation law (Yang et al., 2001), we have

$$\sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ia} }} {} = \sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} {} - \sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\overline{\user2{X}}_{k}^{i} }} {} \left( {{\varvec{A}}_{Gk}^{i} } \right)^{{\text{T}}} + \alpha_{k} \sum\nolimits_{Gk}^{i} {} } \right]^{ - 1} {\varvec{A}}_{Gk}^{i} \sum\nolimits_{{\hat{\user2{X}}_{k}^{i} }} {}$$
(44)

That is, when the dynamic model error is abnormal, the contribution of the GNSS observations is increased by decreasing the covariance matrix of the observations, which is equivalent to decreasing the contribution of the predicted satellite orbit state from the dynamic model.

It should be pointed out that in the adaptive factor calculation, the reference orbit parameters are only estimated by spaceborne GNSS observations, not ISL range observations. This is crucial because the ISL can currently introduce the anomalies due to dynamical model outlying errors or mechanical faults in ranging. If the GNSS and outlying ISL range observations are combined in the estimation of reference orbit parameters, the adaptive factor can be distorted, resulting in the distorted adaptive orbit parameter estimates.

Assuming that the adaptive orbital parameter vectors of satellite \(i\) and \(\text{j}\) estimated by using the spaceborne GNSS receiver observations are expressed as \({\widehat{{\varvec{X}}}}_{k}^{ija}=\left(\genfrac{}{}{0pt}{}{{\widehat{{\varvec{X}}}}_{k}^{ia}}{{\widehat{{\varvec{X}}}}_{k}^{ja}}\right)\) with the covariance matrix \(\sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {} = \left[ {\begin{array}{*{20}c} {\sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ia} }} {} } & {} \\ {} & {\sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ja} }} {} } \\ \end{array} } \right]\), ignoring the correlations between \({\widehat{{\varvec{X}}}}_{k}^{ia}\) and\({\widehat{{\varvec{X}}}}_{k}^{ja}\). Similar to the estimation of the stepwise orbit parameters with ISL range observations, we can easily obtain the correction vector of the adaptive orbit parameter estimates with the ISL range measurements as:

$${\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{aij} = \sum\nolimits_{{\widehat{{\tilde{\user2{X}}}}_{k}^{ija} }} {} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{sk}^{ij} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\text{T}}} + \sum\nolimits_{sk}^{ij} {} } \right]^{ - 1} {\varvec{l}}_{sk}^{ij}$$
(45)

where \(\updelta {\widehat{\widetilde{{\varvec{X}}}}}_{k}^{aij}\) is the correction vector of the adaptive estimated orbit parameter vector \({\widehat{{\varvec{X}}}}_{k}^{ija}\), Finally, the estimated orbit parameters with additional inter-satellite range measurements are expressed as follows:

$$\widehat{{\hat{\user2{X}}}}_{k}^{ija} = \hat{\user2{X}}_{k}^{ija} + {\updelta }\widehat{{\tilde{\user2{X}}}}_{k}^{ija}$$
(46)

The expression of the posterior covariance matrix is similar to (44), that is:

$$\sum\nolimits_{{\widehat{{\hat{\user2{X}}}}_{k}^{ija} }} {} = \sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {} - \sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\text{T}}} \left[ {{\varvec{A}}_{sk}^{ij} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {} \left( {{\varvec{A}}_{sk}^{ij} } \right)^{{\text{T}}} + \alpha_{k} \sum\nolimits_{sk}^{i} {} } \right]^{ - 1} {\varvec{A}}_{sk}^{ij} \sum\nolimits_{{\hat{\user2{X}}_{k}^{ija} }} {}$$
(47)

Simulation results and validation

Simulation of the constellation

The actual BDS-3 constellation is employed with 3GEO + 3IGSO + 24MEO satellites. A LEO constellation consisting of 24 satellites equally spaced in six orbit planes is simulated. The constellation configuration uses WALKER 24/6/1 with the ascending node difference of 60°. The orbit inclination angle is 98.5 and the altitude is 776 km and the radius of the satellite orbit is 7154.44 km. The Keplarian parameters of the simulated LEO satellites are listed in Table 1. The dynamical model used in the simulation of the standard orbits is shown in Table 2.

Table 1 Keplarian parameters for simulating LEO orbit
Table 2 Dynamical model used in the simulated standard orbits

It should be noted that the orbit parameters of the simulated LEO satellites, with Walker constellation configuration and the symmetric measurement topology, are little influenced by longer time variation. The main time-dependent influencing factors are the Earth's gravitational field and the relative measurement topology, which are characterized by a 24-h periodicity. Therefore, we only simulated the arc length of 24-h satellite measurements for the demonstration of the proposed OD strategies.

Furthermore, when the Earth gravity, atmospheric drag and solar radiation pressure perturbation effects are reasonably considered, the residual dynamical model error caused by the orbit altitude is less than 10% experientially. In our simulation, the same magnitude of the dynamic model error is used, and the orbit altitude does not significantly affect the conclusions of this paper.

Simulated observation data

Usually, the carrier phase and pseudorange should be simulated for the spaceborne GNSS, especially the accuracy of the carrier phase observation is much higher than that of the pseudorange observation. However, the pseudorange observations are usually employed in the actual orbit determination in real time for a very large satellite constellation, and the accuracy of the OD using the pseudorange observation meets the user requirements. Therefore, the pseudorange observations of the spaceborne GNSS receivers and the ISL range observations between LEO satellites are simulated to simplify the verification calculation. We simply assume that each LEO satellite is connected to four neighboring satellites, namely the front and back satellites in the same orbital plane, and the right and left satellites in the adjacent orbital planes. The simulated pseudorange noise of the spaceborne GNSS observation is 0.3 m, with a cutoff elevation angle of 15 degrees; the simulated range noise of the ISL ranges between the LEO satellites is 0.05 m, the sample interval is 30 s, and the simulation time span is one day. The main errors affecting the OD of LEO satellites are the GNSS ephemeris errors and clock bias. The ephemeris random error of the BDS satellites is assumed to be 1.5 m, while the clock random error of the GNSS receiver is assumed to be 0.5 m. Considering that the clock rate difference introduced by relativity is accurately eliminated through rigorous formulation, and the ionosphere effects are eliminated by the dual frequency difference observations, the residual error is less than 0.01 m, Therefore, we can ignore the above two types of errors in the simulation observations.

Results and analysis

Scheme 1: The kinematic OD approach is performed using the spaceborne GNSS pseudorange observations. The estimated parameters include the position vector and clock bias of the LEO satellite. The statistical results of the RMSE of the estimated orbit parameters are shown in Fig. 1a

Fig. 1
figure 1

RMSE of the six schemes. (a) RMSE of Scheme 1 (b) RMSE of Scheme 2 (c) RMSE of Scheme 3 (d) RMSE of Scheme 4 (e) RMSE of Scheme 5 (f) RMSE of Scheme 6 (g) RMSE of Scheme 7 (h) RMSE of Scheme 8

Scheme 2: The stepwise kinematic OD approach is performed using both the spaceborne GNSS pseudorange and the ISL range observations. The estimated parameters are the same as those of the Scheme 1. The RMSE of the estimated orbit parameters is shown in Fig. 1b

Scheme 3: The stepwise kinematic OD approach, with ISL range as a constraint, is performed. The estimated parameters are the same as those of Scheme 1. The RMSE of the estimated orbitparameters is shown in Fig. 1c

Scheme 4: The dynamic OD approach is performed. The dynamic reference orbit parameters are generated by adding some simulated systematic errors to the standard orbital parameters of each LEO satellite, which is then used to calculate the predicted state based on the transition equation of the LEO satellite. The parameters of the LEO satellite orbit to be estimated include the position vector, velocity vector, and clock offset. The RMSE of the estimated orbit parameters is shown in Fig. 1d

Scheme 5: The stepwise dynamic OD approach is performed using both GNSS pseudorange and ISL range observations. The estimated parameters include position vector, velocity vector, and clock offset of the LEO satellite. The RMSE of the estimated orbit parameters are shown in Fig. 1e

Scheme 6: The stepwise dynamic OD approach with ISL range constraints is performed. The estimated parameters are the same as those of the Scheme 5. The RMSE of the estimated orbit parameters is shown in Fig. 1f

Scheme 7: The stepwise dynamic OD is performed when the dynamical model outliers are simulated at two epochs with 5–10% of the predicted orbit parameters. The RMSE of the estimated orbit parameters is shown in Fig. 1g

Scheme 8: The adaptive stepwise dynamic OD is performed with the same situation as the Scheme 7. The RMSE of the estimated orbit parameters is shown in Fig. 1h

The comparison results of the RMSE of the estimated orbit positions for the six schemes are listed in Table 3.

Table 3 Comparison of the RMSE of the OD results for all schemes (with ISL range accuracy of 0.05 m)

We obtain the following results based on the comparison of the eight calculation schemes.

  1. (1)

    As shown in Fig. 1, the kinematic OD utilizes only the pseudorange observations to estimate the satellite orbit parameters without using any priori dynamic information, and thus the observation configuration strength plays important role in the accuracy of the estimated orbit parameters. The time sequence diagram of the kinematic OD shows that the stronger of the observation configuration is, the more accurate orbit parameters will be obtained. When the dynamic orbit information is utilized, the accuracy of the estimated orbit parameters of satellites is smoother. In other words, the kinematic OD using only GNSS pseudorange observations is sensitive to the geometry of visible GNSS satellites and the accuracy of their observations. After adding the ISL range observations, we observe a significant improvement in the accuracy of the estimated orbit parameters of LEO satellite, as illustrated in Fig. 1c and the RMSE of the satellite position is reduced from 0.605 27 to 0.182 87 m, shown also in Table 3.

  2. (2)

    The dynamic OD method can provide continuous and robust trajectory of the LEO satellite, and some of the outlying pseudorange observations can be easily identified and be removed thanks to the support of the satellite dynamic model information. Comparing the kinematic OD (Scheme 1) and the dynamic OD (Scheme 4) only using the spaceborne GNSS receiver observations, the RMSE of the satellite position is reduced from 0.605 27 to 0.196 45 m, as shown in Table 3. It is obvious that the orbit dynamic model information of the LEO satellites improves the accuracy of the estimated orbit parameters more effectively than the ISL range observations, when the number of ISLs is limited and the dynamic model information is valid and accurate.

  3. (3)

    It is reasonable that the spaceborne GNSS receiver observations, ISL range measurements, and the satellite dynamic model information are integrated in the stepwise OD estimation, comparing the results in Fig. 1d and Fig. 1. The RMSE of the LEO satellite position is improved from 0.196 45 m to 0.113 40 m after adding ISL range observations, compared to the dynamic OD approach that uses only the spaceborne GNSS observations and dynamic model information.

  4. (4)

    If the accuracy of the ISL range observations is high, the ISL ranges can be employed as fixed values, and then the constrained stepwise OD approach can be employed for the LEO satellites. We have found that when the accuracy of the ISL ranging observation is 5 cm, the RMS of the orbit parameters determined using the ISL range constraints is nearly the same as that of the integrated OD results. The difference of the RMSE of the satellite position is less than 1 mm. In this way, the OD in a large LEO constellation can be performed individually by using the kinematic OD or dynamic OD with the ISL range constraints, and thus the computational burden is significantly reduced.

  5. (5)

    Significant disturbances in the dynamic model can lead to the substantial errors in the estimated orbital parameters when employing the stepwise dynamic OD that incorporates both GNSS observations and ISL range measurements. The RMSE of the estimated orbit parameters is recorded as 12.65 m, with error influences persisting beyond the contaminated epochs, as illustrated in Fig. 1g. In contrast, the accuracy of the adaptive stepwise OD remains largely unchanged.

We should emphasize that if the accuracy of ISL observations is insufficient, we strongly recommend utilizing ISL ranges as observational data rather than constraints within the stepwise OD framework.

Furthermore, the accuracy and computation efficiency of the distributed stepwise OD and centralized OD strategies are also compared. The RMSE calculated using the differences between the estimated and reference orbit parameters are shown in Fig. 2a and b.

Fig. 2
figure 2

RMSE of the stepwise and centralized dynamic OD. (a) RMSE of the Stepwise OD (b) RMSE of centralized OD

Comparing the results of the stepwise and centralized dynamic OD using spaceborne GNSS and ISL observations, we find that the RMSE of the satellite position is about 0.11 m for the distributed stepwise OD and 0.09 m for the concentrated OD, respectively. The difference is about 2 cm. It means that the accuracy of the distributed stepwise OD is lower than that of the centralized OD, because the former neglects the correlations between the a priori orbit parameters of different satellite. The calculation efficiency of the stepwise OD, however, is improved by about 168 times compared with that of the centralized OD based on the simulated LEO constellation with only 24 satellites. It is certain that the calculation efficiency of the distributed stepwise OD will be much improved with the increase in the number of LEO satellites.

Conclusions

A large constellation with LEO satellites typically utilizes satellite-borne GNSS autonomous orbit determination method including the geometric (kinematic), dynamic, or reduced dynamic methods. The stepwise OD approaches for the LEO satellites with both satellite-borne GNSS observations and inter-satellite range observations are derived. Initially, the orbital parameter vector of each LEO satellite is calculated using satellite-borne GNSS observations; then the correction vector of the estimated orbit parameters is calculated using the related ISL range observations. It is obvious that the parameter estimation in the first and the second steps are only for few parameters, the computation burden of matrix inversion is greatly reduced compared to the integrated OD utilizing both kinds of observations. Furthermore, the orbit parameter estimation for a large constellation with some ILS range observations can be implemented in parallel, that is, the orbit parameters of each satellite can be independently calculated, and thus the calculation burden for the satellite orbit parameter estimation is also reduced. When the accuracy of ISL range measurements is at millimeter level, these measurements can be employed as constraints in the stepwise OD strategy. Both theoretical derivations and calculation results indicate that the integrated and stepwise OD approaches are nearly equivalent. The latter can separately estimate the orbit parameters for each LEO satellite in parallel. In addition, the ISL range observations can significantly improve the accuracy of the estimated orbit parameters. More importantly, the adaptive stepwise OD mode with the adaptive factor acting on the covariance matrix of the dynamic model information can effectively control the dynamic model error influence.

Availability of data and materials

Data sharing is not applicable.

References

Download references

Acknowledgements

The authors would like to thank the editors and reviewers for their valuable comments and suggestions, which significantly improve the manuscript. In addition, we would like to thank Prof. Rui Sun and Ms. Bijiao Sun for their help in revising the manuscript.

Funding

This work was funded by the National Natural Science Foundation of China (Grant No. 42388102; No. 41931076).

Author information

Authors and Affiliations

Authors

Contributions

YX. Y derived the formula and draft the manuscript. XY. S checked all the derivation and conducted the testing computation. The final manuscript has been read and approved by both authors.

Corresponding author

Correspondence to Yuanxi Yang.

Ethics declarations

Competing interests

Yuanxi Yang is an editorial board member for Satellite Navigation and was not involved in the editorial review or decision to publish this article. Both authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Yang, Y., Song, X. Stepwise autonomous orbit determination of large LEO constellations by GNSS observations with partial inter-satellite ranging. Satell Navig 6, 5 (2025). https://doi.org/10.1186/s43020-025-00160-1

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s43020-025-00160-1

Keywords