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.16.post0-cp312-cp312-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

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

Uploaded CPython 3.12 macOS 11.0+ ARM64

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

Uploaded CPython 3.11 Windows x86-64

supymode-1.2.16.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.16.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.16.post0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 98569127577e6e222b8ed4f9dc0693a9137702618c139f42e37d9b92fe1a0662
MD5 003daea7f5fd1b6b8d3d5add32f3b51b
BLAKE2b-256 162c3f19c23b5f112ee3b979a25ee217b7ddf676f9b51ba74afaf0aa1181e271

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d642147bce25096242e33d4eaa45772c098935b7ade83d1f3ad762df4506403
MD5 aa454eb8ec6c5eaca00db82bdd504d05
BLAKE2b-256 f84ca16ef032cf1b9a4d84128fecdbc1738b662210617ae410307b69cb7d2a18

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 45f6c739a6d71c070b0a9688eeaec8eebcab75994d313ea8601e1f8f145f5803
MD5 f6ae6c274117cb8b4b774040c2cee3be
BLAKE2b-256 d174156eb66970ca9008fb09812c917d3d4e2a0a6db8c7e1e6b873a44fe17fda

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 287a47d3e8bd4e880d88c07c520c1af0c2f61376f2db5a18a9d7c29503ce1c1f
MD5 1df44f7af45fa398602eca044b0bc984
BLAKE2b-256 4e4265bb7701d33e41bc16d1212c17b0662edee26a579355353a3ab01f36f2c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ac0853ae66ef0237e75d3a19251baf48692e8ad7ff202465c0b8982567aa0ba8
MD5 8876ffa0d3bdb8b622522dddc065a63c
BLAKE2b-256 1063f437978228cb7e450a8402cb987b80151c105578783c4c2e4897b9abd5d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for supymode-1.2.16.post0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b68bb13c156a088acb43bf8bb47e505dc2a3ff51a7cf496a40e7077c05025c7c
MD5 fde2f406c831a853717ef6b4470210a6
BLAKE2b-256 bda5939990b531fe8e1b9c3da85f407a47bddf70f5c534ebfed36a3a25c8273f

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