Skip to content
/ tmm Public

transfer-matrix method for optics of thin and thick multilayer films

License

Notifications You must be signed in to change notification settings

sbyrnes321/tmm

Repository files navigation

Author homepage: http://sjbyrnes.com

Package home at PyPI: http://pypi.python.org/pypi/tmm

Package home at Github: https://github.com/sbyrnes321/tmm

This is a group of programs written in Python / NumPy for simulating light propagation in planar multilayer thin films, including the effects of multiple internal reflections and interference, using the "Transfer Matrix Method". It can also simulate combinations of thin and thick films (e.g. a thick piece of glass with a multi-layer antireflection coating on one side and a mirror on the other side), or purely thick films.

In addition to calculating how much light is transmitted and reflected, the program can calculate, at any given point in the structure, how much light is being absorbed there. This is a very important feature for solar-cell modeling, for example.

It can also calculate the parameters measured in ellipsometry. It can also calculate the RGB or xyY color of a multilayer thin film (this requires colorpy, https://pypi.python.org/pypi/colorpy).

For more information, see manual.pdf. For the list of all functions and how to call them, just browse the source code, everything has docstrings. For physics-based explanations and derivations of the various formulas calculated by this package, see: https://arxiv.org/abs/1603.02720 .

Tested in Python 3. It probably works in Python 2, or maybe not, I haven't checked in a long time. If you want to do color calculations in Python 3, you need to use the Python-3-compatible version of colorpy here.

About

transfer-matrix method for optics of thin and thick multilayer films

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published