Skip to content

Integrations

DeepMIMO integrates with various external tools and frameworks. This allows the user to choose the tool they prefer for simulations, while accessing the DeepMIMO database.

The purpose of integrations is to extend simulation tools with hundreds of pre-raytraced scenarios, and extend DeepMIMO with the capabilities of each tool.

Coming Soon

We are actively developing integrations.

We should release these integrations before August. Please contact us directly if this is something you would be interested in.

Sionna Integration

Sionna is an open-source GPU-accelerated library for link- and system-level simulations.

See the DeepMIMO Integration Notebook in Sionna Docs for a complete example of the integration. It mainly leverages the Sionna Adapter.

Class for converting DeepMIMO dataset format to Sionna format.

This class handles the conversion of channel data from DeepMIMO format to the format expected by Sionna, supporting various configurations of BSs and UEs.

The dataset provided will be used to the fullest. If some data is not needed - for example, only one BS instead of all - then the dataset should be subsetted before calling this class.

Attributes:

Name Type Description
dataset dict

The loaded DeepMIMO dataset.

num_rx_ant int

Number of receiver antennas.

num_tx_ant int

Number of transmitter antennas.

num_samples_bs int

Number of basestation samples.

num_samples_ue int

Number of user samples.

num_samples int

Total number of channel samples.

num_rx int

Number of receivers per sample.

num_tx int

Number of transmitters per sample.

num_paths int

Number of paths per channel.

num_time_steps int

Number of time steps (1 for static).

ch_shape tuple

Required shape for channel coefficients.

t_shape tuple

Required shape for path delays.

Initialize the Sionna adapter.

Parameters:

Name Type Description Default
dataset Dataset | MacroDataset

A loaded DeepMIMO dataset, using dm.load().

required

dataset instance-attribute

dataset = [dataset]

num_tx instance-attribute

num_tx = 1

num_rx instance-attribute

num_rx = 1

num_rx_ant instance-attribute

num_rx_ant = shape[1]

num_tx_ant instance-attribute

num_tx_ant = shape[2]

num_paths instance-attribute

num_paths = shape[-1]

num_time_steps instance-attribute

num_time_steps = 1

ch_shape instance-attribute

ch_shape = (
    num_rx,
    num_rx_ant,
    num_tx,
    num_tx_ant,
    num_paths,
    num_time_steps,
)

t_shape instance-attribute

t_shape = (num_rx, num_tx, num_paths)

num_rx_samples instance-attribute

num_rx_samples = n_ue

num_tx_samples instance-attribute

num_tx_samples = num_tx

num_samples instance-attribute

num_samples = num_rx_samples * num_tx_samples

MATLAB 5G Toolbox

MATLAB 5G Toolbox provides standard-compliant functions and reference examples for the modeling, simulation, and verification of 5G and 5G-Advanced communications systems.

(coming soon - workitem not started - feel free to contribute)

NeoRadium

NeoRadium is an open-source GPU-accelerated library for link-level simulations.

(coming soon - workitem not started - feel free to contribute)

Updates

Stay tuned for updates on integrations development:

  1. Follow our GitHub repository
  2. Subscribe to our mailing list on website DeepMIMO