Calculators + Utilities: Difference between revisions

From UCSB Nanofab Wiki
Jump to navigation Jump to search
Line 24: Line 24:


==Refractive Indices==
==Refractive Indices==
''Optical constants of many common materials. Useful for laser etch monitoring, optical filter/mirror/anti-reflection coating design, photonic devices etc.''
''Optical constants of many common materials. Useful for Optical thin-film analysis (ellipsometry/spectroscopic fitting), laser etch monitoring, optical filter/mirror/anti-reflection coating design, photonic devices etc.''


*[http://luxpop.com/HU_v172.cgi?OpCode=73 LuxPop.com]
*[http://luxpop.com/HU_v172.cgi?OpCode=73 LuxPop.com]
Line 48: Line 48:
''Use these for designing your lithography mask plates.''
''Use these for designing your lithography mask plates.''


==== L-Edit ====
====L-Edit====
Powerful multi-layer layout program. Sophisticated object instantiation and array layout, to reduce files sizes and easily push changes to multiple cells.
Powerful multi-layer layout program. Sophisticated object instantiation and array layout, to reduce files sizes and easily push changes to multiple cells.


Line 56: Line 56:
*See [https://www.nanotech.ucsb.edu/wiki/Images/uploads/2018/LEdit_GettingStarted_CherryGupta.pdf this L-Edit Tutorial] for a good starter guide. Written by [https://scholar.google.com/citations?user=qKzZc7AAAAAJ&hl=en Cherry Gupta], courtesy of [https://me.ucsb.edu/people/sumita-pennathur Prof. Sumita Pennathur].
*See [https://www.nanotech.ucsb.edu/wiki/Images/uploads/2018/LEdit_GettingStarted_CherryGupta.pdf this L-Edit Tutorial] for a good starter guide. Written by [https://scholar.google.com/citations?user=qKzZc7AAAAAJ&hl=en Cherry Gupta], courtesy of [https://me.ucsb.edu/people/sumita-pennathur Prof. Sumita Pennathur].


==== [https://www.klayout.de KLayout] ====
====[https://www.klayout.de KLayout]====
A free, open-source, and fast/simple CAD tool for mask/reticle layout. Download at [https://www.klayout.de/ klayout.de].
A free, open-source, and fast/simple CAD tool for mask/reticle layout. Download at [https://www.klayout.de/ klayout.de].


Line 65: Line 65:
*The only confusing part about KLayout is how to draw circles. You have to draw a square, and then apply the '''''Edit>Selection>Round Corners''''' function. This is for compatibility, because GDS files do not have a "circle" primitive built-in. Make sure you include enough polygon points, eg. 200. See the [https://www.klayout.de/forum/discussion/142/making-circles forum help pages] on this for more info.
*The only confusing part about KLayout is how to draw circles. You have to draw a square, and then apply the '''''Edit>Selection>Round Corners''''' function. This is for compatibility, because GDS files do not have a "circle" primitive built-in. Make sure you include enough polygon points, eg. 200. See the [https://www.klayout.de/forum/discussion/142/making-circles forum help pages] on this for more info.


==== CAD Design Tips ====
====CAD Design Tips====
It is highly recommended that you understand and use the concept of "Cells" in your design. This circumvents many problems with enormous file sizes (due to huge numbers of identical polygons), and if used properly, helps tremendously with programming the Stepper lithography machines. Links to documentation below:
It is highly recommended that you understand and use the concept of "Cells" in your design. This circumvents many problems with enormous file sizes (due to huge numbers of identical polygons), and if used properly, helps tremendously with programming the Stepper lithography machines. Links to documentation below:


* Create a new cell, and instancing that cell: [https://www.klayout.de/doc-qt4/manual/create_instance.html KLayout Docs : Creating a Cell instance]
*Create a new cell, and instancing that cell: [https://www.klayout.de/doc-qt4/manual/create_instance.html KLayout Docs : Creating a Cell instance]
* Viewing only some levels of the heirachy, to prevent drawing all objects: [https://www.klayout.de/doc/manual/hier.html KLayout Docs: Viewing Cell Heirarchy]
*Viewing only some levels of the heirachy, to prevent drawing all objects: [https://www.klayout.de/doc/manual/hier.html KLayout Docs: Viewing Cell Heirarchy]


===General Calculators===
===General Calculators===

Revision as of 06:36, 10 January 2020

This page lists a few online calculators and utilities that are useful to lab users.

Fabrication Processes & Converters

Material Parameters

Wet Etching

Refractive Indices

Optical constants of many common materials. Useful for Optical thin-film analysis (ellipsometry/spectroscopic fitting), laser etch monitoring, optical filter/mirror/anti-reflection coating design, photonic devices etc.

Scripts + Programs

Analysis Programs

  • FIJI - scientific image anaylsis software
  • Gwyddion - free analysis software for Atomic Force Microscopes (AFMs) and other 3D data.
    • Sophisticated leveling, slicing, roughness/particulate analysis functions etc.
    • Can open Bruker NanoScope files, from the AFM
  • ProfilmOnline.com (Filmetrics) - online analysis/storage/sharing of 3D topographical data and images.
    • You can share an interactive 3D render of your AFM or Profilm3D scans with this tool.
    • Example AFM Scan, taken with NanoFab equipment, shared online for interactive analysis (slice, flatten etc.).

CAD Layout Programs

Use these for designing your lithography mask plates.

L-Edit

Powerful multi-layer layout program. Sophisticated object instantiation and array layout, to reduce files sizes and easily push changes to multiple cells.

KLayout

A free, open-source, and fast/simple CAD tool for mask/reticle layout. Download at klayout.de.

  • Available on Windows, Mac or *Nix.
  • Easily scriptable with Python or Ruby, with decent tutorials.
  • Fast and very effective viewing of layer overlay, overlay multiple files, cell hierarchy etc.
  • ‘Before’ starting your design, set the Layout Properties > Database Unit to something small eg. 0.0001 µm (0.1nm).
  • The only confusing part about KLayout is how to draw circles. You have to draw a square, and then apply the Edit>Selection>Round Corners function. This is for compatibility, because GDS files do not have a "circle" primitive built-in. Make sure you include enough polygon points, eg. 200. See the forum help pages on this for more info.

CAD Design Tips

It is highly recommended that you understand and use the concept of "Cells" in your design. This circumvents many problems with enormous file sizes (due to huge numbers of identical polygons), and if used properly, helps tremendously with programming the Stepper lithography machines. Links to documentation below:

General Calculators

  • Anaconda Python
    • A free Matlab-like IDE and GUI, using the Python language. The Spyder interface is modeled after Matlab.
    • Includes the scientific Python libraries needed for array math (numpy), plotting (matplotlib), data science (pandas) and many others. Many open-source packages are available to extend capabilities. The PyVisa module adds equipment control capabilities for automated measurements.
  • Wolfram Alpha
    • A versatile online interpreter/calculator, allowing calculations such as "Volume of 1.5g of Silicon", "melting point of SiO2" or "520°C in Fahrenheit".

Python Scripts

These scripts are best run in the Spyder IDE, which is easily installed via Anaconda, Python(X,Y), or by directly compiling Spyder using a command-line package manager.

  • Keithley I-V Sweep
    • Sweep voltage and plot current vs. voltage using a Keithley SMU.
    • Already installed at the Probe Station in Bay 4, and on the QFI Thermal Microscope (Use Python(X,Y) to run).
    • Requires the pyvisa python module.
  • QFIScope Thermal Analysis
    • Import 2D temperature data from the IR Thermal Microscope (QFI) and plot temperature profiles at user-specified locations.
    • Already installed on the QFI Infrared Microscope.
  • Laser Etch Monitor Simulation in Python
    • Simulate your laser endpoint signal as you dry-etch through a stack of thin-film layers, using an open-source electromagnetics module.
  • nk.py (Demis D. John)
    • Python functions for returning n (ref. idx.) & k (ext. coeff.) of various NanoFab thin-films at a specified wavelength (aka. dispersion models).