3. **Minimal Abstraction with Immutable Dataclasses:** Sionna internally represents scenes using Mitsuba, which, while powerful, imposes restrictions on the types of scenes it can handle. Moreover, Sionna's classes are relatively complex, with many hidden attributes. In contrast, DiffeRT uses immutable dataclasses that can be created using simple constructors or convenient class methods (e.g., for reading scenes from files). Following JAX principles, all classes are immutable PyTrees, ensuring compatibility with JAX while avoiding unnecessary memory allocations through JIT optimization.
0 commit comments