Skip to content

Example 5 : Particle Packing in Circle (Two dimensional)

Shahab Golshan edited this page Jul 22, 2021 · 7 revisions

In this example a two-dimensional discrete element method simulation of particle packing in a circle geometry is performed. Total simulation time is equal to 1 s, while time-step, log frequency and output frequency are set equal to 0.000001, 1000 and 1000, respectively:


# --------------------------------------------------
# Simulation and IO Control
#---------------------------------------------------
subsection simulation control
  set time step                 			 = 1e-6
  set time end       					 = 1
  set log frequency				         = 10000
  set output frequency            			 = 10000
end

In the model parameters section, particle-particle and particle-wall broad and fine search frequencies are defined. The contact detection method is dynamic. We also define the particle contact search size (neighborhood threshold), contact forces and integration methods:


# --------------------------------------------------
# Model parameters
#---------------------------------------------------
subsection model parameters
  set contact detection method 		   		 = dynamic
  set dynamic contact search size coefficient            = 0.7
  set neighborhood threshold				 = 1.5
  set particle particle contact force method             = pp_nonlinear
  set particle wall contact force method                 = pw_nonlinear
  set integration method				 = velocity_verlet
end

In the physical properties section, the physical properties of particles and walls, including diameter and density of particles, Young's modulus, Poisson's ratios, restitution coefficients, friction and rolling frictions of particle and wall are chosen. The gravitational acceleration is also set in this section:


#---------------------------------------------------
# Physical Properties
#---------------------------------------------------
subsection physical properties
    set gx            		 			= 0.0
    set gy            		 			= -9.81
    set number of particle types	                = 1
    	subsection particle type 0
		set size distribution type		= uniform
    		set diameter            	 	= 0.005
		set number				= 150
    		set density particles  	 		= 2000
    		set young modulus particles         	= 100000000
    		set poisson ratio particles          	= 0.3
    		set restitution coefficient particles	= 0.9
    		set friction coefficient particles      = 0.05
    		set rolling friction particles         	= 0.1
	end
    set young modulus wall            			= 100000000
    set poisson ratio wall            			= 0.3
    set restitution coefficient wall           		= 0.9
    set friction coefficient wall         		= 0.05
    set rolling friction wall     
end

Next, we define the insertion properties, which are insertion method, inserted number of particles at each insertion step, insertion frequency, insertion domain and other information regarding the initial positions of particles inside the insertion domain:


#---------------------------------------------------
# Insertion Info
#---------------------------------------------------
subsection insertion info
    set insertion method				= non_uniform
    set inserted number of particles at each time step  = 50
    set insertion frequency            		 	= 200000
    set insertion box minimum x            	 	= -0.05
    set insertion box minimum y            	        = -0.05
    set insertion box maximum x            	        = 0.05
    set insertion box maximum y           	 	= 0.05
    set insertion distance threshold			= 2
    set insertion random number range			= 0.75
    set insertion random number seed			= 19
end

Finally, the triangulation information, which defines the geometry of the simulated system are defined. The radius of the packing domain circle in this case is equal to 0.1 m:


#---------------------------------------------------
# Mesh
#---------------------------------------------------
subsection mesh
    set type                 				= dealii
    set grid type      	     				= hyper_ball
    set grid arguments       				= 0.0, 0.0 : 0.1 : false
    set initial refinement   				= 3
end

This example should be solved using dem_2d solver. The particle are packed inside the defined circle: