Photonic circuit network simulator
Project description
Photonflux 0.2.3
Photonflux is a photonic circuit simulation tool for simple, extensible simulation of large active photonic systems.
It solves the problem that existing simulation tools are unable to capture many important phenomena that are key to creating working products including:
- Complex active component models
- Component variation and Monte-Carlo simulation
- Thermal crosstalk between components
- Fabry-Perot reflections from on-chip components
Here, we build a circuit simulator on NetworkX, a complex network solver, to enable arbitrarily reconfigurable circuit models and systems. As opposed to other approaches, circuits / schematics are defined using a netlist generated from a layout. The primary reason for this is that photon designers typically do not use a idea -> schematic -> layout -> fabrication flow, but often skip the schematic step entirely (idea -> layout -> fabrication). The reason for this is that layouts in photonics are expressive and contain far more detail about the operation of systems than a schematic would capture.
Layouts for simulation in photonflux are defined in a yaml markup format that can be automatically generated using .
To see examples of what is possible in photonflux please see our examples.
For more information on the future of the package see our roadmap.
Installation
Installation for new photonflux users
python -m pip install photonflux --upgrade
Installation for developers
First install the package from github using:
git clone https://github.com/alexsludds/photonflux.git
Then, navigate to the download directory and install as an editable python package
python -m pip install -e .
Getting started
We include several examples in the examples folder, but if your usecase is not there please create an github issue and we can work together on it.
Acks
Contributors (in chronological order):
- Alex Sludds (MIT): Initial code and documentation.
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
Built Distribution
File details
Details for the file photonflux-0.2.3.tar.gz
.
File metadata
- Download URL: photonflux-0.2.3.tar.gz
- Upload date:
- Size: 28.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.28.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 170f2128b39f638ce7cc93e8f66ec37ec4f8471dc9b7d2546e51ecb405075af3 |
|
MD5 | 878047ada4f8035a00cc7e6860a97b13 |
|
BLAKE2b-256 | e7885e07d4aebbd72673dc84bc932c17ebf43633602596ebd5b80a876f6a3d1a |
File details
Details for the file photonflux-0.2.3-py3-none-any.whl
.
File metadata
- Download URL: photonflux-0.2.3-py3-none-any.whl
- Upload date:
- Size: 26.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.28.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf630cdb8cf7b0e46a97081a259b3daf9ea7e4f144007325abd2cc81e9523a5e |
|
MD5 | ae94bb81830f54743b1298db95834b8e |
|
BLAKE2b-256 | e80e99c87fb4d9adb2b29f611e3d0ede8ddceddfea96d41999091b27b2262f57 |