Date: Sep 02, 2025, Version: 1.9.5

FiberFusing#

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.