TutorialΒΆ

This webpage introduces a detailed tutorial for the imtoolkit command and APIs. The imtoolkit command is a stand-alone toolkit for the spatial modulation and subcarrier-index modulation schemes, which supports Windows, Mac, and Linux. By contrast, the imtoolkit APIs provide various classes and functions for the general MIMO/OFDM scenarios.

Before using imtoolkit, one can activate the CuPy-aided GPGPU acceleration by setting an environment variable USECUPY=1 as follows.

> export USECUPY=1

In case you would like to use the CPU backend, NumPy, please unset the environment variable.

> unset USECUPY

How to use the imtoolkit command

API examples for the imtoolkit package

../_images/CoherentMIMO-IdealRayleigh-BER.svg
  • CoherentMIMO-IdealRayleigh-BER.py

    • This example compares the BER performance of the coherent Bell laboratories layered space-time (BLAST) and spatial modulation (SM) schemes.


../_images/CoherentMIMO-IdealRayleigh-AMI.svg

../_images/CoherentOFDM-IdealRayleigh-BER.svg

../_images/CoherentOFDM-IdealRayleigh-BER-diversity.svg

../_images/CoherentOFDM-IdealRayleigh-AMI.svg

../_images/DifferentialMIMO-IdealRayleigh-BER.svg
  • DifferentialMIMO-IdealRayleigh-BER.py

    • This example compares the BER performance of the differential BPSK, differential orthogonal space-time block code (DOSTBC), diagonal unitary code (DUC), algebraic differential spatial modulation (ADSM), and differential threaded algebraic space-time (DTAST) schemes.


../_images/SemiUnitaryDifferentialMIMO-IdealRayleigh-BER.svg

../_images/NonSquareDifferentialMIMO-IdealRayleigh-BER.svg