## 2 Vector-Tracking Loops  
The vector-tracking algorithm is an advanced satellite navigation signal-processing algorithm. A conventional scalar receiver assigns a tracking channel to each visible satellite, and the tracking channel processes the baseband signal using a code loop (delay lock loop, DLL) and a carrier loop (phase lock loop, PLL). Each tracking channel is independent of the others, which ignores the inherent relationships between channels and between navigation parameters and tracking channels [1]. Therefore, this is not a structural form that realizes the best performance. Vector-tracking loops leverage a Kalman filter to simultaneously conduct signal tracking and navigation solutions calculation. The navigation parameters are used to control the operation of the tracking loops, and the correlations between tracking channels are fully considered, which can significantly improve the tracking performance of the receiver. Moreover, the vector-tracking loops are the basis for the construction of a GNSS/inertial deep integration navigation system. The vector receiver uses the traditional acquisition and scalar tracking algorithm to decode the ephemeris and to obtain the first navigation solution, which is used to complete the necessary initialization work [13; 14]. In vector mode, the receiver uses the predicted position and velocity and the ephemeris to calculate the control command of the numerically controlled oscillator (NCO) to generate the local replica code and carrier. After the local replica signal and the received signal complete the mixing and correlation operations, the correlation results are input into the code discriminator and the carrier frequency discriminator, and the code phase and carrier frequency tracking error are calculated. Then, the signal-tracking errors are converted into pseudorange residuals and pseudorange rate residuals as the measurement vector of the navigation Kalman filter. States of the Kalman filter are fed back to correct the position and velocity prediction errors. The basic structure of the vector-tracking loops is illustrated in Figure 1. The details of one of the tracking channels are presented in the dashed box. Figure 1: Basic structure of the vector-tracking loops. In Figure 1, the navigation Kalman filtering (NKF) is the core of a vector receiver, which estimates the navigation solutions and closes the tracking loops simultaneously. From the perspective of NKF, the vector-tracking algorithm includes two forms: centralized filtering and federated filtering. The state vector of NKF can select the position-state formulation or the pseudorange-state formulation [15; 16]. Centralized filtering avoids the filter divergence that is caused by filter cascade. The position-state formulation has a clearer physical meaning, and the state dimension is lower than the pseudorange-state formulation. Therefore, the centralized filtering structure in the form of the position-state formulation is used as the basic reference frame for vector-tracking loops design. In the position-state formulation, the typical states of the navigation Kalman filter are the receiver's position, velocity, and clock states [15]. The state vector of the navigation Kalman filter is  
\[\mathbf{X}=\left[ \begin{array}{cc}(\delta\mathbf{P}_{3\times 1})^{T}&(\delta\mathbf{V}_{3 \times 1})^{T}&(\delta\mathbf{A}_{3\times 1})^{T}&(\delta\mathbf{B}_{2\times 1})^{T} \end{array} \right]^{T} \tag{1}\]  
where \(\delta\mathbf{P}_{3\times 1}\), \(\delta\mathbf{V}_{3\times 1}\) and \(\delta\mathbf{A}_{3\times 1}\) denote the position errors, velocity errors, and acceleration errors, respectively, in three directions and \(\delta\mathbf{B}_{2\times 1}\) represents the receiver's clock bias and clock drift errors. The discretized form of the system equation is as follows:  
\[\mathbf{X}_{k}=\mathbf{\Phi}_{k,k-1}\mathbf{X}_{k-1}+\mathbf{\eta}_{k-1} \tag{2}\]  
where \(\mathbf{\Phi}_{k,k-1}\) is the state transition matrix, which is formulated as follows:  
\[\mathbf{\Phi}_{k,k-1}=\left[