A simulation of Brownian particles depositing from all sides onto a uniformly reactive cluster. The code can be run in both two and three dimensions.
Initially, the cluster displays a compact circular/spherical structure. However, upon reaching a critical radius, it forms dendritic branches. This transition is illustrated in the figure below.
This kind of dendritic deposition occurs on the anode in next-generation lithium-metal batteries, and the problems it creates represent one of the main barriers to commercializing the technology. The fractal pattern formed by the cluster also appears in many other contexts, including lightning strikes, Hele-Shaw viscous fingering, and even bacterial growth!
For more information, see:
Jacobson, D. & Miller III, T. F. Compact-to-Dendritic Transition in the Reactive Deposition of Brownian Particles. arXiv:2204.01173 [cond-mat] (2022).
First generate a config file for Make starting from example_config.mk
:
cp example_config.mk config.mk
Change BOOST_PATH
and EIGEN_INC_PATH
in config.mk
to point to your installations of Boost and Eigen.
Create the build directories:
mkdir obj2d obj3d bin
And compile with:
make
This will generete two executables, bin/ga_simulation_2d
for running two-dimensional simulations and bin/ga_simulation_3d
for running three-dimensional simulations.
Finally, modify the params.txt
file to specify physical system you would like to simulate. You can now run with:
./bin/ga_simulation_2d
After, the simulation finishes, it will output a frame_NNN.xyz
file (where NNN
is the number of particles) that lists the positions off all the particles in the cluster. This file can be vizualized with Ovito.