pyFDN.construct_paraunitary_from_elementals#

pyFDN.construct_paraunitary_from_elementals(n, degree)[source]#

Construct a random paraunitary matrix as a cascade of elemental factors.

The matrix is a random orthogonal matrix multiplied by degree - 1 random degree-one lossless factors V(z) = (I - vv^T) + z^{-1} vv^T.

Parameters:
  • n (int) – Size of the paraunitary matrix.

  • degree (int) – Polynomial degree of the matrix (number of taps).

Return type:

tuple[ndarray, ndarray]

Returns:

  • matrix ((n, n, degree) ndarray) – Random paraunitary FIR matrix in z^{-1} convention.

  • v ((n, degree - 1) ndarray) – The unit-norm direction vectors of the elemental factors.