Bonded particles colliding with an obstacle

In this tutorial we insert 4 bonded particles that consist of 3 spheres each. Two of the particles are inserted with a specified orientation and a velocity of 1 m/s, the other two particles are inserted with random orientation and a velocity of 0.5 m/s. The particles are brought to collision with a cuboid obstacle. In addition to the particle-properties also the force network is written to the output files for a visualization in Paraview:

_images/result_particle_vel.png _images/result_force.png

Name of the case: Project_Bonded_Particles

Setting up the simulation

As a first step, the particle shape, the used material and the simulation domain are defined in the General Settings tab. Please note that in case of multiple dependent simulations, the dimensions of the simulation domain can only be defined in the first simulation. This means that the box forming the simulation domain has to be chosen big enough from the beginning.

General settings

In this simulation we set particles of particle shape bonded:

_images/01_particle_shape5.png

A single materials command with the name material1 is used:

_images/01_materials5.png

The simulation domain with x dimensions ranging from -0.25 to 0.25 and y and z dimensions ranging from -0.15 to 0.15 is created:

_images/01_simulation_domain6.png

Meshes and regions

We use a box-shaped mesh for the obstacle, which we insert via the mesh command command:

_images/02_mesh2.png

For particle insertion a block-shaped region is defined:

_images/02_region.png

Physics models

The contact models are now defined. For the particles we use the normal contact model hertz, the tangential model history and the cohesion model bond:

_images/03_particle_contact_model6.png

Since we added a mesh in the previous section, a wall contact model is also added automatically to this section. We use the normal contact model hertz and the tangential model history:

_images/03_wall_contact_model6.png

The default gravity command is removed from the simulation setup.

Particles

In the general settings tab we only defined a single material type (default), whose settings have to be specified here:

_images/04_material_properties4.png

Please note that the list of properties contains more entries than acutally required for the bond model in the used configuration. Other configurations that can be defined via adding keywords in the settings section require more input. Please set the values for the unnecessary parameters to zero (they will simply be ignored). Please have a look at the bond model documentation for more information.

Before generating a new particle template, we generate the particle with the aid of the multisphere builder (Tools/MS Builder):

_images/04_ms_builder1.png

The generated particle file is used for a particle template of style bonded:

_images/04_particle_template2.png

In the next step the particle distribution is generated:

_images/04_particle_distribution6.png

Now two insertion commands are added. In both cases an insertion command of type rate_in_region is used. The properties for the two commands are listed in this table:

insertion 1

insertion 2

mode

rate_in_region

rate_in_region

region

factory

factory

insertion_every_time

0.005

0.005

particlerate

4000

4000

target_particle_count

2

2

monte_carlo_steps

1000000

1000000

particle_distribution

p2

p2

velocity

constant (1,0,0)

constant (0.5,0,0)

insertion_attempts

10

10

start_time

0.00005

all_in

no

no

orientation

constant (0.70711, 0, 0.70711, 0)

random

These screenshots show the orientation entry for the first insertion command as well as the entire second insertion command:

_images/04_particle_insertion_orientation.png _images/04_particle_insertion4.png

Simulation control

In this tab, we first define the time-step settings such as the desired simulation timestep of 0.00005 seconds and the total simulation time of 1 second. Per default also the check_timestep command command is enabled, which throws a warning when the time step exceeds 10 % of the Rayleigh or the Hertz time. These thresholds can be changed by setting an alternative value for hertz_fraction or rayleigh_fraction.

_images/06_timestep_settings9.png

Output settings

In this tab we first define the timestep width for the file and the terminal output:

_images/07_output_timestep_settings6.png

The output_settings command command the takes care that all particle information and the meshes are written to files accordingly. The option write_particle_contact_network is set to yes, so also the particle-particle contacts plus the according forces can be visualuized:

_images/07_output_settings8.png

Running the simulation

After completing the setup and saving it, the simulation can be launched. Hence, change to the Simulation view. First hit the “Check settings” button, and if the check returns “Check settings successfully completed” the simulation can be run by hitting “Start”. As can be seen in the the kinetic energy graph below, simulation runs for 1 second (20000 time steps):

_images/10_run.png

Postprocessing with Paraview

After the simulation is completed, all data written with the output_settings command can be visualized automatically by going to the Visualization view and hitting the “Start Paraview” button.

The images below show the final state of the simulation briefly after the impact of the second group of particles. The first image shows the particles colored according to their velocity, the second image shows the force network between the particles.

_images/result_particle_vel.png _images/result_force.png