DiffeRT2d: A Differentiable Ray Tracing Python Framework for Radio Propagation
Volume: 9 • Number: 98 • Pages: 6915
Ray Tracing (RT) is arguably one of the most prevalent methodologies in the field of radio propagation modeling. However, access to RT software is often constrained by its closed-source nature, licensing costs, or the requirement of high-performance computing resources. While this is typically acceptable for large-scale applications, it can present significant limitations for researchers who require more flexibility in their approach, while working on more simple use cases. We present DiffeRT2d, a 2D Open Source differentiable ray tracer that addresses the aforementioned gaps. DiffeRT2d employs the power of JAX (Bradbury et al., 2024) to provide a simple, fast, and differentiable solution. Our library can be utilized to model complex objects, such as reconfigurable intelligent surfaces, or to solve optimization problems that require tracing the paths between one or more pairs of nodes. Moreover, DiffeRT2d adheres to numerous high-quality Open Source standards, including automated testing, documented code and library, and Python type-hinting.
