LinearInterpolator#
- class sionna.phy.ofdm.LinearInterpolator(pilot_pattern, time_avg: bool = False)[source]#
Bases:
sionna.phy.ofdm.channel_estimation.BaseChannelInterpolatorLinear channel estimate interpolation on a resource grid.
This class computes for each element of an OFDM resource grid a channel estimate based on
num_pilotsprovided channel estimates and error variances through linear interpolation. It is assumed that the measurements were taken at the nonzero positions of aPilotPattern.The interpolation is done first across sub-carriers and then across OFDM symbols.
- Parameters:
pilot_pattern – Used pilot pattern
time_avg (bool) – If enabled, measurements will be averaged across OFDM symbols (i.e., time). This is useful for channels that do not vary substantially over the duration of an OFDM frame.
- Inputs:
h_hat – [batch_size, num_rx, num_rx_ant, num_tx, num_streams_per_tx, num_pilot_symbols], torch.complex. Channel estimates for the pilot-carrying resource elements.
err_var – [batch_size, num_rx, num_rx_ant, num_tx, num_streams_per_tx, num_pilot_symbols], torch.float. Channel estimation error variances for the pilot-carrying resource elements.
- Outputs:
h_hat – [batch_size, num_rx, num_rx_ant, num_tx, num_streams_per_tx, num_ofdm_symbols, fft_size], 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 variances across the entire resource grid for all transmitters and streams.