Thursday, April 4, 2024

How to steer active colloids to climb up a vertical wall?

Flocking of birds and schooling of fishes are phenomena analogue to the separation of water and oil or of water and vapour. Birds like to be together rather than evenly fill the sky. So do water molecules that mostly gather in a glass and sparsely populate the volume of the room around. In the last decade, this analogy has been explored by physicists. It holds incredibly well given that molecules passively respond to the surrounding temperature, whereas birds and fishes self-propel, thus actively inject energy in the physical system. Bird flocks and fish schools are thus intrinsically out-of-equilibrium systems. More generally, other physical systems, made of living or abiotic particles, have been shown to phase separate between dense and dilute regions when the particles are gifted with self-propulsion. But how far does the analogy run with water-vapour passive equilibrium situation ?

Theories and simulations have identified the interface between the dense and the dilute phase as a place where the analogy might break down and give rise to new interesting phenomena. For instance, a negative surface tension has been predicted in some models of active systems. Instead of minimizing the interface area as a positive surface tension does, a negative surface tension should lead to an increasingly corrugated interface. But other models predict a positive surface tension and more subtle discrepancies with an equilibrium interface.


In this context, we set to reproduce the active matter version of the capillary rise experiment, where water in contact with a hydrophilic wall forms a meniscus against gravity. We studied a sediment of 2 µm spherical gold particles in contact with a vertical wall. One hemisphere of each particle is coated in platinum. The platinum is able to split a chemical fuel and this reaction propels the particle. In absence of fuel, the particles are passive and do not wet the wall. When we add fuel, the particles become active and climb up the wall. Surprisingly, this climbing occurs at relatively weak self-propulsion, too weak to induce phase separation, too weak to create an interface with a surface tension.


Indeed, we do not observe a meniscus, but an adsorbed layer, one particle thick. And in this layer, the particles point upward, actively climbing against gravity, a phenomenon that has no analogue in a passive system. With the help of numerical simulations, we were able to understand the necessary physical ingredients to observe this phenomenon. We understood that the particles need to align parallel to the wall, as elongated bacteria do. However, against an horizontal wall, particles can go indifferently right or left. What makes them go preferentially up in the case of a vertical wall?

To understand this, we had to remember previous studies of active particles in a sediment, but far from any wall. Models had predicted, and the experiments of some of us had confirmed, that high in a sediment the particles were pointing slightly upward. Indeed, to climb this far up, a particle had to be pointed upward just before the observation. If it was pointing downward, its propulsion would concur with gravity to make it fall down. Since the self-propulsion is persistent, particles that were pointing upward just before the observation are mostly still pointing upward. That is how gravity selects particles that point up. But far from any wall this propulsion slightly upward exactly compensate the gravity and the system is in steady state. By contrast at a wall, this small preference to point upward is enhanced by the alignment. Particles thus point exactly up. Their self-propulsion is now stronger than gravity and the particles climb up the wall in a steady state flux that has no equivalent in passive systems.

Effectively, a vertical wall is able to create a steady current in an active system. By herding active particles it makes them climb up against gravity. From microscopic active units, this simple situation produces a macroscopic work. Our results pave the way to microfluidic circuits able to pump themselves.


Adérito Fins Carreira, Adam Wysocki, Christophe Ybert, Mathieu Leocmach, Heiko Rieger and Cécile Cottin-Bizonne. How to steer active colloids up a vertical wall. Nat Commun 15, 1710 (2024). ArXiV 2307.02810

Monday, November 16, 2020

Texture analysis by DiRDiP

Imagine you have a set of points evolving in time. It can be the center of colloidal particles in a suspension, of cell nuclei in a tissue, of bubbles in a foam, of people in a crowd. You also have a way of defining which point is bonded to which one. Two people are bonded if they hold hands. Two nuclei are bonded if their respective cell membranes touch. Two bubbles are bonded if they share a soap film. Two colloidal particles are bonded if they are within a certain distance from each other.

And now you make this dynamical, with people moving and handshaking around, bubbles deforming to flow through a funnel, colloidal suspension beeing sheared, tissue trying to fix the scar of a scalpel cut. Your points are moving and your bonds can stretch, rotate, break or be born.

A set of 9 positions with bonds between them, evolving in time. The positions can move, the bonds can appear (green) or disappear (red).

How would you characterize this mess? How to make statistically significant observations of such an ensemble of discreet events? How to deduce anything about the response properties of your system? 

One way is to translate the original discreet description of the evolution of the system (discreet points moving and discreet bonds deforming, appearing or disappearing) into a continuous description in terms of strain field. Even better, in terms of strain fields: the reversible part of the strain that correspond to the bonds that deform without breaking on one hand, and on the other hand the irreversible part of the strain that corresponds to the bonds that appear or disappear.

I've just released a piece of code that does just that.

It's based on a great method published by François Graner and Benjamin Dollet in 2008 that allow to go from the set of point to the mechanical properties of the system. This paper is great, pedestrian and extremely clear on every detail. I really recommend the read if you know a bit about strain tensors and continuous mechanics.

Unfortunately, the original implementation of this analysis in Delphi was lost and later implementations in Matlab were never brought to releasable form. That is why I reimplemented everything in Python - I hope in a clean enough way - so that others will be tempted to use this method. 

This new implementation relies only on Numpy and Numba for optimized calculations, and on Matplotlib to display the results. 
I've cooked up examples to show how to use Trackpy results stored in Pandas dataframes as positions and how scipy.spatial can be used to define bonds.
Following the title of the original paper, the code is named DiRDiP, for Discrete Rearranging Disordered Patterns.
The code can be cited using the DOI provided by Zenodo: 
Mathieu Leocmach, DiRDiP, (2020)

What the code takes as input

  • Two arrays of coordinates at two different times. The dimensionality is arbitray, but for most applications 2D and 3D will be enough.
  • Two sets of bonds, each linking positions at one of the two times.
  • A grid on which to compute the continuous description. I've implemented the rectilinear grid in any dimension, the regular grid in any dimension, and the polar grid in 2D. Implementing other grids (spherical, cylindrical, etc) would be rather easy.

What the code outputs

Arrays of matrices, one matrix per grid element. Exemple of matrices (as defined in the paper):
  • statistical velocity gradient
  • statistical rotation rate
  • statistical topological rearrangement rate

There is a submodule dedicated to displaying such arrays of matrices in Matplotlib.

What the code does not do

  • Localize interesting points and link their positions in time. Use Trackpy for that, or what fits to your problem.
  • Decide which points are linked together. This dependes so much on the physics or biology of your system. Some possible geometrical criteria are implemented in scipy.spatial, like Voronoi neighbourhood, k-nearest neighbours, distance criterion, etc.
  • Decide how to average the results to obtain statistical significance. But you know, averaging numpy arrays is pretty easy. For example, if you have a seady state, you may want to average in time the arrays resulting from two successive time steps. If you have a spatial symmetry or invariance in your system, you may want to exploit it.

What I am proud of

  • Unit tests
  • Documentation of each function
  • Some examples

What it still lack to be perfect

  • A tutorial
  • A generated documentation 
  • More users

Saturday, March 14, 2020

Tracking contacts

Recently, I am trying to figure out how to detect topological changes in a gel network as it breaks. In other words, I am tracking contacts as a network is loosing its connectivity.

As the schools and universities are closing, as I am myself practicing social distancing, the irony is not lost on me.

My immediate and regular contacts are my wife and children, my parents and family living in the same city, my colleagues, the members of my akido club, the parents I meet at the bus stop, friends I see for games, and more distantly the people on the market, at the canteen and in public transportation.

This last one is limited to a minimum since I am mostly commuting by bicycle. I won't meet other parents now that schools are closed. Social distancing means for me: not going to aikido (the club will close anyway), moving games online, not meeting my parents and family in person. I will also work from home as much as possible, including avoiding the canteen. The two PhD students I advise are warned and we have ways to communicate online.

We'll get through this responsibly, limiting damage to public health and our research. That said, I'll go back to my network analysis on Monday, with 3 kids at home.

Wednesday, January 29, 2020

TexMaker and input method

I write in LaTeX very often, either online via Overleaf, of locally on Texmaker.

Recently, I have to write a report in French, so I need to type accented characters, including "ê". On a french keyboard, one has to type the "dead key" "^" and then the key for "e". But when I did so in Texmaker, I only got the "e", not "ê", as if I did not push on the dead key "^". It was pretty general, since I could not even get the accent alone like in "\^{e}" or on any other letter â, û, î, ô, etc. Since everything was working fine on all other applications, it must be a Texmaker problem.

To make a long story, full of googling and forum and tials and errors, short, I discovered that is was a conflict between Qt (the graphical layer powering the interface of Texmaker) and ibus, the input method switcher I was using to write either in French or in Japanese.

The workaround I found was to install another input method switcher: fcitx.

Now I confess, this blog post is more a note for me to remember the procedure. But it may help others.

So, things are explained on this page.
  1. One need to have fcitx and fcitx-mozc installed
  2. Type in the terminal im-config and select fcitx, validate
  3. reboot (closing the session is not sufficient)
  4. A keyboard icon shows up (on top bar for me). Right click, configure. Ask for your default keyboard (French for me). Validate and close.
  5. Right click again on the keyboard icon, configure. Now you have access to all input methods, including mozc. Add mozc. 
  6. Selecting mosc on the list, click on the bottom icon showing some tools. In the menu, select the layout of your physical keyboard (French AZERTY for me). Validate and close.
Now, I might be a bit optimistic in this procedure because I actually tried much more things. Maybe between step 2 is actually more complex:
  1. Disable ibus for Gnome
    sudo dpkg-divert --package im-config --rename /usr/bin/ibus-daemon
  2. Reboot
  3. Type in the terminal im-config and select fcitx, validate
  4. Reboot
  5. (maybe) Enable back ibus for Gnome
    sudo dpkg-divert --package im-config --rename --remove /usr/bin/ibus-daemon
  6. Reboot

Friday, May 3, 2019

How does a gel become mechanically stable?

Gels are strange materials. They are mostly made of a liquid, however they are solid. This solidity comes from the structure of the gel: a dilute solid network.
Transmission electron micrograph of a casein gel.
See the network in the above picture? Here the strands of the network are made of aggregated proteins. The holes, or pores, are permeated by water.

A gel network can be made of various building blocks. For example if you take very long, linear molecules that you crosslink from time to time, you get a polymer network. If this network is swelled by a solvent, then it is a gel. That is the case of panna cotta, where long collagen molecules from the gelatin associate into a network to imprison the creamy milk.

In the case of a yogurt, you start from globular proteins called caseins (think of little balls) dispersed in water. If you make them attract each other, the proteins will spontaneously aggregate into a network.

From a mechanical point of view, these two cases look quite different. Long molecules are floppy, adopt many configurations. If you pull on such a long molecule, you are decreasing the number of configurations it can adopt. This is costly in terms of (free) energy, so it is hard to pull, as if the chain was a little spring. Now is you assemble such springs into a network, it is quite obvious that you will get a solid that is easy to deform.

Using the path in black, it is possible to go from one end of the sample to the other. This sample is percolated. The black path is a percolation path.

Now, if you assemble sticky balls into a network, and if you pull on it, will it deform elastically or immediately break down into pieces? What are the conditions to make a particle gel stable? The answer to these question is not obvious and there have been many different answers in the literature.
  1. In polymer gels, having a percolating network is enough to have mechanical stability. Percolation means that it is possible to find a path along the network that goes from one end of the sample to the other. But many observation concluded that this was not enough to have mechanical stability in the case of particle gels.
  2. A glass is mechanically stable because its particles are not able to rearrange, trapped by the cage formed by their neighbours. This concept was imported into gels by saying that particles were trapped by the attractive bonds they formed with their neighbours. This theory allows arrest, but does not explain the network structure of the gel. For a long time it was thought that a combination of percolation and glassy arrest could explain gel stability.
  3. About a decade ago the paradigm shifted. There was this class of phase separation called "spinodal decomposition" that spontaneously formed a bicontinous pattern: a phase rich in particles intertwined with a phase poor in particles. Usually the pattern coarsen with time until complete separation of the phases. But it was found that if the particle-rich phase is dense enough to undergo a glass transition, then it becomes arrested and the structure stop evolving. So we get a network structure and thus a gel. This is called the arrested spinodal theory. However at very low volume fractions it does not describes well some observations. More importantly, it does not predicts the mechanical behaviour of the gel.
  4. But there are other ideas in the literature that come more from a mechanical point of view. Back in the 19th century, Maxwell stated that mechanical stability was ensured if the number of mechanical constraints is equal to the number of degrees of freedom. From example, if you live in 3D space (I do), you have 6 degrees of freedom : you can move east, west, north, south, up and down and any combination of theses. If you are blocked so that you can't move north, can't move south, can't move east, can't move west, can't move up and can't move down, then you cannot move anywhere. So you are stable. This concept of "isostaticity" is very useful at the macroscopic scale, when you want to build a bridge or when you want to understand sand piles. But is this concept relevant when each particle is jiggling around due to thermal motion? In 2012, a paper found that when you look at a gel before and after breaking it, you find a decrease of the particles that have 6 or more bonds. These are actually the particles that should be stable, since each bond is a constrains, so higher than 6 you shouldn't be able to move.
  5. In 2016, percolation stroke back. A paper found that not all paths along the network were important. If you considered only paths that never turned back, that were "directed", then you are interested in "directed percolation", not "isotropic percolation". The authors found that all their samples where directed percolation took place were mechanically stable, and that no other sample was. So, is directed percolation the cause of mechanical stability? For the moment, just remember that their samples were very dilute (less than 10% of particles).

The path in black is a percolation path that never turn back. This is a directed percolation path.

Here we arrive on the scene with our method to follow experimentally each individual particle during the process of gelation. All previous experiments were done by observing the state of the already formed gel. So the only influence that had been studied was the fraction of solid particles and the strength of the interactions. Here we add another axis: time.

We asked this question: can we observe when a gel become mechanically stable, and how is the microstructure changing at that moment?

First, we had to find a way of checking whether the suspension was mechanically stable or not. Usually you do that by putting the suspension in a rheometer, you oscillate at very low amplitude to measure the mechanical response. This response has two parts: elastic and viscous. If the viscous part is larger than the elastic part, the suspension is still liquid. If the elastic part is larger than the viscous part, the suspension is solid, so the gel has become mechanically stable. But in our case we need large (3 micron) particles to be able to observe everything in minute details. Large particles makes extremely soft gels. So soft that the rheometer does not have enough sensitivity.

Therefore, we ditch the idea of a rheometer altogether and only look at the response of the system to thermal agitation. The sample is just under the microscope and we record the trajectories of all the particles due to thermal agitation. If particles are able to diffuse away freely, it means that the suspension is liquid. If the particles are stuck and vibrate around a mean position, it means that the suspension is solid. Actually, a clever method call microrheology manages to transform the displacement of the particles into a measure of the mechanical response, elastic or viscous. In this way, we know exactly when our suspension becomes a mechanically stable gel.

In parallel, we can follow the progress of percolation. The usual isotropic percolation occurs always way before mechanical stability. Explanation (1) is out of the game.

We can also follow directed percolation. It occurs later than isotropic percolation, and actually for dilute gels (below 10-12% particle fraction), the time of directed percolation matches very well the time of mechanical stability. But, it does not work at all a higher volume fraction. Mechanical stability occurs sometimes 5-15 times later than the directed percolation. So, obviously explanation (5) is not general.

Now, we can look at isostatic particles, these particles that have 6 or more neighbours. Are these particles percolating? Yes, they are, and always at the exact time where mechanical stability sets in (see error bars in the paper, because science has error bars). So explanation (4) seems to be the correct one.

But then, why does explanation (4) give the right time at low particle fraction?

Look at the cartoons below. This is in 2 dimensions, so isostaticity means having 4 neighbours, not 6 like in 3D. Isostatic particles are shown in purple.

Path to gelation in the dilute case
In the dilute case (less than 10-12%)
  • When particles begin to aggregate, they form very loose clusters, very open and far from each other.
  • These clusters compact. Particles make more bonds within the same cluster, but clusters are too far away from each other to meet now. Because of this compaction, the heart of each cluster is now isostatic.
  • Clusters finally begin to meet and form larger and larger clusters, until you get a percolating path. In this situation, you have groups of isostatic particles that are bridged by floppy non-isostatic bridges.
  • In order to make more bonds, floppy bridges have to straighten. So at the time isostaticity percolates through the system, the network is mostly made of straight paths. So directed percolation is easy and occur at the same time.
Path to gelation in the dense case

In the dense case (more than 10-12%)
  • When particles begin to aggregate, they are so close together that there is no space between clusters. Very quickly a percolating network is formed.
  • That is only after the formation of this initial network that rearrangements occur. More bonds are created locally and this is enough to obtain a directed percolating path.
  • Compaction continues to proceed until isostaticity percolates. That only then that the gel is mechanically stable.
That explains why directed percolation looks like a good explanation if you look only at dilute samples.

To conclude, we can view a gel as a network that is sculpted and arrested by mechanical forces. Our mechanical explanation does not really contradict the arrested spinodal theory that is more thermodynamics. But we hope that explaining gels by mechanics will help understand the mechanics of gels. For example, we still do not understand why some particle gels break into well-defined and irreversible fractures (think yogurt) whereas some others just flow plastically and reversibly (think toothpaste or fresh cement).

If you want to dig more in depth, our paper is scheduled to be published the 31th of May 2019 in Science Advances, and a preprint is already available on ArXiv:
H. Tsurusawa, M. Leocmach, J. Russo, H. Tanaka, Direct link between mechanical stability in gels and percolation of isostatic particles. Sci. Adv. 5, eaav6090 (2019). arXiv:1804.04370

Friday, January 18, 2019

Want to study how flocs, swarms or crowds flow? I'm looking for prospective PhD student

Have you ever seen the patterns made by birds, sheeps or insects when they come together? There is no boss in the mass of living bodies, however they self-organize.

The same kind of patterns can be seen at the microscopic scale in colonies of bacteria or in living tissues.

And recently, I've been working on non-living microscopic particles that self-propel, displaying the same kind of patterns.

Long exposure picture of self-propelled particles

A lot of beautiful physics has been done in the last decade about this class of system. Now it's known as "Active Matter".

Patterns are mesmerizing, physics is intellectually pleasing, but what is the purpose? What do you make out of this "Active Matter"? Can you build a bridge? Power your home? Cure cancer ?

Well, maybe.

It becomes clearer by the day that cancer metastasis is a swarm of cancer cells migrating through the body, very close to the above patterns. In which conditions the solid tumour becomes a liquid-like swarm? How to influence this transition? These are actual questions physicists and biophysicists are asking right now.

Maybe you can't power a house with active matter, but maybe you can make it do the worm of pumping the water of your shower. It has been found that a suspension of swimming micro-organisms flow more readily (has a lower viscosity) than the suspension of dead micro-organisms. Furthermore, in some situations, the viscosity is even lower than the liquid alone, without micro-organisms! They swim, converting their food into movement, and this moment helps the water flow up the pipe.

And can we build something? Maybe not a bridge, but a muscle that would be able to contract from the action of trillions of micro-motors. Or some kind of new material that would react to a push to the left by deforming to the right?

To understand this last point, I am looking for a PhD student interested in physics, mechanics, materials and afraid neither to code nor to perform experiments. This is an experimental investigation. See the announcement (2 pages, FR then EN) on my lab's website.

Monday, February 5, 2018

Crystalline gels ArXiV

Our paper on how crystalline gels form is out on the ArXiV
Very timely weather today in Lyon: first day of snow of the year (second of the winter). Lots of Bergeron processes happening up there.