SPLayout (Silicon Photonics Layout Design Tools) is a silicon photonics structures design package. It provides commonly used silicon photonics structures for fast integration and pixelated blocks for inverse design.
The GDSII streaming is based on gdspy and FDTD simulation is executed on Ansys Lumerical.
- Python 3.6+
- gdspy
- scipy
- numpy
- (Ansys Lumerical for FDTDSimulation and MODESimulation)
use pip:
pip install splayout
or download from the source and build/install with:
python setup.py install
The documentation can be found here.
A basic simulation example for waveguide transmission can be found here.
A polarization beam splitter inverse design example can be found here. The Extinction Ratio and Transmission are comparable to the original paper.
[1] Mirjalili, S., Mirjalili, S.M. & Yang, XS. Binary bat algorithm. Neural Comput &Applic 25, 663–681 (2014). https://doi.org/10.1007/s00521-013-1525-5
[2] Shen, B., Wang, P., Polson, R. et al. An integrated-nanophotonics polarization beamsplitter with 2.4 × 2.4 μm2 footprint. Nature Photon 9, 378–382 (2015). https://doi.org/10.1038/nphoton.2015.80
[3] Christopher M. Lalau-Keraly, Samarth Bhargava, Owen D. Miller, and Eli Yablonovitch. Adjoint shape optimization applied to electromagnetic design. Opt. Express 21, 21693-21701 (2013). https://doi.org/10.1364/OE.21.021693 & https://github.com/chriskeraly/lumopt