Created by sebastien.popoff on 15/04/2019

Highlights

Wavefront shaping in complex media for analog computation

[M. W. Matthès et al., Optica, 6 (2019)]

Performing linear operations using optical devices is a crucial building block in many fields ranging from telecommunications to optical analog computation and machine learning. For many of these applications, key requirements are robustness to fabrication inaccuracies, reconfigurability, and scalability. Traditionally, the conformation or the structure of the medium is optimized in order to perform a given desired operation. Since the advent of wavefront shaping, we know that the complexity of a given operation can be shifted toward the engineering of the wavefront, allowing, for example, to use any random medium as a lens.

See full post
Created by sebastien.popoff on 25/02/2019

Tutorials Multimode fibers

pyMMF:  Simulating Multimode Fibers in Python

Part 1: Step Index Benchmark

 

I recently published a two-part tutorial on how to find the modes of an arbitrary multimode fiber without or with bending. Based on this tutorial, I published a (still experimental) version of a Python module to find the modes of multimode fibers and calculate their transmission matrix: pyMMF. The goal of this module is not to compete with commercial solutions in terms of precision but to provide a way to easily simulate realistic fiber systems. To validate the approach, I use step-index multimode fibers as a benchmark test as the dispersion relation is analytically known (see my tutorial here) and for which the Linearly Polarized (LP) mode approximation yields good results. I focus my attention here on the precision of the numerically found propagation constants.

See full post
Created by sebastien.popoff on 29/12/2018

Tutorials Multimode fibers

Numerical Estimation of Multimode Fiber Modes and Propagation Constants: 

Part 2: Bent Fibers 

 

We saw in the first part of the tutorial that the profiles and the propagation constants of the propagation modes of a straight multimode fiber can easily be avulated for an arbitrary index profile by inverting a large but sparse matrix. Under some approximations [1], a portion of fiber with a fixed radius of curvature satisfies a similar problem that can be solved with the same numerical tools, as we illustrate with the PyMMF Python module [2]. Moreover, when the modes are known for the straight fiber, the modes for a fixed radius can be approximate by inverting a square matrix of size the number of propagating modes [1]. It allows fast computation of the modes for different radii of curvature.

See full post
Created by sebastien.popoff on 13/12/2018

Tutorials Multimode fibers

Numerical Estimation of Multimode Fiber Modes and Propagation Constants: 

Part 1: Straight Fibers

 

Under the weakly guided approximation, analytical solutions for the mode profiles of step-index (SI) and graded-index (GRIN) multimode fibers (MMF) can be found [1]. It also gives a semi-analytical solution for the dispersion relation in SI MMFs, and, by adding stronger approximations, an analytical solution for the parabolic profile GRIN MMFs [2] (note that those approximations do fail for lower order modes). An arbitrary index profile requires numerical simulations to estimate the mode profiles and the corresponding propagation constants of the modes. I present in this tutorial how to numerically estimate the scalar solution for the profiles and propagation constants of guides modes in multimode circular waveguide with arbitrary index profile and in the presence of bending. I released a beta version of the Python module pyMMF based on such an approach [3]. It relies on expressing the transverse Helmholtz equation as an eigenvalue problem. Solutions are found by finding the eigenvectors of a large but sparse matrix representing the equation on the discretized space.

See full post