Vesicles
Vesicles are membranes encapsulating a fluid in a suspension in an other fluid. It reproduces well the mechanical behavior of red blood cells. The position of the two different fluids and the interfaces are tracked by level set method. A surface force on the membrane is added to represent its resistance to bending. A Lagrange multiplier is also added to enforce its incompressibility.
Suspension of vesicles in a microfluidic bifurcation.
The suspension splits into the outlet branches of the bifurcation. The left outlet branch receives 2/3 of the total fluid flow, making the splitting of vesicles asymetric.
The quantity of interest in this simulation is the ratio of vesicles entering each outlet branch, compared to the ratio of fluid. 
Single vesicle in a microfluidic bifurcation.
A large vesicle is set at the center of a microfluidic bifucation. The right outlet branch receives a large ratio of the inlet flow rate, thus the vesicle enters this branch. We notice that, as it is centered in the inlet channel, it take the typical parachute shape. When entering the outlet branch, it is not centered in the channel anymore and take a so called slipper shape. 
Suspension of vesicles in a shear flow.
The suspension is set in a planar Couette flow (shear flow). It is the configuration used to measure the effective viscosity of the suspension. In this simulation we used periodic boundary conditions on the left and right borders.
Drops and Bubbles
Drops and bubbles are systems of two fluids separated by a surface tension force. This force is much simpler to write than the force that the membrane of a vesicle applies on the inner and outer fluids. Thus, drops and bubbles have been a great first step to validate the level set code and its coupling with the fluid equations.
Several drops of a fluid falling in an other viscous fluid.
The equations solved are the NavierStokes equations, where the only forces present are the gravity and the surface tension force. Both fluids are quit viscous (imagine a mixture of two oils). The level set method allows the collapsing of the different interfaces. 
Rising of a 3D bubble in a fluid.

Oscillation of a bubble in a confined environment.
Study of the influence of the confinement on the shape oscillations of a bubble relaxing to equilibrium.
The bubble's initial shape is set out of equilibrium. Due to surface tension forces, the bubble's shape experiences dissipative oscillations.
Level set related
The simulations involving two or more different fluids are done using the level set method implemented in Feel++. Some special features were needed like the Fast Marching method to set or reset the level set field to a distance function.Other results like the active contours were obtained to test the capabilities of the level set framework, they are shown here even though they're not part of my main research subjects.
Active Contours

Active contour stopping at the boundary of an image.
One can use the level set to find the shape of the boundary of an image.
One starts with an interface being a small circle and expanding with a velocity dropping when a high contrast is encountered.
When the interface of the image stops moving, its shape represents the shape of the object in the image.
Fast Marching
The fast marching algorithm is used to compute efficiently a distance function from an interface. It is used in our framework to set or reset the level set field to a distance function. I've modified the existing fast marching method in Feel++ to make in work in parallel and on periodic domains.Moreover, I've added a tool creating a distance function to a give parametrized curve. The user can simply give the formulas of the parametrized curves.

Distance function fields obtained from parametrized curves.
Crescent shape.
10 branches epitrochoid.
The color is representing the distance function field. The black lines are the contour lines of this field. The white line represents the iso0 value of the field. 
Distance function to hand written shape.
For very complicated shapes it might be difficult to right a parametrization. Thus I added an other tool allowing to create a distance function from an unordered set of points. This allows more flexibility, indeed, the set of point can be taken from image treatment for example (microscopy, shape detection...).

Distance function to complex boundaries.
Several models require the knowledge of the distance to the closest boundary like for example boundary layer turbulence models. While it's easy to write such a distance function for a rectangular domain, it can be tedious for complex shapes. The fast marching algorithm can then be used to create such field.
Bifurcation.
Air plane cabin.