The VCSEL Design Tool is currently in an early adopter stage. For more information, please contact us via the contact form, or via the Ansys Innovation Space.
VCSEL devices are grown layer by layer using different materials or alloy compositions, which is typically the case for the distributed Bragg reflector (DBR) mirrors and the active region. While it is possible to create these layers one-by-one using the primitive geometries or STEP import features in Ansys Lumerical Multiphysics™, the large number of layer necessitates the development of a solution for rapid structure generation. The solution to achieve this involves script commands that automatically import layers from a spreadsheet file and create corresponding simulation objects for the VCSEL device in the Object Tree.
This article will detail the required format of the spreadsheet, usage of the script commands, and additional usage notes on these methods to quickly create VCSEL device models.
General Workflow
While the automatic layer import scripts drastically speed up the construction of the VCSEL model, additional steps are often required after importing the file to generate the full model, such as
- Adding additional device geometries such as electrical contacts, oxide aperture, and substrates
- This can be achieved by adding in additional structures. More information on setting up geometries can be found in the “Structures” section of the VCSEL Design Tool User Manual.
- Adding monitors for beam profiles or other characteristics
- More information on setting up monitors can be found in the “Monitors” section of the VCSEL Design Tool User Manual.
- Check and adjust electrical material properties
- More information about material properties be found in the Electrical/Thermal Materials Knowledge Base article.
- Check fitting of optical material refractive index
- More information about refractive index fitting can be found in the “Fitting Configuration Tab” section of the Optical Materials Knowledge Base article.
- Adjust solver convergence options
- More information on solver convergence settings can be found in the Troubleshooting Convergence Errors in VCSEL Knowledge Base article.
Spreadsheet File Format
A sample spreadsheet has been included with this article in the download section.
The following general notes should be followed when constructing the spreadsheet:
- Header rows can be freely utilized to enter notes and manufacturing information. No data will be read until a row starting with a column named “Layer” is read. As a result, header lines cannot be a line with “Layer” alone.
- The final (bottom most) row of the layer table must be named “Wafer substrate” to indicate where the layers end.
- The spreadsheet can be created in Excel, but must be saved as .csv to be read by the script.
The meaning for each required column can be found in the table below, all columns other than those listed will be ignored by the software.
Note: Spellings and capitalizations of the column names must be exact.
Column | Description |
Layer | Layer number, must be a numerical value. |
Material | Material name, ordering of atomic species must match those found in the electrical material database. |
Group | Object group of this layer, must be a numerical value. This value must be defined. |
Repeat | How many times this layer is to be repeated. This value must be defined, if it is a single layer, “1” should be inputted. |
X_Start | Concentration for parameter x in a ternary alloy at the bottom of the layer. |
X_Finish |
Concentration for parameter x in a ternary alloy at the top of the layer. Note: Graded material is not supported. If X_Finish is different from X_Start, the mean of the two values will be taken as the value used for the layer. |
Y_Start | Concentration for parameter y in a quaternary alloy at the bottom of the layer. |
Y_Finish |
Concentration for parameter y in a ternary alloy at the top of the layer. Note: Graded material is not supported. If Y_Finish is different from Y_Start, the mean of the two values will be taken as the value used for the layer. |
Thickness | Thickness of layer in microns, if the layer is repeated, this is the thickness of each repeated layer. |
Type | Doping type of the layer, accepted parameters are “N” for n-doped, “P” for p-doped, and “U/D” for undoped. |
CV_Start | Doping concentration in 1/cm3 at the bottom of the layer. |
CV_Finish | Doping concentration in 1/cm3 at the top of the layer, a linear grading of doping is used if the CV_Finish is different from CV_Start. |
Script Usage
An example driver script (.lsf) to import the layers, along with the necessary encrypted library file (.lsfx) from where the import functions are called, have been included with this article. To use the automatic layer import feature, follow these script files.
To execute the example files, place the driver script, the library script, the layer definition spreadsheet, and the III-V material data tool in the same folder, and run the driver script file (main.lsf).
See Also
VCSEL Design Tool - User Manual, Workflows for VCSEL Devices