A free C++/Python discrete Element workbench

Learn more

About this project

Welcome to GranOO, a robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method (DEM) distributed under the free GPLv3 license.

What is GranOO ?

GranOO is not a software, GranOO is a collection of C++ libraries and tools that help users for building a specific DEM simulation. Python bindings have been recently released to improve user experience.

Modularity

GranOO is modular ! You can build your own simulation by plugin specific treatments in any order. This design is perfectly adapted to conduct high level simulations for research activities with DEM.

Freedom

GranOO is licensed under the GPLv3 license. It means that it is free... absolutely free ! You can redistribute it and/or modify its sources under the terms of the GNU General Public License.
Visit our gallery for getting a quick overview !

Quick tour

Main features

GranOO is a dynamic explicit DEM code specialized in modeling continuous materials with high amount of discontinuities. GranOO embeds mechanical, thermal and electrical models in order to perform multi-physic simulation. GranOO can also be used for granular simulation with arbitrary shapes and state-of-art contact detection processing.

Application field

GranOO implements regular contact laws, different kind of joints (for continuous modeling) and several explicit time schemes. This configuration is well adapted to solve multi-physical discontinuous dynamic problems like wear, multi-fracturation, impact

How using GranOO ?

GranOO does not make any assumption on your simulation. Each family of simulation requires to build a kind of application. In this process, you can both use Python or C++. For beginners, we recommend Python. You can deploy your simulation and set it through easy-to-read XML input files that describe the main steps of your simulation.

Prerequisites

GranOO is not a commercial software. We are a small developer team and we do not have any time for developing nice and smart graphical interfaces. We choose to focus on the essential : models and physics. Since the 2.0 version, GranOO can use python as an easy interface language. So if you are ready to program with Python or C++, GranOO may be yours !


A simple example

The different simulation steps are described through C++ or Python plugins. GranOO embeds a huge collection of plugins that you can reuse at your convenience. However, if your simulation requires specific treatments, you can write your own plugins. This is easy, you just have to follow and fill the provided template files.

The example below shows the XML input file related to the granular rain example.

<GranOO TotIteration="20000" TimeStep="2e-5" OutDir="Results"/>
	    
 <PreProcessing>
  <PlugIn Id="_NewSupportShape" Type="Box" DimX="1." DimY="0.25" DimZ="1."/>
 </PreProcessing>
	    
 <Processing>  <!-- The time loop -->
  <PlugIn Id="AddElement"/>
  <PlugIn Id="_ClearLoad"/>
  <PlugIn Id="_ApplyGravity" X="0." Y="-10." Z="0."/>
  <PlugIn Id="_ManageCollision" Between="DiscreteElement/SupportShape"  ...some options here.../>
  <PlugIn Id="_ManageCollision" Between="DiscreteElement/DiscreteElement"  ..some options here.../>
  <PlugIn Id="_IntegrateAcceleration" Linear="Yes" Angular="Yes"/>
 </Processing>
	    
</GranOO>

Ready-to-start ?

Please visit our installation instructions in order to install GranOO or go below to get a list of rigorous scientific productions related to this project.

Scientific production

Articles

C. Hubert, Y. El Attaoui, N. Leconte and F. Massa (2024)
A coupled finite element-discrete element method for the modelling of brake squeal instabilities
European Journal of Mechanics-A/Solids, 108, 105427
https://doi.org/10.1016/j.euromechsol.2024.105427

F. Yahya, C. Hubert, N. Leconte and L. Dubar (2024)
A FEM/DEM adaptive remeshing strategy for brittle elastic failure initiation and propagation
International Journal for Numerical Methods in Engineering, e7503
https://doi.org/10.1002/nme.7503

H. Ranganathan, D. André, M. Huger, R. Soth and C. Wöhrmeyer (2024)
Discrete element modeling deepens understanding of microcracking phenomena in refractory materials
American Ceramic Society Bulletin, 103(2), 26-30
https://ceramics.org/wp-content/bulletin/2024/articles/F-Ranganathan_mar24.pdf

M. Dosta, D. Andre, V. Angelidakis, R.A. Caulk, M.A. Celigueta, B. Chareyre, J.-F. Dietiker, J. Girardot, N. Govender, C. Hubert, R. Kobyłka, A.F. Moura, V. Skorych, D.K. Weatherley, T. Weinhart (2023)
Comparing open-source DEM frameworks for simulations of common bulk processes
Computer Physics Communications, 296, 109066
https://doi.org/10.1016/j.cpc.2023.109066

T. Pazmiño, I. Pombo, J. Girardot, L. Godino and J. A. Sánchez (2023)
Multiscale simulation of volumetric wear of vitrified alumina grinding wheels
Wear, 530, 205020
https://doi.org/10.1016/j.wear.2023.205020

V. Longchamp, J. Girardot, D. André, F. Malaise, P. Carles and I. Iordanoff (2023)
Discrete 3D modeling of porous-cracked ceramic at the microstructure scale
Journal of the European Ceramic Society, 44(4), 2522-2536
https://doi.org/10.1016/j.jeurceramsoc.2023.11.026

D. André and M.A. Celigueta (2023)
A DEM bonded particle model compatible with stress/strain constitutive relations
International Journal of Rock Mechanics and Mining Sciences, 170, 105437
https://doi.org/10.1016/j.ijrmms.2023.105437

M. Sage, J. Girardot, J. B. Kopp, S. Morel (2022)
A damaging beam-lattice model for quasi-brittle fracture
International Journal of Solids and Structures, 239, 111404
https://doi.org/10.1016/j.ijsolstr.2021.111404

K. Marchais, J. Girardot, C. Metton, I. Iordanoff (2021)
A 3D DEM simulation to study the influence of material and process parameters on spreading of metallic powder in additive manufacturing
Computational particle mechanics, 8(4), 943-953
https://doi.org/10.1007/s40571-020-00380-z

J. Girardot, E. Prulière (2021)
Elastic calibration of a discrete domain using a proper generalized decomposition
Computational Particle Mechanics, 8, 993-1000
https://doi.org/10.1007/s40571-020-00385-8

L. Godino, I. Pombo, J. Girardot, J. A. Sanchez, I. Iordanoff (2020)
Modelling the wear evolution of a single alumina abrasive grain: Analyzing the influence of crystalline structure
Journal of Materials Processing Technology, 277, 116464
https://doi.org/10.1016/j.jmatprotec.2019.116464

A. Ratsimba, A. Zerrouki, N. Tessier-Doyen, B. Nait-Ali, D. André, P. Duport, A. Neveu, N. Tripathi, F/ Francqui, F. Delaizir (2020)
Densification behaviour and three-dimensional printing of Y2O3 ceramic powder by selective laser sintering
Ceramics International, 47(6), 7465-7474
https://doi.org/10.1016/j.ceramint.2020.11.087

J. Lemesle, C. Hubert, M. Bigerelle (2020)
Numerical Study of the Toughness of Complex Metal Matrix Composite Topologies
Applied Sciences, 10(18), 6250
https://doi.org/10.3390/app10186250

M. H. Moreira, T. M. Cunha, M. G. G. Campos, M. F. Santos, T. Santos Jr, D. André, V. C. Pandolfelli (2020)
Discrete element modeling—A promising method for refractory microstructure design
American Ceramic Society Bulletin, 99, 22-28
https://ceramics.org/wp-content/uploads/2020/02/March-2020_Feature.pdf

Nguyen, V.D.X., Tieu, A.K., André, D. et al (2019).
Discrete element method using cohesive plastic beam for modeling elasto-plastic deformation of ductile materials
Computational Particle Mechanics, 8, 437-457
https://doi.org/10.1007/s40571-020-00343-4

D. André, J. Girardot, C. Hubert (2019).
A novel DEM approach for modeling brittle elastic media based on distinct lattice spring model
Computer Methods in Applied Mechanics and Engineering, 350, 100-122
https://doi.org/10.1016/j.cma.2019.03.013

T. T. Nguyen, D. André, M. Huger (2019).
Analytic laws for direct calibration of discrete element modeling of brittle elastic media using cohesive beam model
Computational Particle Mechanics, 6(3), 393-409
https://doi.org/10.1007/s40571-018-00221-0

R. Curti, S. Girardon, G. Pot, P. Lorong (2018).
How to model orthotropic materials by the discrete element method (DEM): random sphere packing or regular cubic arrangement ?
Computational Particle Mechanics, 6, 145-155
https://doi.org/10.1007/s40571-018-0202-y

A. Coré, J. B. Kopp, J. Girardot, P. Viot (2018)
Dynamic energy release rate evaluation of rapid crack propagation in discrete element analysis
International Journal of Fracture, 214(1), 17-28
https://doi.org/10.1007/s10704-018-0314-7

del Sorbo, P., Girardot, J., Dau, F., & Iordanoff, I. (2018)
Numerical investigations on a yarn structure at the microscale towards scale transition
Composite Structures, 183, 489-498
https://doi.org/10.1016/j.compstruct.2017.05.018

Jebahi, M., Dau, F., Iordanoff, I., & Guin, J. P. (2017)
Virial stress–based model to simulate the silica glass densification with the discrete element method
International Journal for Numerical Methods in Engineering, 112(13), 1909-1925
https://doi.org/10.1002/nme.5589

D. André, B. Levraut, N. Tessier-Doyen, M. Huger, (2017)
A discrete element thermo-mechanical modelling of diffuse damage induced by thermal expansion mismatch of two-phase materials
Computer Methods in Applied Mechanics and Engineering, 318, 898-916
https://doi.org/10.1016/j.cma.2017.01.029

C. Hubert, D. André, L. Dubar, I. Iordanoff, J.L. Charles, (2017)
Simulation of continuum electrical conduction and Joule heating using DEM domains
International Journal for Numerical Methods in Engineering, 110, Issue 9, pp. 862-877 (2017)
https://doi.org/10.1002/nme.5435

J. Girardot, F. Dau (2016)
A mesoscopic model using the discrete element method for impacts on dry fabrics
Matériaux & Techniques, 104(4), 408., 2016
https://doi.org/10.1051/mattech/2016022

Jebahi, M., Dau, F., Charles, J. L., & Iordanoff, I. (2016).
Multiscale modeling of complex dynamic problems: an overview and recent developments
Archives of Computational Methods in Engineering, 23(1), 101-138, 2016
https://doi.org/10.1007/s11831-014-9136-6

L. Maheo, F. Dau, D. André, J.L. Charles, I. Iordanoff, (2015)
A promising way to model cracks in composite using Discrete Element Method
Composites Part B: Engineering, Vol. 71, pp. 193-202, 2015
https://doi.org/10.1016/j.compositesb.2014.11.032

André D., Charles J.L., Iordanoff I., Néauport J., (2014)
The GranOO workbench, a new tool for developing discrete element simulations and its application to tribological problems
Advances in Engineering Software, Vol. 74, pp. 40-48, 2014
https://doi.org/10.1016/j.advengsoft.2014.04.003

Goupil A., Iordanoff I., Charles J.L., Rinchet A., (2013)
Modelling of Polishing Tools for High Spatial Frequency Defect Correction on Aspherical Surfaces
Key Engineering Materials, Vol. 554-557, pp. 1232-1241, 2013
https://doi.org/10.4028/www.scientific.net/KEM.554-557.1232

Jebahi M., Charles J.L., Dau F., Illoul L., Iordanoff I., (2013)
3D coupling approach between discrete and continuum models for dynamic simulations (DEM–CNEM)
Computer Methods in Applied Mechanics and Engineering, Vol. 255, pp. 196-209, 2013
https://doi.org/10.1016/j.cma.2012.11.021

Terreros I., Iordanoff I., Charles J.L., (2013)
Simulation of continuum heat conduction using DEM domains
Computational Materials Science, Vol. 69, pp. 46-52, 2013
https://doi.org/10.1016/j.commatsci.2012.11.021

Pennec F., Alzina A., Tessier-Doyen N., Naït-ali B., Mati-Baouche N., De Baynast H., Smith D.S., (2013)
A combined finite-discrete element method for calculating the effective thermal conductivity of bio-aggregates based materials
International Journal of Heat and Mass Transfer, Vol. 60, pp. 274-283, 2013
https://doi.org/10.1016/j.ijheatmasstransfer.2013.01.002

Jebahi M., André D., Dau F., Charles J.L., Iordanoff I., (2013)
Simulation of Vickers indentation of silica glass
Journal of Non-Crystalline Solids, Vol. 378, pp. 15-24, 2013
https://doi.org/10.1016/j.jnoncrysol.2013.06.007

André D., Jebahi M., Iordanoff I., Charles J.L., Néauport J., (2013)
Using the discrete element method to simulate brittle fracture in the indentation of a silica glass with a blunt indenter
Computer Methods in Applied Mechanics and Engineering, Vol. 265, pp. 136-147, 2013
https://doi.org/10.1016/j.cma.2013.06.008

André D., Iordanoff I., Charles J.L., Néauport J., (2012)
Discrete element method to simulate continuous material by using the cohesive beam model
Computer Methods in Applied Mechanics and Engineering, Vol. 213-216, pp. 113-125, 2012
https://doi.org/10.1016/j.cma.2011.12.002

Duplessis-Kergomard Y., Dau F., Iordanoff I., (2011)
Implementation of a Discrete Element Method for the space-time modeling of loading in the case of a soft shock: qualitative approach
International Journal of Computations and Modelling, vol.1, no.2, 39-72, 2011
hal-01069760

Books

Mohamed Jebahi, Damien André, Inigo Terreros, Ivan Iordanoff, (2015)
Discrete Element Method to Model 3D Continuous Materials
ISTE, Wiley, Numerical Methods in engineering series
DOI:10.1002/9781119103042

Mohamed Jebahi, Frédéric Dau, Jean-Luc Charles, Ivan Iordanoff, (2015)
Discrete-Continuum Coupling Method to Simulate Highly Dynamic Multi-Scale Problems
ISTE, Wiley, Numerical Methods in engineering series
DOI:10.1002/9781119115274

Damien André, Jean-Luc Charles, Ivan Iordanoff, (2015)
3D Discrete Element Workbench for Highly Dynamic Thermo-Mechanical Analysis : GranOO
ISTE, Wiley, Numerical Methods in engineering series
DOI:10.1002/9781119116356

Team

Damien André, Jean-luc Charles, Jérémie Girardot, Cédric Hubert, Ivan Iordanoff, Iñigo Terreros, Harikeshava Ranganathan and a lot of contributors !

Contact

To contact us please send an email to team@granoo.org