complex_normal#

sionna.phy.utils.complex_normal(size: Sequence[int], *, precision: Literal['single', 'double'] | None = None, device: str | torch.device | None = None, generator: torch._C.Generator | None = None) torch.Tensor[source]#

Generate complex normal random tensor with unit variance, compile-aware.

Generates complex Gaussian random variables with variance 1 (i.e., variance 0.5 per real and imaginary component).

In eager mode, uses the provided generator for reproducibility. In compiled mode, uses global RNG state for graph fusion.

Parameters:
  • size (Sequence[int]) – Shape of the output tensor.

  • precision (Literal['single', 'double'] | None) – Precision used for the output tensor. If set to None, precision is used.

  • device (str | torch.device | None) – Device for the output tensor.

  • generator (torch._C.Generator | None) – Random number generator (used only in eager mode).

Outputs:

samples – Complex tensor with standard complex normal values.