## 4 NR Navigation System
### EKF for LEO Navigation
The pseudorange rate \(\dot{\rho}_{i}(k)\), measured from FLL, incorporates the satellite-receiver relative velocity \(\dot{r}_{i}(k)\) and receiver's clock drift \(\delta t(k)\):  
\[\dot{\rho}_{i}(k)=\dot{r}_{i}(k)+c\delta t(k)+\varepsilon_{v,i}(k) \tag{29}\]  
where \(\varepsilon_{v,i}(k)\) represents the velocity measurement error. Assuming an LEO NR navigation receiver tracking \(N\) satellites, the augmented observation vector \(\boldsymbol{\rho}(k)\) contains all the pseudorange and pseudorange rate measurements, i.e,:  
\[\boldsymbol{\rho}(k)=[\rho_{1}(k),\cdots,\rho_{N}(k),\dot{\rho}_{1}(k),\cdots,\dot{\rho}_{N}(k)]^{\text{T}} \tag{30}\]  
Therefore, the receiver's tracking loop provides \(2N\) observations for estimating eight state parameters, establishing an overdetermined system when \(N>4\). The nonlinear observation equation is formulated as  
\[\boldsymbol{\rho}(k)=h[\mathbf{x}(k)]+\mathbf{v}_{k} \tag{31}\]  
where \(h(\cdot)\) denotes the pseudorange and pseudorange rate measurement function, and \(\mathbf{v}_{k}=[\varepsilon_{1}(k),\varepsilon_{2}(k),\cdots,\varepsilon_{N} (k),\ \ \varepsilon_{v,1}(k),\varepsilon_{v,2}(k),\cdots,\varepsilon_{v,N}(k)]\) represents observation noise. Its covariance matrix \(\mathbf{R}_{k}\) characterizes the measurement noise:  
\[\mathbf{R}_{k}=\text{E}\Big{[}\mathbf{v}_{k}\mathbf{v}_{k}^{\text{T}}\Big{]} \tag{32}\]  
\(\mathbf{R}_{k}\) has a close relationship with the carrier-to-noise ratio and is acquired according to measured noise. EKF uses the Jacobian matrix \(\mathbf{H}_{k}\) to linearize the observation model, and it is the partial derivative of the measurement function to the state vector:  
\[\mathbf{H}_{k}=\frac{\partial h(\mathbf{x}(k))}{\partial\mathbf{x}(k)} \tag{33}\]  
This matrix quantifies the sensitivity of observations to variations in receiver position, velocity, and clock bias parameters. Moreover, the covariance matrix \(\mathbf{P}_{k}\) characterizes the estimation accuracy of the state vector, and its definition is as follows:  
\[\mathbf{P}_{k}=\mathrm{E}\Big{[}(\mathbf{x}(k)-\hat{\mathbf{x}}(k))(\mathbf{ x}(k)-\hat{\mathbf{x}}(k))^{\mathrm{T}}\Big{]} \tag{34}\]  
where \(\mathbf{x}(k)\) and \(\hat{\mathbf{x}}(k)\) represent the true states and estimated states, respectively. Figure 5 illustrates the EKF's update process, which contains prediction and correction modules. At the beginning of the EKF update, two initial parameters are required: (1) initial state vector \(\mathbf{x}(0)\), obtained via least-squares positioning using first-epoch observations; and (2) initial covariance matrix \(\mathbf{P}(0)\), evaluated by the uncertainties in position, velocity, and clock ambiguity. In EKF, iterations update execute recursive prediction-correction cycles: In the prediction phase, the filter propagates the state estimate \(\hat{\mathbf{x}}^{-}(k+1)\) and covariance \(\mathbf{P}^{-}(k+1)\) from \(\hat{\mathbf{x}}(k)\) and \(\mathbf{P}(k)\) by using the system dynamics model. Then, the correction phase refines these predictions through observation vector \(\boldsymbol{\rho}(k)\) and Kalman gain matrix \(\mathbf{K}_{k}\):  
\[\mathbf{K}_{k}=\mathbf{P}_{k}^{-}\mathbf{H}_{k}^{\mathrm{T}}(\mathbf{H}_{k} \mathbf{P}_{k}^{-}\mathbf{H}_{k}^{\mathrm{T}}+\mathbf{R}_{k})^{-1} \tag{35}\]  
The updated state estimate and covariance are as follows:  
\[\hat{\mathbf{x}}(k)=\hat{\mathbf{x}}^{-}(k)+\mathbf{K}_{k}(\boldsymbol{\rho}( k)-h(\hat{\mathbf{x}}^{-}(k))) \tag{36}\]  
\[\mathbf{P}(k)=(\mathbf{I}-\mathbf{K}_{k}\mathbf{H}_{k})\mathbf{P}_{k}^{-} \tag{37}\]  
This closed-loop EKF outputs real-time navigation solutions while maintaining an optimal balance between model predictions and sensor measurements. \[\dot{\rho}_{i}(k)=\dot{r}_{i}(k)+c\delta t(k)+\varepsilon_{v,i}(k) \tag{29}\]0 EKF update process.