grid_of_beams_dft_ula#
- sionna.phy.mimo.grid_of_beams_dft_ula(num_ant: int, oversmpl: int = 1, precision: Literal['single', 'double'] | None = None) torch.Tensor[source]#
Computes the Discrete Fourier Transform (DFT) Grid of Beam (GoB) coefficients for a uniform linear array (ULA).
The coefficient applied to antenna \(n\) for beam \(m\) is expressed as:
\[c_n^m = e^{\frac{2\pi n m}{N O}}, \quad n=0,\dots,N-1, \ m=0,\dots,NO\]where \(N\) is the number of antennas
num_antand \(O\) is the oversampling factoroversmpl.Note that the main lobe of beam \(m\) points in the azimuth direction \(\theta = \mathrm{arc sin} \left( 2\frac{m}{N} \right)\) if \(m\le N/2\) and \(\theta = \mathrm{arc sin} \left( 2\frac{m-N}{N} \right)\) if \(m\ge N/2\), where \(\theta=0\) defines the perpendicular to the antenna array.
- Parameters:
- Outputs:
gob – [num_ant x oversmpl, num_ant], torch.complex. The \(m\)-th row contains the num_ant antenna coefficients for the \(m\)-th DFT beam.
Examples
gob = grid_of_beams_dft_ula(num_ant=8, oversmpl=2) # gob.shape = torch.Size([16, 8])