Measured Quantities

In this topic, each of the measurement quantities available in the measure logic is defined, and the assumptions and approximations employed in their computation are described.

These quantities are:

Coordination Number | Porosity | Stress | Strain Rate | Size Distribution

Coordination Number

The coordination number, Cn, is defined as the average number of active contacts per body (where a body can be either a ball or a clump), and is computed as

(1)Cn=Nbn(b)cNb

where the summation is taken over the Nb bodies with centroids in the measurement region, and n(b)c is the number of active contacts of body b. Note that contact activity depends on the contact model installed at the contact (refer to the “Contact Models” section for further details).


Porosity

The porosity, n, is defined as the ratio of total void volume, Vvoid, within the measurement region to measurement-region volume, Vreg:

(2)n=VvoidVreg=VregVmatVreg=1VmatVreg

where Vmat is the volume of material in the measurement region. Vmat is approximated by (see the figure below)

(3)Vmat=NbV(b)+ˉNbˉV(b)NcV(c)

where Nb is the number of bodies that lie fully within the measurement region, V(b) is the volume of body b, ˉNb is the number of bodies that intersect the measurement region, ˉV(b) is the intersection volume between body b and the measurement region, Nc is the number of contacts that lie in the measurement region, and V(c) is the overlap volume of the two bodies at contact c. Note that a clump is considered to lie fully within a measurement region if each of its constituent pebble does.

The intersection volume between a ball with center at position X1 and radius R1 and a measurement region with center X2 and radius R2 is given by

(4)ˉV(b)={R21arctan(h2d1)h2d1+R22arctan(h2d2)h2d2 , (2D)π3[2R21(R1d1)h2d1+2R22(R2d2)h2d2] , (3D)

where:

(5)d1=(X1X22+R1R2)/(2X1X2)d2=(X1X22+R2R1)/(2X1X2)h2=R22d22

The intersection volume between a clump and a measurement region is approximated via a voxelization approach, as discussed in the measure create command description.

The overlap volume of two bodies at contact c is computed using Equations (4) and (5), where the subscripts denote the two pieces (ball or pebble) in contact.


../../../../../../_images/measure-poros.png

Figure 1: Porosity computation for a system with 3 balls and 2 clumps. Ball 1 and clump 1 intersect the measurement region, and only their respective intersection volumes contribute to the porosity computation. Ball 2, ball 3, and clump 2 lie fully inside the measurement region, and therefore contribute their entire volume. Balls 2 and 3 and clumps 1 and 2 are in contact within the measurement region: respective contact overlap volumes are subtracted from the total volume of material used in Equation (2).


Stress

Stress is a continuum quantity and, therefore, does not exist at each point in a particle assembly, because the medium is discrete (see figure below). In the discrete PFC model, contact forces and particle displacements are computed. These quantities are useful when studying the material behavior on a microscale, but they cannot be transferred directly to a continuum model. Averaging procedures are necessary to make the step from the microscale to a continuum. The average stress ˉσij in a measurement region of volume V is computed as ([Christoffersen1981]):

(6)ˉσ=1VNcF(c)L(c)

where Nc is the number of contacts that lie in the measurement region or on its boundary, F(c) is the the contact force vector, L(c) is the branch vector joining the centroids of the two bodies in contact, denotes outer product, and compressive stress is negative by convention. Note that the underlying assumptions behind the formula above are based on a static analysis. Alternative computations may be desired for dynamic situations (for example, see [Fortin2003]).


../../../../../../_images/measure-stress.png

Figure 2: Typical particulate material consisting of circular/spherical particles (2D/3D) and two- and three-particle clumps, along with contact forces. The 2D case is shown here for clarity.


Strain Rate

The procedure employed to measure local strain rate within a particle assembly differs from that used to measure local stress. In the determination of local stress, the average stress within a volume of material is expressed directly in terms of the discrete contact forces, because the forces in the voids are zero. It is not correct, however, to use the velocities in a similar way to express the average strain rate, because the velocities in the voids are nonzero. Instead of assuming a form for the velocity field in the voids, a strain-rate tensor, based on a best-fit procedure that minimizes the error between the predicted and measured velocities of all balls with centroids contained within the measurement region, is determined.

Before describing the least-squares procedure, the relation between the strain and strain rate will be reviewed and the corresponding terms defined.

The relation between the displacements ui at two neighboring points is given by the displacement gradient tensor, αij. Let the particles P and P be located instantaneously at xi and xi+dxi, respectively. The difference in displacement between these two points is

(7)dui=ui,jdxj=αijdxj

The displacement gradient tensor can be decomposed into a symmetric tensor and an antisymmetric tensor as

(8)αij=eijωij

where:

(9)eij=12(ui,j+uj,i)infinitesimal strain tensorωij=12(uj,iui,j)rotation tensor

In a similar fashion, the relation between the velocities, vi, at two neighboring points is given by the velocity gradient tensor, ˙αij. (The velocity field is related to the displacement field by ui=vidt, in which vi is the velocity and dt is an infinitesimal interval of time.) Let the particles P and P be located instantaneously at xi and xi+dxi, respectively. The difference in velocity between these two points is

(10)dvi=vi,jdxj=˙αijdxj

The velocity-gradient tensor can be decomposed into a symmetric tensor and an antisymmetric tensor as

(11)˙αij=˙eij˙ωij

where:

(12)˙eij=12(vi,j+vj,i)rate-of-deformation tensor˙ωij=12(vj,ivi,j)spin tensor

In PFC, the velocity-gradient tensor, ˙αij, is referred to as the strain-rate tensor. ˙αij is computed using the following least-squares procedure.

The strain-rate tensor computed for a given measurement region represents the best fit to the Np measured relative velocity values, ˜V(p)i, of the particles with centroids contained within the measureword. The mean velocity and position of the Np particles is given by

(13)ˉVi=NpV(p)iNpandˉxi=Npx(p)iNp

where V(p)i and x(p)i are the translational velocity and centroid location, respectively, of particle (p). The measured relative velocity values are given by

(14)˜V(p)i=V(p)iˉVi

For a given ˙αij, the predicted relative velocity values, ˜v(p)i, can be written using Equation (10) as

(15)˜v(p)i=˙αij˜x(p)j

where

(16)˜x(p)i=x(p)iˉxi

A measure of the error in these predicted values is given by

(17)z=Np|˜v(p)i˜V(p)i|2=Np(˜v(p)i˜V(p)i)(˜v(p)i˜V(p)i)

where z is the sum of the squares of the deviations between predicted and measured velocities. The condition for minimum z is that

(18)z˙αij=0

Substituting Equation (15) into Equation (17) and differentiating, the following set of nine equations is obtained:

(19)[Np˜x(p)1˜x(p)1Np˜x(p)2˜x(p)1Np˜x(p)3˜x(p)1Np˜x(p)1˜x(p)2Np˜x(p)2˜x(p)2Np˜x(p)3˜x(p)2Np˜x(p)1˜x(p)3Np˜x(p)2˜x(p)3Np˜x(p)3˜x(p)3]{˙αi1˙αi2˙αi3}={Np˜V(p)i˜x(p)1Np˜V(p)i˜x(p)2Np˜V(p)i˜x(p)3}

These nine equations are solved by performing a single LU-decomposition upon the 3 × 3 coefficient matrix, and performing three back-substitutions for the three different right-hand sides obtained by setting i = 1, 2, and then 3. In this way, all nine components of the strain-rate tensor are obtained.

Size Distribution

The cumulative volume percentage of bodies that lie fully in or intersect a measurement region can be computed and exported into a table using the measure dump command. All bodies whose centroids fall within the measurement region are binned based on the {area in 2D; volume in 3D} equivalent {circle in 2D; sphere in 3D} diameters, and on the bins defined with the measure create or measure modify command. The data can also be exported into a FISH array using the measure.size intrinsic.

References

[Christoffersen1981]Christoffersen, J., M. M. Mehrabadi and S. Nemat-Nasser. “A micromechanical description of granular material behavior,” J. Appl. Mech., 48, 339-344, 1981.
[Fortin2003]Fortin, J., O. Millet and G. de Saxcé. “Construction of an averaged stress tensor for granular medium,” European Journal of Mechanics A/Solids, 22, 567-582, 2003.