Skip to content

2iw31Zhv/diffsmat_py

Repository files navigation

MaxPy - Semi-Analytical Photonic Optimization Library

The library only depends on numpy and PyTorch, although drawing figures requires the installation of matplotlib. You can easily install these libraries via:

pip install numpy torch matplotlib

The above simple installation may be not ideal on some platforms, so we suggest you to take a look at:

PyTorch Installation Guide

Feature

  • stable and fast differentiable rcwa
  • no relaxation needed for repeated eigenvalues
  • fast fourier factorization (fast convergence for small number of harmonics)
  • analytical Fourier transform (converge for low-resolution grid)
  • topological optimization
  • level set optimization
  • support for many different geometries (rectangle, boolean operator)
  • new algorithms for PIC design (coming soon)

Gallery

Optical mode analysis

permittivity distribution mode Ex, Ey, Hx, Hy

Topological optimization

designed permittivity loss curve

Level set optimization

designed permittivity loss curve

Boolean operator

designed permittivity loss curve

Citation

The respository contains the work from multiple publications, for the RCWA part, please consider cite the paper in

Ziwei Zhu, and Changxi Zheng. Differentiable Scattering Matrix for Optimization of Photonic Structures. Optics Express 28.25 (2020).