## 1 Introduction
### Square-Root Continuous-Discrete Cubature Kalman Filter Algorithm  
In order to ensure the positive definiteness and symmetry of the error covariance matrix, the square-root continuous-discrete cubature Kalman filter is introduced here. Similar to the typical CKF method, the continuous-discrete time system is combined with the cubature criterion, which is also divided into two steps: time update and measurement update. In the SRCD-CKF algorithm, the state cubature points can be defined as [23]  
\[\mathbf{X}_{i}(t)=\mathbf{S}(t)\xi_{i}+\mathbf{\hat{x}}(t), \tag{5}\]  
where \(\mathbf{S}(t)\) is the lower triangular matrix of the covariance matrix, satisfying \(\mathbf{P}(t)=\mathbf{S}(t)\mathbf{S}^{\rm T}(t)\), and \(\xi_{i}\) is the cubature point set, which is defined as  
\[\xi_{i}(t)= \begin{cases}\sqrt{n}\mathbf{\eta}_{i}&i=1,\cdots,n\\ \sqrt{n}\mathbf{\eta}_{i-n}&i=n+1,\cdots,2n\end{cases}  \tag{6}\]  
where \(\mathbf{\eta}_{i}\) is the \(i\)-th coordinate column-vector in \(\mathbb{R}^{n}\). Based on the cubature criterion, its expectation and covariance can be re-expressed as  
\[\frac{d\mathbf{\hat{x}}(t)}{dt}=\mathbf{F}(\mathbf{X}(t))\mathbf{\varepsilon}, \tag{7}\]  
\[\frac{d\mathbf{P}(t)}{dt}=\mathbf{X}(t)\mathbf{W}\mathbf{F}^{\rm T}(\mathbf{X}(t))+\mathbf{F}(\mathbf{X}(t ))\mathbf{X}^{\rm T}(t)+\mathbf{Q}(t). \tag{8}\]The parameters of \(\varepsilon\) and \(W\) are defined as follows:  
\[\left\{ \begin{array}{l}\varepsilon=\frac{1}{2n}\\ \boldsymbol{W}=(\boldsymbol{I}_{2n}-\boldsymbol{1}^{\mathrm{T}}\otimes \varepsilon)\mathrm{diag}[1/(2n),\cdots,1/(2n)](\boldsymbol{I}_{2n}- \boldsymbol{1}^{\mathrm{T}}\otimes\varepsilon)^{\mathrm{T}},\end{array} \right. \tag{9}\]  
where \(\boldsymbol{I}_{2n}\) represents a unit matrix with a dimension of \(2n\), \(\boldsymbol{1}\) is a unit column vector, and \(\otimes\) represents the Kronecker tensor. For the calculation of covariance propagation, the square-root covariance calculation method proposed in [24] is used. Meanwhile, the high-order numerical approximation method is used to deal with the problem:  
\[\frac{d\boldsymbol{S}(t)}{dt}=\boldsymbol{S}(t)\,\varPhi(\boldsymbol{B}), \tag{10}\]  
\[\varPhi(\boldsymbol{B})=\left\{ \begin{array}{ll}\boldsymbol{B}_{i,j}&\text{ if }i>j\\ \frac{1}{2}\boldsymbol{B}_{i,j}&\text{ if }i=j\\ 0&\text{ if }i<j\end{array} \right. \tag{11}\]  
where \(\boldsymbol{B}_{i,j}\) is the element in the \(i\)-th row and \(j\)-th column of \(\varPhi(\boldsymbol{B})\). The definition of \(\boldsymbol{B}(t)\) matrix is  
\[\boldsymbol{B}(t)=\boldsymbol{S}^{-1}(t)\Big{[}\boldsymbol{X}(t)\,\boldsymbol {W}\boldsymbol{\mathrm{T}}^{\mathrm{T}}(\boldsymbol{X}(t))\,+\,\boldsymbol{F }(\boldsymbol{X}(t))\boldsymbol{X}^{\mathrm{T}}(t)+\boldsymbol{Q}(t)\Big{]} \boldsymbol{S}^{-\mathrm{T}}(t). \tag{12}\]  
Based on this, the predicted state cubature point \(\boldsymbol{X}_{i}^{*}(t)\) can be obtained. The specific SRCD-CKF Algorithm 1 is as follows:  
```
Time update Step 1 Expectation and covariance matrix initialization: \(\hat{\boldsymbol{x}}(t_{k})=\hat{\boldsymbol{x}}_{k-1|k-1}\), \(\boldsymbol{P}(t_{k})=\boldsymbol{P}_{k-1|k-1}\). Step 2.1 Covariance decomposition: \(\boldsymbol{P}(t_{k})=\boldsymbol{S}(t_{k})\boldsymbol{S}^{\mathrm{T}}(t_{k})\). Step 2.2 Calculate the state cubature point: \(\boldsymbol{X}_{i}(t_{k})=\boldsymbol{S}(t_{k})\xi_{i}+\hat{\boldsymbol{x}}(t _{k})\). Step 2.3 State cubature point propagation: \(\left\{ \begin{array}{l}\hat{\varPhi}(t)=\boldsymbol{F}(\boldsymbol{X}(t)) \varepsilon\\ \\ \boldsymbol{S}(t)=\boldsymbol{S}(t)\,\varPhi(\boldsymbol{B}(t))\end{array}  \right..\) Step 2.4 Calculate the state prediction value: \(\hat{\boldsymbol{x}}_{k|k-1}=\left(\boldsymbol{X}_{1}^{*}(t_{k})+\cdots+ \boldsymbol{X}_{2n}^{*}(t_{k})\right)/2n\).