Skip to main content

A package for light propagation in fiber optics.

Project description

Meta

python

Documentation Status

Testing

Unittest Status

Unittest coverage

PyPi

PyPi

PyPi_download

Anaconda

Anaconda version

Anaconda downloads

PyFiberModes

PyFiberModes is a Python package designed to simulate the propagation of modes in optical fibers. It supports all circularly symmetric geometries and provides tools for in-depth analysis of optical fiber properties and modal characteristics.

Key Features

  • Comprehensive Simulations: Supports step-index fibers, multilayer fibers, and custom refractive index profiles.

  • Extensive Mode Analysis: Calculate mode profiles, propagation constants, effective indices, and more.

  • Open Source: Designed for customization and extensibility.


Documentation

The latest documentation is always available here or via the badge below:

Documentation Status


Installation

Using Pip

Install the PyFiberModes package directly from PyPi. Ensure you have Python 3.10 or later:

pip install PyFiberModes

Manual Installation

To manually install the package:

git clone https://github.com/MartinPdeS/PyFiberModes.git
cd PyFiberModes
pip install .

Testing

PyFiberModes includes comprehensive tests. To run the tests locally:

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

This will generate a coverage report detailing untested portions of the code.


Examples and Usage

Learn how to use PyFiberModes with detailed examples in the Examples Section of the documentation. Examples include: - Calculating the effective index for a given mode. - Visualizing mode profiles in optical fibers. - Evaluating fiber parameters like V-number and dispersion.


Get Involved

PyFiberModes is an actively maintained project, and contributions are highly encouraged! Whether it’s a bug fix, feature request, or enhancement, your input is valuable.

  • Report issues or request features on the GitHub Issue Tracker.

  • Open pull requests to improve the codebase.

Contact

If you would like to collaborate, please reach out:

Author: 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 Distribution

pyfibermodes-0.8.0.tar.gz (240.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfibermodes-0.8.0-py3-none-any.whl (74.6 kB view details)

Uploaded Python 3

File details

Details for the file pyfibermodes-0.8.0.tar.gz.

File metadata

  • Download URL: pyfibermodes-0.8.0.tar.gz
  • Upload date:
  • Size: 240.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for pyfibermodes-0.8.0.tar.gz
Algorithm Hash digest
SHA256 e6f4ad23400c05b3b1a6000c9575009670dc1bb08d404b4593fb18c20e019d39
MD5 8e204197804f3f703075f3985f890669
BLAKE2b-256 69eca948c2e6a7a19c33b4d8db7454b6650581253fb1d3676ad0b48269e09e51

See more details on using hashes here.

File details

Details for the file pyfibermodes-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: pyfibermodes-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 74.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for pyfibermodes-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf5d300379c662c8af64421afa11c1591b125180c31e2ea4e880a28ae753b930
MD5 2d9d12b11f5945bdbee7c2c31a25634d
BLAKE2b-256 9228a10a987d529eb92cbc80a0e609df8f3ed2c92507d311ef5812951dcbda3e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page