Skip to main content

Nanophotonic Neural Network Simulator

Project description

neuroptica Documentation Status Build Status

neuroptica is a flexible chip-level simulation platform for nanophotonic neural networks written in Python/NumPy. It provides a wide range of abstracton levels for simulating optical NN's: the lowest-level functionality allows you to manipulate the arrangement and properties of individual phase shifters on a simulated chip, and the highest-level features provide a Keras-like API for designing optical NN by stacking network layers.

Installation

The easiest way to get started with neuroptica is to install directly from the Python package manager:

pip install neuroptica

Alternately, you can clone the repository source code and edit it as needed with

git clone https://github.com/fancompute/neuroptica.git

and in your program or notebook, add

import sys
sys.path.append('path/to/neuroptica')

Getting started

For an overview of neuroptica, read the documentation. Example notebooks are included in the neuroptica-notebooks repository:

neuroptica training demo

Authors

neuroptica was written by Ben Bartlett, Momchil Minkov, Tyler Hughes, and Ian Williamson.

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

neuroptica-0.1.0.tar.gz (22.2 kB view hashes)

Uploaded Source

Built Distribution

neuroptica-0.1.0-py3-none-any.whl (30.1 kB view hashes)

Uploaded Python 3

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