Welcome to Vipdopt’s documentation!

vipdopt (/vɪpdɑpt/) is a Python library for streamlining the process of volumetric inverse photonic design and optimization. It makes use of Lumerical’s Python API lumapi to make the design and optimization of new optical devices more straightforward.

This code performs an inverse-design optimization based on the adjoint optimization technique [1] that designs a freeform multilayer optical Bayer filter and focusing lens [2]. The Bayer filter is multiwavelength and focuses and sorts different spectral bands into different prescribed locations on the focal plane. Otherwise known as a color router, this code is set by default to create a 10-layer filter for the visible spectral range, with lateral and vertical dimensions of 2.04 microns. Different options are available in the config to, for example, enable polarization sorting or adjust the spectral bands as necessary.

Check out the Usage section for further information.

Indices and tables

Contents