teytaud / tuto_multilayer_optimization

Tutorial python notebooks accompanying the paper "An illustrated tutorial on global optimization in nanophotonics"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Optimization with PyMoosh and Nevergrad

Tutorial python notebooks, accompanying the paper An illustrated tutorial on global optimization in nanophotonics (link).

We demonstrate how to do global optimization of the geometry of multi-layered photonic structures. Multi-layer simulations are done with PyMoosh, as optimization toolkit we use Nevergrad.

Goal of the example problems

The tutorials have two main goals:

  1. providing a simple introduction and a starting point for global optimization of multi-layer structures.

  2. demonstrating advanced benchmarking in order to find the best optimization algorithm for a specific problem and to assess the quality of the found solution.

Three specific examples are treated:

  1. optimization of a Bragg mirror

  2. Solving of an ellipsometry inverse problem

  3. design of a sophisticated antireflection coating to optimize solar absorption in a photovoltaic solar cell

List of all notebooks

DOI

The DOI of this tutorial repository is: DOI

About

Tutorial python notebooks accompanying the paper "An illustrated tutorial on global optimization in nanophotonics"


Languages

Language:Jupyter Notebook 100.0%