## 2 Methodology  
### INS/MNS Navigation model based on adaptive CKF  
This work utilizes the EKF algorithm to initially fuse the IMU measurement data, namely gyroscope and accelerometer information, to calculate the resulting carrier attitude information. This system can accurately estimate roll and pitch information; but due to time drift in the INS, the obtained heading information deviates greatly. Additionally, the performance of the algorithm is compromised by the improper selection of \(Q\) and \(R\) in the filtering process. To solve this problem, an adaptive CKF combination algorithm based on innovation and residuals is put forth, which incorporates magnetometer data derived from the attitude angle information found in the INS solution. The proposed adaptive CKF algorithm employs the heading angle and \(Z\)-axis offset from the gyroscope solution output as the state quantity and the heading angle calculated using the magnetometer data as the quantity measurement for a posteriori estimation. This algorithm is based on innovation and residuals to optimally estimate the heading information. Its combined navigation block diagram is shown in Figure 1.  
The equations describing the equations of state and measurement are expressed as  
\[ \begin{bmatrix}\psi_{k}\\ b_{k}\end{bmatrix} = \begin{bmatrix}1&-T\\ 0&1\end{bmatrix}\begin{bmatrix}\psi_{k-1}\\ b_{k-1}\end{bmatrix} + \begin{bmatrix}T\\ 0\end{bmatrix} [w_{k}] \tag{1}\]  
\[[\psi_{m}]= \begin{bmatrix}1&0\end{bmatrix}\begin{bmatrix}\psi_{k}\\ b_{k}\end{bmatrix} . \tag{2}\]  
respectively, where \(\psi_{k}\) represents the heading angle; \(b_{k}\) is the gyroscope \(Z\)-axis offset; \(w_{k}\) is the gyroscope-measured angular velocity; \( \begin{bmatrix}1&-T\\ 0&1\end{bmatrix} \) represents the state matrix A, and \( \begin{bmatrix}1&0\end{bmatrix} \) is measurement matrix H; and T is the update period. Figure 1: Block diagram of INS/MNS integrated navigation. The inclination compensation of the INS output attitude by magnetometer data was used to obtain the actual observations:  
\[ \begin{split} M_{y}=m_{x}*\sin(\theta)*\sin(\phi)+m_{y}*\cos(\theta )-m_{z}*\cos(\phi)*\sin(\theta)\\ M_{x}=m_{x}*\cos(\phi)+m_{z}*\sin(\phi)\\ Z_{k}=\psi=a\tan 2\big{(}m_{x}*\sin(\theta)*\sin(\phi)+m_{y}*\cos( \theta)-m_{z}*\cos(\phi)*\sin(\theta),m_{x}*\cos(\phi)+m_{z}*\sin(\phi)\big{)}, \end{split}  \tag{3}\]  
where \(\phi\), \(\theta\), and \(\psi\) represent the roll, pitch, and heading (yaw), respectively; and \(m_{x}\), \(m_{y}\), and \(m_{z}\) are the three-axis data recorded by the magnetometer. The adaptive CKF procedure is divided into two parts: the time update and observation update. The specific process is as follows:  
1. Time update: 1. Calculate and propagate the volume points: \[X_{k/k-1}^{i}=A(S_{k-1}\xi_{i}+\hat{x}_{k-1}),\quad P_{k-1}=S_{k-1}S_{k-1}^{T}\] (4) where \(\xi_{i}=\sqrt{n}[1]_{i}\); \(i=1,2,\cdots\cdots,n\); and \(n\) denotes the state quantity dimension \(2\); \([1]\) is the representative unit matrix; and \(\hat{x}_{k-1}\) is the previous state estimate. \(S_{k}\) is the square root of the prior distribution covariance matrix \(P_{k-1}\) of the state quantity. 2. Predict the state: \[\hat{x}_{k/k-1}^{i}=\frac{1}{2n}\sum_{1}^{2n}X_{k/k-1}^{i}.\] (5) 3. Calculate the a priori error covariance matrix: \[P_{k}^{-}=\frac{1}{2n}\sum_{i=1}^{2n}\Big{(}X_{k/k-1}^{i}\Big{)}\Big{(}X_{k/k- 1}^{i}\Big{)}^{T}\Big{(}\hat{x}_{k/k-1}^{i}\Big{)}\Big{(}\hat{x}_{k/k-1}^{i} \Big{)}^{T}+Q(k).\] (6) 4. Calculate the process noise matrix function \(Q(k)\): \[Q(k)=\alpha Q_{k-1}+(1-\alpha)\Big{(}K_{k}d_{k}d_{k}^{T}K_{k}^{T}\Big{)}\] (7) where \(\alpha\) represents the forgetting factor and, in this paper, \(\alpha=1-(3e-4)\) is set; \(d_{k}\) is the innovation, that is, the difference between the true measurement and the predicted measurement; (2) Update the observation: 1. Calculate and propagate the volume points: \[y_{k}^{i}=H\Big{(}S_{k}\xi_{i}+\hat{x}_{k/k-1}^{i}\Big{)},\quad P_{k}^{-}=S_ {k}S_{k}^{T}\] (8) 2.