# A Joint Dual-Frequency GNSS/SINS Deep-Coupled Navigation System for Polar Navigation
## 3 Deep-Coupled Navigation System Design
### NCO Feedback Control  
The information feedback from the integrated navigation solution to the GNSS tracking loops forms another important part of the deep-coupled strategy. The corrected position and velocity states of the SINS and the estimated clock states are converted into pseudoranges and range rates (Doppler frequencies) and subsequently used to update the code and carrier NCOs.  
The Doppler frequency for the \(j\)th tracking channel is predicted using Equation (29) or can be a filtered version of its measurement:  
\[\left\{\begin{array}{l}\hat{f}_{\rm d,\ L1 CA}^{j}=\frac{-\big{(}(\hat{\mathbf{ \upsilon}}_{u}-\mathbf{\upsilon}_{s}^{j})\cdot\hat{\mathbf{e}}+\delta\hat{t}_{f}-\delta \hat{t}_{f}^{j}\big{)}\cdot f_{\rm L1 CA0}}{c}\\ \hat{f}_{\rm d,\ L2 CM}^{j}=\frac{-\big{(}(\hat{\mathbf{\upsilon}}_{u}-\mathbf{\upsilon} _{s}^{j})\cdot\hat{\mathbf{e}}+\delta\hat{t}_{f}-\delta\hat{t}_{f}^{j}\big{)}\cdot f _{\rm L2 CM0}}{c}\end{array}\right. \tag{29}\]  
where \(\mathbf{\upsilon}_{s}^{j}\) and \(\delta\hat{t}_{f}^{j}\) are the velocity vector and clock drift of the \(j\)th satellite; \(\mathbf{\upsilon}_{u}\) and \(\delta\hat{t}_{f}\) are the user's velocity vector and clock drift; and \(c\) is the speed of light.  
Then, the carrier frequency is generated as  
\[\left\{\begin{array}{l}\hat{f}_{\text{c,L1 CA}}^{j}=f_{\text{IF}}+\hat{f}_{\text{d, L1 CA}}^{j}+f_{\text{NCO,L1 CA}}=f_{\text{IF}}-\frac{\left((\hat{\
u}_{u}-\
u_{s}^{j}) \cdot e^{j}+\delta\hat{t}_{f}-\delta\hat{t}_{f}^{j}\right)\cdot f_{\text{L1 CA0}} }{c}+f_{\text{NCO,L1 CA}}\\ \hat{f}_{\text{c,L2 CM}}^{j}=f_{\text{IF}}+\hat{f}_{\text{d,L2 CM}}^{j}+f_{\text{ NCO,L2 CM}}=f_{\text{IF}}-\frac{\left((\hat{\
u}_{u}-\
u_{s}^{j})\cdot e^{j}+\delta \hat{t}_{f}-\delta\hat{t}_{f}^{j}\right)\cdot f_{\text{L2 CM0}}}{c}+f_{\text{NCO,L2 CM}}\end{array}\right. \tag{30}\]  
where \(f_{\text{NCO,L1 CA}}\) and \(f_{\text{NCO,L2 CM}}\) are carrier NCO correction items which are generated by the estimated carrier phase errors.  
The pseudorange for the \(j\)th tracking channel is predicted in Equation (31):  
\[\hat{\rho}^{j-}=\|\mathbf{X}_{u}^{-}-\mathbf{X}_{s}^{j-}\|+\delta\hat{t}_{u}^{-}=\sqrt {\left(\hat{x}_{u}^{-}-x_{s}^{j-}\right)^{2}+\left(\hat{y}_{u}^{-}-y_{s}^{j-} \right)^{2}+\left(\hat{z}_{u}^{-}-z_{s}^{j-}\right)^{2}}+\delta\hat{t}_{u}^{-} \tag{31}\]  
where \(\hat{x}_{u}^{-},\hat{y}_{u}^{-},\hat{z}_{u}^{-}\), and \(\delta\hat{t}_{u}^{-}\) are the user's predicted position and clock bias; \(\hat{x}_{s}^{j-},\hat{y}_{s}^{j-}\), and \(\hat{z}_{s}^{j-}\) are the \(j\)th satellite's position. Then, the code frequency is generated as  
\[\left\{\begin{array}{l}\hat{f}_{\text{code,L1 CA,k+1}}^{j}=f_{\text{code,L1 CA 0}}\cdot\left[1-\frac{\hat{\rho}_{k+1}^{j-}-\hat{\rho}_{k}^{j-}}{c\cdot\tau_{ \text{N}}}\right]\\ \hat{f}_{\text{code,L2 CM,k+1}}^{j}=f_{\text{code,L2 CM0}}\cdot\left[1-\frac{\hat {\rho}_{k+1}^{j-}-\hat{\rho}_{k}^{j-}}{c\cdot\tau_{\text{N}}}\right]\end{array}\right. \tag{32}\]  
where \(\tau_{\text{N}}\) is the code NCO update period and \(k\) denotes the \(k\)th update of the NCO.