MosGeo / ParticlePack

Simulate the formation of three-dimensional packings of spherical and non-spherical (regular and irregular) particles with prescribed size distributions.
BSD 3-Clause "New" or "Revised" License
66 stars 22 forks source link
geology geophysics grains granular-media packing particles porous-media rock-physics

Particula - Particle Pack Generator

TopImage

The software simulates the formation of three-dimensional packings of spherical and non-spherical (regular and irregular) particles with prescribed size distributions. An efficient approach to create multiple realizations of non-spherical irregularly shaped particles using coherent noise modification of the spherical particle surface is introduced. The simulator generates loose and dense granular packings by shaking. Complex depositional styles (fining upward, coarsening upward, random) are possible. Furthermore, multiple beds can be simulated to produce geologically realistic grading.

Grading

Download and run

You can download and run the software here: Release 1.3

How does it work

Discrete element method is used to pour generated particles into a container. Shaking can be applied to produce denser packs.

Process

Requirements

The compiled software was tested on multiple Windows 10 machines. To compile the source code, Unity3D is required. Version 2020.2 is currently recommended. Hardware requirements depend on the desired number of particles in the packings generated. A typical laptop specification would be suitable for 5000-10000 particles.

Compiling

When compiling using Unity3D make sure that the setting "Auto Load Config File" is turned on in the WorldBuilder object (you can find it in the inspector panel). The compiled version will look automatically for the configuration file name defined in the "Config file name".

Getting started

The compiled version uses a parameter file to define the simulation parameters. It can run on a Windows machine. The source code can be ran inside Unity and the same parameters can be modified in the platform. The source code can be compiled on Windows, Mac, or Linux. Please check the Wiki Page for detailed information.

Post processing

To create a binary image from the output, Matlab code is provided in the "Post Processing" folder. The mesh folder is also saved as an output so it can be directly used as an input for FEM solvers or be processed for 3D printing.

BinaryImage

Are you using this package? Want to provide feedback?

If you are using this package. I would love to hear from you on how you use and what sort of modification that you would like to be seen. You can either create an Issue on Github or send me an email directly at Mustafa.Geoscientist@outlook.com

Referencing

Al Ibrahim, M. A., Kerimov, A., Mukerji, T., and Mavko, G., 2019, Particula: A simulator tool for computational rock physics of granular media: Geophysics, v. 84, no. 3, . F85–F95. Link

Published research studies using Particula

Kerimov, A., Mavko, G., Mukerji, T., Dvorkin, J., and Al Ibrahim, M. A., 2018, The Influence of Convex Particles' Irregular Shape and Varying Size on Porosity, Permeability, and Elastic Bulk Modulus of Granular Porous Media: Insights From Numerical Simulations: JGR Solid Earth, v. 123, no. 12, p. 10,563-10,582. Link

Al Ibrahim, M. A., Kerimov, A., Mukerji, T., and Mavko, G., 2018, Digital rocks with irregularly shaped grains: A simulator tool for computational rock physics: SEG Technical Program Expanded Abstracts 2018. Link

Kerimov, A., Mavko, G., Mukerji, T., and Al Ibrahim, M. A., 2018, Mechanical trapping of particles in granular media: Physical Review E, v. 97, no. 2, 19 p. Link

Acknowledgments

We would like to thank the Stanford Rock Physics & Borehole Geophysics Project, Stanford Center for Reservoir Forecasting, and Saudi Aramco for their support and valuables discussions. We would also like to thank the Dean of School of Earth, Energy, and Environmental Sciences at Stanford University, Prof. Steve Graham, for funding.

Example of Grain Pack