Mutual Coupling#

class Coupling(device=None)[source]#

Bases: ABC

Base class for mutual coupling model implementations.

Parameters:

device (SimulatedDevice, optional) – Device the model is configured to.

receive(signal)[source]#

Apply the mutual coupling model during signal reception.

Parameters:

signal (Signal) – The signal to be received.

Return type:

Signal

Returns: The signal resulting from coupling modeling.

Raises:
  • FloatingError – If the device is not specified.

  • ValueError – If the number of signal streams does not match the number of transmitting antennas.

transmit(signal)[source]#

Apply the mutual coupling model during signal transmission.

Parameters:

signal (Signal) – The signal to be transmitted.

Return type:

Signal

Returns: The signal resulting from coupling modeling.

Raises:
  • FloatingError – If the device is not specified.

  • ValueError – If the number of signal streams does not match the number of transmitting antennas.

property device: SimulatedDevice | None#

Device the model is configured to.

Returns:

Handle to the device. None, if the model is considered floating.