ymahlau/fdtdx
Electromagnetic FDTD Simulations in JAX
What it solves
FDTDX addresses the challenge of simulating and designing three-dimensional photonic nanostructures. It provides a high-performance alternative to traditional simulation software by enabling large-scale designs and efficient gradient-based optimization of complex 3D structures.
How it works
The package implements the Finite-Difference Time-Domain (FDTD) method using JAX. By leveraging JAX, FDTDX gains native GPU support, multi-GPU scaling, and automatic differentiation. It specifically uses the time-reversibility of Maxwell's equations to compute gradients efficiently, allowing it to handle simulations with billions of grid cells while remaining memory efficient.
Who it’s for
It is designed for researchers and developers working in photonics and electromagnetic simulations who need to perform large-scale 3D nanostructure design and optimization.
Highlights
- GPU Acceleration: Native support for NVIDIA, AMD, and TPU hardware for high-performance simulations.
- Automatic Differentiation: Built-in capabilities for gradient-based optimization of photonic structures.
- Memory Efficiency: Optimized gradient computation using time-reversibility.
- Scalability: Capable of managing simulations involving billions of grid cells.
- User-Friendly API: Supports intuitive object positioning and sizing using absolute or relative coordinates.
Related
- Project
- Project
- Project
- Project
- Project