Metadata-Version: 2.1
Name: PyFiberModes
Version: 0.4.0.post0
Summary: A package for light propagation in fiber optics.
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
Keywords: finit-difference,matrix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Development Status :: 4 - Beta
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Science/Research
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: numpy ==1.*
Requires-Dist: MPSPlots
Requires-Dist: PyFinitDiff
Requires-Dist: MPSTools
Requires-Dist: scipy ==1.*
Provides-Extra: documentation
Requires-Dist: numpydoc ==1.6.0 ; extra == 'documentation'
Requires-Dist: sphinx >=5.1.1 ; extra == 'documentation'
Requires-Dist: sphinx-gallery ==0.15.0 ; extra == 'documentation'
Requires-Dist: sphinx-rtd-theme ==2.0.0 ; extra == 'documentation'
Requires-Dist: pydata-sphinx-theme ==0.14.1 ; extra == 'documentation'
Provides-Extra: testing
Requires-Dist: pytest >=0.6 ; extra == 'testing'
Requires-Dist: pytest-cov >=2.0 ; extra == 'testing'
Requires-Dist: pytest-json-report ==1.5.0 ; extra == 'testing'
Requires-Dist: mypy >=0.910 ; extra == 'testing'
Requires-Dist: flake8 >=3.9 ; extra == 'testing'
Requires-Dist: tox >=3.24 ; extra == 'testing'
Requires-Dist: coverage ==6.5.0 ; extra == 'testing'

PyFiberModes
============

|python|
|docs|
|Unittest|
|PyPi|
|PyPi_download|




This project aims to develop an useful tool to simulate propagating mode in fiber optics for all kind of circular-symmetric geometries.

----

Documentation
**************
All the latest available documentation is available `here <https://pyfibermodes.readthedocs.io/en/latest/>`_ or you can click the following badge:

|docs|


----


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

.. code-block:: python

   >>> pip3 install PyFiberModes



Manual installation
*******************
The following shell commands should do the trick.

.. code-block:: python

    >>> git clone https://github.com/MartinPdeS/PyFiberModes.git
    >>> cd PyFiberModes
    >>> pip install -r requirements/requirements.txt
    >>> pip install .

----

Testing
*******

To test localy (with cloning the GitHub repository) you'll need to install the dependencies and run the coverage command as

.. code:: python

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

----



Coding examples
***************
Plenty of examples are available online, I invite you to check the `examples <https://pyfibermodes.readthedocs.io/en/master/gallery/index.html>`_
section of the documentation.


----


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.

PyMieSim was written by `Martin Poinsinet de Sivry-Houle <https://github.com/MartinPdS>`_  .

Email:`martin.poinsinet-de-sivry@polymtl.ca <mailto:martin.poinsinet-de-sivry@polymtl.ca?subject=PyFiberModes>`_ .


.. |python| image:: https://img.shields.io/pypi/pyversions/pyfibermodes.svg
   :target: https://www.python.org/

.. |docs| image:: https://readthedocs.org/projects/pyfibermodes/badge/?version=latest
   :target: https://pyfibermodes.readthedocs.io/en/latest/
   :alt: Documentation Status

.. |Unittest| image:: https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/MartinPdeS/f0955be398d59efac69042c1b0fbece2/raw/4c502d1ed25ca76bf1a73e2374d40960dae7e2dc/PyFiberModescoverage_badge.json

.. |PyPi| image:: https://badge.fury.io/py/PyFiberModes.svg
   :target: https://pypi.org/project/PyFiberModes/

.. |PyPi_download| image:: https://img.shields.io/pypi/dm/PyFiberModes.svg
   :target: https://pypistats.org/packages/pyfibermodes




