Skip to content

LightFlow: An intuitive, user-friendly framework for optics and photonics simulations, designed for educational and research applications, featuring GPU-accelerated performance and a modular design.

License

Notifications You must be signed in to change notification settings

UNC-optics/LightFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LightFlow Logo

License: MIT

LightFlow is an open-source framework for optics and photonics simulations, focused on providing a user-friendly and modular platform for both education and research. It aims to simplify the process of implementing and experimenting with computational methods in wave optics, offering a standardized and expandable framework for optical components and systems.

Features

  • Modular and easy-to-understand framework for optical components and systems
  • GPU acceleration for high-speed simulations
  • Python-based, integrating with popular libraries such as TensorFlow and Keras
  • Suitable for educational and research purposes in the fields of optics and photonics

Installation

This package is mainly intented for use on google colab, therefore the requirements and dependencies of the package are limited to the packages that are not available in google colab. However, if you successully install the Tensorflow with GPU support on your local machine this package will work properly.

Google Colab installation:

To install LightFlow on a google colab machine simply run the following command:

!pip install git+https://github.com/UNC-optics/LightFlow.git

Local installation:

First need to install your NVIDIA drivers and Tensorflow. It is highly recommended to install tensorflow with GPU support for better speed. The steps for the installation can be roughly described as follows:

  1. Install NVIDIA drivers
  2. Install Anaconda
  3. Create a new environment for lightflow: conda create --name lf python=3.9 matplotlib
  4. Install tensorflow with CUDA and CUDNN support
  5. Install LightFlow: If you only want to use the package's current functionality and don't want to make changes to the code, you can follow these instructions: pip install git+https://github.com/UNC-optics/LightFlow.git

If you hope to make changes to the base code you first need to clone the repository to your PC. Make sure you first move to a directory you want your package to be installed from, then clone the package: git clone https://github.com/UNC-optics/LightFlow.git next, move to the directory of the package: cd LightFlow Now install the package: pip install -e .

Getting Started

We highly encourage you to get started with the tutorials and the examples provided in the examples folder. Currently the examples are focused on fundamentals of optics and CGH applications.

Documentation

Coming soon.

Examples

  1. Yann's double slit experiment
  2. Introduction to Computer Generated Holography
  3. GUI demo

Contributing

We welcome contributions from the community. If you have ideas, bug reports, or improvements, feel free to open an issue or submit a pull request.

License

LightFlow is released under the MIT License. See the LICENSE file for more details.

About

LightFlow: An intuitive, user-friendly framework for optics and photonics simulations, designed for educational and research applications, featuring GPU-accelerated performance and a modular design.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages