**Abstract: **Performing linear operations using optical devices is a crucial building block in many fields ranging from telecommunications to optical analogue 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. We propose to use this approach to use complex optical media such as multimode fibers or scattering media as a computational platform driven by wavefront shaping to perform analogue linear operations. Given a large random transmission matrix representing the light propagation in such a medium, we can extract any desired smaller linear operator by finding suitable input and output projectors. We demonstrate this concept by finding input wavefronts using a Spatial Light Modulator that cause the complex medium to act as a desired complex-valued linear operator on the optical field.

{loadMathJax}

\(

\def\ket#1{{\left|{#1}\right\rangle}}

\def\bra#1{{\left\langle{#1}\right|}}

\def\braket#1#2{{\left\langle{#1}|{#2}\right\rangle}}

\)

In a previous tutorial, I explained how to calculate the modes of a bent multimode fibers. I introduced two methods, following the approach published in [M. Plöschner, T. Tyc, and T. Čižmár, Nat. Photon. (2015)]. In this short tutorial I show how to use pyMMF to simulate bent fibers and compare the two different methods. A Jupyter notebook can be found on my Github account: compare_bending_methods.ipynb

]]>

{loadMathJax}

\(

\def\ket#1{{\left|{#1}\right\rangle}}

\def\bra#1{{\left\langle{#1}\right|}}

\def\braket#1#2{{\left\langle{#1}|{#2}\right\rangle}}

\)

The possibility of measuring the transmission matrix using intensity only measurements is a much sought-after feature as it allows us not to rely on interferometry. Interferometry usually requires a laboratory grade stability difficult to obtain for real-world applications. Typically, we want to be able to retrieve the transmission matrix from a set of pairs composed of input masks and output intensity patterns. However, this problem, that corresponds to a phase retrieval problem, is not convex, hence difficult to solve using standard techniques. The idea proposed in [I. Waldspurger *et al.*, Math. Program (2015)] is to relax some constraint to approximate the problem to a convex one that can be solved using the semidefinite programming approach. I briefly detail the approach and provide an example of the procedure to reconstruct the transmission matrix using Python. A Jupyter notebook can be found on my Github account: semidefiniteTM_example.ipynb.

Artificial neural networks are mainly used for treating data encoded in real values, such as digitized images or sounds. In such systems, using complex-valued tensors would be quite useless. This is however different for physic related topics. When dealing with wave propagation in particular, using complex values is interesting since the physics typically has linear, hence more simple, behavior when considering complex fields. This is sometimes true even when the inputs and the outputs of the system are real values. For instance, consider a complex media that you excite using an amplitude modulator, such as a DMD (Digital Micromirror Device) and you measure the output intensity. You manipulate only real values, but if you want to characterize the system, you have to keep in mind that the phase is a hidden variable as the effect of propagation is represented by the multiplication by a complex matrix on the optical field.

I wrote complexPyTorch a simple implementation of complex-valued functions and modules using the high-level API of PyTorch, allowing to build complex valued artificial neural networks using the guidelines proposed in [C. Trabelsi et al., International Conference on Learning Representations, (2018)].

]]>{loadMathJax}

\(

\def\ket#1{{\left|{#1}\right\rangle}}

\def\bra#1{{\left\langle{#1}\right|}}

\def\braket#1#2{{\left\langle{#1}|{#2}\right\rangle}}

\)

[K. Lee and Y. Park, Nat. Commun, 7 (2016)]

[Y. Baek, K. Lee and Y. Park, Phys. Rev. Appl., 7 (2016)]

Measuring the optical phase is an ubiquitous challenge in optique. Through a linear scattering medium, one can always links the output optical field to the input one using the transmission matrix. However, one still has to measure the phase of the complex output field. In [K. Lee and Y. Park, Nat. Commun, 7 (2016)] the authors introduce a technique to reconstruct a complex optical field using a thin diffuser. Once the matrix is calibrated, only an intensity measurement is required to reconstruct the amplitude and the phase of the complex optical field.

]]>

Optical communications: *Towards a better understanding of light scattering and mode coupling mechanisms in *few mode* optical fibers* - Link

Optical communications: *Multimodal photonics - dynamic characterization of the transmission channel of a few-mode optical fiber* - Link

Advanced THz photonics: *Beam manipulation with optical-RF antenna arrays at THz frequencies for point-to-point communication applications* - Link

Ultra-miniaturized endoscopes: *Specialty optical fiber for ultraminiaturized biomedical endoscopes - *Link

{jcomments on}

{loadMathJax}

\def\ket#1{{\left|{#1}\right\rangle}}

\def\bra#1{{\left\langle{#1}\right|}}

\def\braket#1#2{{\left\langle{#1}|{#2}\right\rangle}}

\)

[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 analogue 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.

In [M. W. Matthès et al., Optica, 6 (2019)], we propose to use this approach to use complex optical media such as multimode fibers or scattering media as a computational platform driven by wavefront shaping to perform analogue linear operations. Given a large random transmission matrix representing the light propagation in such a medium, we can extract any desired smaller linear operator by finding suitable input and output projectors. We demonstrate this concept by finding input wavefronts using a Spatial Light Modulator that cause the complex medium to act as a desired complex-valued linear operator on the optical field.

]]>

{jcomments on}

{loadMathJax}

\def\ket#1{{\left|{#1}\right\rangle}}

\def\bra#1{{\left\langle{#1}\right|}}

\def\braket#1#2{{\left\langle{#1}|{#2}\right\rangle}}

\)

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 term 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.

]]>