generate_polar_transform_mat#

sionna.phy.fec.polar.utils.generate_polar_transform_mat(n_lift: int) numpy.ndarray[source]#

Generate the polar transformation matrix (Kronecker product).

Parameters:

n_lift (int) – Defining the Kronecker power, i.e., how often the kernel is lifted.

Outputs:

gm – Array of 0s and 1s of shape [2^n_lift, 2^n_lift] containing the Polar transformation matrix.

Raises:
  • ValueError – If n_lift is not integer or negative.

  • ValueError – If n_lift >= 20 (code length too large).

Examples

from sionna.phy.fec.polar.utils import generate_polar_transform_mat

gm = generate_polar_transform_mat(3)
print(gm.shape)
# (8, 8)