Skip to main content

A package for light propagation in fiber optics.

Project description

python Documentation Status Citation Unittest 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-1.2.13.post0-cp312-cp312-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

supymode-1.2.13.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-1.2.13.post0-cp312-cp312-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

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

Uploaded CPython 3.11 Windows x86-64

supymode-1.2.13.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-1.2.13.post0-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d0f36bd6cbf0057359751e04d780ddf77487e909f7623bf9019ba97c61f0908e
MD5 c8480328baa9674fe61420c7928778a7
BLAKE2b-256 1b46ec2a7a6f6aa9ef1430aec1fc6a3ec456910c89601d34df7f0ed7fdbe89da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7b42c05bdcab6c0864e2101ad069ce1959b8ca587d8a2315a88a0ed96751d42a
MD5 2421039daaaaf160041ecc0ee02a112e
BLAKE2b-256 f283f45e3365165eb45ed24fd3423f6a120543c2fe6b0d806da04f7c29f33b0c

See more details on using hashes here.

File details

Details for the file supymode-1.2.13.post0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 497f7bdde5a794b37d0726a5a2ce2a5f04c248480b5bb6541768bfe664398c17
MD5 ae0ed9e3e176cc427dcb838da06b5865
BLAKE2b-256 b9b1f2cdf4611fadae4095bf8d48395469fc218a27f5d700f8b8fe6afa66edd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7951dc6b97d3578c818e9ca975952c3118d7d5d523cb5846e062b570260bb79b
MD5 114d51e422cbadb9e1219052280b9a06
BLAKE2b-256 dcc70d947cd30ee809cd8891ccf75f6167bfef38fad3e6e8ecb64ba24484fb7d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7735e8a01db419e37128f1e6625a4796fd42130945b46ec8a44dbdc48d940794
MD5 fbc2eaca6dd4eb4086530aeaef2b791d
BLAKE2b-256 b4501baa2af05aca3a1b3442847b0605e323b166cf0057e94427cda00c606539

See more details on using hashes here.

File details

Details for the file supymode-1.2.13.post0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for supymode-1.2.13.post0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b0229bba49855ea074d2c46c2094e40b1ee47a35f1db50e4db5bf65babdda2a
MD5 a1038375af75ebb4229c01e8f97efd98
BLAKE2b-256 deb4ca3b8351e11ddce76e82a3df7409af61a5e85f59ed048b71c3fa01fb7ef8

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