comnum.ofdm_estimate#
- comnum.ofdm_estimate(grid, rx, noise_var, method='linear', *, delays=None, powers=None, max_delay=None, n_fft=None)#
Channel estimation on a resource grid: LS at the pilots, then
"linear"interpolation, or"lmmse"across the subcarriers (van de Beek et al. 1995) with the power-delay profiledelays,powers, or the robust uniform profile overmax_delaysamples (Edfors et al. 1998); linear in time.- Parameters:
grid (ResourceGrid) – the grid and its pilots.
rx (array_like) – the received grid
(n_subcarriers, n_symbols), or the symbols ofOfdm.demodulate(symbol after symbol).noise_var (float) – noise variance per resource element.
method (str) –
"linear","lmmse", or the interpolations compared by Coleri et al. (2002):"second_order","spline","lowpass"(MATLABinterp) and"time_domain"(zero padding of the IDFT, pilots on 0, L, 2L, …).delays (array_like, optional) – delays of the profile (samples of the IFFT of
n_fft).powers (array_like, optional) – powers of the profile (linear).
max_delay (int, optional) – the length of the uniform profile (samples).
n_fft (int, optional) – the size of the IFFT (needed by
"lmmse", withdelaysandpowersormax_delay).
- Returns:
the channel estimate at every resource element (complex128), in the layout of
rx.- Return type:
- Raises:
ValueError – for an invalid parameter or input (the message names it).