An efficient open-source Python package for 3D photonic nanostructure simulation and design using GPU-accelerated FDTD with automatic differentiation.
FDTDX is an open-source Python package for simulating and designing three-dimensional photonic nanostructures using the Finite-Difference Time-Domain (FDTD) method. It provides GPU-accelerated simulations with built-in automatic differentiation capabilities, enabling efficient gradient-based optimization of complex electromagnetic structures.
Researchers and engineers working in computational photonics, nanophotonics, and electromagnetic simulation who need to optimize complex 3D structures using gradient-based methods.
Developers choose FDTDX for its combination of high-performance GPU acceleration, memory-efficient gradient computation, and automatic differentiation capabilities specifically tailored for large-scale photonic design optimization tasks.
Electromagnetic FDTD Simulations in JAX
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Built on JAX for native GPU support with multi-GPU scaling, enabling simulations with billions of grid cells as highlighted in the key features and installation notes.
Leverages time-reversibility in Maxwell's equations to compute gradients without storing full simulation history, making large-scale optimization feasible.
Provides built-in gradient-based optimization for complex 3D structures, streamlining design tasks that require parameter tuning.
Offers intuitive object positioning in absolute or relative coordinates, simplifying the setup of photonic nanostructures as mentioned in the features.
Optimal performance requires specific CUDA or ROCM installations, and multi-GPU configuration involves complex environment variables, as detailed in the README, posing a barrier for some users.
Requires familiarity with JAX, automatic differentiation, and photonic simulation concepts, which may be challenging for those new to computational electromagnetics.
Lacks extensive pre-built material libraries or graphical interfaces compared to established tools like Meep, focusing primarily on API-driven design without built-in visualization tools.