Implementation of simple cubic, body-centered cubic, and face-centered cubic crystalline capillaries¶
We present a module that implements simple cubic (SCC), body-centered cubic (BCC), and face-centered cubic (FCC) crystalline geometries as a utility to create capillaries in the Lattice Boltzmann code Ludwig. The crystalline geometries created are used as porous materials in Lattice Boltzmann simulations.
Purpose of Module¶
The crystalline structures represent various types of porous materials. We can attribute to them wetting properties, via which the solid parts of the geometries interact with the fluid. This module is essential for the studies of various types of flows through such materials. In particular, we focus on flows of binary fluid mixtures, driven by an externally imposed chemical potential gradient, through porous media.
Background Information¶
This module implements the SCC, BCC, and FCC crystalline capillaries in the Ludwig code. The latter, together with its documentation and tutorial is available on the following link: https://github.com/ludwig-cf/ludwig.
Building and Testing¶
The module is run by specifying the name of the output file, the output type, the crystalline type, the size of the
crystalline cell, and the size of the whole system in the file capillary.c
(https://github.com/ludwig-cf/ludwig/blob/master/util/capillary.c). The file is then compiled and run by:
make capillary
./capillary
This generates the output file (e.g. “capillary.001-001”). The thus generated capillary file, together with the desired output data, is then specified in the input file of the simulation. An example of this specification is:
porous_media_format BINARY
porous_media_file capillary
porous_media_type status_with_c_h
The latter line porous_media_type
should match the output type, defined in the capillary.c
file, prior
to its compilation.
Source code¶
The module has been provided as a pull request on Ludwig’s github repository https://github.com/ludwig-cf/ludwig/pull/98.