# Vector Approximate Message Passing Based OFDM-IM Detection for Underwater Acoustic Communications
## 2 System Model  
In this paper, the OFDM-IM-based UWA communication system is considered. The system framework is shown in Figure 1. There are a total \(B\) bits to be transmitted and input to the bit splitter. The system has \(N\) subcarriers, and these subcarriers are split into \(G\) groups. Each group includes \(n=N/G\) subcarriers. Correspondingly, the bits are also split as \(G\) groups, and there are \(p\) bits in each group. The \(p\) bits include two parts, i.e., \(p_{1}\) bits for index selection and \(p_{2}\) bits for amplitude and phase modulation (APM). \(p_{1}\) bits are mapped as the indices of \(k\) activated subcarriers, which are extracted from the index combinations in a look-up table. \(p_{1}\) is determined by \(\left\lfloor\log_{2}\left( \begin{array}{c}n\\ k\end{array} \right)\right\rfloor\) which is the logarithm of the index combination number. The total number of data subcarriers is \(N_{d}=kG\). Considering the \(g\)-th group of the OFDM-IM subblock, the indices of activate subcarriers in the look-up table \(\mathcal{J}\) are given by  
\[J^{(g)}=\left\{j_{1}^{(g)},j_{2}^{(g)},\cdots,j_{k}^{(g)}\right\}, \tag{1}\]  
where \(j_{\gamma}^{(g)}\in\{1,\cdots,n\}\) for \(\gamma=1,\cdots,k\) and \(g=1,\cdots,G\). The elements of \(J^{(g)}\) are arranged in an ascending order. The size of Table \(\mathcal{J}\) is \(|\mathcal{J}|=2^{p_{1}}\). \(p_{2}\) bits are mapped as \(M\)-ary constellation points from the constellation alphabet \(\mathcal{S}\). \(p_{2}=k\text{log}_{2}(M)\) where \(M=|\mathcal{S}|\) is the modulation order. Mapping symbol \(\mathbf{s}^{(g)}=\left\{s_{7}^{(g)}\right\}_{\gamma=1}^{k}\) are appended on the \(k\) activated subcarriers with normalized power, i.e., \(\mathbb{E}\left\{\mathbf{s}^{H}\mathbf{s}\right\}=1\). A coherent UWA communication system is required to track the channel effects. Besides data subcarriers, there are \(N_{p}\) subcarriers allocated as comb pilots for the tracking of time-varying UWA channels. The information of pilot subcarriers is perfectly known. The remaining \(N_{u}=N-N_{p}-N_{d}\) subcarriers are idle. The \(g\)th OFDM subblock can be expressed as \(\mathbf{x}^{(g)}=\left[x_{1}^{(g)},x_{2}^{(g)},\cdots,x_{n}^{(g)}\right]^{T}\). Concatenate \(G\) OFDM-IM subblocks, and OFDM-IM data frame is given by \[\mathbf{x}=\left[(\mathbf{x}^{(1)})^{T},(\mathbf{x}^{(2)})^{T},\cdots(\mathbf{x}^{ (G)})^{T}\right]^{T}, \tag{2}\]  
where \(\mathbf{x}\in\mathbb{C}^{N\times 1}\) denotes the symbols to be modulated on \(N\) subcarriers. The \(m\)th subcarrier is with the frequency \(f_{m}=f_{c}+m\Delta f\), where \(\Delta f\) denotes the subcarrier spacing. The symbol duration is \(T=\frac{1}{\Delta f}\). Before transmission, the OFDM-IM is transformed as the time-domain signal through the inverse fast Fourier transform (FFT) operation, then the \(N_{cp}\)-length cyclic prefix (CP) is appended to mitigate the inter-symbol interference (ISI), and the time duration of CP T\({}_{cp}\) is larger than the maximum path delay. The SE is given by  
\[\eta=\frac{G\bigg{(}\left\lfloor\log_{2}\!\left( \begin{array}{c}n\\ k\end{array} \right)\right\rfloor+k\!\log_{2}(M)\bigg{)}}{N+N_{cp}}(bit/s/Hz). \tag{3}\]  
The baseband signal is upshifted to the passband given by  
\[\bar{x}(t)=2\Re\Bigg{\{}\Bigg{[}\sum_{m=1}^{N}x[m]e^{2\pi m\Delta ft}g(t) \Bigg{]}e^{2\pi f_{c}t}\Bigg{\}},t\in\left[-T_{cp},T\right], \tag{4}\]  
where \(g(t)\) is the pulse shaping filter, and \(g(t)=1\) when \(t\in\left[-T_{cp},T\right]\), otherwise \(g(t)=0\). As shown in Figure 1, the signal passes through the UWA channel. The UWA channel is generally expressed as a time-varying model given by  
\[h(\tau,t)=\sum_{l=1}^{L}\alpha_{l}(t)\delta(\tau-\tau_{l}(t)), \tag{5}\]  
where \(L\) is the total number of paths, \(\alpha_{l}(t)\) and \(\tau_{l}(t)\) denote the path amplitude and path delay for the \(l\)th path. Assuming all paths have the same Doppler scaling factor \(a\), then \(\tau_{l}(t)=\tau_{l}-at\)[16].