Skip to main content

A package fiber fusing configuration simulating the transverse fusion of fiber optics.

Project description

FiberFusing's logo

Meta

Python version

Documentation Status

colab

Testing

Unittest Status

Unittest coverage

PyPi

PyPi

PyPi download statistics

Anaconda

Anaconda version

Anaconda downloads

FiberFusing is a Python package designed for simulating the fiber fusing process. With this tool, users can define an initial fiber configuration and simulate the fusion process as a function of the fusion degree parameter.

As follows, an example of 3x3 fused fiber.

from FiberFusing import Geometry, DomainAlignment, BackGround
from FiberFusing.fiber import FiberLoader
from FiberFusing.profile import Profile, StructureType

air_background = BackGround(refractive_index=1.0)

profile = Profile()

profile.add_structure(
   structure_type=StructureType.CIRCULAR,
   number_of_fibers=3,
   fusion_degree=0.4,
   fiber_radius=62.5e-6
)

profile.refractive_index = 1.4444

fiber_loader = FiberLoader()
fibers = [
   fiber_loader.load_fiber('SMF28', clad_refractive_index=profile.refractive_index, position=core_position)
   for core_position in profile.cores
]

# Set up the geometry with the defined background, profile structure, and resolution
geometry = Geometry(
   x_bounds=DomainAlignment.CENTERING,
   y_bounds=DomainAlignment.CENTERING,
   resolution=350
)

# Add the fibers to the geometry
geometry.add_structure(air_background, profile, *fibers)

geometry.initialize()

# Plot the resulting geometry
geometry.plot()

Example for 3 fiber structure


Documentation

For the most up-to-date documentation, visit the official FiberFusing Docs or click the badge below:

Documentation Status


Installation

Getting started with FiberFusing is easy. Simply install via pip:

pip install FiberFusing

PyPi


Testing

To run tests locally after cloning the GitHub repository, you’ll need to install the dependencies and run the following commands:

git clone https://github.com/MartinPdeS/FiberFusing.git
cd FiberFusing
pip install FiberFusing[testing]
pytest

For more detailed testing instructions, consult the documentation.


Coding examples

Explore a wide range of examples demonstrating the usage of FiberFusing in the Examples section of the documentation.


Contributing & Contact

FiberFusing is an open project and collaboration is encouraged! If you’re interested in contributing or have any questions, feel free to reach out.

Author: Martin Poinsinet de Sivry-Houle Email: martin.poinsinet-de-sivry@polymtl.ca

We welcome feedback and contributions to improve FiberFusing and expand its capabilities.


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

fiberfusing-1.9.5.tar.gz (451.2 kB view details)

Uploaded Source

Built Distribution

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

fiberfusing-1.9.5-py3-none-any.whl (61.3 kB view details)

Uploaded Python 3

File details

Details for the file fiberfusing-1.9.5.tar.gz.

File metadata

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

File hashes

Hashes for fiberfusing-1.9.5.tar.gz
Algorithm Hash digest
SHA256 ca99e27e25ed9d2aea70fd53519a69718880f741f5c74d84f6fe4ad9c5199102
MD5 083825f4751527a4f1f846ecfec2c44e
BLAKE2b-256 be35b2dec03468e5bf11a29450e372ede87a8cc85034609cff0c56324246452f

See more details on using hashes here.

File details

Details for the file fiberfusing-1.9.5-py3-none-any.whl.

File metadata

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

File hashes

Hashes for fiberfusing-1.9.5-py3-none-any.whl
Algorithm Hash digest
SHA256 bf7b16d8fd0f93db81b633eddbf7cdc9d3c3c63f03e24d6cbe3c2d325ed28723
MD5 462465cef2e4a1f08f3374205acff386
BLAKE2b-256 91ed5cd1e4b62e9c3bd639205194be062e6c30e2aac56c35f16ddcb67dd0cd5c

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