Lumerical is participating in the Lab Automation Hackathon on Sunday March 3rd from 20:00 to 22:00 in Room 17B at the San Diego Convention Center. At this interactive event we’ll show you how to do inverse design of a photonic integrated circuit component using the open source Python package lumopt and FDTD Solutions. We’ll also have a few other examples on hand showing how you can run and automate Lumerical designs tools using Python. We’ll tailor the demos to suite the interests of participants and are happy to help you run the examples on your laptop or hack the examples and make them do something new!
Our inverse design demo will show how adjoint optimization can be used with 2D/3D FDTD simulation to optimize photonic components. This example uses lumopt, an open source implementation of adjoint optimization using FDTD Solutions and based on the work of Christopher Lalau-Keraly. Adjoint optimization methods are very well suited to 2D/3D photonic design since they require only 2 FDTD simulations at each optimization iteration independent from the number of parameters to be optimized. For more information, please check out the article Adjoint shape optimization applied to electromagnetic design
For those who wish to participate hands-on, the following will help you prepare. This is only required if you wish to run our examples yourself. We encourage participants to get the software setup in advance so we can spend the maximum amount of time hacking. Here is what you need:
- Lumerical FDTD Solutions 2019a R4 (8.21.1882), with workshop license installed
- The example file package
1. Install Lumerical FDTD Solutions 2019a R4
The latest version of FDTD Solutions released on Mar 1, 2019 contains a basic Python environment and the lumopt module for adjoint optimization. If you upgrade to this version you can run our inverse design examples out-of-the-box!
You don’t need to install Python or get any code from GitHub. (Unless you prefer the hard way)
Participants of the hackathon can obtain a free license license for our software tools! To obtain your license and install the software, please follow these instructions:
- Register on the Lumerical website with your academic/corporate email address. Users who are already registered can login and proceed to Step 2.
- To obtain an activation code please visit our workshop portal.
- After confirmation, you will receive an email with the activation code and will be provided with download links.
You can watch our video if you have any trouble.
2) Download the example files
Please download the example files and extract the zip archive into a local folder on your laptop
You can also download the slides for this event.
How to run the examples
The easiest way to run the examples is to open the Python file in the FDTD Solutions script editor window and press the run button. This will launch Python and start the example. More details can be found here. There are HTML versions of the notebooks where you can review the example code with annotations.
We will perform our demo in Jupyter notebooks but Jupyter is not included with FDTD Solutions. If you wish to try the Jupyter notebook versions of the examples then you will have to install Jupyter yourself and configure your own Python environment. See this post for instructions. This step is optional, Jupyter notebook examples are exactly the same as the Python only versions