{"id":15621717,"url":"https://github.com/jeertmans/differt2d","last_synced_at":"2025-09-12T21:39:59.358Z","repository":{"id":173900096,"uuid":"639016437","full_name":"jeertmans/DiffeRT2d","owner":"jeertmans","description":"2D Toolbox for Differentiable Ray Tracing","archived":false,"fork":false,"pushed_at":"2025-08-26T13:14:00.000Z","size":25235,"stargazers_count":13,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-29T18:47:37.425Z","etag":null,"topics":["2d","differentiable","raytracing","telecommunications"],"latest_commit_sha":null,"homepage":"http://eertmans.be/DiffeRT2d/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jeertmans.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-05-10T15:21:24.000Z","updated_at":"2025-08-26T13:14:02.000Z","dependencies_parsed_at":"2023-10-03T17:05:25.432Z","dependency_job_id":"dcb4e31e-126e-45d4-bb57-6e9aa33909c8","html_url":"https://github.com/jeertmans/DiffeRT2d","commit_stats":{"total_commits":261,"total_committers":4,"mean_commits":65.25,"dds":"0.15325670498084287","last_synced_commit":"e35258ceea832d3b804a9077eed9f802445232eb"},"previous_names":["jeertmans/differt2d"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/jeertmans/DiffeRT2d","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeertmans%2FDiffeRT2d","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeertmans%2FDiffeRT2d/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeertmans%2FDiffeRT2d/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeertmans%2FDiffeRT2d/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jeertmans","download_url":"https://codeload.github.com/jeertmans/DiffeRT2d/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeertmans%2FDiffeRT2d/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272885304,"owners_count":25009609,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d","differentiable","raytracing","telecommunications"],"created_at":"2024-10-03T09:51:35.336Z","updated_at":"2025-09-12T21:39:59.337Z","avatar_url":"https://github.com/jeertmans.png","language":"Python","readme":"# DiffeRT2d\n\n[![Latest Release][pypi-version-badge]][pypi-version-url]\n[![Python version][pypi-python-version-badge]][pypi-version-url]\n[![Documentation][documentation-badge]][documentation-url]\n[![DOI][doi-badge]][doi-url]\n[![JOSS Paper][joss-badge]][joss-url]\n[![Codecov][codecov-badge]][codecov-url]\n\n\u003cimg alt=\"DiffeRT2d Logo\" align=\"right\" width=\"512px\" src=\"https://raw.githubusercontent.com/jeertmans/DiffeRT2d/main/static/logo_light_transparent.png\"\u003e\n\nDifferentiable Ray Tracing Python Framework for Radio Propagation.\n\n\u003c!-- start description --\u003e\n\nDiffeRT2d is built on top of the\n[JAX](https://github.com/google/jax)\nlibrary to provide a program that is *differentiable everywhere*.\nWith that, performing gradient-based optimization, or training\nMachine Learning models with Ray Tracing (RT) becomes straightforward!\nMoreover, the extensive use of the object-oriented paradigm\nfacilitates the simulation of complex objects, such as metasurfaces,\nand the use of more advanced path tracing methods.\n\nThe objective of this tool is to provide a **simple-to-use** and\n**highly interpretable** RT framework **for researchers** engaged\nin fundamental studies of RT applied to radio propagation,\nor any researcher interested in the various paths radio waves\ncan take in a given environment.\n\n\u003c!-- end description --\u003e\n\n\u003e [!IMPORTANT]\n\u003e For 3D scenarios at city-scales,\n\u003e checkout [DiffeRT](https://github.com/jeertmans/DiffeRT).\n\n- [Installation](#installation)\n  * [Dependencies](#dependencies)\n  * [Pip install](#pip-install)\n  * [Install From Repository](#install-from-repository)\n- [Usage](#usage)\n- [Citing](#citing)\n- [Contributing](#contributing)\n  * [Reporting an Issue](#reporting-an-issue)\n  * [Seeking for Help](#seeking-for-help)\n  * [Contact](#contact)\n\n## Installation\n\n\u003c!-- start install --\u003e\n\nWhile installing DiffeRT2d and its dependencies on your global Python is fine,\nwe recommend using a virtual environment\n(e.g., [venv](https://docs.python.org/3/tutorial/venv.html)) for a local installation.\n\n### Dependencies\n\n\u003c!-- start deps --\u003e\n\nDiffeRT2d uses [JAX](https://github.com/google/jax)\nfor automatic differentation,\nwhich in turn may use (or not) CUDA for GPU acceleration.\n\nIf needed, please refer to\n[JAX's installation guidelines](https://github.com/google/jax#installation)\nfor more details.\n\n\u003c!-- end deps --\u003e\n\n### Pip Install\n\nThe recommended way to install the latest release is to use pip:\n\n```bash\npip install differt2d\n```\n\n### Install From Repository\n\nAn alternative way to install DiffeRT2d is to clone the git repository,\nand install from there:\nread the\n[contributing guide](https://eertmans.be/DiffeRT2d/latest/contributing/workflow.html)\nto know how.\n\n\u003c!-- end install --\u003e\n\n## Usage\n\nFor a quick introduction to DiffeRT2d, check you our\n[Quickstart](https://eertmans.be/DiffeRT2d/latest/quickstart.html) tutorial!\n\nYou may find a multitude of usage examples across the documentation\nor the [examples](https://github.com/jeertmans/DiffeRT2d/tree/main/examples)\nfolder, or directly in the\n[examples gallery](https://eertmans.be/DiffeRT2d/latest/examples_gallery/index.html).\n\n## Citing\n\nIf you use this software, please cite it as:\n\n```bibtex\n@article{Eertmans_DiffeRT2d_A_Differentiable_2024,\n  title   = {{DiffeRT2d: A Differentiable Ray Tracing Python Framework for Radio Propagation}},\n  author  = {Eertmans, Jérome and Oestges, Claude and Jacques, Laurent},\n  year    = 2024,\n  month   = jun,\n  journal = {Journal of Open Source Software},\n  volume  = 9,\n  number  = 98,\n  pages   = 6915,\n  doi     = {10.21105/joss.06915},\n  url     = {https://joss.theoj.org/papers/10.21105/joss.06915}\n}\n```\n\nor use the *Cite this repository* button on this page to get other citation formats.\n\n## Contributing\n\nContributions are more than welcome!\nPlease read through\n[our contributing section](https://eertmans.be/DiffeRT2d/latest/contributing/index.html).\n\n### Reporting an Issue\n\n\u003c!-- start reporting-an-issue --\u003e\n\nIf you think you found a bug,\nan error in the documentation,\nor wish there was some feature that is currently missing,\nwe would love to hear from you!\n\nThe best way to reach us is via the\n[GitHub issues](https://github.com/jeertmans/DiffeRT2d/issues).\nIf your problem is not covered by an already existing (closed or open) issue,\nthen we suggest you create a\n[new issue](https://github.com/jeertmans/DiffeRT2d/issues/new).\n\nThe more precise you are in the description of your problem, the faster we will\nbe able to help you!\n\n\u003c!-- end reporting-an-issue --\u003e\n\n### Seeking for help\n\n\u003c!-- start seeking-for-help --\u003e\n\nSometimes, you may have a question about ,\nnot necessarily an issue.\n\nThere are two ways you can reach us for questions:\n\n- via the\n[GitHub issues](https://github.com/jeertmans/DiffeRT2d/issues);\n- or via\n[GitHub discussions](https://github.com/jeertmans/DiffeRT2d/discussions).\n\n\u003c!-- end seeking-for-help --\u003e\n\n### Contact\n\n\u003c!-- start contact --\u003e\n\nFinally, if you do not have any GitHub account,\nor just wish to contact the author of DiffeRT2d,\nyou can do so at: [jeertmans@icloud.com](mailto:jeertmans@icloud.com).\n\n\u003c!-- end contact --\u003e\n\n[pypi-version-badge]: https://img.shields.io/pypi/v/DiffeRT2d?label=DiffeRT2d\n[pypi-version-url]: https://pypi.org/project/DiffeRT2d/\n[pypi-python-version-badge]: https://img.shields.io/pypi/pyversions/DiffeRT2d\n[documentation-badge]: https://img.shields.io/website?down_color=lightgrey\u0026down_message=offline\u0026label=documentation\u0026up_color=green\u0026up_message=online\u0026url=https%3A%2F%2Feertmans.be%2FDiffeRT2d%2F\n[documentation-url]: https://eertmans.be/DiffeRT2d/\n[doi-badge]: https://zenodo.org/badge/DOI/10.5281/zenodo.11386516.svg\n[doi-url]: https://doi.org/10.5281/zenodo.11386516\n[joss-badge]: https://joss.theoj.org/papers/10.21105/joss.06915/status.svg\n[joss-url]: https://doi.org/10.21105/joss.06915\n[codecov-badge]: https://codecov.io/gh/jeertmans/DiffeRT2d/branch/main/graph/badge.svg?token=1dJ1AKWMR5\n[codecov-url]: https://codecov.io/gh/jeertmans/DiffeRT2d\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeertmans%2Fdiffert2d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjeertmans%2Fdiffert2d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeertmans%2Fdiffert2d/lists"}