# Performance Evaluation of Adaptive Tracking Techniques with Direct-State Kalman Filter +
## 2 Tracking Scheme of Direct-State Kalman Filter
### Standard Scalar Tracking Loop  
The STL's tracking scheme must be revisited to understand the relationship between the standard STL and the DSKF. Figure 2 shows the block diagram of the STL's linear  
Figure 1: Research roadmap and comparison to other publications. model. The comparator is a linearized discriminator that performs the difference between the input signal's synchronization parameter \(\epsilon\) and the estimated smoothed error \(\epsilon_{\mathrm{s}}\):  
\[\epsilon_{\mathrm{u}}[n]=\epsilon[n]-\epsilon_{\mathrm{s}}[n] \tag{1}\]  
where \(n\) is the sample index, and \(\epsilon_{\mathrm{u}}\) is the un-smoothed error that outputs the comparator. The loop filter smooths \(\epsilon_{\mathrm{u}}\) and drives the smoothed error rate \(\dot{\epsilon}_{\mathrm{s}}\) to the NCO. Finally, the NCO closes the loop, sending \(\epsilon_{\mathrm{s}}\) to the comparator. Depending on the type of discriminator, \(\epsilon\) represents the carrier offset (PLL), the frequency Doppler (FLL), or the code phase offset (DLL). Considering that the backward Euler transform (BET) is used to discretize the STL [30], the open-loop digital SSM representation of a \(p^{th}\)-order STL is expressed as follows:  
\[\underbrace{ \begin{bmatrix}x_{1}[n]\\ x_{2}[n]\\ \vdots\\ x_{p}[n]\end{bmatrix} }_{\mathbf{x}[n]}=\underbrace{ \begin{bmatrix}1&\tau_{ \mathrm{int}}&\tau_{\mathrm{int}}^{2}&\cdots&\tau_{\mathrm{int}}^{p-1}\\ 0&1&\tau_{\mathrm{int}}&\cdots&\tau_{\mathrm{int}}^{p-2}\\ \vdots&\vdots&\ddots&\ddots&\vdots\\ 0&0&0&\cdots&\tau_{\mathrm{int}}\\ 0&0&0&\cdots&1\end{bmatrix} }_{\mathbf{A}}\underbrace{ \begin{bmatrix}x_{1}[n-1] \\ x_{2}[n-1]\\ \vdots\\ x_{p}[n-1]\end{bmatrix} }_{\mathbf{x}[n-1]}+\underbrace{ \begin{bmatrix}\alpha _{p-1}\\ \alpha_{p-2}\\ \vdots\\ \alpha_{0}\end{bmatrix} }_{\mathbf{\alpha}}\tau_{\mathrm{int}}\,\epsilon_{ \mathrm{u}}[n] \tag{2}\]  
\[\epsilon_{\mathrm{s}}[n]=\underbrace{ \begin{bmatrix}1&0&\cdots&0\\ \end{bmatrix} }_{\mathbf{H}}\,\,\mathbf{A}\,\mathbf{x}[n-1] \tag{3}\]  
\[\mathbf{x}\in\Re^{p\times 1}\qquad\mathbf{H}\in\Re^{1\times p}\qquad\mathbf{A} \in\Re^{p\times p} \tag{4}\]  
where \(\mathbf{x}\) is the state vector, \(\mathbf{A}\) is the state transition matrix, \(\boldsymbol{\alpha}\) is the filter coefficients vector, and \(\mathbf{H}\) is the observation matrix. To calculate the STL's open-loop transfer function \(H_{\mathrm{o}}(z)\), the z-transform \(\mathcal{Z}(\cdot)\) of Equations (2) and (3) must be performed first:  
\[\mathcal{Z}(\epsilon_{\mathrm{s}})=\mathbf{H}\,\mathbf{A}\,z^{-1}\,\mathcal{ Z}(\mathbf{x}) \tag{6}\]  
Second, Equations (5) and (6) are combined:  
\[\mathcal{Z}(\epsilon_{\mathrm{s}})=\mathbf{H}\,\mathbf{A}\,\Big{(}\mathbf{I} -\mathbf{A}\,z^{-1}\Big{)}^{-1}\,\boldsymbol{\alpha}\,\tau_{\mathrm{int}}\,z^ {-1}\,\mathcal{Z}(\epsilon_{\mathrm{u}}) \tag{7}\]  
Figure 2: Linear model of the scalar tracking loop (STL). Finally, the open-loop transfer function \(H_{\rm o}(z)\) is expressed as:  
\[H_{\rm o}(z) =\mathcal{Z}\bigg{(}\frac{\epsilon_{\rm s}}{\epsilon_{\rm u}}\bigg{)} =\mathbf{H}\,\mathbf{A}\,\Big{(}\mathbf{I}-\mathbf{A}\,z^{-1}\Big{)}^{-1} \boldsymbol{\alpha}\,\tau_{\rm int}\,z^{-1} \tag{8}\] \[=\sum_{l=0}^{p-1}\frac{\alpha_{l}\tau_{\rm int}^{p-l}z^{-1}}{(1-z ^{-1})^{p-l}}\] (9) \[=\underbrace{\sum_{l=0}^{p-1}\frac{\alpha_{l}\tau_{\rm int}^{p-l -1}}{(1-z^{-1})^{p-l-1}}}_{F(z)}\,\cdot\underbrace{\frac{\tau_{\rm int}z^{-1}} {1-z^{-1}}}_{N(z)} \tag{10}\]  
where \(F(z)\) and \(N(z)\) indicate the loop filter's and NCO's transfer function. The closed-loop transfer function \(H_{\rm c}(z)\) is related to \(H_{\rm o}(z)\) considering the z-transform of Equation (1):  
\[H_{\rm c}(z)=\mathcal{Z}\bigg{(}\frac{\epsilon}{\epsilon_{\rm u}}\bigg{)}= \frac{H_{\rm o}(z)}{1+H_{\rm o}(z)} \tag{11}\]  
Figure 3 presents a particular case of the STL with \(p=3\). The open-loop SSM of a third-order STL is derived from Equations (2) and (3):  
\[ \begin{bmatrix}x_{1}[n]\\ x_{2}[n]\\ x_{3}[n]\end{bmatrix} =