Skip to main content

Differentiable Ray Tracing Toolbox for Radio Propagation Simulations

Project description

DiffeRT logo

DiffeRT

Latest Release Python version Documentation Codecov

Usage

WARNING: Until this package reaches version 0.1.x, breaking changes should be expected. Checkout the ROADMAP for future features.

If you have any suggestion regarding the development of this package, please open an issue.

The easiest way to install DiffeRT is through pip:

pip install differt

We provide pre-built binaries for most platforms. If you want (or need) to build the package from the source distribution, check out the requirements below.

Contributing

IMPORTANT: The current documentation is very light and a more complete guide for new contributors will be written in the near future.

Until then, do not hesitate to reach me for help with GitHub issues!

This project is built using both Python and Rust code, to provide an easy-to-use but performant program. It also heavily uses the capabilities brought by JAX for numerical arrays.

Requirements

To run build this package locally, you need:

  • Python 3.9 or above;
  • Rust stable toolchain;
  • make (e.g., GNU Make or Make for Windows);
  • Maturin for building Python bindings from Rust code;
  • and Rye to manage this project.

Local development

The following commands assume that you installed the project locally with:

rye sync

and that you activated the corresponding Python virtual environment:

. .venv/bin/activate  # or .venv\Scripts\activate on Windows

Documentation

To generate the documentation, please run the following:

cd docs
make html

Finally, you can open build/html/index.html to see the generated docs.

Testing

Both Rust and Python codebases have their own tests and benchmarks.

Testing Rust code

You can very easily test you code using Cargo:

cargo test

or benchmark it:

cargo bench

Testing Python code

in the same way, you can very test you code with Pytest:

pytest

or benchmark it:

pytest --benchmark-only

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

differt-0.0.12.tar.gz (27.0 kB view hashes)

Uploaded Source

Built Distribution

differt-0.0.12-py3-none-any.whl (2.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page