## 3 Numerical Results
### Link-Level Simulations  
Considering that both the transmitter and receivers are equipped with uniform planar arrays (UPAs) with \(\sqrt{N_{tx}}\times\sqrt{N_{tx}}\) antenna elements at the transmitter and \(\sqrt{N_{rx}}\times\sqrt{N_{rx}}\) at the receiver, the respective array response vectors are given by  
\[ \begin{split}\mathbf{a}_{t/r}\Big{(}\phi_{i,l,u}^{t/r},\theta_{i, l,u}^{t/r}\Big{)}=\frac{1}{\sqrt{N_{tx/rx}}}\times\left[1,\ldots,e^{j\frac{2\pi}{ \lambda}d(p\sin\phi_{i,l,u}^{t/r}\sin\phi_{i,l,u}^{t/r}+q\cos\phi_{i,l,u}^{t/r })},\right.\\ \left.\ldots,e^{j\frac{2\pi}{\lambda}d((\sqrt{N_{tx/rx}}-1)\sin \phi_{i,l,u}^{t/r}\sin\phi_{i,l,u}^{t/r}+(\sqrt{N_{tx/rx}}-1)\cos\phi_{i,l,u}^ {t/r})}\right]^{T},\end{split}  \tag{8}\]  
where \(\lambda\) is the signal wavelength, \(d\) is the inter-element spacing (a \(d=\lambda/2\) is assumed) and \(p,q=0,\ldots,\sqrt{N_{tx/rx}}-1\) are the antenna indices. We consider a sparse channel with limited scattering where \(N_{\text{ray}}=1\) and \(N_{cl}=9\). The angles of departure and arrival were selected according to a Gaussian distribution whose means are uniformly distributed in \([0,2\pi]\) and whose angular spreads are 10 degrees. The results are presented for an NLOS and LOS channel. This last case considers a ratio of \(E\Big{[}\big{|}\mathbf{a}_{u}^{LOS}\big{|}^{2}\Big{]}/\sum\limits_{i=1}^{N_{ cl}}\sum\limits_{l=1}^{N_{\text{ray}}}E\Big{[}\big{|}\mathbf{a}_{i,l,u}\big{|}^{2} \Big{]}=10\), which means we are admitting very weak NLOS paths when compared to LOS. In a first approach, we compared several solutions available in the literature concerning the hybrid precoding, such as AM [12], LASSO [34] and ADMM [15] based precoding. In Figure 4, we assumed a scenario with \(N_{tx}=100\), \(N_{rx}=4\), \(N_{RF}^{tx}=12\), \(N_{u}=4\) and \(N_{s}=2\), in which we change the number of subcarriers. To ensure a fair comparison, all schemes have a SE close to 2 bits per channel use (bpcu) per user. In this study, we considered that the hybrid precoding algorithms (LASSO and ADMM) can be applied to an architecture based on SPS or DPS, as proposed by [35]. It can be observed that the ADMM based on a DPS scheme outperforms both versions of AM and LASSO (SPS/DPS), and the gains tend to be slightly greater when the symbols are distributed over a larger number of subcarriers (\(F\)). However, the larger the number of subcarriers the greater will be the number of the required RF chains to maintain a good performance. In general, the ADMM precoding algorithm is the one that can achieve the best results at the cost of some additional computational complexity and it is also the most flexible since it can cope with different architectures, as explained in [15]. In the next subsection of the paper, we will compare these three methods based on system-level simulations. In order to understand how many RF chains are necessary to maintain good performance as the number of subcarriers increases, we simulated the ADMM algorithm for a scenario with \(N_{tx}=256\), \(N_{rx}=4\), \(N_{u}=4\) and \(N_{s}=2\) and we changed the number of subcarriers, as can be seen in Figure 5. By maintaining the same number of RF chains as the number of subcarriers increases, some performance degradation results can be seen when we compare the curves of \(F=256\) and \(F=512\). In fact, in the case of \(F=828\), 10 RF chains were insufficient to provide acceptable performance and therefore 14 RF chains were employed. Figure 4: BER performance versus SNR achieved by different methods by changing the number of subcarriers and considering a system with \(N_{tx}=100\), \(N_{rx}=4\), \(N_{RF}^{tx}=12\), \(N_{u}=4\) and \(N_{s}=2\) (only NLOS component). Figure 5: BER performance versus SNR achieved by the proposed precoder with \(N_{tx}=256\), \(N_{rx}=4\), \(N_{u}=4\), and \(N_{s}=2\), by changing the number of subcarriers and the number of RF chains (only NLOS component).