comnum.mimo_llr#
- comnum.mimo_llr(h, y, constellation, noise_var, method='mmse', *, k=Ellipsis, iterations=Ellipsis)#
Bit log-likelihood ratios of a MIMO link (positive for a 0, most significant bit first), the LLR sequence of every transmitted stream: exact per-stream LLRs after the unbiased linear filter for
"mr","zf"and"mmse", max-log over all hypotheses for"ml", over the final list for"kbest", exact LLRs of the decoupled channel for"amp"and"oamp".- Parameters:
h (array_like) – the channel,
(n_rx, n_tx)for every vector or(n, n_rx, n_tx).y (array_like) – the received streams,
(n_rx, n)(or one vector(n_rx,)).constellation (Constellation) – the alphabet of every stream.
noise_var (float) – noise variance per receive antenna
E|w_i|².method (str) –
"mr","zf","mmse","ml","kbest","amp"or"oamp"(the SIC and sphere detectors have no soft output).k (int) – paths kept by
"kbest".iterations (int) – iterations of
"amp"and"oamp".
- Returns:
(n_tx, n · log2 M), the LLRs of the symbols of every stream in order (for one vector(n_rx,), then_tx · log2 MLLRs stream after stream), float64.- Return type:
- Raises:
ValueError – for an invalid parameter or input (the message names it).