This manual is aimed to give detailed explanations on all sections in the D-DEMPack problem type. For a more practical review, the user is encouraged to check the D-DEMPack Tutorials page.
If you did not install GiD or D-DEMPack yet, follow the installation instructions here: D-DEMPack installation
Once you have finished the installation, open GiD and load the D-DEMPack Problemtype by clicking:
Data -> D-DEMPack
Note that a toolbar with 7 buttons has been added to the left side of the GiD working window. This toolbar is called "Model definition toolbar".
The Model Definition Toolbar
The buttons in the Model definition toolbar do the following actions:
- Button 1 - Link to the GiD Groups Management Window
- Button 2 - Model Definition Tree
- Button 3 - Materials Tree
- Button 4 - Running Processes Management Window
- Button 5 - Run this case
- Button 6 - Show information about how this case is running
- Button 7 - Stop this case
If you experience problems with this toolbar not appearing, deactivate and reactivate it from the GiD utilities:
Utilities -> Tools -> Toolbars
Scroll down to Model Definition Toolbar, hide it and show it. Make sure you choose your favourite position in the GiD Window for this toolbar (Left, Up, Right or Down).
The GiD philosophy
GiD is a Pre and Post Processor, it is not an actual CAD tool. However, it can be used to draw geometries and mesh them. For complicated geometries, we recommend using a CAD tool and importing them into GiD for meshing (or import mesh and apply conditions directly). In case of drawing geometries with GiD, one must be aware that it uses a Hierarchical Structure: Volumes are created with a set of watertight Surfaces, Surfaces are created with a set of watertight Lines and Lines are created starting and ending in Points. If there are no Points, a Line cannot be created, and the same dependence holds for all levels. For more information about how to use GiD, visit GiD's home page or follow some tutorials
The Kratos philosophy
The way Kratos applies materials and conditions to the geometry or the mesh is using the Groups. A Group is a set of entities (either in Geometry or in Mesh). A Group can contain any Volume, Surface, Line, Point, Element or Node, no matter whether it is already belonging to other Groups.
The D-DEMPack philosophy
Since DEMPack is based in Kratos and programmed for GiD, it inherits the philosophy of both. The Groups will be the essential tool for assigning materials and conditions.
OPTION 1: Use the Groups Management Window to create Groups and move entities into the corresponding Groups. Go to the Model Definition Tree, fill in all the fields and assign conditions to existing Groups (the ones you just created).
OPTION 2: Fill in all the fields of the Model Definition Tree and when asked for any Group to assign the condition to, use the button for automatic creation of Groups (included in the mini window for condition assignation)
Drawing a Geometry
The first step that an analyst must do is to draw a Geometry. It will contain Volumes, Surfaces, Lines and Points.
A list of important recommendations and clarifications follows:
- All those walls that must not be crossed by the discrete elements must be surfaces.
- Volumes are susceptible to be filled by spheres at the Meshing stage.
- Inlets are usually Surfaces, but they can also be Points, Lines and Volumes.
Working with a Mesh
If desired, GiD will mesh the Geometry and will convert Points into Nodes, Lines into Linear Elements, Surfaces into Triangles and Volumes into Spheres. The common size of the mesh must be specified when prompted (when GiD is about to mesh), or different sizes depending on the entities, which can be assigned at any time through the 'Mesh' menu in GiD.
A list of important recommendations and clarifications follows:
- Do not specify Quadrilateral Elements or Quadratic Elements for any entity in the meshing options. They are not supported by D-DEMPack. This option will be removed in the next DEMPack version.
- For any volume that must be filled with packed spheres (Discrete Elements) make sure that you specify Element Type->Sphere in the meshing options.
- All volumes meshed with spheres will lose their Surfaces unless those surfaces are part of DEMFEM wall group.
Model Definition Tree
The Model Definition Tree contains all the options that must be filled in order to run a DEM computation.
Some of the options are edited directly on the Tree, while others (like the assignation of conditions to Groups) open a Mini Window to create new branches of the Tree. No matter what options are chosen in the Mini Window when you click OK, the data will be still editable on the new Tree branch.
A contextual help is available on the tree itself. Stop the mouse on any value, label or branch of the tree and some brief help will be displayed.
Double click on this item and a Mini Window will open at the bottom. Assign it to an existing Group (or create the Group on-the-go). This section has the following fields:
- Activate: Use this to activate or deactivate this group.
- Material: Double-click to choose the material for the group.
- Use Advanced Meshing Features: Set this option to Yes to have access to other meshing criteria other than the default random DEM meshers.
- Advanced Meshing Features Algorithm Type: Here the user can choose between FEMtoDEM and 2Dto3D. The former algorithm uses a original FEM mesh as an starting point to obtain a mesh of spheres, while the latter transforms a random mesh of circles into spheres. For a more detailed explanation of the use of both meshing methodologies, feel free to check D-DEMPack Tutorial 3: DEM Meshers. The 2Dto3D does not need any additional parameters, while when choosing the FEMtoDEM method, the following fields will show up:
- FEM to DEM criterion type: Here three different criteria can be chosen: Node Based, Element Centroid Based or Both. The first one takes an initial FEM mesh, puts spheres of the desired sizes in each node of the mesh and deletes the initial mesh. The second method does the same process, in this case using the centroids of the FEM mesh elements. Finally, the third criterion does both things.
- Diameter: Here the user can enter the desired average size of the spheres in the mesh.
- Probability Distribution: There are two distribution available: Normal and Logarithmic.
- Standard Deviation: Enter the value of the standard deviation for the desired distribution.
It marks a Surface as a Rigid Body which cannot be crossed by the DEM elements. Double click on this item and a Mini Window will open. Choose the options and assign it to a Group containing Surfaces (avoid Groups containing Spheres)
- Inlet It allows the insertion of new DEM elements into the domain. Double click on this item and a Mini Window will open. Every Mesh Node will insert Elements. Mesh Nodes come usually from the meshing of Points, Lines, Surfaces(recommended) or Volumes. Assign this condition to a Group containing a Surface and the inner and boundary Nodes of this Surface will be generating new DEM elements with the parameters chosen.
- Prescribe motion on Elements It allows the imposition and/or restriction of both linear and angular velocities to sets of DEM elements. Double click on this item and a Mini Window will open at the bottom. It will impose or restrict the velocities during a desired interval of time of the Groups of spheres you choose.
- Initial conditions on Elements It allows the imposition of initial values for both linear and angular velocities to the desired sets of DEM elements. Double click on this item and a Mini Window will open at the bottom so you will be able to assign those conditions to the Groups of spheres you choose.
General options that affect the computation.
Creates a Box for the computation and every DEM element that gets outside of this Box is deleted.
- Bounding Box: Choose Active to activate it.
- Bounding Box type: If 'Automatic' is chosen, the Bounding Box will be created taking into account the initial disposition of elements and walls. It will be created containing the existing entities.
- Enlargement factor: only for 'Automatic' Box. Enlarges the Box by a factor.
- Max X: Max corner X coordinate
- Max Y: Max corner Y coordinate
- Max Z: Max corner Z coordinate
- Min X: Min corner X coordinate
- Min Y: Min corner Y coordinate
- Min Z: Min corner Z coordinate
- Start Time: Time to activate the bounding box.
- Stop Time: Time to stop the effect of the bounding box.
- Print Bounding Box: To activate or deactivate the printing of the bounding box.
- Gravity value: Enter the value of the acceleration of Gravity (default value: 9.81 m/s2)
- Gx: X component of the versor of the Gravity. The versor does not have to be necessarily unitary.
- Gy: Y component of the versor of the Gravity. The versor does not have to be necessarily unitary.
- Gz: Z component of the versor of the Gravity. The versor does not have to be necessarily unitary.
- Periodic Domain: Set this field to yes to create a parallepipedic periodic domain defined by the bounding box.
- Clean initial indentations: If activated, initial indentations between spheres and between spheres and walls are eliminated to avoid explosions (reducing the radius of the spheres accordingly)
- Virtual mass coefficient: This coefficient will multiply the mass of the DEM elements when computing their accelerations. It is equivalent of reducing the accelerations of the DEM elements by this factor.
- Calculate rotations: If activated, the DEM elements will rotate. Otherwise, they will only suffer translations. By default rotations are activated.
- Rolling friction: If activated, the rolling friction parameter of the Material will be taken into account. Otherwise, it will be ignored.
Time integration scheme
Choose the desired explicit time integration scheme for the problem. The options are Symplectic Euler, Forward Euler, Taylor Scheme, Newmark Beta Method or Verlet velocity.
- Parallel type: locked to OpenMP (MPI will be available in the future)
- Number of threads: set the number of threads you want to use for this computation. Do not choose more than the available threads on your computer or the computation will be slower.
- Delta time: Specify the time increment for the calculation. Take into account that a Delta Time too big will make the calculation unstable, and a very small Delta Time can slow down the computation a lot.
- Total time:Specify total amount of seconds you want to simulate. The simulation will start at time = 0 seconds and will finish at time = Total time seconds.
- Info screen output: Specify the wall time increment (reality time) between updates on the Info Screen
- Neighbour search frequency: choose how often the neighbours are searched. 1 means every time step, 10 means 1 out of 10 steps. Take into account that searching at every time step can penalize a lot the computation time, but searching with low frequency can lead to inaccurate results.
- Output time step: Specify the time increment between prints. Every print will write down the necessary files to see the results on the Post-Process of GiD.
Print in Post-process
From all the options, choose those that you want to see in Post-process. Keep in mind that activating some of these options can slow down the computation noticeably, by adding function calls and allocating extra memory.
- Force evolution with time: Choose Yes to activate it. It will print a file with the Integral of Forces and Torques on the whole chosen Group.
- Printing delta time: It shows up when activating the previous field. Here the user can set the time increment between printings
- Force integration group: It also only appears when activating the Graphs. Double click on this item and a Mini Window will open. Choose what Groups where you want to integrate the Forces and Torques. A file called '<name_of_the_group>_force_graph.grf' will be printed in the Graphs folder of the GiD project you are working on.
- Compute energy: If activated, this option calculates the kinetic, potential, elastic, frictional and viscodamping energies for all particles, both spheres and clusters.
- Potential Energy Reference Point X: Choose the reference in the X axis.
- Potential Energy Reference Point Y: Choose the reference in the Y axis.
- Potential Energy Reference Point Z: Choose the reference in the Z axis.
Creates a Box inside which several measurements are done: average velocity, entering flux of particles and entering flux of mass.
- Active velocity trap: to active or not this feature.
- Max X: Maximum X corner coordinate
- Max Y: Maximum Y corner coordinate
- Max Z: Maximum Z corner coordinate
- Min X: Minimum X corner coordinate
- Min Y: Minimum Y corner coordinate
- Min Z: Minimum Z corner coordinate
- Printing time step: To adjust the frequency of the printing data.
- Result format: Choose Binary or Ascii. Ascii takes more hard disk space, but is human readable.
Right click on 'DEM' to create a new material.
Materials have the following fields to be filled:
- Density: that of the material, not bulk density
- Young's Modulus: that of the material, not bulk stiffness
- Poisson's Ratio: that of the material, not bulk ratio
- Cohesion: JKR parameter
- Friction angle: Particle friction angle (for Coulomb's friction). The tangent of this angle will be used to evaluate the beginning of slip.
- Coefficient of restitution: Desired quotient of exit velocity over incident velocity for collisions.
- Color: just a color for post-process
- Discontinuous Contact Law: Choose Linear or Hertz. The implementation of the contact laws is based on the models LSD and HMD, compiled and arranged in the paper: C.Thornton, S.J. Cummins, P.W. Cleary, An investigation of the comparative behaviour of alternative contact force models during inelastic collisions. Powder Technology. Volume 233, Pages 30–46, January 2013
- Cohesion Law: The user can choose between two different cohesion laws: JKR and DMT. The first one works better for soft, large adhesive spheres, while the second, on the contrary, is designed for hard, small non-adhesive ones.