Skip to main content

An ellipsometry analysis tool for reproducible and comprehensible building of optical models.

Project description

The pyElli logo

PyPI - Python Version PyPI DOI Pytest Documentation Status Code style: black

pyElli

PyElli is an open source numerical solver for spectral ellipsometry employing well-known 2x2 and 4x4 algorithms. It is intended for a broad case of problems including simple fitting of layered structures, anisotropic layers and any other light interaction with layered 1D structures. It serves as a system for the day to day ellipsometry task at hand and is easily extendable with your own dispersion models, EMAs or solvers. Our goal is to provide a reproducible and flexible tool for the needs of scientists working with spectral ellipsometry.

Features

  • A multitude of models to approximate the dielectric function of your material.
  • Use the vast library of materials from refractiveindex.info as reference materials.
  • Build up your structure easily from materials and layers.
  • Simulate reflection and transmission spectra, ellipsometric parameters and Mueller matrices.
  • Utilities to quickly convert, plot and fit your measurement data.
  • Powerful when necessary, editable and expandable.

Got a question?

If you have questions using pyElli please feel free to open a discussion in the Q&A or join our discord channel.

How to get it

The installers for all releases are available at the Python Package Index (PyPI).

To install run:

pip install pyElli[fitting]

This installs pyElli with the additional fitting capabilities and interactive widgets. If don't want to have this functionality just drop the [fitting] in the end.

A complete environment for pyElli is also available as a Docker Container. To pull and run it directly just execute

docker run -p 8888:8888 domna/pyelli

from your local docker install. After startup a link should appear in your console. Click it and you will be directed to a jupyter server with the latest release of pyElli available.

To install the latest development version use:

pip install "pyElli[fitting] @ git+https://github.com/PyEllips/pyElli.git"

The source code is hosted on GitHub, to manually install from source, clone the repository and run pip install -e . in the folder to install it in development mode:

git clone https://github.com/PyEllips/pyElli
cd pyElli
pip install -e ".[fitting]"

Acknowledgements

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

pyElli-0.17.0.tar.gz (9.9 MB view details)

Uploaded Source

Built Distribution

pyElli-0.17.0-py3-none-any.whl (9.3 MB view details)

Uploaded Python 3

File details

Details for the file pyElli-0.17.0.tar.gz.

File metadata

  • Download URL: pyElli-0.17.0.tar.gz
  • Upload date:
  • Size: 9.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for pyElli-0.17.0.tar.gz
Algorithm Hash digest
SHA256 8024e27a5e54e6d85d6ac7b2cbc62604e73944ec18214a103d2105f92d04053d
MD5 e3bee473815a20f0743a9bc24d736d80
BLAKE2b-256 0617da5bfa1e0d4ed7092d0157771ae47d2b25ae70341918b72e509b06c30aff

See more details on using hashes here.

Provenance

File details

Details for the file pyElli-0.17.0-py3-none-any.whl.

File metadata

  • Download URL: pyElli-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 9.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for pyElli-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a406a4bf998fe437d003dd4d43d512c991786eb5bbe676101932365b4c8bb9f
MD5 05e45a0a1d1174a4018e0c8d67e2fed7
BLAKE2b-256 5c09cfd9af5c87978391eec28bdb25a0280dce520115c222fe61dfc07aaa867f

See more details on using hashes here.

Provenance

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