Photonic and RF simulation and inverse design in just few lines of code! Fully featured, fully differentiable, GPU accelerated FDTD engine and geometry optimizer. Experimental release: expect occasional critters..
Untitled.1.mp4
Features
- Automatic differentiation (AD) compatible for adjoint optimization
- Optional GPU acceleration
- Length scale controlled geometry optimizer
- Nonlinear and anisotropic materials
- Tensor subpixel smoothing for accuracy
- Adaptive graded grid and Float16 support for speed
- PML, periodic, PEC, PMC boundaries
- Modal sources, plane waves, Gaussian beams
- Modal monitors, DFT fields
Application specific Python API UI and gdsfactory
integration for simulation and inverse design. General purpose backend API is in Julia and is not documented (unless there's interest).
- Photonic integrated circuits (PIC) - available now
- Metasurface optics and thin films - please request
- RF microstrip and patch atennas - please request
Sister packages include:
- Jello.jl: length scale controlled geometry generator and optimizer
- ArrayPadding.jl
- Porcupine.jl: collection of Julia hacks optimizing developer happiness and automatic differentiation :)
Follow us on our new Linkedin page for package updates and bug fixes! Feel free to raise an issue. We respond daily. Star us if you like this repo :)
Paul Shen, [email protected]