Skip to content

Hideousmon/SPLayout

Repository files navigation

SPLayout

GitHub repository GitHub license Language GitHub stars

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.

Dependency

  • Python 3.6+
  • gdspy
  • scipy
  • numpy
  • (Ansys Lumerical for FDTDSimulation and MODESimulation)

Installation

use pip:

pip install splayout

or download from the source and build/install with:

python setup.py install

Documentation

The documentation can be found here.

Forward and Inverse Design Examples

Simulation

A basic simulation example for waveguide transmission can be found here. process

Direct Binary Search

A polarization beam splitter inverse design example can be found here. The Extinction Ratio and Transmission are comparable to the original paper. process

References for Inverse Design Methods

[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