## 2 Methodology
### Single-Difference between-Satellites Observational Model  
The linearized undifferenced Ionosphere-Free (\(I\!F\)) model of the satellite (\(k\)) can be written as  
\[P_{1F}^{k}-\rho^{k}-\Delta\rho_{P,IF}^{k}=e_{1}\delta x_{r}+e_{2}\delta y_{r}+e_{ 3}\delta z_{r}+ct_{r}+m_{wet}\delta d_{wet}+\varepsilon_{P,IF} \tag{5}\]  
\[L_{1F}^{k}-\rho^{k}-\Delta\rho_{L,IF}^{k}=e_{1}\delta x_{r}+e_{2}\delta y_{r}+e_ {3}\delta z_{r}+ct_{r}+m_{wet}\delta d_{wet}-\lambda_{IF}\kappa_{IF}^{k}+ \varepsilon_{L,IF} \tag{6}\]  
where \(P_{IF}^{k}=\alpha P_{1}-\beta P_{2}\) and \(L_{1F}^{k}=\alpha L_{1}-\beta L_{2}\) are \(I\!F\) pseudorange and carrier-phase, wherein \(\alpha=f_{1}^{2}/(f_{1}^{2}-f_{2}^{2})\) and \(\beta=f_{2}^{2}/(f_{1}^{2}-f_{2}^{2})\) are \(I\!F\) combination coefficients based on frequencies \(f_{1}\) and \(f_{2}\); \(r\) and \(k\) represent receiver and satellite; \(\rho^{k}\) is the geometric distance between receiver and satellite; \(t_{r}\) represents the receiver clock offset; \(m_{wet}\) is the tropospheric wet delay mapping function; \(\delta d_{wet}\) is the corrections of zenith wet delay; \(E=\begin{bmatrix}e_{1}&e_{2}&e_{3}\end{bmatrix}^{T}\) is the orientation cosine vector; \(\delta\rho_{GNSS}^{e}=\begin{bmatrix}\delta x_{r}&\delta y_{r}&\delta z_{r} \end{bmatrix}\) represents receiver position correction in \(e\)-frame; \(\lambda_{IF}\) is the \(I\!F\) wavelength; \(N_{IF}^{k}\) is the \(I\!F\) float ambiguity [13]; \(\Delta\rho_{L,IF}^{k}\) and \(\Delta\rho_{P,IF}^{k}\) are the errors sum of carrier-phase and pseudorange; \(\varepsilon_{L,IF}\) and \(\varepsilon_{P,IF}\) are the measurement noise of carrier-phase and pseudorange [33].  
In addition to the pseudorange and carrier-phase measurements, the Doppler measurements are essential for calculating receiver velocity. The linearized observation equation of Doppler can be expressed as  
\[D_{IF}^{k}-\dot{\rho}^{k}-\Delta\dot{\rho}_{D,IF}^{k}=e_{1}\delta v_{x,r}+e_{ 2}\delta v_{y,r}+e_{3}\delta v_{z,r}+c\dot{t}_{r}+\varepsilon_{D,IF} \tag{7}\]  
where \(D_{IF}^{k}=\alpha D_{1}^{k}-\beta D_{2}^{k}\) is the Doppler measurement in meters; \(j\) represents frequency; the dot above the symbol indicates the variation. In general, except for the variation of receiver clocks (\(\dot{t}_{r}\)), satellite clocks, and geometric distance (\(\dot{\rho}^{k}\)), other errors' variations are close to zero and are ignored. \(\delta v_{GNSS}^{e}=\begin{bmatrix}\delta v_{x,r}&\delta v_{y,r}&\delta v_{z, r}\end{bmatrix}\) are the vector of receiver velocity corrections; \(\Delta\dot{\rho}_{D,IF}^{k}\) denotes the sum of Doppler errors; \(\varepsilon_{D}\) is Doppler noise.  
Compared to the undifferenced model, the BSSD model has the advantage that receiver-related errors such as the receiver clock, receiver hardware delay, and unmodelled errors can be eliminated [28; 34]. The BSSD \(I\!F\) model can be obtained by  
\[\Delta P_{IF}^{km}-\Delta\rho^{km}-\Delta\rho_{P,IF}^{km}=e_{1}^{km}\delta x_{ r}+e_{2}^{km}\delta y_{r}+e_{3}^{km}\delta z_{r}+m_{wet}^{km}\delta d_{wet}+ \varepsilon_{P,IF}^{km} \tag{8}\]  
\[\Delta L_{IF}^{km}-\Delta\rho^{km}-\Delta\rho_{L,IF}^{km}=e_{1}^{km}\delta x_{ r}+e_{2}^{km}\delta y_{r}+e_{3}^{km}\delta z_{r}+m_{wet}^{km}\delta d_{wet}- \lambda_{IF}\delta N_{IF}^{km}+\varepsilon_{L,IF}^{km} \tag{9}\]  
\[\Delta D_{IF}^{km}-\Delta\dot{\rho}_{D,IF}^{km}=e_{1}^{km}\delta v_{x,r}+e_{2}^ {km}\delta v_{y,r}+\varepsilon_{3}^{km}\delta v_{z,r}+\varepsilon_{D,IF}^{km} \tag{10}\]  
where \(\Delta L_{IF}^{km}=L_{IF}^{m}-L_{1F}^{k}\); \(\Delta D_{IF}^{km}=P_{IF}^{m}-P_{IF}^{k}\); \(\Delta D_{IF}^{km}=D_{IF}^{m}-D_{IF}^{k}\); \(\Delta\dot{\rho}^{km}=\dot{\rho}^{m}-\rho^{k}\); \(\Delta\dot{\rho}^{km}=\dot{\rho}^{m}-\rho^{k}\); \(\delta\dot{\rho}^{km}=\dot{\rho}^{k}\); \(\delta N_{IF}^{km}=\delta N_{IF}^{m}-\delta N_{IF}^{k}\); superscripts \(k\) and \(m\) represent satellite and the reference satellite. In this paper, GPS and BDS separately choose the reference satellite.