The goal of this project is to provide tools to facilitate the optimization of multilayers photonic structures using Nevergrad (for the optimization part) and PyMoosh (for the photonic part).
PyMoosh is the python version of Moosh, an Octave/Matlab code meant as a swiss knife for the study of multilayered structures from an optical point of view.
PyMoosh is based on a scattering matrix formalism to solve Maxwell's equations in a multilayered structure. This makes PyMoosh unconditionally stable, allowing to explore even advanced properties of such multilayers, find poles and zeros of the scattering matrix (and thus guided modes)
The complete documentation of the Moosh program is available here : https://github.com/AnMoreau/PyMoosh
Nevergrad is a gradient-free optimization platform.
The complete documentation of Nevergrad is available in here : https://github.com/facebookresearch/nevergrad
For any suggestions or demands, please send a mail to pauline.bennet.pro@gmail.com