ofiber

A python module for mode calculations in cylindrical and planar fibers.

https://github.com/scottprahl/ofiber

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 3 committers (33.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.3%) to scientific vocabulary

Keywords

dispersion fibers modes noise optical refraction sellmeier waveguide
Last synced: 6 months ago · JSON representation ·

Repository

A python module for mode calculations in cylindrical and planar fibers.

Basic Info
  • Host: GitHub
  • Owner: scottprahl
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 35.1 MB
Statistics
  • Stars: 26
  • Watchers: 3
  • Forks: 8
  • Open Issues: 0
  • Releases: 7
Topics
dispersion fibers modes noise optical refraction sellmeier waveguide
Created almost 8 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Changelog License Citation

README.rst

.. |pypi-badge| image:: https://img.shields.io/pypi/v/ofiber?color=68CA66
   :target: https://pypi.org/project/ofiber/
   :alt: pypi
.. |github-badge| image:: https://img.shields.io/github/v/tag/scottprahl/ofiber?label=github&color=68CA66
   :target: https://github.com/scottprahl/ofiber
   :alt: github
.. |conda-badge| image:: https://img.shields.io/conda/vn/conda-forge/ofiber?label=conda&color=68CA66
   :target: https://github.com/conda-forge/ofiber-feedstock
   :alt: conda
.. |doi-badge| image:: https://zenodo.org/badge/122556263.svg
   :target: https://zenodo.org/doi/10.5281/zenodo.8368598
   :alt: doi  

.. |license-badge| image:: https://img.shields.io/github/license/scottprahl/ofiber?color=68CA66
   :target: https://github.com/scottprahl/ofiber/blob/master/LICENSE.txt
   :alt: License
.. |test-badge| image:: https://github.com/scottprahl/ofiber/actions/workflows/test.yaml/badge.svg
   :target: https://github.com/scottprahl/ofiber/actions/workflows/test.yaml
   :alt: Testing
.. |readthedocs-badge| image:: https://readthedocs.org/projects/ofiber/badge?color=68CA66
   :target: https://ofiber.readthedocs.io
   :alt: Docs
.. |downloads-badge| image:: https://img.shields.io/pypi/dm/ofiber?color=68CA66
   :target: https://pypi.org/project/ofiber/
   :alt: Downloads

ofiber
=======

by Scott Prahl

|pypi-badge| |github-badge| |conda-badge| |doi-badge|

|license-badge| |test-badge| |readthedocs-badge| |downloads-badge|

Python code to calculate light propagation through optical fibers following
the approach presented in `Ghatak and Thyagarajan, An Introduction to Fiber Optics `_.  Far-field fiber calculations are based on `Chen, Foundations for 
Guided-Wave Optics `_.


Installation
-------------

Use ``pip``::

    pip install ofiber

or ``conda``::

    conda install -c conda-forge ofiber

Usage
-----

A few examples are shown below. For all examples, see `ofiber documentation `_

Symmetric planar waveguides
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/planarwaveguide.svg
   :target: https://ofiber.readthedocs.io/en/latest/3-Planar-Waveguide-Modes.html
   :align: center
   :alt: Planar Waveguide
   
Cylindrical fibers with step index profiles
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/stepindexmodes.svg
   :target: https://ofiber.readthedocs.io/en/latest/4-Circular-Step-Index-Fiber.html
   :align: center
   :alt: Modes in Step Index Fiber

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/modeirradiance.svg
   :target: https://ofiber.readthedocs.io/en/latest/4-Circular-Step-Index-Fiber.html
   :align: center
   :alt: Mode Irradiance

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/internalmodes.svg
   :target: https://ofiber.readthedocs.io/en/latest/4-Circular-Step-Index-Fiber.html
   :align: center
   :alt: Internal Modes

Far-field emission for step index fibers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/farfieldirradiance.svg
   :target: https://ofiber.readthedocs.io/en/latest/9-Far-field-irradiance.html
   :align: center
   :alt: Far-field Irradiance

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/theta01.svg
   :target: https://ofiber.readthedocs.io/en/latest/9-Far-field-irradiance.html
   :align: center
   :alt: polar angle of the minimum of the central irradiance lobe

Fiber design
^^^^^^^^^^^^^

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/fiberdesign.svg
   :target: https://ofiber.readthedocs.io/en/latest/6-Zero-Dispersion.html
   :align: center
   :alt: Fiber Design

.. image:: https://raw.githubusercontent.com/scottprahl/ofiber/master/docs/dispersion.svg
   :target: https://ofiber.readthedocs.io/en/latest/6-Zero-Dispersion.html
   :align: center
   :alt: Dispersion

Google Colaboratory
^^^^^^^^^^^^^^^^^^^^

Use a Jupyter notebook immediately by clicking the Google Colaboratory button below

.. image:: https://colab.research.google.com/assets/colab-badge.svg
  :target: https://colab.research.google.com/github/scottprahl/ofiber/blob/master
  :alt: Colab


License
-------

``ofiber`` is licensed under the terms of the MIT license.

Owner

  • Name: Scott Prahl
  • Login: scottprahl
  • Kind: user
  • Location: Portland, Oregon
  • Company: Oregon Institute of Technology

Citation (CITATION.cff)

authors:
- family-names: Prahl
  given-names: Scott
  orcid: https://orcid.org/0000-0003-1468-6851
cff-version: 1.2.0
date-released: '2024-05-05'
doi: 10.5281/zenodo.8368599
message: If you use this software, please cite it as below.
title: 'ofiber: a python module for light propagation in optical fibers.'
url: https://zenodo.org/doi/10.5281/zenodo.8368598
version: 0.8.1

GitHub Events

Total
  • Watch event: 2
  • Fork event: 2
Last Year
  • Watch event: 2
  • Fork event: 2

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 175
  • Total Committers: 3
  • Avg Commits per committer: 58.333
  • Development Distribution Score (DDS): 0.217
Past Year
  • Commits: 26
  • Committers: 2
  • Avg Commits per committer: 13.0
  • Development Distribution Score (DDS): 0.077
Top Committers
Name Email Commits
Scott Prahl s****t@p****m 137
Work Prahl p****l@b****u 36
GitHub Action a****n@g****m 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 0
  • Total pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 days
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 2.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • matt8s (4)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 38 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 13
  • Total maintainers: 1
pypi.org: ofiber

Light Propagation in Optical Fibers

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 38 Last month
Rankings
Dependent packages count: 7.3%
Stargazers count: 13.9%
Downloads: 14.1%
Average: 14.9%
Forks count: 16.9%
Dependent repos count: 22.1%
Maintainers (1)
Last synced: 6 months ago

Dependencies

docs/requirements.txt pypi
  • matplotlib *
  • nbsphinx *
  • numpy *
  • ofiber *
  • scipy *
  • sphinx-automodapi *
  • sphinx-rtd-theme *
requirements.txt pypi
  • matplotlib *
  • numpy *
  • scipy *
.github/workflows/citation.yaml actions
  • actions/checkout master composite
  • actions/setup-python master composite
.github/workflows/pypi.yaml actions
  • actions/checkout master composite
  • actions/setup-python master composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/test.yaml actions
  • actions/checkout master composite
  • actions/setup-python master composite
pyproject.toml pypi
setup.py pypi