Quadriga Channel Model

class QuadrigaChannel(*args, interface=None, **kwargs)

Bases: hermespy.channel.channel.Channel

Quadriga Channel Model.

Maps the output of the QuadrigaInterface to fit into hermes software architecture.


interface (Optional[QuadrigaInterface], optional) – Specifies the consisdered Quadriga interface. Defaults to None.

yaml_tag: str = 'Quadriga'

YAML serialization tag.

yaml_matrix = True
impulse_response(num_samples, sampling_rate)

Sample a new channel impulse response.

Note that this is the core routine from which propagate will create the channel state.

  • num_samples (int) – Number of samples within the impulse response.

  • sampling_rate (float) – The rate at which the delay taps will be sampled, i.e. the delay resolution.


Impulse response in all number_rx_antennas x number_tx_antennas. 4-dimensional array of size T x number_rx_antennas x number_tx_antennas x (L+1) where L is the maximum path delay (in samples). For the ideal channel in the base class, L = 0.

Return type


classmethod to_yaml(representer, node)

Serialize a QuadrigaChannel object to YAML.

  • representer (SafeRepresenter) – A handle to a representer used to generate valid YAML code. The representer gets passed down the serialization tree to each node.

  • node (QuadrigaChannel) – The QuadrigaChannel instance to be serialized.


The serialized YAML node.

Return type


classmethod from_yaml(constructor, node)

Recall a new QuadrigaChannel instance from YAML.

  • constructor (SafeConstructor) – A handle to the constructor extracting the YAML information.

  • node (Node) – YAML node representing the QuadrigaChannel serialization.


Newly created QuadrigaChannel instance. The internal references to modems will be None and need to be initialized by the scenario YAML constructor.

Return type