comnum.eigenmode#

comnum.eigenmode(h, total_power, noise_var, *, water_filling=True)#

Eigenmode (SVD) transmission over h: precoder V P^(1/2), receive filter Uᴴ, gains and powers of the active modes (water-filling of total_power against noise_var, or equal power).

Parameters:
  • h (array_like) – one channel (n_rx, n_tx).

  • total_power (float) – the total transmit power.

  • noise_var (float) – noise variance per receive antenna.

  • water_filling (bool) – water-filling (else equal power on every mode).

Returns:

precoder (n_tx, streams), combiner (streams, n_rx), gains, powers.

Return type:

dict

Raises:

ValueError – for an invalid parameter or input (the message names it).