3D sphere packing

An interesting application of biofilmFoam is modeling bio-clogging in complex 3D media. This test case is based on an open dataset provided by Finney, which features a complex sphere packing. The case can be found in the tutorials/biofilmPimpleFoam/3d-packing/ directory.

A cylinder with a height of 500 voxels and a diameter of 100 voxels was extracted from the binarized 3D image. The detailed extraction procedure is not provided. The constructed mesh, consisting of 1.3 million cells, is available in the constant/polyMesh.tgz compressed file. The mesh is rescaled just before using the solver.

transformPoints -scale 1.89e-6

The flow is imposed from the upper surface, as specified in the 0/U file.

z1
  {
    type flowRateInletVelocity;
    volumetricFlowRate 8.117306788605726e-11; // Re = 1
    value uniform (0 0 0);
    extrapolateProfile yes;
  }

The normalized concentration is specified in the 0/C file.

z1
  {
    type fixedValue;
    value uniform 1;
  }

As with previous tutorials, the number of cells that are inoculated is fixed during pre-processing (see run script) before the resacling of the domain

inoculumGenerator -patch solid -nbcells 5000 -zmin 50 -zmax 450
topoSet
setFields

For interested users, it is worth noting that the number of faces making up a surface can be found in the constant/polyMesh/boundary file. This allows you to deduce the number of cells to be inoculated for the desired percentage.

The Reynolds number is estimated using sphere diameter and porosity. For a Reynolds equals to unity, the figure below illustrates the evolution of biofilm growth to the clogging by step of 24 hours.

biofilmPimpleFoam-tutorial-3d.png


In this configuration, with a mesh of around 1.3 million cells, the scalability of the solver was tested on the CALMIP supercomputing center (under allocation p21016). It is illustrated below (strong scaling)

biofilmPimpleFoam-tutorial-3d-speedup.png