As shown in Fig. REF , this paper considers a downlink virtual MIMO-NOMA system with one BS/central sink node serving \(K\)  clusters in IoT networks. Herein, we assume that the BS is equipped with \(N_t\)  antennas. Besides, the \(K\)  clusters are predefined to ease management, and each cluster consists of \(N_r\)  neighbouring single-antenna IoT devicesIn general, the pairing/clustering process could be either predefined or dynamically scheduled. In particular, similarly to [1]}, the predefined clustering divides all the IoT devices into multiple clusters, each with \(N_r\)  adjacent devices. It is noteworthy that our subsequent analysis is also applicable to the case of clusters with unequal sizes. Whereas, with regard to the dynamic clustering, the BS first sends a message to notify all the IoT devices within the cell so as to trigger the clustering process via a self-organizing protocol. Upon receiving the notification message, each device periodically broadcasts a life messages (LifeMsg) containing its unique identity, and meanwhile searches its neighbouring devices within a certain range by overhearing their LifeMsgs. After the completion of the search, all the neighbouring devices collaborate and share their antennas with each other to form a cluster. Each cluster then reports its relative position (or path loss) and statistical knowledge of CSI (e.g., channel correlations, average channel gains) to the BS. Once the BS gathers all the clusters' reports, it determines the decoding order of SIC for these clusters according to their relative positions, and then the transmission rates and powers are properly devised based on the channel statistics [2]}, [3]}, [4]}. The necessary information (e.g., decoding order) for detections is thereafter fed back from the BS to the clusters. Nonetheless, the further investigation of implementing the pairing/clustering is out of the scope of this paper. For more details, interested readers are referred to [5]}, [6]}, [7]}.[1]}. These devices share their antennas with each other through an error-free intra-cluster interface, in order to create a virtual MIMO system[9]}, [10]}. We can easily extend our design to the general case with more than one antennas mounted on the IoT devices. This is based on the fact that an IoT device with multiple antennas can be viewed as multiple single-antenna IoT devices. Moreover, we assume that \(M (\le \min {(N_t,N_r)})\)  independent data streams are requested by each cluster. In doing so, a power-domain NOMA is used to multiplex these clusters over the same time-frequency resource with the help of superposition coding at the BS. Thus, the received signal at the \(k\) -th nearest cluster to the BS is given by
\({{\bf {y}}_k} = {\sqrt{\ell (d_k)}}{{\bf {H}}_{k}}{{\bf {V}}}{{\bf {s}}} + {{\bf {n}}_k},\) 
