{"id":47712224,"url":"https://github.com/deepmimo/deepmimo","last_synced_at":"2026-05-31T22:00:49.119Z","repository":{"id":291450202,"uuid":"883303369","full_name":"DeepMIMO/DeepMIMO","owner":"DeepMIMO","description":"DeepMIMOv4: A Toolchain and Database for Ray-tracing Datasets.","archived":false,"fork":false,"pushed_at":"2026-05-26T20:34:18.000Z","size":53765,"stargazers_count":107,"open_issues_count":5,"forks_count":22,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-05-26T22:21:06.647Z","etag":null,"topics":["5g","6g","dataset","machine-learning","radio-propagation","raytracing","reproducible-research","sensing","wireless-communication","worldwide"],"latest_commit_sha":null,"homepage":"https://deepmimo.net/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DeepMIMO.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"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":"2024-11-04T18:19:41.000Z","updated_at":"2026-05-26T20:34:22.000Z","dependencies_parsed_at":"2025-06-23T21:19:34.332Z","dependency_job_id":"52030b75-642e-40a6-83f4-25e5d12195c4","html_url":"https://github.com/DeepMIMO/DeepMIMO","commit_stats":null,"previous_names":["deepmimo/deepmimo"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/DeepMIMO/DeepMIMO","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeepMIMO%2FDeepMIMO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeepMIMO%2FDeepMIMO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeepMIMO%2FDeepMIMO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeepMIMO%2FDeepMIMO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeepMIMO","download_url":"https://codeload.github.com/DeepMIMO/DeepMIMO/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeepMIMO%2FDeepMIMO/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33750474,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"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":["5g","6g","dataset","machine-learning","radio-propagation","raytracing","reproducible-research","sensing","wireless-communication","worldwide"],"created_at":"2026-04-02T18:39:28.890Z","updated_at":"2026-05-31T22:00:49.075Z","avatar_url":"https://github.com/DeepMIMO.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003eDeepMIMO\u003c/h1\u003e\n  \u003cp\u003e\u003ci\u003eBridging ray tracers and 5G/6G simulators with shareable, site-specific datasets\u003c/i\u003e\u003c/p\u003e\n  \u003cp\u003e\n    \u003ca href=\"https://pypi.org/project/deepmimo/\"\u003e\u003cimg alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/deepmimo?label=PyPI\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://www.python.org/\"\u003e\u003cimg alt=\"Python 3.11+\" src=\"https://img.shields.io/badge/Python-3.11%2B-blue\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://deepmimo.net\"\u003e\u003cimg alt=\"Docs\" src=\"https://img.shields.io/badge/docs-deepmimo.net-brightgreen\"\u003e\u003c/a\u003e\n    \u003ca href=\"LICENSE\"\u003e\u003cimg alt=\"License\" src=\"https://img.shields.io/github/license/DeepMIMO/DeepMIMO.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/astral-sh/uv\"\u003e\u003cimg src=\"https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json\" alt=\"uv\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/astral-sh/ruff\"\u003e\u003cimg src=\"https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json\" alt=\"Ruff\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://codecov.io/gh/DeepMIMO/DeepMIMO\"\u003e\u003cimg src=\"https://codecov.io/gh/DeepMIMO/DeepMIMO/graph/badge.svg?token=CODECOV_TOKEN\" alt=\"codecov\"\u003e\u003c/a\u003e\n  \u003c/p\u003e\n  \u003cimg src=\"docs/assets/dm.gif\" alt=\"DeepMIMO animated showcase\" width=\"800\"/\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cb\u003e\n    \u003ca href=\"#quickstart\"\u003eQuickstart\u003c/a\u003e •\n    \u003ca href=\"https://deepmimo.net/documentation\"\u003eDocs\u003c/a\u003e •\n    \u003ca href=\"https://deepmimo.net\"\u003eWeb\u003c/a\u003e •\n    \u003ca href=\"#faq\"\u003eFAQ\u003c/a\u003e •\n    \u003ca href=\"#citation\"\u003eCite\u003c/a\u003e\n  \u003c/b\u003e\n\u003c/p\u003e\n\n\u003ctable style=\"width:100%; text-align:center; border-collapse:separate; border-spacing:0 6px;\"\u003e\n  \u003cthead\u003e\n    \u003ctr\u003e\n      \u003cth style=\"text-align:center;\"\u003eG\u0026nbsp;O\u0026nbsp;A\u0026nbsp;L\u003c/th\u003e\n      \u003cth style=\"text-align:center; border-left:1px solid #eaeaea; border-right:1px solid #eaeaea;\"\u003eH\u0026nbsp;O\u0026nbsp;W\u003c/th\u003e\n      \u003cth style=\"text-align:center;\"\u003eW\u0026nbsp;H\u0026nbsp;Y\u003c/th\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr align=\"center\"\u003e\n      \u003ctd\u003eEnable large‑scale AI benchmarking using site‑specific wireless ray‑tracing datasets.\u003c/td\u003e\n      \u003ctd style=\"border-left:1px solid #eaeaea; border-right:1px solid #eaeaea;\"\u003eConvert outputs from top propagation ray tracers into a clean, distributable format readable by modern simulation toolboxes.\u003c/td\u003e\n      \u003ctd\u003eMake ray‑tracing data easy to access, share, and benchmark—accelerating AI‑driven wireless research.\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n  \u003c/table\u003e\n\n## Features\n\n- ⚡ **Instant access to ray-tracing data** — Compute large, realistic channels in seconds.\n- 🧪 **Easy ML benchmarking across sites** — Find 100s of datasets in the [Scenarios Database](https://deepmimo.net/scenarios)\n- 🔁 **Reproduce benchmarks** — Search papers by topic and application in [Publications Database](https://deepmimo.net/publications).\n- 🚀 **Feature-rich toolbox** — Explore a wide array of wireless utilities in our [Notebook Tutorials](https://deepmimo.net/docs/manual_full.html#examples-manual).\n- 🔌 **Seamless integration** — From Sionna RT/InSite/AODT to Sionna/MATLAB 5G/NeoRadium.\n- 📦 **Shareable datasets** — Versioned scenarios, open formats. Explore in the [Online Visualizer](https://deepmimo.net/visualizer)\n- 🤗 **User friendly** — Great docs, practical examples, easy install, and available on Colab.\n- 🌍 **Active Community \u0026 Support** — Issues and Pull Requests reviewed in hours not weeks.\n\n## Quickstart\n\n### Install\n```bash\n# From PyPI\npip install deepmimo\n\n# From GitHub\ngit clone https://github.com/DeepMIMO/DeepMIMO.git\ncd DeepMIMO\npip install -e .[dev]\n```\n\n### Basic Dataset Generation\n```python\nimport deepmimo as dm\n\n# Download a dataset\ndm.download('asu_campus_3p5')\n\n# Load a dataset\ndataset = dm.load('asu_campus_3p5')\n\n# Generate channels\nchannels = dataset.compute_channels()  # [n_ue, n_rx, n_tx, n_sub]\n```\n\n### Convert Ray Tracing Simulations to DeepMIMO\n```python\nimport deepmimo as dm\n\n# Convert Wireless Insite, Sionna, or AODT to DeepMIMO\nscenario_name = dm.convert('path_to_ray_tracing_output')\n\n# Upload a dataset to the DeepMIMO Database (optional)\ndm.upload(scenario_name, 'api-key')\n# get api key in deepmimo.net -\u003e contribute\n```\n\n## Project Structure\n```\ndeepmimo/\n├── api/                    # Database API\n│   ├── download.py         # Download scenarios from database\n│   ├── search.py           # Search scenarios in database\n│   └── upload.py           # Upload scenarios to database\n├── converters/             # Ray tracer output converters\n│   ├── aodt/               # AODT converter\n│   ├── sionna_rt/          # Sionna RT converter\n│   ├── wireless_insite/    # Wireless Insite converter\n│   ├── converter.py        # Base converter class\n│   └── converter_utils.py  # Converter utilities\n├── core/                   # Core data models\n│   ├── materials.py        # Material properties\n│   ├── rt_params.py        # Ray tracing parameters\n│   ├── scene.py            # Physical environment representation\n│   └── txrx.py             # Transmitter/receiver configurations\n├── datasets/               # Dataset operations\n│   ├── array_wrapper.py    # Array management utilities\n│   ├── dataset.py          # Dataset, MacroDataset, DynamicDataset classes\n│   ├── generate.py         # Dataset generation with channel computation\n│   ├── load.py             # Dataset loading functionality\n│   ├── sampling.py         # User sampling utilities\n│   ├── summary.py          # Dataset summary functions\n│   └── visualization.py    # Plotting and visualization tools\n├── exporters/              # Data exporters\n│   ├── aodt_exporter.py    # AODT format exporter\n│   └── sionna_exporter.py  # Sionna format exporter\n├── generator/              # Channel generation\n│   ├── ant_patterns.py     # Antenna pattern definitions\n│   ├── channel.py          # MIMO channel computation\n│   └── geometry.py         # Geometric calculations and beamforming\n├── integrations/           # Integration with 5G simulation tools\n│   ├── matlab/             # MATLAB 5G Toolbox integration\n│   ├── sionna_adapter.py   # Sionna integration\n│   └── web.py              # DeepMIMO web format export\n├── pipelines/              # Automatic ray tracing pipelines\n│   ├── sionna_rt/          # Sionna raytracer pipeline\n│   ├── wireless_insite/    # Wireless Insite pipeline\n│   ├── blender_osm.py      # Blender OSM export utilities\n│   ├── txrx_placement.py   # Transmitter/receiver placement\n│   └── utils/              # Pipeline utilities\n├── utils/                  # Utility modules\n│   ├── data_structures.py  # Custom data structures\n│   ├── dict_utils.py       # Dictionary utilities\n│   ├── geometry.py         # Geometric utility functions\n│   ├── info.py             # Information on matrices and parameters\n│   ├── io.py               # File I/O operations\n│   └── scenarios.py        # Scenario management functions\n├── config.py               # Configuration management\n└── consts.py               # Constants and default values\n\nAdditional directories:\n├── docs/                   # Documentation\n├── scripts/                # Utility scripts\n└── tests/                  # Test suite\n```\n\n## Build the Docs\n\nAfter cloning the repository:\n\n| Step    | Command                 | Description                        |\n|---------|-------------------------|------------------------------------|\n| Install | `pip install .[dev]`    | Install development dependencies   |\n| Serve   | `mkdocs serve`          | Preview at http://localhost:8000   |\n\nChange `execute: false` to `execute: true` in `mkdocs.yml` to run the tutorials and preserve cell outputs. \n\n## Contributing\n\nWe welcome contributions to DeepMIMO! To contribute:\n1. [Fork the repository](https://github.com/DeepMIMO/DeepMIMO/fork)\n2. Make changes\n3. Open a [Pull Request](https://github.com/DeepMIMO/DeepMIMO/pulls)\n\nWe aim to respond to pull requests within 24 hours.\n\n## FAQ\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e1) What is DeepMIMO useful for?\u003c/b\u003e\u003c/summary\u003e\n\n\n- Free, easy and fast access to ray tracing data across hundreds of site-specific datasets. \n- Connecting raytracers and simulators, allowing flexible research.\n- Sharing Datasets to make research more easily reproducible\n\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e2) Why using DeepMIMO if Sionna exists?\u003c/b\u003e\u003c/summary\u003e\n\nDeepMIMO is not a simulator; it’s a standardized ray-tracing toolchain that *relies and complements* ray-tracing tools like Sionna RT. Re-running a single high-quality scenario can take hours or days of compute, provided one can resurrect the original scripts and software environment. And even when this succeeds, every group tends to store the channels in its own ad-hoc format, so results are not plug-and-play across projects. With DeepMIMO, we skip all that: authors publish a scenario once, and anyone can load the exact same data in seconds with a small Python snippet. DeepMIMO makes sharing, reproducing, and comparing ray-tracing results dramatically easier and more reliable.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e3) How long do dataset downloads take?\u003c/b\u003e\u003c/summary\u003e\n\nA *few* minutes. Sometimes seconds. Data is stored on super-fast and available object storage, so in practice the transfer speeds are limited by the internet connection (see [speedtest.net](https://www.speedtest.net/)). At 50 Mbps the ASU Campus scenario with 85 thousand candidate users would take ~5 seconds to download.\n\n\u003c/details\u003e\n\n## Citation\n\nIf you use this software, please cite it:\n\n```bibtex\n@misc{alkhateeb2019deepmimo,\n      title={DeepMIMO: A Generic Deep Learning Dataset for Millimeter Wave and Massive MIMO Applications}, \n      author={Ahmed Alkhateeb},\n      year={2019},\n      eprint={1902.06435},\n      archivePrefix={arXiv},\n      primaryClass={cs.IT},\n      url={https://arxiv.org/abs/1902.06435}, \n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeepmimo%2Fdeepmimo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeepmimo%2Fdeepmimo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeepmimo%2Fdeepmimo/lists"}