Skip to main content

A package for light propagation in fiber optics.

Project description

python Documentation Status Citation Unittest coverage PyPi PyPi_download colab

some image

Propagation of mode in an adiabatic 2x1 modally-specific photonic lantern.

This project aims to develop an useful tool design and optimize fiber optic tapered component. SuPyMode is a Python library linked to a c++ core allowing for a flexible interface and fast computing core. The library also aims to offer the end-user a great vizual tools for data analysis. To this day, SuPyMode as been proven a useful tool to develop very-short 2x1 and 3x1 modally specific photonic lantern with very low loss and cross-talk.


Documentation

All the latest available documentation is available here or you can click the following badge:

Documentation Status


Installation

Pip installation

The package have been uploaded as wheel for a few OS (Linux, MacOS) and need Python 3.10. As such, with the adequate configuration one can simply do

>>> pip3 install SuPyMode

Manual installation

To install manually (os independent) you will need to install:

  1. cmake (3.16+)

Then, download and install the SuPyMode package:

>>> git clone --recurse-submodules https://github.com/MartinPdeS/SuPyMode.git
>>> cd SuPyMode && mkdir build && cd build
>>> cmake ..
>>> cmake --build .
>>> cd ..
>>> pip3 install .

Testing

Make sure to install both coverage and pytest using pip3 install coverage pytest. To test locally (with cloning the GitHub repository) you’ll need to install the dependencies and run the coverage command as

>>> git clone --recurse-submodules https://github.com/MartinPdeS/SuPyMode.git
>>> cd SuPyMode
>>> pip3 install PyFiberModes
>>> coverage run --source=SuPyMode --module pytest --verbose tests
>>> coverage report --show-missing

Contact Information

As of 2023 the project is still under development if you want to collaborate it would be a pleasure. I encourage you to contact me.

SuPyMode was written by Martin Poinsinet de Sivry-Houle .

Email:martin.poinsinet-de-sivry@polymtl.ca .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

supymode-2.0.2.post0-cp312-cp312-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

supymode-2.0.2.post0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

supymode-2.0.2.post0-cp312-cp312-macosx_14_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12 macOS 14.0+ ARM64

supymode-2.0.2.post0-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11 Windows x86-64

supymode-2.0.2.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

supymode-2.0.2.post0-cp311-cp311-macosx_14_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11 macOS 14.0+ ARM64

File details

Details for the file supymode-2.0.2.post0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 37812f6463d809ef60b1408d5fba5cbf9e215fbd3a47e9b8e000b763f6b5a132
MD5 4e3f2b6a02023938c9ec0550214f4dea
BLAKE2b-256 64b0a452874cdfa6fb393f7155b44a297127851f98ad5ee61d3ed7774cd816c4

See more details on using hashes here.

File details

Details for the file supymode-2.0.2.post0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d9cfd7244c76b03c20414299ffefe7b905902f71e1b3dcd97a3ac613168394c4
MD5 8eec2ba768ad7b8af6ff65c48c8ae436
BLAKE2b-256 d66efc6737903de4f47a2c6ef6ade3f6ff3ec1a53bb9937c762a17c5f95791a6

See more details on using hashes here.

File details

Details for the file supymode-2.0.2.post0-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 9b98a8fe3a5d103cbf4fa9376e9bef6e780749347b5682c59158d44b726eabf3
MD5 a8a3be31c9ced7012ea8f2e42ab1c01d
BLAKE2b-256 245609a334d9f22a3df64bec223ffd5a732e8094a28706025e24273411db3376

See more details on using hashes here.

File details

Details for the file supymode-2.0.2.post0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 afc9399bf95044effed9d5b4819632e2bad328c7a2da9e131dc08d9fa68dbf27
MD5 20f47cccb175b38daf028bec6a14bf68
BLAKE2b-256 7d3760450384cc725bd6bbb6482558d5fd9065d87d7ccc2ce4fdb7b827c6f3e6

See more details on using hashes here.

File details

Details for the file supymode-2.0.2.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 96c1b556fdf56c849cf91448e4a6ce0a8fa7a86c7947b10a49020b32c928ecb2
MD5 57e6d7a69c848dcf7035dfbab0b0715f
BLAKE2b-256 f18c7e9a36dde945b41bb07f62d61abf9fda2e2b17e57f0e267eaba2c63aa9ae

See more details on using hashes here.

File details

Details for the file supymode-2.0.2.post0-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for supymode-2.0.2.post0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4c2d21f1af58fe4da44fd7f50afb3b7cc130a87ae9b179f7dcb975b1ea8510f0
MD5 83a4886cc48655d58fe3850fed908b51
BLAKE2b-256 4a4059f674b5b4dfc4b74dfd8209dc36eb9c6df199e85b21776759ff2a16ba5e

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