Category Archives: WP1

Software Tutorial WP1

Layout: A Python module to generate macropixel patterns for SLMs and DMDs

In many wavefrontshaping experiments, such as for optimization experiments, like the seminal work by I. Vellkoop and A. Mosk, or for measuring the transmission matrix, one need to control the amplitude and/or the phase of the field on a given number of macorpixels (i.e. group of pixels). Using DMDs, amplitude and phase modulation can be acheived using the Lee hologram method and then sending the binary images to the device using the for ALP4lib in Python for Vialux DMDs. I release here a module written by myself and M. W. Matthes to easily and efficiently generate such patterns. The code can be found on my Github account here as well as an amplitude and phase modulation example: layout_amplitude_phase_modulation.ipynb.

Read More, GitHub

Tutorial WP1

Setting up a DMD/SLM: Aberration effects

Digital Micromirror Devices (DMDs) are amplitude only (binary) modulators, however, pretty much like liquid crystal modulators, they introduce some phase distortion. Practically, it means that if one illuminates the modulator with a plane wave, even when all the pixels are set to the same value, the wavefront shows phase distortions after reflection. That can be detrimental, especially when working in a plane conjugated with the Fourier plane of the DMD surface. Fortunately, using the Lee hologram method (or the superpixel method) one can achieve phase modulation. I present here how to use Lee holograms to characterize and compensate for aberrations when using a DMD. This approach can also be applied for compensating for aberration effects in other types of Spatial Light Modulators, such as liquid crystal ones.

read more »

Paper WP1

Turning Optical Complex Media into Universal Reconfigurable Linear Operators by Wavefront Shaping

Maxime W. Matthès, Philipp del Hougne, Julien de Rosny, Geoffroy Lerosey and Sébastien M. Popoff, Optica, 6, 4 (2019)

Performing linear operations using optical devices is a crucial building block in many fields ranging from telecommunication to optical analogue computation and machine learning. For many of these applications, key requirements are robustness to fabrication inaccuracies and reconfigurability. Current designs of custom-tailored photonic devices or coherent photonic circuits only partially satisfy these needs. Here, we propose a way to perform linear operations by using complex optical media such as multimode fibers or thin scattering layers as a computational platform driven by wavefront shaping. Given a large random transmission matrix (TM) representing light propagation in such a medium, we can extract a desired smaller linear operator by finding suitable input and output projectors. We discuss fundamental upper bounds on the size of the linear transformations our approach can achieve and provide an experimental demonstration. For the latter, first we retrieve the complex medium’s TM with a non-interferometric phase retrieval method. Then, we take advantage of the large number of degrees of freedom to find input wavefronts using a Spatial Light Modulator (SLM) that cause the system, composed of the SLM and the complex medium, to act as a desired complex-valued linear operator on the optical field. We experimentally build several 16×16 complex-valued operators, and are able to switch from one to another at will. Our technique offers the prospect of reconfigurable, robust and easy-to-fabricate linear optical analogue computation units.

Read More, Download article, External link

Tutorial WP1

Setting up a DMD: Diffraction effects [WP1]

DMDs are more complicated to use compared to liquid crystal SLMs due to the tilt of the pixels, making the system comparable to a blazed grating. The effect depends on the wavelength, the input angle and the pixel pitch and can significantly reduce the diffraction efficiency of the modulator. We present here a tutorial with simulations to understand and predict the diffraction effects when working with DMDs.

read more »

Software WP1

ALP4lib: A open-source Python library for controlling DMDs [WP1]

Vialux provides Texas Instrument DMD (Digital MicroMirror Devices) chips with an electronic board to send and display image sequences at high speed (up to 30kHz).  We share here a simple module that wraps the C++ functions for Python developed for the MOLOTOF project. It allows to easily use the basic functions while providing the advanced features of the ALP API.


read more »