BaseChannelEstimator#
- class sionna.phy.ofdm.BaseChannelEstimator(resource_grid: sionna.phy.ofdm.resource_grid.ResourceGrid, precision: Literal['single', 'double'] | None = None, device: str | None = None, **kwargs)[source]#
Bases:
sionna.phy.block.BlockAbstract block for implementing an OFDM channel estimator.
Any block that implements an OFDM channel estimator must implement this class and its
call()abstract method.This class calls the
call()method to estimate the channel for the entire resource grid.- Parameters:
resource_grid (sionna.phy.ofdm.resource_grid.ResourceGrid) – Resource grid
precision (Literal['single', 'double'] | None) – Precision used for internal calculations and outputs. If set to None,
precisionis used.device (str | None) – Device for tensor operations. If None,
deviceis used.
- Inputs:
y – [batch_size, num_rx, num_rx_ant, num_ofdm_symbols, fft_size], torch.complex. Observed signals.
no – [batch_size, num_rx, num_rx_ant] or only the first n>=0 dims, torch.float. Variance of the AWGN.
- Outputs:
h_hat – [batch_size, num_rx, num_rx_ant, num_tx, num_streams_per_tx, num_ofdm_symbols, num_effective_subcarriers], torch.complex. Channel estimates across the entire resource grid for all transmitters and streams.
err_var – Same shape as
h_hat, torch.float. Channel estimation error variance across the entire resource grid for all transmitters and streams.