Skip to main content

A JAX-based efficient transfer-matrix method framework for optical simulations

Project description

JaxLayerLumos: A JAX-based Efficient Transfer-Matrix Method Framework for Optical Simulations

DOI PyPI - Python Version License: MIT Code style: black

Overview

JaxLayerLumos is an open-source software designed for scientists, engineers, and researchers in optics and photonics. It provides a powerful yet intuitive interface for calculating the reflection and transmission (RT) of light through multi-layer optical structures. By inputting the refractive index, thickness of each layer, and the frequency vector, users can analyze how light interacts with layered materials, including the option to adjust for incidence angles.

Our mission is to offer a lightweight, flexible, and fast alternative to commercial software, enabling users to perform complex optical simulations with ease. JaxLayerLumos is built with performance and usability in mind, facilitating the exploration of optical phenomena in research and development settings.

Features

  • Lightweight and Efficient: Optimized for performance, JaxLayerLumos ensures rapid calculations without the overhead of large-scale commercial software.
  • Gradient Calculation: Calculates the gradients over any variables involved in RT, powered by Jax.
  • Flexibility: Accommodates a wide range of materials and structures by allowing users to specify complex refractive indices, layer thicknesses, and frequency vectors.
  • Angle of Incidence Support: Expands simulation capabilities to include angled light incidence, providing more detailed analysis for advanced optical designs.
  • Open Source and Community-Driven: Encourages contributions and feedback from the community, ensuring continuous improvement and innovation.
  • Comprehensive Material Database: Includes a growing database of materials with their optical properties, streamlining the simulation setup process.

Getting Started

Installation

JaxLayerLumos can be easily installed by the following command.

pip install jaxlayerlumos

Alternatively, JaxLayerLumos can be installed from source.

pip install .

Examples

A collection of examples in the examples directory exhibits various use cases and capabilities of JaxLayerLumos.

Comparisons to Ansys Optics

Simulation results of JaxLayerLumos are compared to the results of stackrt, which is included in Ansys Optics. Our results are matched to the Ansys Optics results with sufficiently small errors.




Supported Materials

Materials supported by JaxLayerLumos are described in this file.

License

JaxLayerLumos is released under the MIT License, promoting open and unrestricted access to software for academic and commercial use.

Acknowledgments

  • Thanks to all contributors and users for your support and feedback.

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

jaxlayerlumos-0.3.1.tar.gz (4.7 MB view details)

Uploaded Source

Built Distribution

jaxlayerlumos-0.3.1-py3-none-any.whl (208.2 kB view details)

Uploaded Python 3

File details

Details for the file jaxlayerlumos-0.3.1.tar.gz.

File metadata

  • Download URL: jaxlayerlumos-0.3.1.tar.gz
  • Upload date:
  • Size: 4.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for jaxlayerlumos-0.3.1.tar.gz
Algorithm Hash digest
SHA256 c16f71dd979c0dbfc46531743f2ef8e0b44342b234cfbcd481d86392599e5e34
MD5 ac62117f44b9db4432b20f419ee4add4
BLAKE2b-256 7b6e45e926b8e0b68ae503b20f4a144a1a4068ba9c449a2efc8a2ce826f5e697

See more details on using hashes here.

File details

Details for the file jaxlayerlumos-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jaxlayerlumos-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 47ff296690e577c454d55e94dd70ccafdc8eac09f8ad96b637d05fb0eecb52dc
MD5 fc6aeac18b0fee8fcc61f8579cbfa5df
BLAKE2b-256 d3c5fd692bc6d8bffa8d4a1ce06e8f145945a3778622370d916a60a77a3c2e23

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