Metadata-Version: 2.1
Name: layerlumos
Version: 1.0.1
Summary: An open-source software for TMM optical simulations
Author-email: Mingxuan Li <mil152@pitt.edu>
License: MIT
Project-URL: Homepage, https://github.com/mil152/layerlumos
Project-URL: Source, https://github.com/mil152/layerlumos
Classifier: Programming Language :: Python :: 3
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: scipy
Provides-Extra: dev
Requires-Dist: pytest ; extra == 'dev'
Requires-Dist: wheel ; extra == 'dev'
Requires-Dist: build ; extra == 'dev'
Requires-Dist: twine ; extra == 'dev'
Requires-Dist: sphinx ; extra == 'dev'

# LayerLumos

<p align="center">
<img src="https://raw.githubusercontent.com/mil152/LayerLumos/main/docs/assets/icon3.jpg" width="400" />
</p>

## Overview

**LayerLumos** 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. LayerLumos is built with performance and usability in mind, facilitating the exploration of optical phenomena in research and development settings.

For details, check out our [Documentation](https://mil152.github.io/LayerLumos/index.html).

## Features

- **Lightweight and Efficient**: Optimized for performance, LayerLumos ensures rapid calculations without the overhead of large-scale commercial software.
- **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

LayerLumos can be easily installed via pip:

```bash
pip install layerlumos
```

For more detailed installation instructions, please refer to our [Installation Guide](https://github.com/Mil152/LayerLumos/docs/installation.md).

### Quick Start Guide

To get started with your first RT calculation, check out our [Quick Start Guide](https://github.com/Mil152/LayerLumos/docs/quickstart.md).

### Examples

Explore a collection of examples illustrating various use cases and capabilities of LayerLumos in the [Examples Directory](https://mil152.github.io/LayerLumos/examples.html#jupyter-notebook-examples).

## License

LayerLumos is released under the [MIT License](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.
