## 2 Single Point Positioning Technology  
The Single Point Positioning technology can provide meter-level positioning accuracy for emerging multi-GNSS integration and opens various new prospects. GNSS brings more signals to improve the user position and velocity accuracy. In this paper, observation models of three satellite systems (GPS, Galileo and GLONASS) are combined. For combining these satellites data, two important things are paid attention to: coordinate reference and time reference. With respect to the coordinate reference, the coordinate systems of GPS, Galileo and GLONASS satellites adopt the broadcast orbits of WGS-84, GTRF and PZ90.11, respectively. Even though their coordinates are different, the disparity is around several centimeters as stated in [29]. As a result, their coordinate systems are considered the same. As for the time reference, GPS, Galileo and GLONASS systems define their own time scale. These time systems are presented in the RINEX report version 3.03 [30]. GPS time (\(GPST\)) runs parallel to UTC (Universal Time Coordinated) (1 microsecond difference), but it is a continuous time scale that does not insert any leap seconds. Galileo runs on Galileo System Time (\(GST\)) which is nearly identical to GPS time (tens of nanoseconds difference). GLONASS is basically running on UTC or, more precisely, GLONASS time (\(GLONASST\)) linked to UTC(SU). It is not a continuous time, i.e., it introduces the same leap seconds as UTC. The reported GLONASS time has the same hours as UTC and not UTC+3h as the original GLONASS System Time. Apart from the mild errors in the realization of the different time systems, the relation between them is given by:  
\[GLONASST=UTC\quad\text{and}\quad GPST=GST=UTC+\Delta tLS+\tau GPS \tag{1}\]  
where \(\Delta tLS\) is the time difference between \(GPST\) and \(UTC\) due to leap seconds (1 January 2019, \(\Delta tLS=18\)), \(\tau_{GPS}\) is the fractional time offset between the two systems (GPS and GLONASS). After synchronization of the coordinate and time systems, the position and velocity estimation models are presented in the following. Pseudo-range measurements are considered as the sum of the distance to the satellite, the receiver clock error, the ionospheric and tropospheric errors and multi-paths. They are expressed as follows:  
Figure 1: Global flowchart for the position estimation. \[\rho^{G,E,R}=\sqrt{\left(x_{G,E,R}-x_{u}\right)^{2}+\left(y_{G,E,R}-y_{ u}\right)^{2}+\left(z_{G,E,R}-z_{u}\right)^{2}}\\ +c\left(\delta t_{G,E,R}-\delta TS_{G,E,R}\right)+Iono_{G,E,R}+Tropo _{G,E,R}+Mulpa_{G,E,R}+\varepsilon_{\rho,G,E,R} \tag{2}\]  
where the superscripts/subscripts \(G\), \(E\) and \(R\) refer to GPS, Galileo and GLONASS satellites respectively; \(\rho\) is the measured pseudo-range; \(c\) is the speed of light in vacuum; \(\left[x_{u},y_{u},z_{u}\right]\) is the user position; \(\left[x_{G,E,R},y_{G,E,R},z_{G,E,R}\right]\) are positions of GPS, Galileo and GLONASS satellites respectively; \(\delta t\) is the user clock offset; \(\delta TS\) is the satellite clock offset; \(Iono\) is the ionospheric delay; \(Tropo\) is the tropospheric delay; \(Mulpa\) are the multi-paths and \(\varepsilon_{\rho}\) is measured noise. Before the determination of user position and velocity, it is required to correct the GNSS errors that are the satellites clocks bias, the ionospheric errors, the tropospheric errors, and the multi-paths. The corrections of the satellite clock for GPS and GLONASS are presented in [31] (pp. 88-89), whereas the correction of the satellite clock of GLONASS is discussed in [30] (p. 34). We use the Saastamoinen model to correct the tropospheric errors as in [32] (pp. 135-137). We correct the ionospheric errors using the dual-frequency method in [23] (p. 286). While the multi-paths are estimated by the combination of the code pseudo-ranges and the phase pseudo-ranges in [23] (pp. 290-291).