Dear community,
I am glad to announce that the latest release of Palabos is available. It marks, once more, an important milestone with its new comprehensive multi-phase module. You can obtain this release on the usual download page.
Do you remember the free-surface code we launched a year ago (with release 1.1) and with which we simulated for example the dam-break problem? Well, the new multi-phase module is based on the same principles (a volume-of-fluid approach), except that it now fully solves the physics of two phases. To keep the discussion simple, you can imagine that an algorithm similar to the free-surface one is solved separately for each phase, and that a coupling is additionally implemented on the interface to guarantee the continuity of the relevant macroscopic variables. While a first sketch of this model was available already in release 1.2, the current release 1.3 ships with a full framework, examples, and validations.
Let’s look at specific examples to better understand the different features offered by the multi-phase module:
- The bubble splitter: In the extension of the free-surface code illustrated here, the pressure along the free surface is adjusted to guarantee an approximate preservation of the volume of gas bubbles. As a compensation for the fact that the physics of a gas is not actually simulated in a free-surface code, an algorithm is put in place which identifies the size and position of bubbles, tracks their time evolution, and adapts their internal pressure artificially as a reaction to volume changes. Like everything else in Palabos, this sophisticated pattern matching algorithm is fully parallelized. And, as you can see in the example (air bubbles rising under the effect of buoyancy), it properly copes with both bubble splitting and merging mechanisms.
- The swirling spray[/url]: Here, we illustrate surface tension, which is implemented for both free-surface and multi-phase codes. A liquid is injected with a rotational motion and forms a thin conical sheet, which then atomizes under the effect of surface tension (scroll down the page to see the video of the spray). You can inspect the 3D structure of the computed liquid surface interactively with the mouse at [url=http://www.flowkit.com/swirl.html]the following link.
- The falling droplets. The multi-phase module handles arbitrary density ratios between two phases. To illustrate this, a droplet is simulated which falls under gravity in an ambient fluid: the terminal velocity of the fall depends on the density of the ambient fluid.
- Two-phase flow through porous media. Here, oil percolates through a porous media which is originally saturated with water. Demonstrating the efficiency of the code, this example was simulated in a single afternoon on a desktop computer.
As of this release, we have also decided to discontinue the support for the Python binding of Palabos. While it took huge amounts of work to maintain the binding, its reception has always been biased. Always lagging behind the C++ version with the newest features, the Python binding used to be dropped in favor of C++ even by less experienced programming. By dropping the Python binding, we hope to find additional time to improve the programmer’s interface and documentation of the C++ version.
Another important point of this release is a bug fix in the MPI communication. Palabos used to run into difficulties with certain versions of MPICH (or certain combinations of MPICH and hardware settings). We did our best to fix this issue; any feed-back is appreciated!
To end this message, let me announce (with some delay) that the winner of the Palabos 2012 challenge has been nominated by the jury to be Maciej Matyka. You can find his contribution under the following link. Maciej demonstrates with his work that he has understood the spirit of the challenge, by simply taking Palabos with its current abilities and wrap it up in an interesting application. The visualization and presentation of the results were pointed out to be among the greatest aspects of his contribution. Maciej has won a prize money of 1000 Euros, and we wish him all the best for the future.
Cheers,
Jonas