Laser Etch Monitor Simulation in Python: Difference between revisions

From UCSB Nanofab Wiki
Jump to navigation Jump to search
m (minor grammar)
(author credits.)
 
Line 1: Line 1:
Python script to simulate a Laser Etch Monitor (aka. Laser Endpoint Detection).
Python script to simulate a Laser Etch Monitor (aka. Laser Endpoint Detection). Written by [[Demis D. John]].
* [https://github.com/lbolla/EMpy/blob/master/examples/ex_laser_etch_monitor.py Laser Etch Monitor example on EMpy repository]
* [https://github.com/lbolla/EMpy/blob/master/examples/ex_laser_etch_monitor.py Laser Etch Monitor example on EMpy repository]



Latest revision as of 19:54, 21 April 2021

Python script to simulate a Laser Etch Monitor (aka. Laser Endpoint Detection). Written by Demis D. John.

  •  Simulated Laser Monitor Signal vs. Etch Depth.
    Simulated Laser Monitor Signal for a GaAs/AlGaAs periodic stack.

Usage

  1. Make sure you have a Python installation running, that includes scientific libraries. The easiest method is to use the all-in-one installer "Anaconda". This also installs the Matlab-like IDE "Spyder".
  2. Download the EMpy repository by Lorenzo Bolla: https://github.com/lbolla/EMpy
  3. Move "ex_laser_etch_monitor.py" & "nk.py" out of the examples folder, so they're in the same directory as the "EMpy" library folder.
  4. Edit "ex_laser_etch_monitor.py" to reflect your structure.
    1. Set up your materials, layers, and then multi-layer stack.
    2. Refer to the file nk.py for material refractive index/dispersion models, or enter your own. You only need to know n & k at a single wavelength.
    3. You can use multipliers to produce repeating layers, as so:
      1. layers =  [air] + 5 * [GaAs_DBR, AlGaAs_DBR] + [GaAs_substrate]
  5. In Spyder, run the script with "Interact with shell after execution" enabled. This allows you to keep messing with the figure and objects after execution, like in Matlab.