Performance Analysis of Multi-User MIMO Schemes under Realistic 3GPP 3-D Channel Model for 5G mmWave Cellular Networks

: Novel techniques such as mmWave transmission and massive MIMO have proven to present many attractive features able to support high data demand for 5G NR technologies. Towards the standardization of 5G networks, channel modeling has become an important step in order to test the reliability of theoretical studies. In this paper, we study the performance of a 5G network at mmWave range for the downlink. We consider a single trisectorized base station equipped with planar arrays, and we model users as a spatial Poisson process in a hexagonal grid. We adopt the latest 3GPP channel model described in TR 38.901 and we provide a thorough description and step-by-step tutorial of it along with our customizations and MATLAB scripts for channel generation in the presented scenario. Moreover, we evaluate the performance of Multi-User Multi-Layer MIMO techniques, such as Signal-to-Leakage-plus-Noise Ratio ( SLNR ) precoding and MMSE combined with different system conﬁgurations by means of achievable per-user rate.


Introduction
Over the last decades, mobile communications have caught a lot of interest in our everyday life. During the 1980s, the first standard of mobile communications was launched and our lives changed dramatically in many aspects. Studies such as [1,2] show how the use of mobile devices has changed our behavior in the social sphere. Before the advent of wireless communications, we were not able to do things that we now label as everyday activities, such as call the office while driving our car or having multiple video-calls with our friends scattered over the world. The digitization process started in the early 1990s with the roll-out of the second generation of mobile communication devices (2G). The continuous deployment of new services, with the increase in data demand [3], has led to the novel fifth generation standard (5G) for wireless communications.
During the past years, research about mobile communications has been moving quickly through the different standards of communications, but there is still a certain distance between theoretical studies and practical applications. The validation of analytical models became a crucial step in the standardization process. Ideally, it is preferable to test everything through physical, real time prototypes, but this is possible only after standardization due to the high cost of development. Usually, many trials may be conducted in the field to help the research stage of the technology, although they bring a limited contribution. Field trials can be combined with numerical simulations to validate the studies during the research stage of the standardization. Therefore, in order to obtain significant numerical results for a communication system, a strong channel model is required to regard The literature presents many channel models, and generally two main approaches are taken into account: stochastic and statistical. The first is based on a step-by-step analysis of the probability density function (PDF) of the channel parameters which are based on the geometry of the considered scenario. Stochastic models are easy and quick to formulate, but they cannot be completely validated without field measurements data or through a ray-tracing analysis. Meanwhile, statistical models can be formulated after exhaustive measurements on the field and a successive formulation based on the data. The model obtained through this approach is limited for the region of the measurements, and the final data can suffer from a significant variation depending on the geographical location.
Moreover, a statistical model can suffer from low accuracy related to the used instruments and the post-processing method.
To overcome the drawbacks of these strategies, a hybrid approach is the most widely adopted, in which the channel parameters can be stochastically characterized by studying their probability distributions. Then, field measurements can be adopted to verify the first step and eventually modify the channel model [22]. Regardless of the adopted strategy, MIMO channel models for mmWave system level simulations mainly use the Clustered Delay Line (CDL) model in which the scatterers are grouped into clusters distributed over the area. Each cluster contains multipath elements with the same delay and small variations in angles of departure and arrival.
A milestone for the channel modeling has been provided by the Information Society Technologies (IST) with the Wireless World Initiative New Radio (WINNER) project. In 2007, they released the deliverable WINNER II [23], as an evolution of the WINNER I project, providing channel models for link level and system level simulations in many scenarios such as local area, metropolitan area, and wide area. They offered a 2-D stochastic channel model approach which is geometry-based and antenna independent (i.e., different antenna configurations and element patterns can be used). They provide a hybrid approach, and the channel instances are generated by combining the outcomes of rays with particular channel parameters (power, delay, and angle of arrival and departure). WINNER II offers the capability to cover scenarios with both indoor and outdoor users, elevation in indoor applications, and LOS and non-line-of-sight (NLOS) conditions, and the models are scalable from a SISO system to a MIMO system. The proposed channel modeling approach can be applicable to any wireless system operation in the 2-6 GHz frequency range with a variable bandwidth up to 100 MHz. In 2014, researchers presented the Quasi Deterministic Radio Channel Generator (QuaDRiGa) [24] project as an extension for the WINNER+ (the 3-D version of the WINNER II) [25] work. They presented a 3-D stochastic channel modeling approach introducing the time evolution [26,27] of the channel, which is fully available as MATLAB code [28]. The QuaDRiGa model is divided into two steps; in the first one, they offer a stochastic generation of the large scale parameters (LSPs) and the random 3-D positioning of the scattering clusters. They consider base stations with a fixed position while the user terminals can move, so that the scattering clusters are fixed and the channel is deterministic in its time evolution. The second phase is the validation of the model by measurements in downtown Berlin (Germany) by extracting single-link and multi-link parameters and observing that there is a good match between simulated and measured results. In its last version, QuaDRiga can support carrier frequencies in the range 0.45-100 GHz.
An example of geometry-based stochastic channel model (GBSM) is the mmMAGIC channel model [29], which is based on QuaDRiGa. Several measurements have been conducted in the main scenarios in the range between 6 GHz and 100 GHz. The model foresees frequency dependent large scale parameters and the number of cluster and rays generated as random variables instead of fixed numbers. Moreover, mmMAGIC supports bandwidths up to 2 GHz and is supposed to meet most of the 5G channel model requirements, however it is a high computational model that makes numerical simulations inefficient.
The METIS channel model [30] is able to achieve a more flexible and scalable methodology by providing a map-based model, a stochastic model and their combination: the hybrid model. The map-based model supports frequency ranges up to 70 GHz and uses a simplified 3-D geometric description of a propagation environment and additional randomly generated shadowing objects. The stochastic model (up to 100 GHz) is a GBSM legacy of WINNER strategy. Moreover, METIS proposes a simplified approach to generate spatially consistent LSPs through a sum of sinusoids [31,32], which results in a lower computational consumption, especially useful for D2D/V2V applications.
In [33] we can find the recent MG5GCM model as a combination of new advanced channel modeling techniques such as array-time evolution, spherical wavefront, etc. This model can meet many 5G channel requirements with a relatively low complexity, although it only takes small-scale fading into account and neglects large-scale fading. Furthermore, parameters for the model for different scenarios need to be extracted from future measurements. A different approach has been introduced in [34], where authors provide a machine learning based framework. In particular, they provide a time-varying channel modeling method by using a neural network to model and predict the path loss together with shadowing, fading and joint small scale parameters. Results from the neural network have been compared with measurements at 26 GHz performed in a microcell. A comprehensive 3GPP-like mmWave channel model called statistical spatial channel model (SSCM) has been proposed in [35][36][37] based on measurements in the range 28-73 GHz [38]. Differently from the 3GPP-WINNER strategies, they introduce the concepts of time clusters and spatial lobes, which can describe the temporal and spatial statistics independently.

Paper Contribution
The aim of this work is firstly to analyze the latest 3-D channel model for 5G (described in [21]) by 3GPP, in order to provide a tutorial of its implementation in MATLAB. Then we proceed to study the aforementioned channel model in a particularly interesting scenario, namely a trisectorial cell site with 5G-compliant communication parameters. We assume an Orthogonal Frequency-Division Multiplexing (OFDM) modulation and planar antenna arrays at the Base Station (BS) and User Terminals (UTs).
We resort to spatial multiplexing capabilities only to assess the system performance: UTs in the sector coverage area are served on the same time and frequency resources, by means of Space Division Multiple Access.
We finally simulate our system with different parameters (such as the antenna array size, the traffic loading, the total transmit power, etc.) in order to evaluate the link quality and the capacity with this new 3-D channel model. One of the target is to investigate the impact of different MIMO configurations on the per-user rate. Our main contributions are:

1.
Provide a step by step tutorial on the 3GPP Technical Report (TR) 38.901 channel model implementation along with MATLAB scripts to generate channel coefficients [39].

2.
Design an OFDM MIMO system with uniform planar arrays and dual polarized antenna elements with realistic radiation patterns.

3.
Implement SLNR precoding and MMSE combining to exploit Multi-User Multi-Layer MIMO and provide simulation results on the system behavior.

Scenario Description
In the TR 38.901 [21], 3GPP released its 3-D stochastic channel model for 5G mmWave massive MIMO communications in the range 0.5-100 GHz. A detailed procedure is provided to generate link level channel models. The model is applicable to a wide range of carrier frequencies, with particular attention to the mmWave range by taking care of weak propagation aspects such as atmosphere attenuation, and it supports large channel bandwidth (up to 10% of the carrier frequency). One purpose of this work is to present a simplified version (i.e., single cell network, time-invariant channel) of the system level channel model proposed in 3GPP TR 38.901 developed in MATLAB. 3GPP adopts different scenario settings, such as Urban Micro street canyon (UMi), Urban Macro (UMa), Indoor-Office, Rural Macro (RMa), and Indoor Factory (InF); for each scenario, a complete set of parameters is provided, such as intersite distance, path loss computation, large and small scale parameters, etc. In our work, we focus on a simplified single-cell UMi scenario. However, please note the provided MATLAB scripts [39] can also generate channel coefficients for a simplified single-cell UMa scenario. with a trisectorized single cell and static users, i.e., a time-invariant channel model. The spatial channel model could be described as a MIMO cluster delay line, i.e., each coefficient is the superposition of different clusters of rays. Each angular cluster has its own parameters, such as delay, power, azimuth angle spread of arrival/departure, zenith angle spread of arrival/departure, etc.

Network Layout
The scenario we adopted in this study is a typical hexagonal cell site divided in three sectors, each one covering a portion of 120 degrees in azimuth. Each sector is equipped with an antenna array, and the antenna parameters are the same for each sector. Figure 1 shows a representation of the cell site. The BS is placed at the center of the cell, represented as a hexagon of side or equivalently circumradius R = 100 m, and with height h BS = 10 m. The bounded area A of the hexagon can be computed as A = 3 √ 3 2 R 2 . The random placement of the users inside A can be modelled as a spatial homogeneous Poisson point process. Denoting as M(A) the random variable corresponding to the amount of users of a point process present in the area A ⊂ R 2 , the probability of K users existing in A can be expressed as: where µ (users/km 2 ) is the average user density per unit area. A homogeneous process implies constant µ, moreover µ does not depend on the location. Given K users of the Poisson process in A, they are conditionally independent and uniformly distributed in the hexagon. Therefore, the positions of the randomly deployed K users can be determined by generating both the x and y coordinates. We denote with X, the abscissa of a generic user in the hexagon, where X is the marginal random variable of a uniform 2-D distribution in the cell site. In order to find it, let us first define the two random variables X 1 and X 2 : then we have: where X is the sum of two uniform random variables with different bounds, the probability density function (pdf ) of X is the convolution of the two uniform pdfs, resulting in a trapezoidal distribution. Once the abscissa is found, the conditional distribution of Y|X = x, where Y is the ordinate of the user, is given by: As we are developing a 3-D channel model, the height of the UTs must be determined subsequently. For outdoor users, the height is fixed at 1.5 m. For indoor users, first of all we need to generate the number of floors of the building in which the user is placed. According to the TR 38.873 [40], we can generate it as follows where f loor max denotes the number of floors of the building and U {·} is the discrete uniform distribution. Therefore, we can generate the actual floor UT f loor of the user according to a discrete uniform distribution and finally we can calculate the height of the user according to [40] through the formula Hence, this step consists in setting the number of users to take into account, fixing their position, and generating their height. Once we know that, we can evaluate the angles of the potential LOS path: φ LOS,AOD and θ LOS,ZOD , the azimuth and zenith of departure, respectively, and their counterpart in the arrival point of view φ LOS,AOA and θ LOS,ZOA . Finally, we can set the carrier frequency f c and the system bandwidth B.

Antenna Parameters
In this section, we describe the antenna array model and define the antenna element pattern at both the BS and UT.

BS Antenna and Array Model
We assume that the BS is equipped by a single-panel Uniform Planar Array (UPA) per each of the three sectors. Each UPA of the BS has N tz antennas along the z-axis and N ty along the y-axis, i.e., N t = N tz × N ty total antenna elements. Moreover, N t also indicates the number of antennas with the same polarization. Antenna elements are uniformly spaced in both dimensions, with distances d H and d V in horizontal and vertical direction, respectively. We set the spacing d H = d V = λ/2 where λ = c/ f c is the wavelength and c the speed of light. Dual polarization has been taken into account with the parameter P, so each array can be single polarized (P = 1) or dual polarized (P = 2), as shown in Figure 2. We denote with s = (0, 1, 2) the sector index, the UPA with s = 0 lies on the yz-plane (broadside to θ = 90 • , φ = 0 • ), the UPAs with s = 1 and s = 2 are broadside to (θ = 90 • , φ = 120 • ) and (θ = 90 • , φ = 240 • ), respectively. Given a Zenith of Departure (ZOD) θ and an Azimuth of Departure (AOD) φ in the GCS (Global coordinate system), we need first to convert them into LCS (Local coordinate system) through the mapping: where θ and φ are the ZoD and AoD in LCS, respectively. We can first write the N tz × 1 steering vector (SV) of the Uniform Linear Array (ULA) on z-axis a z (θ ): while we denote with a y,s (θ , φ ) the N ty × 1 SV of the generic ULA that lies on the y-axis for s = 0: for s = 0, a y,s (θ , φ ) is rotated of ±120 • . Finally, we can express the N t × 1 SV for each UPA at the BS as the Kronecker product of the 2 SV's along each axis: The 3-D radiation power pattern of each antenna element A(θ , φ ) (adopted for the antenna elements of each array of the BS) is evaluated in LCS (Table 7.3-1 of [21]). It can be expressed in terms of the vertical cut A dB (θ , φ = 0 • ) and horizontal cut A dB (θ = 90 • , φ ), as follows: where A max = 30 dB is the maximum attenuation. The vertical cut is obtained by fixing φ to 0 • : with θ 3dB = 65 • , θ ∈ [0 • , 180 • ] and SLA V = 30 dB is the side-lobe attenuation in the vertical direction. The horizontal cut is obtained by fixing θ to 90 • : The maximum directional gain of an antenna element G E,max is equal to 8 dBi. Figure 3 shows in linear scale the 3-D representation, the horizontal cut for a fixed angle θ = 90 • , and the vertical cut with a fixed angle φ = 0 • , respectively, for the 3GPP antenna element radiation pattern. We select the "Model-2" of the polarized antenna modelling described in Section 7.3.2 of [21]. In general, the relationship between radiation field and power pattern is given by: where F tx,θ (θ , φ ) and F tx,φ (θ , φ ) are the vertical and horizontal polarized field components in LCS, respectively. For the described scenario at the BS, the polarized field components are the same in LCS and GCS. In case of a single polarized antenna (purely vertically polarized antenna), we have i.e., only the vertical polarized field component F tx,θ (θ, φ) is active while F tx,φ (θ, φ) = 0. In case of dual polarization, we have: where ξ is the polarization slant angle and ξ = ±45 • corresponds to a pair of cross polarized antenna elements.

UT Antenna and Array Model
Once all UTs locations are generated, each UT is given a random array orientation. The orientation of an array with respect to the GCS is defined by a set of three angles (α, β, and γ) that fully describe an arbitrary 3-D rotation, where α represents the bearing angle, β the downtilt angle, and γ the slant angle. The following distributions are assumed: where N denotes a normal distribution with µ β = µ γ = 0 and σ 2 β = σ 2 γ = 36 • . We assume that each UT can also be equipped with a Uniform Planar Array (UPA) with N rz antennas along the z-axis and N ry along the y-axis when α = β = γ = 0 • , i.e., N r = N rz × N ry is also the number of antenna with the same polarization. Antenna elements have the same λ/2 spacing of the BS along both directions and can be single or dual polarized. Given a Zenith of Departure (ZoA) θ and an Azimuth of Departure (AoA) φ in the GCS, we need first to convert into LCS through the following relationship: the N r × 1 SV for the UPA at the UT can be expressed as: where a z (θ ) and a y (θ , φ ) are computed according to (10) and (11) with θ computed as in (20) and φ as in (21). We assume that the antenna elements of the array of each UT are half-wave dipoles that are aligned along the z-axis when α = β = γ = 0. The radiation power pattern can be expressed as: Due to the fact that the UT array experiences a random 3-D rotation, we need to relate the polarized field components F rx,θ (θ), F rx,φ (θ) in the GCS, with the components F rx,θ (θ ), F rx,φ (θ ) in the LCS through: where the angle ψ can be computed as: . (26) The same "Model-2" of the polarized antenna modelling of [21] is applied for the UT. In case of single polarized antenna (purely vertically polarized antenna) we have: while for the case of dual cross-polarization with ξ = ±45 • , corresponding to a pair of cross-polarized antenna elements. Please note that for each UT it is necessary to apply (25) to the polarized field components in LCS both for single and dual polarization case. In case of single polarized antennas, only the vertical polarized field pattern F rx,θ (θ) will be applied.

Link Level Parameters and Channel Coefficient Generation
In this section, we describe all involved link level parameters such as propagation conditions, pathloss, Large Scale Parameters and Small Scale Parameters, and finally we illustrate how to generate channel coefficients for the considered scenario.

Propagation Conditions and Pathloss Calculation
In this step, we need to evaluate the propagation condition for each BS-UT link by calculating the LOS probability. If UT k is an outdoor user, the parameter d k 3D denotes the pure distance between the BS and the k-th UT in a 3-D coordinate system, while the parameter d k 2D denotes the projection of d k 3D on the x-y plane. The relation between the 2-D distance d k 2D and the 3-D distance d k 3D is given by where h BS is the height of the BS and h k UT represents the height of k-th user. Instead, if UT k is an indoor user located inside a building, the parameter d k 3D can be considered as the sum of the two components d k 3D−out and d k 3D−in , the former denotes the distance from the BS to the building external wall while the latter denotes the distance from building external wall to the user. The same consideration can be made for d k 2D , the projection of d k 3D on the x-y plane, therefore d k 2D = d k 2D−out + d k 2D−in and so the new relation between the 2-D and 3-D distances becomes  [21] provides all details to evaluate the LOS probability P LOS for each scenario. Mainly, the proposed P LOS depends on the 2-D distance between BS and UT, d k

2D
for outdoor-to-outdoor (O2O) users and d k 2D−out for outdoor-to-indoor (O2I) ones. As an example, we show how to evaluate the LOS probability for the UMi-Street canyon scenario for the k-th user: for UMi and UMa scenarios, the LOS probability is 1 for distances smaller than 18 m, and decreases with the distance above this threshold. According to the propagation conditions described in the previous step, here we calculate the path loss (PL) for each BS-UT link. Table 7.4.1-1 of [21] depicts the formulae for PL evaluation, for UMi and UMa in both cases, LOS and NLOS. Unlike the LOS probability, the path loss is mainly dependent on the 3-D distance between BS and UT, and the carrier frequency f c . In (32) it is shown, as an example, how to evaluate the path loss for the UMi-Street canyon scenario for the k-th user in the case of LOS presence: with Moreover, d k BP is the breakpoint distance for the k-th user (Table 7.4.1-1 of [21]), h BS is the height of the base station, while h k UT represents the height of the k-th user, both expressed in meters, and f c is the carrier frequency in Hz. For indoor users, additional losses are added by taking into account the walls of the building and the losses inside the building as follows where PL b is the basic outdoor path loss, PL tw is the building penetration loss through the external wall, PL in describes the inside loss dependent on the depth into the building, and σ P represents the standard deviation for the penetration loss. In [21], it is suggested to calculate PL tw by considering 70% of concrete and 30% of glass, while PL in is a function of the 2-D distance between the user and the internal wall of the building. All the above parameters are listed in [21], along with the shadowing standard deviation σ SF for each scenario.

Large Scale Parameters
In this step, we generate the Large Scale Parameters (LSPs), e.g., all the per-link parameters useful to describe the link behavior between transmitter and receiver. We have seven LSPs for LOS link and six for NLOS case: Delay Spread (DS), angular spreads of departure and arrival in both directions azimuth and zenith (ASA, ASD, ZSA, and ZSD), Ricean K-factor (only of LOS links, K R ), and shadow fading σ SF . Table 7.5-6 of [21] provides the means and the variances in logarithmic scale of all these parameters, i.e., all the LSPs are lognormal random variables. The LSPs are generally correlated among them with different kinds of correlations: intra-UT correlation (parameters correlation in the same link) and inter-UT correlation (for different links and can be intra-cell and inter-cell). If we have M LSPs (M = 7 for a LOS link and M = 6 in the NLOS case) and a total of K users, and if we assume to take into account both intra-and inter-user correlations, there is a total of M · K parameters to generate and the total correlation matrix has size MK × MK. Undoubtedly, if hundreds of links in system level simulation are considered, the computation of LSPs will be extremely large. WINNER II [23] proposes to calculate inter-UT correlation first and then the intra-UT correlation. • The inter-UT correlation is calculated by generating a 2-D rectangular mesh based on the UT location for each of the M LSPs. For each mesh grid, M standard normally distributed random variables, which correspond to M LSPs, are assigned and filtered by their corresponding 2-D FIR filter separately. In the following formula, we can see the general expression of the impulse response h m (d) of the filter for the m-th LSP where d is the distance and d m corr represents the correlation distance of the m-th parameter. If a dense 2-D spatial sampling is applied to each mesh grid, this filtering operation becomes computationally very expensive. Given also that, according to [21], links of UTs on different floors are uncorrelated, we decided not to take into account inter-user correlation.
• Intra-UT correlation is taken into account as follows: for each UT, the M correlated parameters can be obtained by the linear transformatioñ where C xx (0) is the M × M intra-user inter-parameter correlation matrix (which can be obtained from Table 7.5-6 of [21]), ζ ∼ N (0, I) is a standard normal random vector (all elements are independent zero-mean random variables with unitary variance), and s is the vector of correlated normal random variables. The final LSPs can be obtained as [41]: 10 N (µ x , σ xsm ) for DS, ASA, ASD, ZSA, and ZSD 10 N (µx, σxsm 10 ) for SF and K where µ x and σ x are proper mean and standard deviation, respectively, of the parameter x from Table 7.5-6 of [21].
Finally, in this LSP step, we generate the number of cluster N cl per link and the total number of rays per cluster M ray . Both parameters are listed in Table 7.5-6 of [21] for LOS, NLOS, and O2I cases. For UMi, N cl = 12 for LOS and O2I, while N cl = 19 for NLOS; M ray = 20 for all three case.

Small Scale Parameters
In this step we consider the Small Scale Parameters (SSPs), i.e., cluster parameters such as delay, power, and angular spread, and intra-cluster or ray parameters, such as angle of departure and arrival and cross polarization power ratio.

Cluster Delays
The first SSP is the cluster delay. We need to generate with exponential delay distribution the propagation delays for each cluster as follows where r τ is the delay scaling, DS is the delay spread of the link and X n ∼ U(0, 1) where n is the cluster index. For the final delay set, we need to normalize and sort the delay vector τ n = sort(τ n − min(τ n )).
In case of LOS condition, additional scaling of delays is needed to compensate the effect of LOS peak addition to the delay spread. To scale the delay set, we use a constant C τ : τ LOS n = τ n /C τ where C τ = 0.7705 − 0.0433K r + 0.0002K 2 r + 0.000017K 3 r and K r is the Ricean K-factor in dB.

Cluster Powers
The second set of parameters is the cluster power, denoted by P n . For each cluster, we first compute where Z n ∼ N (0, ζ 2 ), ζ represents the per-cluster shadowing and can be found in Table 7.5-6 of [21]. In order to have the sum of the cluster powers equal to one, we divide the previous power set P n by the total power and so we obtain the normalized set P n In the case of LOS condition, an additional specular component is added to the first cluster P 1,LOS = K R /(K R + 1), where K R is the Ricean K-factor converted to linear scale. Therefore, in the case of LOS, we need to change the normalization strategy as follows: After the normalization, we remove the clusters with less than −25 dB power compared to the maximum cluster power. The scaling factor does not need to be changed after cluster elimination. Once we have the cluster powers P n , we assign the power to each ray by splitting P n equally over the total number of rays, so P n,m = P n /M ray , where n = 1, . . . , N cl is the cluster index and m = 1, . . . , M ray is the ray index.

Arrival and Departure Angles for Both Azimuth and Elevation
In this step, we generate the per ray angles of arrival and departure in both azimuth and elevation.

AOAs and AODs Generation
The Power Angular Spectrum (PAS) reflects the power distribution in different direction and determines the spatial correlation properties of the channel. The composite PAS in azimuth of all clusters is modelled as a wrapped Gaussian distribution. We show how to generate AOAs; the procedure to generate AODs is very similar. AOAs are generated by applying the inverse Gaussian distribution with cluster average power P n and Root Mean Square (RMS) Azimuth Spread of Arrival (ASA): with C φ defined as: where C NLOS φ can be found in Table 7.5-2 of [21]. In the case of LOS contribution, C φ also depends on the Ricean factor K. Cluster angles φ n,AOA can be generated as where X n is a discrete random variable uniformly distributed in the set {−1, 1} and Y n ∼ N (0, (ASA/7) 2 ) is used to introduce random variation. In the case of LOS link, the first cluster has angle equal to the LOS one φ 1,AOA = φ LOS,AOA . Finally, for ray angles we need to add offset angles to the azimuth cluster angle as follows: φ n,m,AOA = φ n,AOA + C ASA α m where C ASA is the cluster-wise RMS azimuth spread of arrival and α m is the per-ray offset, which can be found in Table 7.5-3 of [21]. AODs generation follows the same procedure from (43) to (46) by substituting ASA with Azimuth Spread of Departure (ASD) and C ASA with the cluster-wise RMS azimuth spread of departure C ASD .

ZOAs and ZODs Generation
The composite PAS in zenith of all clusters is modelled as a Laplacian distribution. ZOAs are generated by applying the inverse Laplacian distribution with cluster average power P n and RMS Zenith Spread of Arrival (ZSA): with C θ defined as: where C NLOS θ can be found in Table 7.5-4 of [21]. In the case of LOS contribution C θ also depends on the Ricean factor K. Cluster angles θ n,ZOA can be generated as whereθ ZOA = 90 • if the BS-UT link is O2I (the UT is indoor) andθ ZOA =θ LOS,ZOA ; otherwise, X n is a discrete random variable uniformly distributed in the set {−1, 1} and Y n ∼ N (0, (ZSA/7) 2 ) is used to introduce random variation. In the case of LOS link, the first cluster has angle equal to the LOS one θ 1,ZOA = θ LOS,ZOA . Finally, for ray angles we need to add offset angles to the zenith cluster angle as follows: θ n,m,ZOA = θ n,ZOA + C ZSA α m where C ZSA is the cluster-wise RMS zenith spread of arrival and α m is the per-ray offset .
ZODs generation follows a similar procedure as for ZOA. First, generateθ n,ZOD with Zenith Spread of Departure (ZSD) instead of ZSA, then replace (49) with: where X n is a discrete random variable uniformly distributed in the set {−1, 1}, where µ lgZSD is the mean of the ZSD log-normal distribution.

Coupling of Rays within a Cluster
Once we have all the per-ray angles, we need to random couple them within a cluster in the following way: • Couple randomly AOD angles φ n,m,AOD to AOA φ n,m,AOA within a cluster n; • Couple randomly ZOD angles θ n,m,ZOD to ZOA θ n,m,ZOA angles within a cluster n; • Couple randomly AOD angles φ n,m,AOD with ZOD angles θ n,m,ZOD within a cluster n.
where n = 1, . . . , N cl and m = 1, . . . , M ray . Figure 4 shows cluster angles θ n,ZOD , φ n,AOD at the BS and θ n,ZOA , φ n,AOA at the UT for a particular channel realization, in the case of LOS link.

Cross Polarization Power Ratio
The last step for small scale parameters is to generate the cross polarization power ratios (XPR) for each ray m of each cluster n. XPR is log-Normal distributed as follows K n,m = 10 X/10 where X ∼ N (µ XPR , σ 2 XPR ) is Gaussian distributed, n = 1, . . . , N cl and m = 1, . . . , M ray . The XPR average µ XPR and variance σ XPR are listed in Table 7.5-6 of [21] for each scenario.

Coefficient Generation
Before channel coefficient generation, we need to randomly draw the initial phases Φ θθ n,m Φ θφ n,m Φ φθ n,m Φ φφ n,m . The initial phases are uniformly distributed in the range (−π, π). The final time-invariant channel model expression will be a matrix-valued function of the variable τ.
In case of single-polarized antenna elements at both the transmitter and receiver, we define for each cluster n and ray m the scalar term g n,m as: g n,m = F rx,θ (θ n,m,ZOA , φ n,m,AOA ) exp(jΦ θθ n,m ) F tx,θ (θ n,m,ZOD , φ n,m,AOD ) we obtain the following N r × N t channel matrix H NLOS n,m,s relative to the cluster n, ray m and sector s: n,m,s = P n M ray g n,m a rx (θ n,m , φ n,m )a H tx,s (θ n,m , φ n,m ) (55) In case of dual cross-polarized pairs of antenna, for each array element at both the transmitter and receiver, we define for each cluster n and ray m the 2 × 2 matrix G n,m as: For the N cl − 2 weakest clusters, so for n = 3, 4, . . . , N cl , all rays belonging to the same cluster n have equal delay τ n . For the two strongest cluster, n = 1 and n = 2, rays are spread in delay to three sub-clusters R 1 , R 2 and R 3 in the same cluster n, and are mapped as R 1 = {1, 2,3,4,5,6,7,8,19, 20}, R 2 = {9, 10, 11, 12, 17, 18} and R 3 = {13, 14, 15, 16}. For each subcluster a fixed delay offset is applied and a fraction of the cluster power P n , proportional to the number of rays mapped onto it, is assigned. The delays of the sub-clusters are: τ n,1 = τ n τ n,2 = τ n + 1.28 c DS τ n,3 = τ n + 2.56 c DS where c DS is the cluster delay spread that can be found in Table 7.5-6 of [21] (e.g., for UMi LOS scenario, c DS = 5 ns). Therefore, the total time-invariant channel matrix-valued function for the s-th sector H NLOS s (τ) can be obtained by summing all the matrices from each ray of each cluster in the following way: In the case of LOS presence, we define the LOS channel matrix as: and In this case, the final matrix-valued channel impulse response is given by adding the the NLOS and LOS component and scaling both terms by the Ricean factor K R . The LOS component is associated with the shortest possible delay of all τ n , i.e., τ 1 : As final step, we apply path loss and shadowing for all the channel coefficients. After selecting the sampling frequency f s , the channel impulse response can be sampled and the total number of necessary taps N taps to represent the channel can be computed as: the total sampled channel H s can be represented as a N r × N t × T tensor of order 3 per each sector.

Multi-User MIMO System Model
Given the scenario described in Section 2, we consider the downlink communication between a single trisectorized BS and K users, and we focus on the precoding and combining scheme as depicted in Figure 5 of an OFDM Multi-User Multi-Layer MIMO system over wideband mmWave channels with Q subcarriers. The BS is equipped with N t transmitting antennas per sector and each UT with N r receiving antenna. Firstly, each of the K UTs placed inside the cell is assigned to one of the three sectors, the BS then transmits L data streams simultaneously to each UT, with L ≤ N r N t and L K ≤ N t . Let s k (q) denote the data symbol vector to be transmitted to the k-th user at the subcarrier q and E s k (q) s H k (q) = 1/L I, therefore, at the BS, L K data-symbols s[(q) = [s T 1 (q) s T 2 (q) . . . s T K (q)] T are precoded with a subcarrier-dependent precoder W(q) = [W 1 (q) W 2 (q) . . . W K (q)] of size N t × L K, where W k (q) represents the precoder designed for the k-th user. A sum power constraint is imposed on the total transmission power P tot , i.e., W(q) ≤ P tot /Q. The data symbols are then transformed to the time domain through a N FFT -point Inverse Fast-Fourier Transform (IFFT). A cyclic prefix (CP) of length D is then added to the data-symbols. The total transmitted signal at subcarrier q can be written as: We assume Time Division Duplexing (TDD) with channel reciprocity and ideal channel state information (CSI) at the BS, i.e., the BS can obtain long-term averaged over the fading CSI for each user. Moreover, users communicate in the same time slot or resource and the BS: • resorts only to Space Division Multiple Access (SDMA) through precoding techniques; • is able to process all K L users' signals, therefore we impose no limitation on the number of RF chains, i.e., the BS is able to employ at least K L parallel precoders.
In our simulation, we generate the N r × N t × N taps channel tensor H s,k from sector s of the BS to user k in time domain as described in Section 3, we perform a N FFT -point FFT along the 3rd dimension for each RX-TX antenna pair, and we obtain a N r × N t × N FFT frequency response channel tensorH s,k , where each N r × N t matrixH s,k (q) represents the flat MIMO channel of the q-th subband.
After sector selection, the baseband equivalent receiving signal of the k-th user at subcarrier q can be written as follows: where n k (q) is a length N r noise vector whose entries are independent and identically distributed according to CN (0, σ 2 k ) and are spatially white, i.e., E n k (q) n H k (q) = σ 2 k I, moreover σ 2 k = k B T F ∆, ∀k, where k B is the Boltzmann constant, T the temperature, F the noise figure, and ∆ the size of the subband or subcarrier spacing (SCS).

Sector Assignment
Each of the K UTs placed inside the cell must be assigned to one of the three sectors. As the 3-D position of the UTs is not known at the BS, we exploit the channel matrices to evaluate the suitability of a certain UT to be served by the antenna array of a sector, i.e., the link quality between them. If we denote with U = {U 1 , U 2 , . . . , U K } the set of all users to be assigned, and with A 1 , A 2 , and A 3 the set of users assigned to sectors 1, 2, and 3 respectively, a user can only be assigned to one sector, i.e., (A i ∩ A j ) = ∅ and |A 1 ∪ A 2 ∪ A 3 | = K, where |X | denotes the cardinality of X . Then: where · 2 F indicates the Frobenius norm. Therefore the user is assigned to the sector whose channel has the highest energy.
We could expect that the UTs in LOS will be assigned to the same sector as the one covering their x-y coordinates, except for the UTs in the sector borders, where some uncertainty is present. For NLOS UTs, the sector assignment could have even less or no correspondence to the actual placement in the hexagon. An example of the sector assignment result can be seen in Figure 6.
In a real case scenario, for example in 5G NR, the sector assignment is commonly a consequence of the initial access procedure, where the UT chooses the sector depending on the synchronization signal strength that it experiences. Even if this procedure is different from the one considered in our scenario, they both strongly depend on the link quality between the BS and the UT. We reasonably expect that the result of our assignment does not remarkably differ from a real scenario.

SLNR Precoding and MMSE Combining
For notation simplicity, we omit the subcarrier index q in the following discussions. In order to analyze the performance of a multi-user multi-layer MIMO scheme under the 3GPP 3-D channel model we split the processing at the transmitter and the receiver: at the transmitter, we adopt a Signal-to-Leakage-plus-Noise Ratio (SLNR) precoder [17], which is able to minimize the inter-user interference; 2.
at each UT, we adopt a Minimum Mean Square Error (MMSE) combiner [42], which will minimize the intra-user inter-layer interference.
Given a user k, the interference caused to the other UTs can be defined as the leakage: this leads to the SLNR expression the ratio between the signal power for user k and the noise plus the leakage: The SLNR expression can be rewritten as: where: is an extended N r K × N t channel matrix that only excludes user k. The transmit precoding matrix targeted for user k that maximizes its SLNR is given bŷ it is shown in [20,43] that the optimal precoder is linked to the solution of the generalized eigenvalue problem i.e., W k is made by the L eigenvectors corresponding to the L largest eigenvalues λ 1 , . . . , λ L . The design of the proper combiner at the UT, which will allow us to minimize the interlayer interference, requires the definition of the equivalent channel matrix after precoding at the receiver k: The designed L × N r combining matrix U k is a linear Minimum Mean Square Error (MMSE) receiver, defined as The estimated signal vectorŝ k for UT k after MMSE combining becomes: By recalling the structure of precoding and combining matrices W k and U k i.e., w k,l is a column vector while u T k,l is a row vector, we can express the estimated signal for user k and layer l as: The Signal-to-Interference-plus-Noise Ratio for user k and layer l can be defined as: By recalling that all matrices and vectors in (81) are subcarrier dependent, i.e., SI NR k,l = SI NR k,l (q), we can express the achievable rate for user k on subcarrier q as: the total achivable rate for user k is the sum of rates along all active subcarriers Q normalized by the rate loss due to the CP: where T sym and T CP the OFDM symbol time and CP duration respectively. Finally, we define the average per-user achievable rate C = E[R k ] where expectation E[·] is firstly computed w.r.t. random channel realizations with fixed users' positions and secondly w.r.t. random users' positions. Results are going to be presented with C as key metric.

Simulation Results
In this section, we report the results obtained by simulating the OFDM system and the channel generation previously described. The overall system parameters can be found in Table 1. Figure 7 reports an example of channel realization in the frequency domain, i.e., channel coefficient gains of the channel tensorH s,k are shown after following all the steps described in Section 2 and 3 with N FFT = 1024 subcarriers, N t = 16 transmitting antennas at the BS (N ty = 8 and N tz = 2) and N r = N ry = 2 receiving antennas, single polarized.
In particular, we identify some interesting scenarios to characterize our system, and then we collect results on its behavior when SLNR precoding is adopted as a precoding technique at BS and MMSE, combining at each UT when multi-layer features are enabled. The results are always reported as a Cumulative Distribution Function (CDF) curve of the achievable UT rates, except for the last scenario, where the total Sum-Rate is plotted against the traffic loading. When dual polarized elements are used, the total number of antenna elements becomes 2N t at the transmitter and 2N r at the receiver. As an example of SLNR precoding capabilities, Figure 8 shows the UPA radiation pattern at the BS when the SLNR precoding vector w k targeted for user k (θ LOS,ZOD = 96.46 • , φ LOS,AOD = 30 • ) is implemented. In the depicted scenario with three total UTs with LOS condition, the precoder is able to minimize the interference that the user of interest may cause to the two other users, whose LOS direction of departures are shown.

Rates for Different UPA Configurations at the BS
The multiplexing capabilities of the antenna array at the BS does not depend only on the number of antenna elements, but also on its geometrical configuration. In case of an UPA array, different configurations correspond to different number of columns and rows, changing respectively the number of elements along the y-axis N ty and along the z-axis N tz . In order to evaluate the potential benefits of adopting one configuration rather than another, we simulate the same scenario with 72 antennas at the transmitter N t , but spanning three possible antenna arrays configurations N ty × N tz : [36 × 2], [24 × 3] and [18 × 4]. Moreover, the same configurations are compared both for the case of single and dual polarized elements. Given a traffic density of 2500 users/km 2 , we expect, on average, 65 UTs in the cell, equally divided among the three sectors. Of course, the rates could be significantly lower depending on the particular channel realizations and interference. A UT is in outage if its SINR is lower than 0 dB. The six CDF curves obtained in this test are displayed in Figure 9. In the case of dual polarized elements, whereas for [36 × 2] and [24 × 3] configurations the curves are very close, the curve for [18 × 4] configuration is subject to a noticeable rate loss. For single polarized elements, the [36 × 2] configuration performs better. This could be explained by the higher resolution required along the azimuth angle φ rather than the zenith angle θ, considering the possible user positions. However, each cell sector permits to serve the major percentage of the UTs simultaneously, achieving rates up to 800 Mbps for the single polarization and almost twice as much for the dual polarization.

Rates for Different Transmitting Powers
The power allocation is a critical design aspect in the deployment of a communication system. It can improve the SINR and so the capacity, but only with a logarithmic scaling. Thus, we test the performance of the system according to an increase on the transmitting power P TX . The chosen values are 47 dBm (50 W), 50 dBm (100 W), and 53 dBm (200 W). The other parameters are the same as before, but now we adopt a fixed UPA configuration of [36 × 2], in both the single and dual elements polarization case. Figure 10 shows the shift of the CDF curves towards higher rates together with the power increase, in both polarization options, and the outage tends to decrease. This is not a surprising result, as the SINR will benefit from a higher P TX . Nevertheless, we should consider that a stronger signal could increase the interference among other cell sites in the nearby area.

Rates for Different Indoor Percentage
The parameter determining the percentage of users in an indoor condition could highly impact the rate of the users. This is of course caused by the higher losses encountered by the signal propagation and the absence of the LOS component whenever a certain UT is inside a building. This harmful effect is visible in Figure 11, where the CDF curves represent percentage of indoor UTs ranging from 0% to 100%. The number of UTs below the acceptable SINR threshold rises for higher indoor percentages. It is interesting to observe how two inflection points arise in the CDFs as the percentage of indoor users decreases. Additionally, in this case, the results for the two possible polarizations of the antenna elements show the same behavior. Figure 11. CDF of UT rates for different user indoor percentages, N t = 144 with N ty = 36, N tz = 4, N r = 2, P TX = 47 dBm, traffic density = 2500 users/km 2 .

Rates for Different Layers and Antenna Polarizations
We studied the impact of layers and polarization on the per-user rate. Furthermore, we examine whether it is better for an array configuration to deploy dual cross polarized antenna elements, or to double the number of single polarized antenna elements at the BS and UTs. This comparison can be seen between N t = [36 × 2], N r = 1 dual polarized and N t = [72 × 2], N r = [2 × 1] single polarized elements configurations in Figure 12. For a given couple of N ty and N tz , the antenna array with dual polarized elements improves the rate of the UTs, as the number of antenna elements are doubled. Nevertheless, in the case of equal number of elements, the configuration with single polarized elements exhibits a lower outage percentage, as the increase in the array dimension allows a better interference rejection capability.

Rates for Different Cell Radius Lengths
The last analyzed CDFs are generated with different cell sizes, i.e., different radius lengths. By taking into account the path loss term, it is easy to expect lower per-users SINRs, on average, as the cell radius increases; the greater the distance between BS and UT, the greater the path loss. This behavior is clearly represented in Figure 13. We considered a fixed average number of UTs inside the cell for all different cell sizes, therefore the users' density µ is changed accordingly such that µ 3 √ 3 2 R 2 ≈ 65. Both outage and rate show better results for smaller cell radius.

Sum Rate and Spectral Efficiency for Different Traffic Conditions
The SLNR precoding allows us to spatially multiplex users in an effective way. In Figure 14 we examine the interference rejection capability of the SLNR precoder by varying the traffic loading. In particular, we analyze the average spectral efficiency (averaged over all subcarriers for each user and over all users) and we detect the maximum attainable sum rate before experiencing a noticeable sum rate loss. At first, the total sum rate will likely increase as long as the number of users per sector does not significantly exceed the number of antennas N ty at the BS along the horizontal axis, even if the per-user spectral efficiency will decrease, as the power must be split among more transmissions. Nevertheless, when the density of the users in the sector becomes too high, the sum rate drops, then more and more users will experience outage as their SINR becomes too low to communicate with the BS. The peak of the sum rate roughly reaches 24 Gbps in the correspondence of traffic loading of approximately µ = 4500 users/km 2 , i.e., 1 3 µ 3 √ 3 2 R 2 ≈ 39. The curve of the spectral efficiency follows an almost linearly decreasing behavior w.r.t. the number of UTs. As expected, the outage probability is directly proportional to the traffic loading.

Conclusions
In this paper, we have presented the new 3-D channel model for 5G designed by 3GPP in TR 38.901, providing a step-by-step tutorial of its implementation in MATLAB. The new channel model characterizes the rich environment in which signal propagation takes place, with the customization of a significant number of parameters. This allows us to run extensive simulations to test new systems before their actual implementation. Furthermore, we have deomstrated an OFDM MIMO system by simulating a trisectorial single cell 5G cellular network. The developed system uniquely resorts on SDMA techniques, based on SLNR precoding and MMSE combining schemes, to establish communication between the BS and UTs, which are randomly generated and located in the cell. We have implemented our system with different configurations for antenna arrays on both the transmitter and receiver sides. We have shown that the number of the antenna elements and their arrangement can affect the efficiency of MIMO techniques, as well as the adoption of double cross-polarized antenna elements instead of single polarized ones. From the results obtained by a variety of simulations, we have investigated how the achievable rates and the outages of the users may change according to the chosen parameters, such as the array configuration, the number of layers and polarizations, the traffic density, the transmission power, the percentage of indoor UTs and the cell radius. SLNR precoding shows great performance in efficiently multiplexing different UTs in a cell sector, but it shows some limitations when the users are spatially correlated, as it might be expected. This behavior becomes more and more evident as the density of users increases. Future works will aim at broadening the current channel generation to support the mobility of the users, but also at studying efficient scheduling algorithms to better exploit the benefits of MU-MIMO techniques, i.e., by grouping or clustering users in order to limit their spatial correlation and, consequently, their interference.