Skip to main content

Simulate light propagation in multilayer thin and/or thick films using the fresnel equations and transfer matrix method.

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tmm-0.2.0.tar.gz (285.4 kB view details)

Uploaded Source

Built Distribution

tmm-0.2.0-py3-none-any.whl (285.4 kB view details)

Uploaded Python 3

File details

Details for the file tmm-0.2.0.tar.gz.

File metadata

  • Download URL: tmm-0.2.0.tar.gz
  • Upload date:
  • Size: 285.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.10

File hashes

Hashes for tmm-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2982683aab12b5bb1ee9910a44d7c6421885ab581d22bebb615351dd70cb8ced
MD5 c8f74361185c8eb69abc0d8dd1f4c205
BLAKE2b-256 927c6ba055c61c04cf5b1b73cb91407c220b0f1712e3bad4f14edf4a4f9af9b4

See more details on using hashes here.

File details

Details for the file tmm-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tmm-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 285.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.10

File hashes

Hashes for tmm-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0cde811e0785b2c13887e8d12a4d089d028d3b19c67ae280f97587ad557f724
MD5 131ecbf4ffe242c88382ef403bc87059
BLAKE2b-256 641cbd81a37ff4db724957159e3d4badaa1c639e7f6465d541e307bc3fac669e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page