Brought to you by:
Paper

An algorithm for the grain-level modelling of a dry sand particulate system

, , , , and

Published 13 June 2014 © 2014 IOP Publishing Ltd
, , Citation Qin Fang et al 2014 Modelling Simul. Mater. Sci. Eng. 22 055021 DOI 10.1088/0965-0393/22/5/055021

0965-0393/22/5/055021

Abstract

This paper is composed of two parts: the generation of the sand particulate system and insights into the grain-level response under static and dynamic loadings. First, the algorithms for the generation of sand particles are presented, considering the randomness in their shape and distribution. Improvements to the robustness of the algorithms are obtained using controlling parameters. Second, we employ the take-and-place algorithm, placing sand grains into the specimen and checking how they overlap to form the initial model. In order to improve the porosity of the specimen, we develop the compaction algorithm: self-compaction by gravity and artificial compaction by mechanical vibration and pressure. The steps for the generation of a finite element grid are also introduced. Third, the grain-level configurations of the dry sand particulate system (aspects such as porosity, friction and contact) are taken into account in modelling. Results show that the grain-level responses of grains, i.e. deformation, fracture and damage of sand grains, impose significant effects on the mechanical behavior of dry sand under static and dynamic loadings.

Export citation and abstract BibTeX RIS

Notations

ψicontrolling parameters (i = 1,7)
Q0algorithm for generating random numbers
Q1algorithm for generating a random quadrilateral
Q2algorithm for generating a random convex polyhedron
Q3algorithm for take-and-place
Q4algorithm for random rotation
Q5algorithm for limited moving
Q6algorithm for compaction
Ssdthe size of sand grain
Sivertices of sand grain (i = 1, n)
Liedge length of sand grain (i = 1, n)
βiinternal angle of random quadrilateral (i = 1, 4)
O'center point of sand grain
[B]boundary condition
RNi×jrandom numbers matrix
RPrandom points matrix
SSmatrix of grain vertex coordinates
O()time complexity of algorithm
Gr−Link()link list array of grid

1. Introduction

Dry sand is a kind of granular matter. It is different from such materials as rock, concrete and brick. Research [110] has revealed that the mechanical behavior of dry sand is influenced by such aspects as the grain shape, size, porosity and friction coefficients. Varieties in shape, from smooth ellipsoid to sharply crushed gravel [1, 6, 7, 9], originate from geologic conditions and complex environments. To the best of our knowledge, most sand grains are convex polyhedrons in shape [7].

In the past few decades, significant developments have been made in the mechanics of granular materials. However, the response of dry sand under complex loadings is still not well understood for such features as shear dilatancy, rate-dependency, non-coaxiality and particle crushing [8, 1012]. Furthermore, heterogeneity makes it more difficult to predict the mechanical behavior using traditional approaches. For example, continuum-based approaches are incapable of capturing the grain-level response (such as fracture, deformation and friction of individual sand grains). Tests have revealed that the grain-level configurations (i.e. porosity, grain size and friction) affect the macroscopic performance of dry sand significantly [8, 10].

As an alternative to continuum level research, grain-level approaches considering grain level response have been developed in recent years. Borg and Vogler [5] used the hydrocode CTH and Dwivedi et al [13] developed the program ISP-SAND, respectively, to simulate the grain level response of sand using grain-level models. They found that the results are greatly affected by the grain-level configurations of sand (such as particle size, porosity, drag coefficients, granular contact). For simplicity, disks and spheres are employed to model sand grains. Obviously, the deficiency of these models is the lack of the tracking of material interface and grain deformation. Cundall and Strack [14] presented the discrete element method (DEM) to study the discontinuous fields. The problems resolved by DEM vary from two-dimensional to three-dimensional (3D) [15] (such as industrial powders, pharmaceuticals, soils and sand). Sand grains are often assumed to be a rigid body in DEM.

Non-spherical particles have also been employed in research [16, 17]. However, tests [1820] have revealed that the grain level behavior (such as collisions, friction, deformation and fragmentation) happens continuously. It needs to realistically take into account the grain-level configurations. Apparently, the grain shape should also be considered.

To gain an insight into the grain-level response of dry sand, i.e. the friction and the deformation of sand grains, it is necessary to develop a reliable analysis approach. Therefore, the generation of a grain-level model is a necessary precursor for the numerical simulations. Much effort has been put into the preparation of the model. Zhao et al [21] presented a particle library of the polyhedron to generate particles. Tan and Wu [22] developed three solutions to minimize the total cost by cutting a given convex polyhedron out of a sphere. Vigo et al [23] used a simple input algorithm for the extraction of polygons and polyhedron boundary representation. Stein et al [24] used novel algorithms for computing the convex hull of a set of 3D points in parallel on the graphic processing unit. Feng and Owen [25] and Han et al [26] proposed super-quadrics methods to study the contact algorithm. Joe [27] used the vertex-to-face contact searching algorithm for 3D analysis. Boon et al [28] proposed a new contact detection algorithm between 3D non-spherical particles. Xu and Chen [29] employed a contact detection algorithm of ellipsoidal particles to study poly-dispersed particles. The advancing front technique [3032], 3D Delaunay meshing [27, 3335] and other techniques are presented for the generation of a 3D grid for an arbitrarily shaped solid. These methods contribute to the improvements in the research on the granular material model. For larger numbers of sand grains, model preparation is highly time consuming even with the help of powerful super-computers. The computational complexity of a loose and packed system of sand is magnified when considering the randomness in particle shape. Therefore, an algorithm considering the grain-level characteristics of dry sand is desirable in the modelling of the sand particulate system. Finite element (FE) code has richer nonlinear material models when compared with DEM [40]. We combine the DEM and FE method (FEM) in model preparation and nonlinear mechanical analysis in our manuscript.

This paper presents a series of algorithms to generate the 3D sand particulate system and investigate the grain-level response under static and dynamic loadings. The proposed algorithms are composed of three parts: sand grains generation, initial model generation and compaction. The sand grains are assumed to be random in shape and distribution, in accordance with test observations. We employ the controlling parameters, ψi(i = 1, 7), to improve the robustness of the algorithms in the generation of sand grains. In the application, we use the model to simulate the mechanical behavior considering the grain-level configurations of dry sand (such as porosity, friction, and fracture criterion). Results show that the grain-level response (grains deformation, fracture and damage) could be realistically studied using the model.

2. Generation of the sand particle system

2.1. Algorithm for the generation of random numbers, Q0

In general, the recursive formula xn+1 = R(x1, x2, ..., xn) is commonly used to generate random numbers, in which R is a recursive function. According to the initial value (x1, x2,..., xn), the new random number xn+1 is derived. Obviously, the characteristic of this algorithm is that the random number sequence {xn+1} is determined by the initial value (x1, x2,..., xn) and the recursive function R. Therefore, the random number sequence {xn+1} cannot meet the requirements of randomness and independence. The other characteristic of this algorithm is that when the sample of random numbers is large enough, the same random number sequence {xn+1} may be obtained. Therefore, {xn+1} is called a pseudo-random number. When the sample of random numbers is small, the pseudo-random number can meet the randomness completely.

In this research, the mixed congruent algorithm is used to generate pseudo-random numbers. The general form of the mixed congruent algorithm can be written as follows [36, 37]: if xi is assumed to be the initial value, the recursive function is xn+1 = N · xn + C (mod M), in which N, C are constants, and M is a modulus operation.

2.2. Algorithm for the generation of sand grains with random size and shape

Dry sand grains are mainly composed of crystalline silicon dioxide, i.e. quartz [1]. According to age, transport mechanism and mineral composition, sand grains have different shapes and sizes. Mahaney [7] revealed that most sand grains are random and convex in shape. In general, the shape of most old sand grains is random with rounded edges, and younger sand grains produced artificially by crushing sandstone have sharp edges and corners. Therefore, it is reasonable and realistic to model sand grains using 3D random convex polyhedra.

In this section, we propose an algorithm for developing a 3D random polyhedron to model sand grains. The developed model is an irregular polyhedron, random in shape and size. The random polyhedron is a convex solid with an arbitrary number of boundary surfaces, which is varied from 12 to 18 in this paper. In fact, the number of surfaces of a real sand grain may be larger than 18 or less than 12. Statistically, it is acceptable to use surfaces numbering from 12 to 18 in simulation.

The generation algorithm for sand grains is composed of two steps. The first is to generate a 3D random octahedron. The second step is to generate a 3D random polyhedron. The first step is described in detail as follows.

Step 1. The algorithm to generate a random quadrilateral, Q1

Sub-step 1. According to the size, Ssd, of sand grains, generate a circle with radius Ssd/2.

Sub-step 2. Randomly generate four points S1, S2, S3 and S4 on the circle.

Sub-step 3. Generate a quadrilateral connecting the four vertices in turn. L1, L2, L3, L4 and β1, β2, β3, β4 are the lengths of the four edges, and the internal angles of the quadrilateral, respectively (figure 1).

Figure 1.

Figure 1. The random quadrilateral from Q1.

Standard image High-resolution image

The above algorithm, which is referred to as Q1, is a very simple way to generate a random cyclic quadrilateral. However, we find that it is not robust, as illustrated in figure 2. The quadrilateral in figure 2 is very sharp with very small angle βi and very short edge Li(i = 1, 4). The relationship between internal angle βi and side length Li of the quadrilateral can be expressed as

Equation (1)

From the above equations it can be seen that βi can be controlled by Li(i = 1, 4). The side length, Li, can be written as follows:

Equation (2)

where x1 = x5, y1 = y5, z1 = z5.

Figure 2.

Figure 2. Robust test of Q1: (a) small angle, (b) short side, (c) small angle and short sides.

Standard image High-resolution image

The following relationship should be incorporated into the algorithm Q1 to control the random cyclic quadrilateral shape.

Equation (3)

in which ψ1 is the controlling parameter and usually given a positive number. The effect of ψ1 is to avoid the existence of small internal angles and short edges. ψ1 is set to be 3.0 in this paper.

Step 2. The algorithm to generate a random convex polyhedron, Q2

First, generate random points, S5 and S6, as shown in figure 3. Then connect the points and vertices of the quadrilateral to generate a convex octahedral. The intersection point of the line S5S6 and the plane S1S2S3S4 is O. The length of |S5O| and |S6O| should satisfy the following relations:

Equation (4)

The controlling parameters, ψ2 and ψ3, are set to be 0.75 and 0.25, respectively, to control the shape of the octahedral.

Figure 3.

Figure 3. Generation of random points.

Standard image High-resolution image

The second step is to make the octahedral grow into the convex polyhedron with a random shape. So, we proposed the vector dot-product method to judge the convex of the polyhedron. The detailed algorithm is shown as follows.

Sub-step 1. Find the longest edge SiSj of the generated octahedral. Plane i and plane j are the two surfaces attached to the edge of SiSj. $\overrightarrow {V_{i}}$ and $\overrightarrow V_{j}$ are the unit normal vectors to plane i and plane j, and a new vector can be obtained as follows:

Equation (5)

or in more simple form:

Equation (6)

Sub-step 2. Generate a random point Sk in the edge SiSj. |SkSj| and |SkSi| are the length of point Sk to point Sj and point Si. The point Sk is the one that meets the requirements of not being close to the points Si and Sj when the following relations are satisfied:

Equation (7)

in which

Equation (8)

where RN1×1 is a random number matrix generated in section 2.1.

Equation (9)

in which Sn is the newly generated random point from Sk along the direction $\overrightarrow {V_{ij}}$ . The controlling parameters, ψ4, ψ5, ψ6 and ψ7, are set to be 0.4, 0.1, 0.25 and 0.05, respectively, to avoid sharp corners.

Sub-step 3. Generate a new random polyhedron, as shown in figure 4. Connect point SnSi, SnSj, SnSa, SnSb in turn to generate a new polyhedron.

Sub-step 4. Judge the convexity of the polyhedron.

Figure 4.

Figure 4. Generation of random convex polyhedron.

Standard image High-resolution image

The vector dot-product method is introduced here to check the convexity of the polyhedron, as shown in figure 5. $\overrightarrow {V_{{\rm r}}}$ is the unit normal vector to surface SaSnSj, given as

Equation (10)

$\overrightarrow {V_{{\rm ai}}}$ is the unit vector from point Sa to Si, given as

Equation (11)

where Lia is the length of the edge SiSa.

Figure 5.

Figure 5. The schematic figure of the vector method.

Standard image High-resolution image

If the generated polyhedron is convex, all vertices, Si(i = 1, m), should lie in the opposite side of the plane r, which can be described as follows:

$\overrightarrow {V_{r}} \cdot \overrightarrow {V_{{\rm ai}}} <0$ , convex,

$\overrightarrow {V_{r}} \cdot \overrightarrow {V_{{\rm ai}}} >0$ , non-convex.

In the following, the vector dot-product method is also used to check overlapping in section 2.3.

Sub-step 5. Repeat the steps 2, 3 and 4 until the number of boundary faces of the polyhedron reach the given number. In this paper, the number is in the range of 12 to 18. If the convexity conditions are not satisfied, the polyhedrons are discarded.

The typical generated 3 D models of sand grains are shown in figure 6.

Figure 6.

Figure 6. 3D models of sand particles (surfaces ranging in number from 12 to 18).

Standard image High-resolution image

2.3. Algorithm for take-and-place of the sand grains, Q3

In this section, we employ the take-and-place algorithm, which is referred to as Q3, to generate the initial dry sand model. This algorithm is composed of two sub-steps. The first step is to generate all the required sand grains according to the algorithm Q1 and Q2 in section 2.2. The second step is to first generate a random list for all generated sand grains and then take and place the generated sand grains one by one into the analytical model according to the above random list, and finally check the boundary conditions and overlap between the sand grains. Details of the algorithm Q3 are described as follows.

Sub-step 1. Generate sand grains according to the algorithm Q1 and Q2 in section 2.2, in which the number of sand grains should be large enough to meet the following take-and-place requirement.

Sub-step 2. Generate a random list for each sand grain, preparing for the take-and- place stage. So, a set of random numbers, RNn×3, is generated first.

Equation (12)

in which 1 > rij > 0, i = 1, n, j = 1, 3.

Then calculate the random points in the domain of the specimen, RP.

in which

Equation (13)

where [B]m and [B]n are the model boundary coordinates, and xn > xm, yn > ym, zn > zm. In×3 is an n × 3 unit matrix, shown as follows:

Equation (14)

Sub-step 3. Take and place sand grains one by one into the analytical model according to the random list for each sand grain RP.

In order to do so, first move the center points, O', to RP, and then check to ensure that all vertices satisfy the boundary conditions.

Equation (15)

Equation (16)

Equation (17)

where SSo and SSn are vertices of grains before and after placing.

When the boundary conditions are not satisfied, take and place the next sand grain until the boundary conditions are satisfied. The boundary conditions are as follows:

Equation (18)

or simply:

Sub-step 4. Check the overlap with the grains that have already been placed in the model. If not satisfied, take and place the next grain until meeting the overlapping requirements.

The algorithm of the vector dot-product method introduced in section 2.2 is employed to check the overlap between the sand grains. When overlap exists between the grains I and J, the point k can be found which is located inside the grain J, and lies on the faces of the grain I. The vector Pm is the normal of the face m of the grain J. The vector Pk is vertical to the face m from the point k. The dot-product of Pm and Pk must be positive.

Sub-step 5. Calculate the volume of the sand grains in the model and the total number of the sand grains that have been taken and placed. If the number of sand grains reaches the requirement, stop the take-and-place process and go to sub-step 6. If not, go to sub-step 3 and repeat.

Sub-step 6. Output the data for the sand grains which are randomly distributed in the analytical model.

The process of boundary condition checking in sub-step 3 is quite time consuming. Also, the time complexity of overlap checking in sub-step 4 is O(N2). Therefore, we propose the random rotational method and limited moving method to improve the boundary condition checking and overlap checking, respectively, in order to reduce computational time, which will be described in detail as follows.

The random rotational method, which is referred to as Q4, is introduced first.

SSn is assumed to be the vertices of the newly placed sand grain. Move the origin of the coordinate system to the center point of grains, O'. Make the grain rotate randomly around O' with angles of α, β and γ around the x-axis, y-axis and z-axis. The rotational vertices, SSr, is described as

Equation (19)

The limited moving method, which is referred to as Q5, is described as follows.

As mentioned above, SSn is the vertices of the newly placed sand grain. SSm is the coordinates after moving. The relationship between SSn and SSm is

Equation (20)

in which ψ7 is a controlling parameter and RNn×3 is a matrix of a random number list.

The limited moving distance is described as

Equation (21)

where Ln is a positive number given artificially. In this paper, we set Ln as 0.1 * Ssd. If the moving distance is very large, the grain may overlap with the other particles. We think that the moving distance should be very little and Ln is set to be 0.1 * Ssd.

Rotate and move the newly placed sand grain in a limited range, simply when there is overlap with other grains. This can save a great deal of computational time. We optimize the placing algorithm in Q3 by adding random rotation, and limited moving in boundary and overlap checking. Figure 7 shows the random distribution in space of sand grains which gives the initial uncompact model of the sand grains.

Figure 7.

Figure 7. Initial model of the sand particulate system.

Standard image High-resolution image

In the process of 'take-and-place', the grains that do not satisfy the boundary conditions for more than 1000 times will be discarded.

2.4. Algorithm for compacting dry sand grains, Q6

Dry sand is a kind of porous matter, compactable in response to pressure. Porosity is an important indicator for dry sand. In this paper, porosity is defined as the voids volume percentage over the specimen total volume which is not filled by grains. Porosity is dependent on the size, shape and arrangement of sand grains. Also, porosity differs between consolidated and unconsolidated dry sand. Compaction may lead to rearrangement of sand grains, reducing the pores between sand grains and increasing contact area, bulk density and friction force. Therefore, it is necessary to develop the compacting step.

Q3: take-and-place algorithm
Input: n = all sand particles
  controlling parameters matrix, [ψ]
  boundary conditions, [B]m and [B]n
1 do i = 1, n
2     generate random number list according to Q0 and Q1, RPn×3 and SSo
3     calculate RP and SSn
4     place the first particle into the specimen
5     boundary checking
6       if (not) then: Q4 and Q5(j = 0: j = j+1)
7         if (j > 1000) then: goto 3
8     calculate, RP and SSn
9     place the (i) particles into the specimen
10     boundary checking
11       if (not) then: Q4 and Q5(j = 0: j = j+1)
12         if (j > 1000) then: discard the particle
13     overlapping checking
14       if (not) then: Q4 and Q5(j = 0: j = j+1)
15         if (j > 1000) then: discard the particle
16     place the (i + 1) particle into specimen:
17       if (i < n) then: i = i+1, go to 8, else: go to 18
18     calculate the porosity of the sand particulate system
19     calculate the number of all the placed sand particles
20 end do
Output: the initial model.

The DEM has been widely used in recent years, especially in the domain of granular matter research. In this section, we present a compaction algorithm to increase the bulk density of the initial model of the sand specimen generated in section 2.3, employing the DEM.

2.4.1. Motion equations.

In DEM, the motion of a particle is determined by Newton's second law. All particles are assumed to be rigid bodies. The translation equation for the i-th particle is as follows:

Equation (22)

The rotation equation for the i-th particle is as follows:

Equation (23)

where, Fi(u, t) and Mi(u, t) are the sum of all forces and torques applied on particle i; ui and ψi denote the translational displacement and rotational angle of particle i; mi and Γi stand for the mass matrix and rotational inertia matrix; Cmi and CΓi are translational and rotational damping coefficients matrices.

In our study, the sum of all sand particles is N. While dropping, only gravity and contact forces act on a particle; thus Fi and Mi can be decomposed as

Equation (24)

Equation (25)

where Mig and Fij stand for the gravity and contact forces of particle i; Rj is a vector pointing from the center of mass of particle i to the contact point with particle j.

2.4.2. Contact model in DEM.

We assumed that the contact particles interact according to Coulomb's contact law with dry friction. The contact force, Fij, between particle i and particle j, can be described as follows:

Equation (26)

where $F_{ij}^{n}$ and are normal contact force and tangential friction force.

According to Coulomb's contact law, tangential friction force can be written as

Equation (27)

Equation (28)

where μ is the friction coefficient.

The normal contact force, $F_{ij}^{n}$ , is decomposed as follows:

Equation (29)

where $f_{ij}^{ne}$ and $f_{ij}^{nd}$ stand for the elastic and viscous parts of normal contact force; kn and kt are normal contact stiffness and damping coefficient; $p_{ij}^{n}$ and $\ddot{u}$ denote normal penetration displacement and normal velocity.

2.4.3. Contact detection.

For 3D polyhedrons, contact detection is complex and very time consuming. The contact detection time takes up to 80% of the total analysis time. For 3D polyhedrons, intersections are vertex–vertex, vertex–edge, edge–edge, edge–face, vertex–face and face–face. So, the efficiency of the contact detection algorithm is critical. Generally, contact detection is composed of two independent steps. The first step is called 'neighbor search', to catch all the possible particles in contact. The second step is called 'geometric resolution', to calculate the contact forces. This step is largely affected by the geometric complexity of particles. The contact detection algorithm is very cumbersome in polyhedrons with arbitrary shapes. Boon et al [45], Nezami et al [47], and Chang and Chen [48] presented a series of algorithms for the calculation of contact detection. Barbosa [44] presented an algorithm for contact detection between polyhedrons. The algorithm presented by Barbosa has a high computational complexity of the order of O(N2), comparing all the vertices of one particle to all faces of the other. Cundall [46] developed the well-known common-plane (CP) methods, which have a complexity of the order of O(N). In our study, we employed the CP methods.

Based on the DEM and the CP methods, we give the compaction algorithm. It is composed of two steps. The first step is self-compaction by gravity. In this step, sand grains fall freely by gravity. The second step is called artificial compaction, where the sand grains are compacted by mechanical vibration and pressure. This step can be done by applying external pressure and mechanical vibration on the top of the sand specimen. The sand grains tumble continuously and contact more closely with each other after the artificial compaction. When the porosity meets the requirements, the artificial compaction process is stopped and the locations of the sand grains are recorded and output.

The algorithm is programmed in Fortran, and the data for all the vertices locations of the sand grains can be stored using the arrays in FORTRAN. The size of the arrays is based on the number of vertices.

3. Application

DEM is undoubtedly the most important numerical method for granular matter research [40]. However, it is incapable of capturing such features as grain-level nonlinear responses. As is well known, FEM has been used extensively in many fields. FEM has rich material models, especially for geologic materials. Individual sand particle behavior (grain level deformation, fragmentation, damage and crushing) can be conducted. Moreover, using a nonlinear material model together with strain rate effects and damage definition, the grain-level response of dry sand under static and dynamic loadings can be investigated realistically.

In this section, the model of the dry sand particulate system is implemented into the FE code, LS-DYNA. The Holmquist–Johnson–Cook (HJC) material model, material type 111 in LS-DYNA, is employed to model the nonlinear mechanical behavior of individual sand particles under static and dynamic loadings.

3.1. Finite element grid

In this section, we present the finite element grid according to the model developed above.

There is no overlapping but only contact between sand grains. Therefore, the sand grains can be meshed one by one, alone. The unstructured grid algorithm is adopted in generating the grid of sand grains. In this section, 3D tetrahedron mesh is used, employing the 3D constrained Delaunay algorithm [33, 35]. The following gives the algorithm for the grid in detail.

Sub-step 1. Move the origin of the coordinate system to the center point O' of the i-th sand grain to form a local coordinate system X'O'Y', as shown in figure 8. Initialize a cube large enough to encase the sand grain. Initialize an array of linked lists, Gr−Link(), combining a static structure (an array) and a dynamic structure (linked lists), as shown in figure 9.

Figure 8.

Figure 8. Initial cube.

Standard image High-resolution image
Figure 9.

Figure 9. Structure of the linked list.

Standard image High-resolution image

Sub-step 2. Calculate the values of the vertices of all sand grains in local coordinates in X'O'Y' and store the value in Gr−Link(). Generate original aided grid, Gr-Ori, as shown in figure 10, in the initial cube belonging to the i−th sand grains.

Figure 10.

Figure 10. Generation of original aided grid, Gr-Ori.

Standard image High-resolution image

Sub-step 3. Insert all vertices of the i−th sand grains into the aided grid Gr-Ori according to Delaunay principles [33, 35]. The original grid is remeshed to form a new grid Gr-New. Update the original grid Gr-Ori and the array Gr−Link() every time a vertex is inserted, until the last one. Store the data of grid Gr-New.

Sub-step 4. Optimize the grid Gr-New by inserting random points. Generate the optimized grid data Gr_Opt and store in the array Gr−Link(). Remove the grid outside the sand grain. Update the data in Gr−Link().

Sub-step 5. Move the origin of the coordinate system to the center point of the next sand grain and repeat sub-step 1–4 until the last one.

Sub-step 6. Update the data in Gr−Link() and output the final grid Gr_out of the sand specimen.

The grid algorithm is programmed in Fortran; the FE grid can be implemented into such finite element codes as ANSYS, ABAQUS, AUTODYN and LS-DYNA. The grid of the sand particulate system is shown in figure 11.

Figure 11.

Figure 11. The finite element model of the sand specimen.

Standard image High-resolution image

3.2. Material models

We employed the finite element code to model the nonlinear mechanical response of the sand particulate system. The hydrocode is a powerful and reliable approach and has been used extensively in modelling static and dynamic events. In this paper, the hydrocode LS-DYNA [39] is used. In a hydrocode, material models which properly describe the material behavior under loadings are necessary. The material model, HJC model [38], is used to model the nonlinear behavior of individual sand grains.

In the JHC material model, material type 111 in LS-DYNA, the pressure is expressed as a function of the volumetric strain including the effect of permanent crushing. The damage is accumulated as a function of the plastic volumetric strain, equivalent plastic strain and pressure. The normalized equivalent stress is defined as

Equation (30)

where σ is the actual equivalent stress, and fc' is the quasi-static uniaxial compressive strength. The expression is written as

Equation (31)

where A, B and C are constants, D is the damage parameter, P* = P/fc' is the normalized pressure and $\dot{{\varepsilon}}^{\ast}=\dot{{\varepsilon}}/\dot{{\varepsilon}}_{0}$ is the dimensionless strain rate. The sand particle is modelled using the JHC material model.

The parameters for individual sand particles are as follows [38, 39]:

3.3. Contact algorithm in FE code

The contact and friction effect between sand grains happens and consumes energy constantly under static and dynamic loadings. Therefore, this effect should be taken into account in the modelling. The automatic surface-to-surface contact [39] is used to model the contact and friction effects. In addition, the friction coefficient is defined as follows [39]:

Equation (32)

where μs is the static friction coefficient, μk is the dynamic friction coefficient and vrel is the relative velocity of the surfaces in contact. DC is exponential decay coefficient. In simulation, the static and dynamic friction coefficients among sand particles are set to be 0.3 according to the research [13, 40]. The 1-node integrated solid formulation of the tetrahedral element is adopted in the simulation of sand particles.

3.4. Static tests

In this section, we employ the sand particulate system developed above and the FE code to study the uniaxial response of dry sand under static compression. In simulation, the sand specimen is compressed under uniaxial loading, shown in figure 12. The specimen is a cylinder, 5 cm in diameter and 8 cm in length. Lateral displacement of the specimen is constrained using a steel tube. The specimen is constrained on the bottom surface. The quasi-static displacement loading is applied on the top surface. The computational parameters, material models and contact parameters in the FE code, are shown above. In the model, the steel tube is assumed to be a rigid body.

Figure 12.

Figure 12. Schematic figure of the sand specimen under uniaxial compression test.

Standard image High-resolution image

The results are shown in figure 13; the axial stress and axial strain relationship. We find that there are three different stages in the uniaxial compression test. The first stage is approximately elastic compression. In this stage, the sand grains all experience elastic deformation. The friction effects between sand grains are not significant. However, this stage is very short. The maximum axial stress under elastic compression is up to 12.9 MPa, which is similar to test results [43]. Then, in the second stage, the specimen comes under high level compressive force. Obviously, the sand particulate system is compacted and the voids in the specimen decrease with higher axial compressive stress. Some sand grains experience a yielding stress state. The friction effects between sand grains are significant. We find a slight tumbling and rolling of the sand grains during compression in this stage. The maximum axial stress at this stage is up to 27.2 MPa, which is slightly less than the test results [43]. With the increase in pressure, the third stage starts. In this stage, the porosity increases because of compression leading to more surface contact. Most of the sand grains experience large deformation with plastic strain. The effects of contact and friction between the sand grains are very significant. Axial stress increases significantly. However, the axial strain increases slightly. This stage is the 'lock-up' stage [3], hardening the response. Figure 13 also shows that most grains experience damage at the third stage. The damage patterns forming along vertical bands in the three stages originate from the lateral confinement under the uniaxial loading. It reveals that the patterns of deformation and damage of sand grains are sensitive to the loading mode.

Figure 13.

Figure 13. Axial stress versus axial strain of dry sand, and sand grain damage.

Standard image High-resolution image

Figure 14 gives the relationship between axial stress and void ratio under high axial pressures. When the void ratio ranges from 46.4% to 13.1%, the axial stress increases significantly, to the lateral confinement of the steel tube. The results agree well with the test data, in compression.

Figure 14.

Figure 14. The relationship between axial stress and void ratio.

Standard image High-resolution image

In the simulation, the damage, D, of an individual sand grain is defined as $D=\sum\frac{\Delta \varepsilon_{{\rm p}} +\Delta \mu_{{\rm p}}}{D_{1} (P^{\ast}+T^{\ast})^{D_{2}}}$ , where Δεp and Δμp are the equivalent plastic strain and volumetric strain, D1 and D2 are defined above, and P* and T* are the normalized pressure and the normalized maximum tensile hydrostatic pressure. The damage of individual sand particles at different stages under uniaxial compression is shown in figure 13. We find that most sand grains experience elastic deformation at stage I. However, a high stress level leads to more and more damage to most sand particles at stage III. The damage of sand particles becomes more and more serious with the increase in stress level. The voids of the specimen become less and less. This leads to more contact surfaces between sand grains and higher axial stress, as shown in figure 13. Therefore, contact and friction play more important roles in stage III than in stage I. Individual sand particles are crushed by the contact force. Thus, the grain-level response, such as the deformation, damage and stress–strain response of individual sand particles, plays an important role and should be taken into account at a high stress level under static compression.

3.5. Impact tests

The dynamic response of sand grains is different to that of continuum media. Much experimental research [12, 41, 42, 49] has been carried out into the impact properties of dry sand. However, it is not yet well understood for dry sand under intense dynamic loadings. It is necessary to investigate the mechanical response of the dry sand particulate system under high rate loading originating from impact, gas and weapon explosions, earthquakes, etc. The study of the mechanical properties of sand particles under impact is very challenging. In this section, we present numerical approaches to study the grain level response of dry sand under impact. The numerical model of Split Hopkinson Pressure Bar (SHPB) is shown in figure 15. The computational parameters for sand particles are shown above. The bars and tube are assumed to be elastic with shear modulus G = 77 GPa and Poisson's ratio μ = 0.3.

Figure 15.

Figure 15. Schematic figure of numerical SHPB test for dry sand.

Standard image High-resolution image

Kabir et al [8] carried out a series of tests on dry sand in 2010. First, we simulated the tests on the dry sand particulate system at a strain rate of 470 and 900 s−1, to verify the reliability of the numerical analysis approach presented above. In the specimen, there are three different contact surfaces: between sand grains, between bars and the sand specimen, and between the tube and the sand specimen. The contact algorithm of 'automatic surface-to-surface' is used for these three contact surfaces. The dimensions of the sand specimen are 20 mm in diameter, 10 mm in thickness, 0.8 mm in diameter. The sand specimen is confined by a steel tube.

Figures 16 and 17 show the comparison of the results and the test data at strain rate 470 and 900 s−1. It is shown that the numerical results of stress–strain curves agree well with the test data, indicating that the numerical approaches can give reliable predictions of the sand specimen under impact. It also can be seen that the simulation is softer than the test. However, there is a significantly stiffer response at around 10% strain in figure 16 and 18% strain in figure 17. This is because the porosity decreases with the increase in the axial strain. The lateral confinement plays a significant role in the axial stress of the numerical specimen at high strain rate loadings.

Figure 16.

Figure 16. Stress–strain curve at strain rate 470 s−1.

Standard image High-resolution image
Figure 17.

Figure 17. Stress–strain curve at strain rate 900 s−1.

Standard image High-resolution image

In the simulation, sand particles are modelled using the JHC material model. The computational parameter C in the material model is a strain rate coefficient. When C is larger than 0, the strain rate effects of individual sand particle are conducted. In order to investigate the effects of strain rate sensitivity, we carried out simulations using different strain rate coefficients C, 0.0 and 0.09. As shown in figure 18, we can see that strain rate sensitivity of individual sand particle has little effect on the stress–strain curve under impact loading.

Figure 18.

Figure 18. Effects of individual sand particle strain rate on stress–strain curve.

Standard image High-resolution image

In order to study the dynamic response of the sand particulate system, six studies are conducted considering different rate loadings at 1, 10, 100, 200, 470 and 900 s−1. The effects of different rate loadings on stress–strain curves are shown in figure 19. It can be seen that the dynamic stress of the specimen increases with the increase in strain rate at the same strain. However, the stress value increases a little when strain rates vary from 1 to 900 s−1. Therefore, the effects of the loading rate on dynamic response can be ignored. Tests [42, 49] also lead to the same conclusion. So, we can conclude that the dry sand particulate system is not significantly sensitive to loading rate.

Figure 19.

Figure 19. Effects of strain rate on stress–strain curve.

Standard image High-resolution image

As is known to all, sand is an internal frictional material. The effects of friction between particles are studied in the following. The cases considering different friction coefficients, varying from 0.1 to 0.5, are simulated. We firstly simulate the frictionless case, setting the friction coefficients to be 0. All the cases are conducted at strain rate 470 s−1. Figure 20 gives the results. The simulations reveal that the frictionless case reduces the specimen stress up to 40% more than other cases. Removing friction reduces the resistance of a sand specimen to external pressure, leading to large axial strain at the same stress level. When friction coefficients vary from 0.1 to 0.5, the stress level increases slightly. Moreover, the difference between the cases with friction coefficients 0.3 and 0.5 is less. The friction and non-friction cases show that the friction between sand is an important factor. Friction has significant effects on dynamic stress.

Figure 20.

Figure 20. Effects of coefficients on stress–strain curves.

Standard image High-resolution image

4. Conclusions

In the present paper, we have proposed a series of algorithms to generate a 3D model of a sand particulate system. We have taken into account the randomness of sand grains in shape and distribution. The algorithm for generating the random number, Q0, and the algorithms to generate the random quadrilateral and polyhedron, Q1 and Q2, were proposed and used in the generation of the sand particulate system. Sand grains were modelled using the developed convex polyhedron with surfaces ranging in number from 12 to 18. We also employed controlling parameters to improve the robustness of all the algorithms. In the process of placing, we have proposed two techniques to improve the porosity of the sand specimen. The first technique is the random rotational method, Q4. The second technique is the limited moving method, Q5. In the process of generating the specimen, we have used DEM to develop the compacting algorithm to improve the porosity of the sand particulate system. Finally, we have built the finite element grid and analysis approach. Simulations show that the model developed in the paper can be used to investigate the grain-level response of the dry sand particulate system. The effects of the grain-level configurations of dry sand (such as porosity, friction and grain size) could be created realistically. Furthermore, the nonlinear behaviors of individual sand grains (such as deformation, damage, fracture, strain rate) could also be studied in detail.

Acknowledgments

This work is supported by National Natural Science Foundations of China (51321064, 51108457, 51378016) and by the Program for New Century Excellent Talents in University (NCET-12–1008).

Please wait… references are loading.
10.1088/0965-0393/22/5/055021