Collaborative behavior of intruders moving amid grains
These files contain an example of the configuration required to run and analyze a numerical simulation of the motion of a set of intruders within a two-dimensional granular system. The simulation is performed using the DEM open source software LIGGGHTS. Specifically, we use version 3.1.0 combined with the DESIgn toolbox (Agnieszka Herman, Geosci. Model Dev., doi:10.5194/gmd-9-1219-2016), which allows us to perform two-dimensional simulations considering cylindrical particles. The data set contains an example case of the initialization of the system, the actual simulation of the motion of the intruders, Octave and Matlab codes for post-processing the results, a code implemented in the DESIgn toolbox to insert basal friction effects in the simulations, and some videos of the actual simulations.
Steps to reproduce
1 - Basal friction) Folder 1 contains modified ".cpp" and ".h" files from the DESIgn code to include the effect of static and dynamic friction. The code should be added to the LIGGGHTS/src folder and compiled together with the DESIgn toolbox in LIGGGHTS 3.1.0. For instructions and details regarding DESIgn, please see https://herman.ocean.ug.edu.pl/LIGGGHTSseaice.html. 2 - Initialization) Folder 2 contains two simulation examples to initialize the random particle distribution inside the domain (for both the configurations with two or three intruders). The simulation works like this: First, the user must run the "Random_PositionGenerator.m" octave code (using a specific "InputData.m") to randomly distribute the particles in a larger domain. This code will generate a "Initialization_Position.init" file, which needs to be inserted in the /DEM/init/ folder. Then, the user can adjust the LIGGGHTS script "in.liggghts_init" and run the "allrun" executable. This initialization will create a restart file on the DEM/res/restart folder that will then be used to simulate the intruder movement. NOTE: The user must create a symbolic link for the LIGGGHTS executable named liggghts310 to run the allrun code. This simulation shrinks the domain into a user-specified domain size to compact the particles. An example of the results are saved in the /DEM/res folder, and can be checked using the Ovito software. 3 - Intruder_motion) Folder 3 contains the setup of the main simulations (constant velocity or constant applied force). To start the simulation the user must perform step 2 of these steps. After running the initialization, the user must copy the restart file called "liggghts.restart" on the /DEM/res/restart folder of the main simulation. Then, the user must adjust the script file "in.liggghts_init_restart" according to its own interests. The simulation can be initialized by running the "allrun" executable. The first time-steps results of the simulation are shown in the DEM/res folder, and can be checked using the Ovito software. The simulation will also deliver the results for contact forces (see DEM/res_force). 4 - Codes) Folder 4 contains the Matlab/Octave codes to analyze the results from the simulation in step 3. The code loops over the output files extracting the details of each particle and saving them on a final matrix. The codes will analyze: anisotropy levels in a global and regional space; separate strong and weak networks based on a average contact force; magnitude and average values of force and velocities. Each code is separated according to its specific functionality. 5 - Videos) Folder 5 contains videos of the motion of the intruders for all final configurations observed in our simulations. A video of the weak and strong contact networks for a single case can also be visualized.