Locomotion and control of
a a self-propelled
shape-changing body in a perfect fluid
|Institut Elie Cartan
In this page we display numerical simulations related to the article:
that can be downloaded in pdf format by clicking on the title above.
The notation we use in this page matches that of the article.
Maxima computations page
the reference article, several proofs of controlability results are obtained by
computing the dimension of vector spaces spanned by vectors fields
together with their Lie brackets. These heavy computations have been
realized with Maxima
free softward distributed under lisence GPL and allowing symbolic
computations). You can download here the Maxima's page of these
computations: Maxima's page
All of the simuations in this page have been realized with MATLAB
|Swimming using Lie brackets|
master idea to prove controlability results consists in computing Lie
brackets of vector fields associated with allowable shape-changes.
Although Lie brackets provide a powerful tool to obtain theoretical
results, the associated shape-changes don't yield in general
very efficient swimming strategies as illustrated by the following
shape-changes associated with the Lie Bracket of the two vector fiels X1
and X2 yields a net displacement of the center of mass of the swimming body along a
new direction (being none of those associated to X1
and X2). To approximate the Lie bracket [X1, X2],
we integrate first along X1
during a small time step ( = 0.1), then along X2 during
the same time step, next along -X1
and finally along -X2. |
The left hand side of the
movie shows the shape-changes at a macro scale. The right hand side is a zoom on the
small black rectangle showing
the displacement of the center of mass of the body. Notice how small it is.
Movie (click on the
image above to play the movie)
|More efficient swimming strategies|
observation of the preceding section leads to seeking new swimming
strategies not based on the computation of Lie brackets. We propose
here somesuch examples.
|Definition of the control variables|
The main difficulty in seeking swimming strategies is that the controls varibles ck(t) have to be allowable (in the sens given in the reference article). We then define the complex controls variables ck for k = 1,..., 6 as
One easily checks that the controls variables ck(t)
are indeed allowables.
The new idependant variables we are going to use as our controls are now the functions:
The following simulations show the motion of the swimming animal over 8 strokes
(time between 0 and 16π). Above the pictures, we display the
corresponding controls values (we give only the non-zero elements).
The colors give the density inside the animal. (Click on the images to play the movies).
Using only the two first controls c1 and c2
|In this first example, we use only the controls and , all the others being equal to zero for all time.|
Any kind of displacement can be achieved. The control
allows to set the frequency of the strokes (and hence the velocity of the animal) while the function
set the direction (the amoeba turns left when it is positive and turns right when it is negative).
Using the pair of controls c3 and c4
|Now, we use only the pair of functions to control the swimming shape-changing body, the other controls remaining constant. As in the preceding paragraph, allows to set the frequency of the strokes and determines the direction. Once more, the body can follow any prescribed trajectory.|
that this swimming strategy seems to be less efficient than the
previous one, for the animal undergoes many shape-changes for a small
resulting net displacement.
Using the last pair of controls c5 and c6
|Here, we use only the pair of functions as controls. Any trajectory can be achieved but the efficiency is surely very low.|
|Not any shape-changes set the amoeba into motion. In this paragraph only, let us redefine the controls and as follows:|
Here, we use the function
as a control. (Click on the image to play the movie).
With these definitions of the controls, only c1
are non-zero. There is no displacement of the center of mass althoug
the deformations are not symmetric with respect to the center of mass.
In the reference article
we prove that the swimming body can follow any prescribed
trajectory while undergoing (approximately) any
prescribed shape-changes. This result is very surprising and can be
illustrated by the following example.
|In the second movie, the body seems undergoing
the same shape-changes as in the first movie but it swims backward !
Actually, there are superimposed shape-changes with very high frequency
and very low amplitude. The difference between the shape-changes in the
first and second movies cannot be observed at the normal time-scale.
us slow down the time (up to almost freeze it) and zoom in on the
boundary of the amoeba. Click on the image to play the movie.|
Notice the time displayed in the NW corner. The complete simulation time lasts no more than 1e-2 seconds !
|A real-time interactive control game|
|Click on the image and copy-paste the m-File in the MATLAB editor. Save it and run it by entering |
the Command Window of MATLAB. You can now control the motion of the amoeba with the keyboard. Use
the keys: 'P' and 'L' to modify the velocity, 'W' and 'X' to steer, and
'G' to enable or disable the grid.
- >> amoeba_motion
|Other simulations of swimming animals: Biohydrodynamcis Matlab Toolbox|
(BhT) is a collection of M-Files for design, simulation and analysis of
animal motions in fluids. Animals are modeled as systems of articulated
solid bodies. More widely, BhT allows to perform easily any kind of
numeric experiments involving 2d motions of solids in an ideal fluid
(simulations of so-called fluid-structure interaction systems).
Some of BhT's features
deals with ideal fluids only (i. e. inviscid and incompressible) and
whose flows are assumed to be irrotational (i. e. vortex free).
strong coupling between Solid and Fluid Mechanics is taken into account
(no simplification like for instance the bodies hydrodynamically
- Animals' articulations are prescribed by the user as functions of time.
- Buoyant force and collisions are supported.
- High accuracy (based on fully explicit
equations of motion and the implementation of Nyström's method to
compute the fluid potential).
- BhT comes with a complete documentation involving examples and tutorials.
- BhT is free, distributed under licence GNU GPL.
Examples of simulations
|These simulations have been realized with BhT. (Click on the images to see the movies).|
More demos are available on the BhT demo page.
|Locomotion and control of a self-propelled shape-changing body in a perfect fluid, T. Chambrion and A. Munnier (2009).||Up|