lbolla / EMpy

Electromagnetic Python
MIT License
194 stars 83 forks source link

Example: Laser Monitor Simulation #20

Closed demisjohn closed 7 years ago

demisjohn commented 7 years ago

New example file for laser etch-monitor simulation, plotting reflection vs. etch depth. example - laser monitor figure

Also included initial materials file (nk.py) containing n/k dispersion models for a number of materials, which really makes this example useful to users. Based off my own materials file but stripped down for simplicity/readability. An unfortunate incongruity with EMpy is that all model params are defined for wavelength in Microns, not meters - alas this is a common convention for Cauchy/Sellmeier dispersion models, especially in the J.A.Woolam ellipsometry software we used to generate these models.

Corrected RefractiveIndex( n0_func ) bug.

Added utility functions to produce complex refractive index from absorption coefficients (loss is necessary for accurate LaserMon simulation).

demisjohn commented 7 years ago

I see there are stylistic errors, regarding whitespace. I will update those over the next week or two. Let me know if you see any more serious programatic/conceptual errors.

demisjohn commented 7 years ago

@lbolla , have you taken a look at this yet?
At minimum, we need to correct the bug in RefractiveIndex( n0_func=xyz ) - If you'd like I can submit that as a separate pull request, since that's prime functionality that isn't working properly.