Simulation and Analysis of the Static Angle of Repose test

This section provides instructions for running a simulation of the static Angle of Repose (AoR) test via the lifting cylinder method and computing the AoR of the resulting particle heap automatically using the provided files.

Introduction

In order to determine the AoR of the heap, a point cloud is first constructed using particle sphere centers, particle centers of mass, or particle mesh nodes as appropriate. The bed free surface is then determined along different directions using a radial array of circular bins, identifying the highest point (with a maximum global Z coordinate) in each bin and performing a least-squares linear fit to the coordinates of the binned points as shown in Figure 1.
Figure 1. Determination of the Angle of Repose test using a lifting cylinder


Multiple radial measurements are taken around the heap to determine the mean AoR and its standard deviation as shown in Figure 2.
Figure 2. Multiple radial measurements of the AoR


A simulation deck is provided for the common lifting cylinder test shown in Figure 3. However, the analysis methodology is applicable to any conical pile of granular material centred around the global Z axis.
Figure 3. EDEM simulation of the lifting cylinder test


Prerequisites

All the requisite files are located at: <Altair installation folder>\EDEM <version>\examples\Calibration Kits\Static angle of repose.

Using the kit

The simulation deck provided can be run directly in EDEM, and the AoR can be automatically obtained via the Python script provided which uses the EDEMpy library of functions to find all EDEM decks in its folder tree and generate plots and results reports per simulation deck as well as a summary results report for all decks. The analysis settings for the script are defined in the provided text file and listed in Table 1 as follows:
Table 1. Python script settings
Parameter Description
Total simulation time (s) Specifies the simulation time at which the AoR measurements are performed (in seconds). The script will search for the nearest saved Time Step and analyze it. The time should be selected such that the pile is static. Alternatively, you can specify ‘auto’ as a string, in which case the last saved Time Step of the deck is used for the analysis.
Low domain limit (m) Specifies the minimum radius of the domain used for the analysis and designated D1 in Figure 1 (in meters). Alternatively, you can specify ‘auto’ as a string, in which case, a value of 0 meters is used.
High domain limit (m) Specifies the maximum radius of the domain used for the analysis, designated D2 in Figure 1 (in meters). Alternatively, you can specify ‘auto’ as a string, in which case the radius of the Geometry of the base is taken as the high domain limit.
Note: The geometry of the base should be named ‘Base’ for the auto option to work.
Bin size (m) Specifies the radius of the bins used for identifying the pile surface designated D3 in Figure 1. A value of 2-3 times the mean particle diameter can be used in most cases. Alternatively, you can specify ‘auto’ as a string, in which case the bin diameter is estimated from the average neighbor distance in the point cloud.
Number of radial measurements (integer) Specifies the number of equally spaced radial measurements of the AoR around the conical pile (as an integer).
Create results report (yes/no)? Specifies whether individual results reports are written out for every simulation deck and stored in its local folder in .csv format.
Summary report? (yes/no) Specifies whether a summary report is produced with the key results for all simulation decks. The results are written out in the Summary.csv file in the Python script folder.
Plot figures? (yes/no) Specifies whether a plot of the particle bed and surface fits is created per simulation deck and stored its folder in .png format.

A settings text file is required for each folder containing EDEM simulation decks, and the settings are used to post-process all simulation decks in that folder.

The provided Python script can be executed from EDEM Analyst > File > Run EDEMpy Script, or from the command line. To run the script from the command line, you must ensure that EDEMpy is installed in the relevant Python distribution. For more information about installing EDEMpy, see Install EDEMpy.