## 3 Derivation of the Proposed Method
### Virtual Beamforming  
On the above basis, we further construct new virtual array snapshots from the third sub-training sequence. Then, we form a virtual beam at the virtual source frequency corresponding to the \"expected signal frequency + CFO\" and form beam nulls at the virtual source frequencies corresponding to \"interference frequencies + CFO\" to suppress the in-band interferences. Given that the expected signal is not significantly stronger than the in-band interferences in an interference environment, we use the diagonal-loaded minimum variance distortionless response (MVDR) algorithm [18] to form the virtual beam. We first divide the virtual array into several sub-arrays and then perform beamforming in each sub-array. We divide the array in a uniform and overlapping manner. Assume the number of elements in each sub-array is \(P_{sub}\) and the number of nonoverlapping elements between two adjacent sub-arrays is \(P_{ind}\), and then we can divide the original virtual array into \(Q\) (\(=P-P_{sub}+P_{ind}\)) sub-arrays. The weighting vector for beamforming in each sub-array is as follows:  
\[\mathbf{h}_{bf} = \frac{\mathbf{M}^{-1}\mathbf{a}_{bf0}}{\mathbf{a}_{bf0}^{H}\mathbf{M}^{- 1}\mathbf{a}_{bf0}}, \tag{16}\]  
where \(\mathbf{M}\ =\ \begin{matrix}\mathbf{\Lambda}\\ \mathbf{\Lambda}\end{matrix} _{xx}+\alpha\mathbf{I}\) denotes the diagonal-loaded interference covariance matrix of the sub-array, \(\mathbf{R}_{xx}\) is the interference covariance matrix of the sub-array, \(\alpha\) is the loading coefficient, and \(\mathbf{a}_{bf0}\) is the virtual steering vector that directs to \(\Delta\hat{f}+\hat{f}_{0}\), which is expressed as \(\mathbf{a}_{bf0}=[1,e^{-j2\pi\Delta n_{n}T_{s}(\Delta\hat{f}+\hat{f}_{0})},\cdots,e^{-j2\pi(P_{sub}-1)\Delta n_{n}T_{s}(\Delta\hat{f}+\hat{f}_{0})}]^{T}\). After beamforming in each sub-array, the resulting signal can be expressed as follows:  
\[y_{q,n_{in}}\ =\ \mathbf{h}_{bf}^{T}\mathbf{s}_{q,n_{in}}, \tag{17}\]  
where \(q=1,\,2,\,\ldots,\,Q\) is the serial number of the sub-array, \(Q\) is the total number of sub-arrays, and \(\mathbf{s}_{q,n_{in}}\) denotes the \(n_{st}\)-th virtual snapshot of the \(q\)-th sub-array. Then we form the beamformed signals from those sub-arrays into a new virtual array snapshot, which can be expressed as \(\mathbf{y}_{n_{out}}\ =\ [y_{1,n_{in}},y_{2,n_{in}},\cdots,y_{(Q,n_{in}}]^{T}\). From the above derivation, it is easy to know that in any two adjacent sub-virtual array snapshots that are divided from the original virtual array snapshot, the phase difference between the same signal components contained in two corresponding elements is \(P_{ind}\Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{m})\). Thus, the array manifold of the up-level virtual array formed by the aforementioned sub-arrays can be expressed as follows:  
\[\mathbf{\mathrm{B}}_{upAry}\ =\ \begin{bmatrix}1&1&\cdots&1\\ e^{jP_{ind}\Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{0})}&e^{jP_{ind} \Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{1})}&\cdots&e^{jP_{ind}\Delta n _{s}(\Delta\varphi_{CFO}+\Delta\varphi_{M})}\\ \vdots&\vdots&\ddots&\vdots\\ e^{j(Q-1)P_{ind}\Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{0})}&e^{j(Q-1 )P_{ind}\Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{1})}&\cdots&e^{j(Q-1)P_ {ind}\Delta n_{s}(\Delta\varphi_{CFO}+\Delta\varphi_{M})}\end{bmatrix} . \tag{18}\]  
Then, we use the root-MUSIC algorithm to process the new virtual array snapshots obtained from virtual beamforming to realize signal detection and CFO estimation. Assume the root that is nearest to the unit circle is \(z_{0}\), and then signal detection can be realized based on whether the distance between \(z_{0}\) and the unit circle is less than the given threshold or not. If so, the coarse estimation of the starting position of the burst frame can be estimated as the left endpoint of the current time window.