{"id":13587123,"url":"https://github.com/passcod/splash","last_synced_at":"2025-05-08T01:15:14.140Z","repository":{"id":139959873,"uuid":"142568074","full_name":"passcod/splash","owner":"passcod","description":"💦 RF Signal Propagation analysis tool (eventually). Learning project (currently)","archived":false,"fork":false,"pushed_at":"2020-12-23T08:52:21.000Z","size":133,"stargazers_count":16,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-08T01:15:07.200Z","etag":null,"topics":["longley-rice","splat"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/passcod.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2018-07-27T11:17:34.000Z","updated_at":"2025-03-08T07:36:36.000Z","dependencies_parsed_at":"2024-02-13T21:54:01.679Z","dependency_job_id":null,"html_url":"https://github.com/passcod/splash","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passcod%2Fsplash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passcod%2Fsplash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passcod%2Fsplash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passcod%2Fsplash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/passcod","download_url":"https://codeload.github.com/passcod/splash/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252978784,"owners_count":21834917,"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","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":["longley-rice","splat"],"created_at":"2024-08-01T15:06:02.080Z","updated_at":"2025-05-08T01:15:14.115Z","avatar_url":"https://github.com/passcod.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Splash\n\n**[SPLAT!]** is a wonderful tool for RF analysis over terrain. Unfortunately,\nit only works with a few terrain sources and only uses one core for processing.\n\n[SPLAT!]: http://www.qsl.net/kd2bd/splat.html\n\n**Splash** is three things, in this order:\n\n1. A learning project to teach myself about the maths and physics underlying\n   the [Longley-Rice] Irregular Terrain Model (ITM) as I go about porting it to\n   Rust.\n2. A learning project to teach myself deep optimisation over modern hardware,\n   using at least SIMD and hopefully GPU to dramatically improve modelisation\n   performance.\n3. A production-grade interface to the ITM, and eventually other models.\n\n[Longley-Rice]: https://en.wikipedia.org/wiki/Longley%E2%80%93Rice_model\n\n## Porting goals\n\n - Not merely a port of the C++ port of the FORTRAN original, but a full\n   refactor, with all functions and variables named sensibly.\n - Everything thoroughly documented inline, with the minor goal that one should\n   be able to understand (at a high level) how the ITM works “simply” by\n   reading Splash’s source.\n - 1950-era approximations replaced by exact versions for math functions where\n   possible.\n - Entirely safe code.\n - Separation of preparation and execution routines.\n\n## Research and papers\n\n### Longley-Rice ITM\n\n - [The Irregular Terrain Model]: FORTRAN implementation with descriptions (NTIA 2002)\n - [Hufford 1995]: The (ITM) Algorithm, v1.2.2\n - [Hufford-Longley-Kissick 1982]: A Guide to the Use of the ITM\n - [McKenna 2016]: Propagation Measurement Workshop (Slides)\n\n### Background\n\n - [Norton 1959]: Transmission Loss in Radio Propagation II\n - [Handbook on Ground Wave Propagation]: Edition of 2014 (ITU Radiocommunication Bureau)\n - [Phillips 2012]: Geostatistical Techniques for Practical Wireless Network Coverage Mapping\n\n### Parallel ITM\n\n - [Song 2011]: Parallel Implementation of the Irregular Terrain Model (ITM) for Radio Transmission Loss Prediction Using GPU and Cell BE Processors\n - [Musselman 2013]: An OpenCL Implementation of the Irregular Terrain with Obstructions Model (ITWOM)\n\n### Accuracy studies\n\n - [Sun 2015]: Propagation Path Loss Models for 5G Urban Micro-and Macro-Cellular Scenarios\n - [Sun 2016]: Investigation of Prediction Accuracy, Sensitivity, and Parameter Stability of Large-Scale Propagation Path Loss Models for 5G Wireless Communications\n - [Abhayawardhana 2005]: Comparison of Empirical Propagation Path Loss Models for Fixed Wireless Access Systems\n\n### Other models or improvements\n\n - [El-Sallabi 2011]: Terrain Partial Obstruction LOS Path Loss Model for Rural Environments\n - [Phillips 2012]: Geostatistical Techniques for Practical Wireless Network Coverage Mapping\n - [MacCartney 2017]: Rural Macrocell Path Loss Models for Millimeter Wave Wireless Communications\n\n[The Irregular Terrain Model]: https://www.its.bldrdoc.gov/media/50674/itm.pdf\n[Hufford 1995]: https://www.its.bldrdoc.gov/media/50676/itm_alg.pdf\n[Hufford-Longley-Kissick 1982]: https://www.ntia.doc.gov/files/ntia/publications/ntia_82-100_20121129145031_555510.pdf\n[McKenna 2016]: https://www.its.bldrdoc.gov/resources/workshops/propagation-measurement-workshops-webinars.aspx\n[Norton 1959]: https://nvlpubs.nist.gov/nistpubs/Legacy/TN/nbstechnicalnote12.pdf\n[Handbook on Ground Wave Propagation]: https://www.itu.int/dms_pub/itu-r/opb/hdb/R-HDB-59-2014-PDF-E.pdf\n[Phillips 2012]: https://core.ac.uk/display/54849067\n[Song 2011]: https://ieeexplore.ieee.org/document/5680900/\n[Musselman 2013]: https://github.com/amusselm/Parallel-LRP/blob/master/documents/report.pdf\n[Sun 2016]: https://arxiv.org/abs/1603.04404\n[Sun 2015]: https://arxiv.org/abs/1511.07311\n[Abhayawardhana 2005]: https://ieeexplore.ieee.org/document/1543252\n[El-Sallabi 2011]: https://ieeexplore.ieee.org/document/5701648\n[MacCartney 2017]: https://ieeexplore.ieee.org/document/7914696\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpasscod%2Fsplash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpasscod%2Fsplash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpasscod%2Fsplash/lists"}