Skip to content

NVlabs/sionna-rt

Repository files navigation

Sionna RT: The Ray Tracing Package of Sionna™

Sionna RT is the stand-alone ray tracing package of the Sionna™ Library for Research on Communication Systems. It is built on top of Mitsuba 3 and is interoperable with TensorFlow, PyTorch, and JAX.

The official documentation can be found on the Sionna website.

Installation

The recommended way to install Sionna RT is via pip:

pip install sionna-rt

Sionna RT has the same requirements as Mitsuba 3 and we refer to its installation guide for further information.

To run Sionna RT on CPU, LLVM is required by Dr.Jit. Please check the installation instructions for the LLVM backend.

Installation from source

After to cloning the repository, you can install sionna-rt by running the following command from within the repository's root directory:

pip install .

Testing

First, you need to install the test requirements by executing the following command from the repository's root directory:

pip install '.[test]'

The unit tests can then be executed by running pytest from within the test folder.

Building the Documentation

Install the requirements for building the documentation by running the following command from the repository's root directory:

pip install '.[doc]'

You might need to install pandoc manually.

You can then build the documentation by executing make html from within the doc folder.

The documentation can then be served by any web server, e.g.,

python -m http.server --dir build/html

For Developers

The documentation of Sionna RT includes developer guides explaining how to extend it with custom antenna patterns, radio materials, etc.

Development requirements can be installed by executing from the repository's root directory:

pip install '.[dev]'

Linting of the code can be achieved by running pylint src/ from the repository's root directory.

License and Citation

Sionna RT is Apache-2.0 licensed, as found in the LICENSE file.

If you use this software, please cite it as:

@software{sionna,
 title = {Sionna},
 author = {Hoydis, Jakob and Cammerer, Sebastian and {Ait Aoudia}, Fayçal and Nimier-David, Merlin and Maggi, Lorenzo and Marcus, Guillermo and Vem, Avinash and Keller, Alexander},
 note = {https://nvlabs.github.io/sionna/},
 year = {2022},
 version = {1.0.1}
}