BaseChannelInterpolator#

class sionna.phy.ofdm.BaseChannelInterpolator(*args: Any, precision: str | None = None, device: str | None = None, **kwargs: Any)[source]#

Bases: sionna.phy.object.Object

Abstract class for implementing an OFDM channel interpolator.

Any class that implements an OFDM channel interpolator must implement this callable class.

A channel interpolator is used by an OFDM channel estimator (BaseChannelEstimator) to compute channel estimates for the data-carrying resource elements from the channel estimates for the pilot-carrying resource elements.

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.

Parameters:
  • args (Any)

  • precision (str | None)

  • device (str | None)

  • kwargs (Any)