normalize_precoding_power#

sionna.phy.mimo.normalize_precoding_power(precoding_vec: torch.Tensor, tx_power_list: List[float] | None = None, precision: Literal['single', 'double'] | None = None) torch.Tensor[source]#

Normalizes the beam coefficient power to 1 by default, or to tx_power_list if provided as input.

Parameters:
  • precoding_vec (torch.Tensor) – Precoding vectors with shape [N, M]. Each row contains a set of antenna coefficients whose power is to be normalized.

  • tx_power_list (List[float] | None) – The \(i\)-th element defines the power of the \(i\)-th precoding vector. If None, power is normalized to 1.

  • precision (Literal['single', 'double'] | None) – Precision used for internal calculations and outputs. If set to None, precision is used.

Outputs:

precoding_vec – [N, M], torch.complex. Normalized antenna coefficients.

Examples

vec = torch.complex(torch.randn(4, 8), torch.randn(4, 8))
vec_norm = normalize_precoding_power(vec)
# Each row now has unit power